Content area
The assembly line approach can be adopted for software development by automating process management. Process management is essential in client/server application development because a client/server environment is more complex than a centralized one. Process management is a subset of project management, which also encompasses test, change, and configuration management. Approaches to process management differ. Some firms favor the decentralized approach, where central MIS defines application development processes and departments decide which process they will follow based on their business requirements. Others favor a completely centralized approach, with no room for adaptation. The MIS department at Matsushita Electric Corp. of America is implementing its own process management methodology based on ABT's Total Project Management Suite. At First Union Corp. MIS defines core requirements and processes for all projects, but leaves it up to the individual unit to decide whether to adopt all the processes when beginning a development effort.
Full text
TAKING AN "ASSEMBLY-LINE" APPROACH TO SOFTWARE DEVELOPMENT ENSURES REPEATABLE PROCESSES
Perhaps the most important thing Henry Ford did when he automated the automobile manufacturing process was to introduce a new industry paradigm. Once the basic process had been defined, manufacturers could add or subtract processes without having to invent a new way of building cars every time. They saved time and money, increased productivity, and, because workers only had to learn new processes, minimized training costs. This approach has since been adopted throughout the manufacturing world.
The assembly-line approach can also be adopted for software development by automating process management. "People are now trying to build application factories with automated process management so that it's more or less an engine you use to build applications," said Peggy Ledvina, an analyst with Meta Group, a consultancy in Stamford, Conn. "That way, if you need to add more features, you add new processes to the code and don't have to rewrite the application."
But there's another benefit in automating process management, said Gopal Kapur, president of the Center for Project Management, a consultancy in San Ramon, Calif.: It ensure processes are not forgotten. "The major calamity in application development today is the lack of documentation," he said. "Most people start from scratch, forget many of the tasks to include, and then discover this late in the game."
Both Kapur and Ledvina say process management is essential in client/server application development because a client/server environment is more complex than a centralized one. "You have to consider things like how to connect to the database, how to manage traffic across the network, what are the implications if you build an application, and whether there's a need for additional testing," said Ledvina. The move to component- or object-based application development, she said, is a "whole new paradigm." And because the client/server application development tools market is changing so rapidly, process management packages give users "something to follow," she added.
Process management is a subset of project management, which also encompasses test, change and configuration management. Both process and project management should be independent of methodologies, said Ledvina. "You can use the same methodology as in the mainframe environment, but the scenario or way in which you apply it is different," explained Ledvina.
Furthermore, project management doesn't change just because processes change, said Kapur. "Many firms have misconstrued that if they use a different methodology from the one they have, they'll have to use a different project management approach. That's not true."
The leaders in process management technology have all combined process and project management, said Ledvina. She lists them as LBMS Inc., Houston, Applied Business Technology Corp. (ABT), New York City, Protellicess Software Inc., Santa Monica, Cali (acquired in December by Platinum Technology Inc.), and Seca Inc., Blue Bell, Pa. Other players in this space include consultancies and/ or system integrators such as Andersen Consulting and Coopers & Lybrand.
Approaches to process management differ. Some firms favor the decentralized approach, where central MIS defines application development processes and departments decide which processes they will follow based on their business requirements. Others favor a completely centralized approach, with no room for adaptation. Some buy methodologies, while others develop their own.
The MIS department at Matsushita Electric Corporation of America (MECA), Secaucus, N.J., for example, is implementing its own process management methodology based on ABT's Total Project Management Suite, said Bob Parker, general manager, Application Services Group.
The suite consists of Project Workbench, which handles scheduling, tracking, reporting and analysis functions; Project Bridge Modeler, a planning and estimating system; Metrics Manager, a data collection and reporting tool built on a Microsoft Access database; and Methods Architect, a tool for customizing methodologies. Methods Architect, says ABT, divides a methodology into segments: "method parameters," covering risk factors, project complexity and role definitions; "project models," the work structure templates; and "hypertext guidelines," which provide online access to procedures and task definitions.
"We're tailoring the work breakdown structures and hypertext, and tailoring and defining the description of deliverables to our environment," said Parker. Based on these, MIS will create templates of repeatable processes. "There are certain processes you're going to go through regardless of the size of projects you're involved in, and these will be repeated across the work breakdown structures," Parker said.
Parker's staff has adapted the ABT methodology's vocabulary to that of MECA's - a task Parker described as "onerous." Terms adapted included the names of MECA's organizational units and the roles they play. MIS is storing this information in a project management handbook that gives guidelines for using the project management system, Parker said.
Business Needs Dictate
At First Union Corp., MIS defines core requirements and processes for all projects, but leaves it up to the individual unit to decide whether to adopt all the processes when beginning a development effort. "Our methodologies are no more than recommendations for developers, so they have the flexibility to customize projects to fit their needs," said Lee Burton, assistant vice president. He admits this sounds a little unstructured, but said this approach "lets developers do the best job they can from the viewpoint of their organization's business needs."
Those needs are many and varied. Headquartered in Charlotte, N.C., First Union has branches in Florida, Georgia, Maryland, Virginia, Pennsylvania, the District of Columbia and Connecticut. It has two data centers in Charlotte and a third in Jacksonville, Fla., which employ about 1,700 developers. The branches have mainframes running MVS/ESA, HP 9000s running Unix, AS/400s, and PCs running OS/2 and Windows. And, according to Burton, the bank has "tens of thousands" of end users.
Developer freedom begins and ends at the front end, however; there's no leeway on application development for the back end. For process management, First Union has developed its own methodologies. For Windows applications, developers use Microsoft Project for project management and Smalltalk from ParcPlace-Digitalk Inc., said Burton. On the mainframe side, the bank is using APS from Intersolv Inc., Rockville, Md., which generates Cobol II code.
While First Union has automated process management for mainframe-based application development, most PC application development is still manual. "We've had some successes and failures with various tools, but our staff wants to continue working with what they're familiar with - the manual processes," said Burton. "A lot of that has to do with the complexity of tools out there and the fact that, in some cases, the products have not lived up to what they're supposed to do."
At Chemical Bank, New York City, "You won't see a centrally dictated methodology because the business units realize that the centralized viewpoint creates the same problems we had in the mainframe environment you can't get the responsiveness you need to meet customer needs or change," said Rich Lansing, vice president, advanced technologies in Chemical Bank's Geoserve unit. Chemical is in the process of merging with Chase Manhattan Bank.
"We're a decentralized business organization so our business units choose technologies based on their business needs," said Lansing. Still, he said, there's a strong impetus to centralize to keep costs down.
The solution represents a compromise: Management determines process management policies, but lets business units select their own methodologies as long as they are modified to fit those policies, Lansing said. Most policies deal with management reporting issues.
This decentralization carries over to in-house vocabularies. "Each business unit modifies the vocabularies of methodologies purchased," Lansing said. This, he said, does not affect functionality: "If development team A is using vocabulary A in methodology A, it doesn't matter what's being used in development team B."
Small Successes
At Sprint Corp.'s Business Systems Development Division in Rancho Cordova, Calif., the vision of a software development assembly line predominates. "We want to make development a standardized, repeatable process," said Rich Burns, project manager, business systems development. The firm is adopting this model in its Sacramento-based Billing Systems Development Division. Developers use Sun Sparc2000s running both Solaris 2.4 and Unix.
Burns' team bought AD/Method for Client/Server, a client/server methodology from the former Protellicess Software, and then customized the package's project management template. By incorporating some deliverables from their previous process management methodology - an in-house version of the Stradis information engineering methodology from Structured Solutions Inc. - they "tried to make process management and project management milestones match each other in a short life cycle." Burns wants to limit the development life cycle to 16 weeks so they can get several iterations within the application development process. "You want to go for many small successes rather than one big success," he said.
AD/Method for Client/Server covers several application development phases, including system scoping; initial analysis; detailed analysis; client/server architecture design; user interface design; design, construction and testing; and distribution and installation.
In customizing the AD/Method methodology, Burns and his team followed the first three steps recommended by Kapur for those purchasing their process management packages. First, they eliminated any modules, tasks or deliverables they didn't need. Second, they adapted AD/ Method's vocabulary to their own, storing the new vocabulary in a project binder. To that project binder, they then added in-house business processes and software development process terminology. (See "With PM Packages, Customization Comes First," this page.) Burns, however, won't use templates because, with the 16-week life-cycle timeframe, "we can scale the work to fit into the process rather than scale the process to fit into the work."
Not all corporations have to adapt the vocabulary of purchased process management software. Such was the case at Denver-based Rocky Mountain Health Care Corp., parent company of several Southwestern Blue Cross/Blue Shield agencies, which is consolidating technologies and business processes across its companies. The firm is using the IE-Expert Blueprint Methodology, an online knowledge base of information engineering and RAD methods, and Architect 6.0, a process management suite, both from James Martin & Co., Fairfax, Va.
"It's better to bring in an off the-shelf package that you can impose standards on," said Randi Albright, methodology project manager. "This way, the vendor decides, and we can change some of our business practices to meet the needs of the package. But we make sure the technology meets our business requirements at the higher level, not the day-to-day level."
In keeping with the decision to let the vendor's products set the standards, Albright is using the James Martin vocabulary. "It's pretty standard, with entity relationships and diagrams and things like that, and we're adapting to it," she said. According to Kapur, Albright's approach is appropriate for her situation - a new company that does not have an established vocabulary can use the vocabulary from an off the-shelf package, he said. Albright does have a project binder for vocabulary and other processes, although it is stored online rather than in hard copy form. Business processes are added to the binder online through Windows files.
A goal of the firm as it reengineers processes is repeatability. "We're definitely repeating the process in terms of using structured approach, using the same types of diagramming and process modeling," Albright said.
An assembly-line approach to application development, it seems, appeals to development organizations. Still, for those developers adopting this approach, and automated process management in general, there's a caveat: Remain sensitive to user needs. Henry Ford's dictum that customers could buy a Model T in any color as long as it was black isn't acceptable today.
RICHARD ADHIKARI is a freelance writer based in North York, Ontario, Canada.
Copyright Sentry Publishing Company, Inc. Mar 1996