Software Re-Engineering? No Thanks
An interesting notion is making the information technology rounds these days: software re-engineering.Common wisdom says your software could match your [...]
November 1 1994 by Randall K. Fields
An interesting notion is making the information technology rounds these days: software re-engineering.
Common wisdom says your software could match your business needs much better if you could redesign and redevelop the applications. The idea is to capture the so-called “business rules” that have been buried for decades inside huge COBOL programs, tweak or change them completely, then wave a magic programming wand. Voila! New applications spring forth that obey your new business rules and make your business more flexible.
What’s wrong with this picture? First, most software applications weren’t “engineered” the way we engineer software today, so re-engineering them is nearly impossible. Also, many of the programmers who pioneered business-applications development either have retired or are retraining themselves for a new world of client/server and object-oriented technology.
Software re-engineering doesn’t work. And that’s not where your re-engineering efforts should be focused; they should concentrate on the larger business and organizational issues you face.
There are many definitions of re-engineering today. In fact, more than likely you have had some experience (good or bad) with re-engineering.
I don’t care as much about re-engineering, per se, as I do about what I call “Modern Management Practices,” including:
Flatter organization. Everybody talks about it, but it’s difficult to cut the fat and push front-line employees and managers to work together.
Fanatic customer focus. Your customer is, has been, and always will be your No. 1 priority. Live, eat, and breathe your customer’s business.
Greater flexibility. You must find ways to function more efficiently and to be more responsive to change.
Business partnering. Tom Peters calls the outsiders you now call insiders “Super-Subcontractors” or Super-Subs. You must outsource the parts of your manufacturing that don’t relate to your core competency, but don’t outsource just to save costs.
You can re-engineer to accomplish these goals. Or you can just take a long look at yourself in the mirror. If you like what you see, then you probably don’t need to make many changes. If not, you might have to re-engineer, but be careful.
Incidentally, you can try to redevelop your software applications after you have re-engineered. But depending on software re-engineering to improve your business is like expecting a dog to bark when you show it a picture of a cat.
Here’s an idea that more and more CIOs are picking up on: Re-engineer your IT organization.
Your company, if it’s been around long enough, probably is suffering from the “GM” organizational model: big, functional departments full of what I call “ankle-peckers” who do nothing all day but annoy the people who are trying to build and sell your product to your customers. Your IT organization has dutifully followed big brother’s lead and organized itself into anemic functional departments such as systems programming, applications development, and network management.
So, you have to re-engineer your IT organization. But this won’t work unless your CIO-who, in re-engineering terms, is the process owner-buys into the project, which focuses on the same four categories mentioned above.
- Hierarchy serves IT even less well than it does your company as a whole. You and your CIO have to get down to the IT organization’s core competency (technology) and then flatten.
- IT has two customers, but the internal ones aren’t as important. You and your CIO have to refocus IT staffers on delivering value to your real customers: the people who buy your products.
- The IT organization must be more flexible. This means not only being better able to adopt and use new technologies, but to be prepared for the large change-both organizationally and in terms of the company’s marke that naturally takes place.
- Rather than fearing outsourcing, IT needs to be aware of, and partner with, outside vendors that can help it add value. If an outside organization can provide better help-desk services, contract programming, or consulting, IT should take the lead in striking partnerships, rather than being forced to do so by a cost-cutting initiative.
One caveat about outsourcing: Intergalactic outsourcing agreements are all the rage, and they certainly put a lot of money in the service providers’ pockets. However, they rarely work. More important, you should outsource on a best-of-breed basis, so that the systems integrator works for you, and so that his or her staffers work on-site in your company, understand your business and applications, and can make the right decisions about your data center and computer equipment.
Re-engineering is both good and had. It is good for organizations-and good for IT-if it is applied properly. It is bad for software unless and until the company has dealt with all the other important priorities.
Randall K. Fields is chairman and chief executive of Park City Group, a Utah-based developer of the PaperLess Management concept, which utilizes flexible electronic management systems.