Tuesday, October 9, 2012

Rambler Mansions & The Butterfly Effect

When my wife and I began looking for a house about 6 years ago, we visited a number of century homes and "rambler mansions"-- you know the ones that were built in the early 20th century, added a wing in the 1920s, a garage in the 40s, a new porch and veranda in the 60s and a studio in the 90s. While touring one such home, it occurred to me that many of the web applications we have provided seem to have developed that way. In the early 90s the client wanted a website. By the late 90s and early 00s they wanted to add some kind of e-commerce and these days they are looking for more strategic solutions like CRM, CMS, Social Media integration, and Corporate Portals. In many cases we have built those new capabilities right on top of the existing foundational site. As a result, we have some real "rambler" applications out there; compilations of parts that don't necessarily fit that well together. Smoke and mirrors (and nice wallpaper) can help them to resemble well-planned architecture but that only hides the complexity and instability of the underlying application.

The problem with such applications is that the more complex and integrated they become, the more the likelihood that if you go to fix or improve one function, something elsewhere in the application goes awry - a sort of application integrator's "butterfly effect" (where any small change can have a significant downstream impact).

There are two pieces of advice I would give to those looking to integrate new applications with existing web services. First, investigate opportunities for integrated suites supported by reputable third party providers. For example, a client recently asked us to add survey and polling capabilities to an already diverse knowledge base system. Rather than add further complexity, we explored and eventually agreed to implement Microsoft SharePoint Services to replace the existing capabilities while adding the new requirements.

Second, if you have to integrate applications from diverse providers, consider negotiating a Service Level Agreement (SLA) with your integrator so you can have confidence that when something goes wrong -- and it will just as sure as the pipe in the new porch will burst in the first winter freeze -- someone will be there to fix that problem, secure your data, and maybe even foresee coming structural problems before they bring the house down.

No comments:

Post a Comment