IT Must Change to Support Evolving Business Processes

Old-style, monolithic business process models that emphasize tight controls and stability are quickly giving way to new distributed models that depend on openness, flexibility, and constant change. And IT architectures must evolve in several specific ways to support those changes.

That was IBM Rational Distinguished Engineer Jim Rumbaugh's message for attendees at the Software Development West Conference and Expo (Mar 14-18) in Santa Clara, CA. Rumbaugh is one of the world's leading software development methodologists, one of the Three Amigos who developed the Unified Modeling Language (the other two are Grady Booch and Ivar Jacobson). Since the acquisition of Rational by IBM in 2003, Rumbaugh has been a driving force behind IBM's modeling tools strategy.

During his keynote presentation, titled "Differentiating Business Performance through Software Development," Rumbaugh took his audience through the evolution of business processes, from "a simple, stable process that was easy to control but inefficient to a complicated process that is very efficient, but rather tricky."

"If you think about it, the IT architecture has been a choke point for business," Rumbaugh said. "Monolithic systems and applications are great as long as they are stable, but they're not very easy to change, and they're certainly no good if you're trying to interface with hundreds of customers, vendors, and suppliers. We need to stop thinking about business in a monolithic way and start identifying opportunities to transform business at the business process level."

Providing businesses with the kind of flexibility demanded by distributed environments requires IT to focus on several key areas, Rumbaugh said:

- Adoption of component business modeling, which involves "composable" business processes. Rumbaugh defines a business component as "a set of activities and the resources they require that forms a reasonably independent unit of business. "We need to be able to wire [these components] together and re-wire them in flexible ways without having to redo the entire framework every time we make a change," Rumbaugh said. We need to be able to substitute one piece for another so the business can concentrate on what it's good at."

- Implementation of service oriented architectures: "IT architectures have to change to support changing business processes," Rumbaugh said, "and that means a service oriented architecture."

- Use of model-driven architectures: "We need to automate as much of the business architecture mapping as is possible," he said. "That means using model-driven architecture."

- Replacing monolithic software development styles with iterative development approaches.

- Accepting standards, including open standards, for the sake of interoperability: Sometimes programmers don't want to do that. [Open standards] cramp their style. But they're just going to have to live with it, because we can't get anywhere with interconnectivity without standards. The electrical grid operates at 120 volts in this country; that's not optimal for all devices, but we accept that inefficiency because we want to be able to plug things into a standard interface."

"We need to do things in a new way," Rumbaugh concluded. "The old way simply isn't supportable. We can use technology to hold us back or to move us forward, but it requires a change in attitudes."

About the Author

John K. Waters is a freelance writer based in Silicon Valley. He can be reached at [email protected].