Building Flexible and Long-Lasting Systems at Low Cost


The central goal of building IT (information technology) systems has always been to meet the company's business and financial objectives. While the achievement of this goal is admirable, it is incomplete. The problem is that achievement of this goal doesn't consider the return on investment in any metric other than the near term.

A business system may be christened 'successful' if it meets the company's stated business and financial objectives, and comes in on time and in budget. However, this is only the immediate cost of the system. If System A meets the company's business objectives for 10 years, and System B meets the company's business objectives for 5 years, we can certainly say that System A is more successful than System B. We can also say System A is cheaper than System B and that System A caused less business disruption than System B. Adding it all up, we can say that System A had a higher return on investment than System B.

All these business metrics are achieved because System A was designed by one or more professionals who truly understood how to design systems for flexibility and growth while still meeting the company's stated business and financial objectives. The professional in question often goes by the name of Application Architect. The Application Architect knows how to design flexible systems that can achieve growth at a low cost.

A seasoned application architect employs tools such as objects, components, and best practice design patterns to build flexible and growth oriented IT systems. These tools can be applied to any type of system including web sites, shopping carts, distribution systems, order processing systems, engineering systems, etc.

An application architect understands that business objectives and business functionality change and expand over time, and builds that flexibility into the IT system. While no one knows what the change will be, everyone knows there will be change. The job of the application architect is to increase the odds that the inevitable change that affects the business won't make the IT systems obsolete, thereby driving up the company's costs, making the company less responsive to customers, and reducing its competitiveness.

Of course, there are no guarantees. If the Board of Directors changes the company's mission statement, or if a manufacturer decides to sell insurance instead of making widgets, then information systems will have to be modified, or whole systems will have to be scrapped. Barring that, the job of the Application Architects is to build an information system that can adapt as new markets segments are attacked, new distribution channels are developed, and new service policies are implemented.

Building systems for flexibility and growth reduces the company's costs while increasing the company's market responsiveness. These growth oriented, flexible systems are especially crucial in business domains where the company believes it has, or should have, an advantage over its competitors. There is an additional initial cost to building flexible, growth oriented systems. To keep costs down, businesses should invest first in those systems that give the company a competitive advantage. In time, these practices will flow to other non-critical business domains that will then also be able to quickly change and grow their information systems at a low cost.