Transcript Modern Systems Analysis and Design Joey F. George Jeffrey
19.1
Modern Systems Analysis and Design
Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich
Chapter 19 Rapid Application Development
Copyright 2002 Prentice-Hall, Inc.
19.2
Learning Objectives
Explain the Rapid Application Development (RAD) approach and how it differs from traditional approaches to information systems development Describe the systems development components essential to RAD Discuss the conceptual pillars that support the RAD approach Explain the advantages and disadvantages of RAD as an exclusive systems development methodology
19.3
Rapid Applications Development (RAD)
Systems development methodology created to radically decrease the time needed to design and implement information systems radically.
Five key factors 1. Extensive user involvement 2. Joint Application Design sessions 3. Prototyping 4. Integrated CASE tools 5. Code generators
19.4
The Process of Developing an Application Rapidly
RAD is a general strategy rather than a single methodology Goals To analyze a business process rapidly To design a viable system solution through intense cooperation between users and developers To get the finished application into the hands of the users quickly Traditional SDLC steps are followed, but phases are combined Iteration is limited to design and development phases
19.5
Components of RAD
User involvement is key to success Prototyping is conducted in sessions similar to Joint Application Design (JAD) Prototyping screens become screens within the production system CASE tools are used to design the prototypes
19.6
Approaches to RAD
Martin’s pillars of RAD Four pillars Tools People Methodology Management Conversion to RAD within organization should be done with a small group of well-trained and dedicated professionals, called a RAD cell Over time, cell can grow until RAD is the predominant approach of the information systems unit
19.7
Approaches to RAD
McConnell’s pillars of RAD Four pillars Avoid classic mistakes Apply development fundamentals Manage risks to avoid catastrophic setbacks Apply schedule-oriented practices Table 19 1 lists some of McConnell’s 36 classic development mistakes
Approaches to RAD
19.8
McConnell’s pillars of RAD (continued) Development mistakes Weak personnel Employees that are not as well trained in skills necessary for success of the project Silver-bullet syndrome Occurs when developers believe that a new and untried technology is all that is needed to cure the ills of any development project Feature creep More and more features are added to a system over course of development Requirements gold-plating Project may have more requirements than needed
19.9
Approaches to RAD
Software tools Case tools can be used for Prototyping Code generation Example: COOL:Gen Visual Development Environments Visual Basic Delphi
19.10
Approaches to RAD
Martin’s RAD Life Cycle Systems requirement determination is done in context of a discussion of business problems and business areas User Design End users and IS professionals participate in JAD workshops CASE tools are used to support prototyping Construction Designer creates code using code generator End user validates screens and other aspects of design Cutover New system is delivered to end users
19.11
RAD Success Stories
Inprise/Borland’s Delphi U.S. Navy Fleet Modernization Requirements Move from three character-based systems to a unified, GUI-based system based on a single database Reasons for choosing Delphi Support for rapid prototyping Promise of re-use of components Outcome System developed in 6 months Estimated development savings of 50 percent New system resulted in immediate 20 percent savings due to reduced maintenance costs
19.12
RAD Success Stories
Inprise/Borland’s Delphi (continued) First National Bank of Chicago Electronic Federal Tax Payment System Delphi enabled rapid prototyping and development 10 months of development time 125 programmers 250 million rows of data and 55 gigabytes of data on-line
19.13
RAD Success Stories
VisualAge for Java Comdata Modular Over the Road System (MOTRS) IBM Global Services chosen as vendor Servlets Programming modules that expand the functions of the Web server Applets Embedded code run from client browser Nine months to completion Three months of research Three months of coding Three months of testing
19.14
Advantages
Dramatic time savings the systems development effort
Disadvantages
More speed and lower cost may lead to lower overall system quality Can save time, money and human effort Tighter fit between user requirements and system specifications Works especially well where speed of development is important Ability to rapidly change system design as demanded by users Strong user stake and ownership of system Danger of misalignment of system developed via RAD with the business due to missing information May have inconsistent internal designs within and across systems Possible violation of programming standards related to inconsistent naming conventions and inconsistent documentation Difficulty with module reuse for future systems System optimized for users involved in RAD process Concentrates on essential system elements from user viewpoint Lack of scalability designed into system Lack of attention to later systems administration built into system High cost of commitment on the part of key user personnel
19.15
Summary
Rapid Application Development Approach (RAD) Components of RAD Conceptual pillars that support RAD RAD success stories Advantages and Disadvantages of RAD