Table of Contents

Reusability: A Pragmatic Model to Drive Profitable Applications Development (Performance)

Created at 26 NOV 1996 03:10PM

Code Repositories, Skills, Databases Can All Be Extended, Redeployed To Maximize Investments

The Monolithic Application is Dead - Long Live the Component!

As investments in client/server architectures begin to bear fruit and Internet/Intranet applications development becomes feasible, it has become clear that forward-thinking companies have rejected the 18-24-month massive-application development cycle. Requirements shift too quickly to support such a lengthy development phase.

The failure of these strategies holds lessons for today s developers. The dynamics and economics of the business systems environment have substantially shifted, rendering the traditional systems development model ineffective.

A Gartner Group study concluded that approximately 85 percent of the cost of a business application is allocated to the labor involved in developing and maintaining that application. These findings serve to reinforce the objective of adopting a more responsive process for the development of flexible applications that can evolve as the business evolves.

Instead, new client/server and Internet/Intranet architectures lend themselves to rapid, iterative development cycles. With the pressure of global 24-hour markets, increased competition, and shifting technical landscape, the cycle now lasts only a few months - from prototype to production.

Factors Driving Modular Applications

Today, applications run in a different context than five years ago. Developers and users have access to more powerful processors on clients and servers. Faster networks and more sophisticated operating systems give more power, but also more complexity. MIS staffs are leaner, necessitating greater productivity. Applications are distributed on multiple servers in multiple countries and must be modular in structure. Object-oriented development will be the dominant paradigm for the foreseeable future. Finally, there is no application maintenance just continuous improvement.

The Key to Rapid, Modular Development: Component Reuse

These rapid, iterative cycles of modular development have one overriding requirement: reusability. Reuse can bring benefits in several ways:

Reusing Code Through "Componentization"

Monolithic development cycles are no longer merely pass , they pose serious risks to the organization. Development teams must exploit existing resources, skills, and experience through a variety of re-use strategies in order to achieve simultaneous goals of increasing application deliver volumes as budgets and timeframes continue to shrink.