Apply today for a FREE subscription to CIO Magazine!
Fri, Jan 18, 2008 1:02 EST

|
Posted by: Michael Hugos in Best Practices Topic: ArchitectureBlog: Doing Business in Real Time
Current Rating: |
Let’s admit it; we often don't have a clear idea of what's going to happen next; the world keeps changing; companies have to keep trying new ideas if they're going to be innovative. But we don’t know which ideas are going to succeed and which ones are going to flop. Innovation is by definition unpredictable.
So what do we do in the face of all this uncertainty? What we're going to do is learn to use IT architecture in an agile manner. This means learning to use all the new stuff that has come of age in the last 36 months: SaaS; Open Source; SOA; Agile Programming; and Consumer Electronics. Think about ways to mix this with your existing installed base of legacy and packaged applications; that’s how you create agile architecture.
In many situations there’s only so much analysis that’s going to be useful. Basically, we know what we know right now and we don’t need to analyze it for long because we already know it. We can analyze things for six more months but that won’t really tell us much more about the future. A little bit of analysis can predict the near term future but it doesn’t follow that a lot more analysis can predict the longer term future.
Strategic use of systems architecture keeps your core transaction systems running and also enables you to respond quickly to new business situations. The trick is to think of building new systems in a quick and iterative manner using stuff like SaaS, SOA, and small chunks of new code. Don’t think of just coding new applications from scratch or installing a package (that's so last century).
Here’s a case study to illustrate what I mean. This case study is loosely based on a real company here in Chicago that I have observed as a customer these last two years. I have not talked with any of this company’s people nor do I know what their actual strategy has been. What I’m presenting here is purely my own ideas of what I would do if I were the CIO at that company.
This company makes some well known chocolate candies and sells them through a variety of retail channels. It sells a lot of candy but profit margins on candy are always being squeezed. I think some smart marketing people in this company spotted a business opportunity to sell “designer chocolate” candy and drinks through cozy storefront locations in upscale neighborhoods. They don't sell as much this way as through their traditional channels but they get a lot better profit margins.

Imagine this is what your existing infrastructure to support your traditional manufacturing business looked like. What would you do if you were the CIO and they asked you how you were going to support this new designer chocolate business? Here’s what I would do; here’s how I would create an agile IT architecture and leverage it to move quickly and support this new business.

I noticed this company opened a few storefronts two summers ago. Then last summer I noticed they opened up even more locations. For the time being anyway, they must be making good money on the idea and expanding that business. So how would I continue using agile IT architecture to keep supporting the growth of this business? Here’s what I’d do.

These diagrams illustrate how a lot of companies are going to evolve their systems architecture in the next few years. Using these techniques and technologies