Description:
Over the past 18 months, I have been heavily involved in a large scale SharePoint Portal Server deployment. This deployment spans the globe with more than 200 office locations and 10,000 employees. Once we were past the initial product deployment phase, it quickly became apparent that many custom development efforts would be required. These efforts did not include integrating disparate back-end systems or even custom Web Parts; but simply enhancing the users experience, reducing the complexities of using SharePoint Portal Server.
Let me give you a an example of such a situation. When creating sites in SPS, the user is required to enter a URL. To an individual such as myself, where I live and breathe technology everyday, this seems trivial. On the other hand, to an individual who's primary job is not technology, this can be difficult. A situation such as this one is magnified when the Portal solution is growing at a rate that exceeds 2,000 sites each year. To reduce the education and support needs, this would have been much better implemented as a wizard with simple forms for the user to choose options from. The wizard could then automatically build a unique URL for the new site.
Another common request I get from our users is the ability to extract information from Microsoft Office documents and InfoPath forms and update various lists on areas/sites. This is a feature that is not available in SharePoint and requires custom development. In fact, if you wish to perform this type of processing automatically when a document is uploaded to a document library, you are required to write a document event handler.
I could go on and on with examples on common requests I get on a daily basis. It is my hope that you understand the point; the development of custom wizards or document event handlers can be time consuming and costly. Taking all hard and soft costs into account, solving the two examples above could easily exceed $10k to $15k.
Now to the meat of this article! I have found there are solutions available that solve these common problems, such as the ones described above, and much more. Over the last month, I have been evaluating Business Process Management (BPM) solutions that integrate with Microsoft Office, InfoPath and SharePoint. I have been completely amazed with the rich features these products provide. Equally amazing is the pricing of these products.
All of the BPM solutions I have evaluated are developed on the .NET platform and completely extensible. The workflow engines all support built in SharePoint integration such as triggering processes from document event handlers; many support list event handlers as well. Workflow process actions include the creation of workspaces, document libraries and lists, uploading documents to libraries, updating list items, etc. Other enhanced features include the ability to extract information directly from Word documents and InfoPath forms and update list item columns.
Here is a quick rundown of what common features I have found:
- Workflow designer; both browser and rich client designers are available. Many of these designers look and feel very similar to Visio.
- Workflow processes are triggered from document libraries; add, update, delete, check-in and check-out events.
- Workflow processes are triggered from lists; add, update and delete.
- Deep integration with Microsoft Office, SharePoint, Active Directory, Exchange, etc.
- Fully extensible with .NET framework
Now how does such a solution help solve the example business problems described above?
Lets take the first example; creating new sites. Using a BPM solution, the information required to create a unique URL can be collected using an InfoPath form. The submission of that form, upload to a form library, would kick off a workflow process. That workflow process would extract the needed information from the form, build the unique URL and create the site. The final step of the workflow process could optionally move the site creation request to another form library and send the user an e-mail with all pertinent information about their new site.
The first example has been solved without writing one line of code. Implementing such a workflow process using these tools can take less than 4 hours.
We have a full featured workflow solution at our disposal, we can take this same example one step further. After the user completes and submits the electronic form requesting the creation of a new site, the workflow process can start down an approval and escalation path. Various individuals in your corporation can then approve or reject the request. All of these workflow solutions understand who is logged on from a contextual perspective; this information can be used for routing and the URL creation processes. The possibilities are endless!
Lets now take a look at the second example I gave above. In this example I refer to the ability to extract information from a Word document and update a list. There may be a need to have a list that is automatically updated as documents are uploaded to a document library. Maybe this document library contains software request forms. As each form is submitted and approved, you wish to accumulate how many software licenses each user has associated with them. This simple list could then be presented to your users without the need to give them security access to the request form document library. The same workflow solutions described above can easily solve this same type of need. Simply create a workflow process that is again triggered when a document is uploaded to the document library. The workflow process itself would then extract the software license information from the document, locate the associated list item and update it.
Again, solving such a common need writing a custom document event handler in .NET will be time consuming and costly.
I hope you can see the value of these solutions; and I have just scratched the surface of what they are capable of. Here is a list of some products I am currently evaluating:
K2.net 2003 Enterprise Workflow
Skelta Workflow.NET 2004 with SharePoint Accelerator
Captaris Business Process Workflow
What do these products cost? Depending on your specific needs, you can find a product today which costs as little as $4,000; some of which are listed above. Large scale enterprise solutions can range from $15,000 to $50,000 and even more.
Before you begin your next custom development effort for SharePoint, take a look at some of these solutions. You may be surprised with what you can find.
浙公网安备 33010602011771号