CASE Tool Components Central Repository Process Modeling Tools Detailed Analysis Tools Transformation Tools Database/Application Design Tools Application Generation Tools
CASE Tool Repository Central Repository Project Documentation Form and Report Layouts Logical Model Diagrams Program Source and Object Code Detailed Analysis Findings General Project Information Data Element Specifications Reusable Code Libraries
Large-Scale JAD Environments Management Deliberation Center Defense Systems Management College Fort Belvoir, VA Air Force Innovation Center Pentagon Washington, D.C. Glensidige Insurance Oslo, Norway Center for Performance Improvement Soza and Company, Ltd. Fairfax, VA
SDLC versus RAD Preliminary Investigation Analysis Logical Design Physical Design Implementation Maintenance Requirement Planning User Design Construction Cutover Traditional SDLC RAD Life Cycle
RAD Reduces Time 2 4 6 8 10 12 14 16 18 20 22 24 26 Project Months RAD Reduces Time Requirements Planning User Design Construction Cutover Traditional SDLC 8 7 6 5 4 3 2 1 E f f o r t
Comparative Software Development Costs Product Cost $ Effort (man years) Lines of Code Lotus 1-2-3 V 3.0 22,000,000 263 400,000 NASA Space Shuttle 1,200,000,000 22,096 25,600 2000 Lincoln Continental 2,800,000 37 93,500 Modern Automatic Teller Machine 13,200,000 150 780,000 IBM Retail Checkout Scanner 3,000,000 58 90,000
CASE Tool Adoption Objectives Create development process standards Improve overall application quality Decrease design time and improve time to market Decrease required effort and time in application testing Encourage integration of development projects Improve effectiveness of project management activities Decrease required effort and time in application maintenance activities Promote organization-wide reusable program code Improve portability of applications across platforms and operating environments
Identify all stakeholders and clarify executive goal.
Scope out the general requirements from each of the users' perspectives.
Reconcile each user's view of the product with the executive goal into one summary.
Define the interaction of the product with users, other products or systems, and the organization.
Concur on business justification, time box, and cost box for project.
Define the ways in which the users will interact or use the new product. Collect samples of desired inputs and outputs from users. Stick to business processes first, then drill down for data needed and known.
Prioritize the user interaction scenarios by collective user preference and risk.
Validate and review the user interaction scenarios.
Organize the interactions scenarios, constraints, assumptions, and other requirements into a rigorous Software Requirements Specification.
Design (with technical help) the screen and report layouts. Prototypes are handy for this.
RAD Activities and Deliverables Requirements Planning User Design Construction Cutover Primary Activity Model and prototype requirements Model and prototype design Complete application development Install application Data Conversion Define data requirements Plan and design data conversion Develop data conversion modules Implement conversion plan Testing Design application test plan Conduct user testing End-user Training Define training requirements Design training plan Produce training materials Conduct end-user training