This is the Jifuh in a series on rapid appli- cation develop- ment (RAD), a development methodology de- signed to yield much faster re- sulis than tradi- tional methods. Rapid applica- tion develop- ment, as Ive said before, is a new life-eycle process that harnesses the major increase in productivity that can be achieved by " small tešms of highly motivated devel- opers using integrated computer-aided software engineering (CASE) tools. Al- Uhough the success of RAD is primarily due to innovative management. tech- nigues (to be discussed in future col- uumins), advances in applications-develop- ment technology also play a major role. An important component of the RAD life-eycle process is the use of integrated CASE (CASE) tools to develop entire applications from design specifications. Small teams of analysts are intensively trained in the use of CASE tools and in a methodology optimized to achieve 'high speed development. As shown in the figure, [CASE prod- ucts incorporate separate workbench components for each aspect of the appli- cations-development process, including strategic planning, analysis, design and code generation. Additional components support documentation generation, data- base generation and project management. The front-end planning, analysis and design components of these products are closely integrated with the back-end ih code, database and documentation-gen- b eration facilities through the use of a common repository of design specifi- cations. Specifications developed by individual designers are stored in a personal repos- itory on the PC. Specifications from multiple project analysts on a LAN are consolidated in a project-level repository necessed via a file server on the LAN. Design specifications that are common across lhe organization are stored in a £arporale-evel repository on a central a m an increasing number of co; ? lions, all the components of CASE na including the code generator, »eIng run on desktop workstations. These tools provide zet, SRN Ivanced CASE tools used rporate features such as graphical design aids, automated formance Ga ei . a kedaj Some information systems organiza- Mions (hat have been using third genera. tion languages such as COBOL are ; choosing to leapfrog current fourth-gen- PO WEEKNAPPLIGATION DEVELOPMENT i, | APPLJED INTELLIGENCE | eration language technology and move directly to the next generation of tools—integrated CASE workstations closely coupled to efficient, desktop code generators. CASE tools must have certain charac- teristics to be effective in RAD life cy- cles, but many of the CASE tool sets on the market lack these characteristics. At first glance, the tools appear spec-'! tacular with their flashy graphics, but they fail to incorporate some of the '! most important features reguired for ';.' RAD. Among these are support for the! entire life-cycle process, an integrated code generator capable of generating 100 percent of the code for an applica- Analysis Workbeoh Workbench ši Indlvidual-Level r—— Facility on a PC PC-Level Design Analyzer Project-Level i h o oldelloi | nalysis and brojectieve Management Repositori, 'The meaning represented by diagrams and their detail windows is stored in a repository—the heart of an I-CASE sys- tem. The repository steadily accumu- lates information relating to the plan- ning, analysis, design, construction and, later, maintenance of the systems. An integral part of repository-based systems is a design analyzet, which en- sures consistency among the different 1 pleces of knowledge that reside in the repository. When a person using a workstation en- ters new information into that worksta- ! tion, the design analyzer checks whether | it obeys the rules and is consistent with what is already in the repository. Design Workbeneh [Emi Code- | Sereratioi Workbenc Il Corporate- Level Consolidation and Analysis Corporate-Level Faciikilh i On a Mainframe. ; i h The most advanced CASE tools used for RAD can generate efficient code that can be used without performance penalty in a heavily loaded transaction-processing environment. tion and support for a life-eycle process that is optimized for high:speed develop- an individual or design ment. The manager of systems develop- familiar with the entire set č V gy and shows why RAD technigues ment must select tools ihat can support. or te črpa Projecelevel repository. | vide far more productivity than the con. : etneleneg a obtvet , development | dividual HR EI le - ventional development process. Hi A ; |. ske will extract the information i K pe eva IS pa (at dia v | Pl a mala rje Clear thinking. The syste; alyst Martin Report Serie. nes the front-end ori tatjom ea The individual May, for example, ex- — mation on this ei ( PEKE, of an integrated CASE tool to define de. | ue oe UI 0 8 data model. He may | 1240. For information on seminar sign specifications by menns of dia. "o. te designing the detajl of a process that ' contact (in the United States and. Can- in generated by in- se; ig sbown in a higherlevel repre: — ada) Technology Transfer Institute, teracting with the CASE tool, represent, peri He then works on his design, 741 10th St, Santa Monica, Calif. h, o v ra v drevo. gle raja ri om ta flows, : vant, 2 New St, Carnforth, detailed designs and p tes, | je) neR the design la ready for revi La: ; "vgra struciures. | it can be consolidateg uti dna non (masi) zah ba United Kingdom f | ti Hi | — ZNE Vonn i Hi — [o — Pre ———. TS —5— | need for a new development methodolo- JANUARY 22, 1990 Nam A ————-——— "integrated CASE Tools a Must for High-Speed Development le already in the project-level reposi- Še When the design is coordinated and approved, it will reside in the project-level repository, where it is available to other designers in the team. Š The simplest CASE tools are little more than diagramming aids—word processors for diagrams. They simplify the drawing of diagrams and enable them to be modified guickly and kept ' up to date. Most CASE tools incorporate a design analyzer, which detects logical errors and inconsistencies at the design stage. More sophisticated CASE tools are re- guired to support RAD. The tools should provide integrated support for each of the four stages of development: plan- ning, analysis, design and construction. An ICASE environment provides an integrated set of tools for all phases of the life-cycle process. The term "I-CASE" should be used only to describe products with this level of integration. In an CASE tool, the front-end work- benches and the code generator use a common repository to generate program code, database code and documentation for the entire application. The code that is generated should never be touched by maintenance programmers; all mainte- nance is performed at the specification level. ' h 'The integrated CASE tool should do the following: facilitate the rapid building and modification of prototypes; generate system documentation; generate test data and provide testing tools; and generate database code and job control code so that the program can be guickly execut- ed when design changes are made. Prototyping Is Essential Prototyping is dn important part of the RAD life cycle. It is essential to show the users what they're going to get, allowing them to react to it. The RAD tool set. must include the prototyping capability to create sereens and dialogues guickly and to modify them while interacting with users. The ability to generate code, test, it, modify it guickly and regenerate it makes RAD prototyping different from conventional prototyping. With RAD, the evolving prototype is not discarded but is part of the final system. This is an essential element of RAD. The prototype should become the final system. It should deliver the machine performance, reliability and other fea- tures reguired by the final system. Next week's column discusses the w