When to Buy, When to Build: Six Steps Toward Composite Apps

Services-oriented architecture, SOA-standard interfaces, SaaS applications and Internet-delivered services are opening up new options to mix, match and mash up internal, off-the-shelf and on-demand offerings into composite applications. The goal is to quickly respond to changing business requirements by taking advantage of ready-made components that fill gaps in applications. But how do you know when to buy and when to build? Here's a six-step approach to making the right choice.
Step 5: Consider Your Enterprise

Based on cost alone, the SaaS-delivered service in this example would be seem to be the most compelling opition. However, there are at least four other issues at play:

Culture. This is a huge issue if the current thinking in IT is that it should build everything and that anything not invented inside the company is pure evil. Unless there is acceptance that its okay to purchase or lease services and/or applications, this analysis with get you nowhere because there are no options. In many instances, a change in culture needs to occur before you can even consider external services or applications.

Infrastructure. It's certainly an impediment if there is little or no infrastructure in place to create composites. SOAs are not just a bunch of Web services. They provide mechanisms through which services can be consumed and exposed, and those mechanisms are crucial if you hope to use services you did not build. You can leverage conventional- or SaaS-delivered applications without SOA, but youre not able to mix and match services on more granular levels.

Security. In many organizations, using services or applications that are hosted outside of the organization is a no-no, so this may not be an option. Moreover, packaged enterprise applications, and the services they may expose, have to live up to enterprise-specific security requirements.

Performance. This could be an issue considering that composites almost always run slower than conventional applications where all of the processing occurs internally. You need to determine performance requirements up front, and factor that into your buy-versus-build decision.

Step 6: Pull the Trigger

Finally, you need to weigh all the cost, culture, infrastructure, security and performance variables and justifications and make a decision whether to buy or build. If you take the composite route, you'll need to stay on top of whether expectations are being met and always have a Plan B ready if they are not. The decision will be easy if youve gone through all of the steps above and have a deep understanding of the options available and the tradeoffs of each approach.

What you're really doing is creating a set of patterns that will lead to an overall enterprise strategy. Thus, its helpful to think strategically as these decisions are being made. There are huge opportunities here. Yes, money can be saved over time, but the biggest value should be how quickly you can align your applications with the needs of the business. This is the value of SOA and of composite applications that can be easily adapted to the changing needs of your organization.