Sometime ago, I was going through the functional specs for a number of workflow applications for a client. We were looking at solution design and estimates. We had two solution approaches on the table. First one was a custom coded solution. The second option was K2 & SharePoint based applications.
We had to plan for the number of workflow applications that the client wanted to develop and deploy to production in the next 12 months.
Some of these apps were simple and some were very complex.
Some setup time and infrastructure related effort figures also went into the K2/SharePoint solution estimate.
We projected the estimates of the two approaches for these apps and applied some adjustments based on experience to both approaches.
The estimates came out as 2:1. The K2/SharePoint solution was costing the client half the cost of the custom app option.
Well, I think the key to understand these differences in estimates is the number of applications and the amount of inevitable change that comes through during each application project.
If the implementation methodology and the tools used in a project can help better absorb this burden then that approach will always going to be in a better position compared to one that does not help.
I think this is where the K2/SharePoint combination rocks!
In a well governed SharePoint environment, We can manage amounts of new applications and changes by delegating most of them to power users. We can use Form technology such as Infopath and Forms Services to design, develop and control easily. We can leverage the out of the box workflow capabilities of K2 and its integration with SharePoint, SQL and Reports. We can utilize K2′s deployment support. We can also write code when we absolutely have to.
Obviously the above estimates will be different to different environments based on requirements, team and technology mix. Hopefully they are better than 2:1. But I think the trend will be the same – you get much more value out of these platforms.
With K2 & SharePoint, the first project is going to cost more due to setup time, training, consulting and learning curve. But, with the second & third applications you will start to see much more rapid ROI. This is with taking into consideration the managing, patching and updating efforts required for platforms such as K2 and SharePoint.
Platforms force you to work within certain limits and encourage best practices. At times these are hard to develop against. We know the pain associated with SharePoint development and upgrades. But, if you plan it right and execute well (Getting good consultants in with a view to get your own people trained on the job is important here), these platforms give rapid returns.
So, my point is, the Costly way to Building Workflow applications, which touch people and have an implied change aspect more so than other apps, is to completely custom code them.