Taxicabs and railroads: A new approach to building adaptive information systems
Computerworld - "When change within your organization is slower than that without, you're in real trouble. We can't predict the future, but we can learn to react a lot faster than our adversaries". -- Jack Welch
If we try to build software solutions for highly paid knowledge workers who work in a rapidly changing environment in the same way that we build solutions for back-office workers who work in predictable circumstances, we are doomed to failure. Freezing specifications, building software to fit the frozen specs, and ignoring that business is constantly changing is a sure recipe for disaster.
To achieve the levels of functionality, flexibility and time to market required by business today, a radical shift is required in the way in which software is developed. This major shift is already well under way, with Web services and service-oriented architectures. But the technology alone will not make any serious impact on the speed and effectiveness with which we are able to build information systems. We need a completely fresh approach to our methodology.
A new approach
Historically, information has been delivered to desktops in much the same fashion as railroads were built in the early 1900s. Building a railroad system required multiple stages of planning, agreed-upon destinations, predetermined stops in the form of train stations, limited switching choices, the moving of businesses closer to the stations, and rigid schedules to maximize rail efficiency, rather than user demand. The very nature of the railroad system leaves little room for flexibility and adaptability. This characteristic is critically important for railroads -- and certain types of business applications such as accounting and manufacturing.
But this approach, with its fixed plans, fixed rails, stations and predetermined time schedules, doesn't work when events can't be easily anticipated and responses need to be made up on the fly. To continue the transportation metaphor, the need of a dynamic business environment is more closely reflective in the process that taxicab companies use to respond to demand. In a typical U.S. city, cabs cruise the streets with only flexible strategies, allowing response to demand to unfold as required. Decisions are made as closely as possible to the time when action must be taken. The driver makes decisions on the spot -- consistent with passengers' needs.
In the railroad "methodology," the organization plans in advance, and passengers must adjust their plans accordingly. In the taxicab approach, the organization must adjust in real time to the passenger whose plans are unknown most of the time. This requires organizations to embrace uncertainty, dynamic demand and some degree of chaos,
- Ten Factors Shaping the Future of Application Delivery Download this research report conducted by Enterprise Management Associates (EMA) to learn how those that are seeking to accelerate application delivery are leveraging...
- Using Continuous Delivery to Improve Software Delivery Learn more about the challenges impacting organizations and how continuous delivery processes can be a key success factor in accelerating software delivery.
- Global Bank Improves Quality of Application Development Read how this financial institution centralized build assets, cut development time in half and added additional security controls.
- HTTP Status Code Cheat Sheet Look at the Graph, Find the Code and Boom - You're Solving Problems. Identifying and understanding common HTTP status codes can go a...
- Cloud BI in Action: Recorded Webinar of Customer, Kony, Inc. See how Kony, Inc., a leading enterprise mobility company, is using TIBCO Jaspersoft for Amazon Web Services and Redshift to achieve embedded analytics...
- Cloud BI Overview: Jaspersoft for AWS Check out this overview of Jaspersoft for AWS, to easily and affordably build business intelligence solutions as well as embed visualizations and analytics... All App Development White Papers | Webcasts