530 likes | 671 Views
Chapter 7. CASE Tools and Joint and Rapid Application Development. Learning Objectives. Understand the history and evolution of CASE tools Understand the motivations to adopt CASE in the modern organization Understand the various levels of CASE tool integration. Learning Objectives.
E N D
Chapter 7 CASE Tools and Joint and Rapid Application Development
Learning Objectives • Understand the history and evolution of CASE tools • Understand the motivations to adopt CASE in the modern organization • Understand the various levels of CASE tool integration
Learning Objectives • Appreciate the advantages and disadvantages associated with CASE tool adoption and use • Learn the components, relationships, and functions contained in a modern CASE tool • Understand the processes associated with JAD
Learning Objectives • Learn the various participant roles associated with a JAD session • Understand the relationship between the RAD approach and the traditional SDLC
Introduction • In an effort to improve the overall efficiency and effectiveness of the development activities, IS professionals have developed several tools and techniques to automate certain activities. This chapter focuses on two such developments: (1) CASE tools and (2) RAD techniques.
CASE Tools • Computer-Aided Software Engineering • Software development is extremely labor intensive • Tools that aid software engineer in maintaining and developing software
Table 7-1. Development Costs for Several Modern Software Applications
CASE Tools • Support each phase of the SDLC • Upper CASE • support the early phases of the life cycle • Lower CASE • support the implementation phases of the life cycle • Life-cycle-spanning CASE • support the entire SDLC (Integrated CASE)
CASE Tools • Good News • Productivity • Time • Quality • Documentation • Standards enforcement
CASE Tools • Bad News • Expensive • ROI is longer than the organization would prefer • Lack of organizational policies and standards
Table 7-5. The Good News and the Bad News About CASE Tool Adoption
Components and Functions • Central Repository • Central storage and retrieval location for all related information • Allows portions of prior systems to be reused in new applications
Figure 7-4. Typical Elements Stored in CASE Tool Central Repository
Components and Functions • Modeling and Diagramming Tools • Process Modeling Tools • Function Hierarchy Diagramming Tools • Server Modeling Diagramming Tools
Figure 7-6. CASE Tool Server Model Diagram (Oracle Designer)
Figure 7-8. CASE Tool Entity-Relationship Modeler (Oracle Designer)
Components and Functions • Prototyping and Transformation Tools • Application Transformers • Database Transformers • Form and Report Generators
Components and Functions • Documentation Generators • Generate phase-specific documentation • Create a set of master templates to be used for each phase of the life cycle
Components and Functions • Code Generators • Produce high-level source code from various components in the central repository • Reverse engineering: generate design specification and models from existing program • Reengineering functions: provide tools to analyze the logic of the program
Figure 7-9. Sample Screen From Classmapper Reverse Engineering Tool
Figure 7-10. UNIX-based Application Before Reverse Engineering
Components and Functions • The concept of Integration • Data Integration • Control Integration • Presentation Integration
The Future of CASE • New and more powerful development tools • Artificial Intelligence (AI) • Expert Systems • Case-based reasoning
Joint Application Design • Bring together the users, managers, and technical personnel to conduct a series of structured intensive information-gathering workshops • Enhance the development of a shared understanding among the system stakeholders
JAD Session • Usually held at a location other than the typical workplace • Avoid distracting environment • Detailed agenda is a necessity
JAD Team • JAD Facilitator • Management Sponsor • Information Specialists • Scribe • End Users
JAD Session Tasks and Objectives • Identify all stakeholders and clarify executive goal. • Scope out general requirements from each of the users' perspectives. • Reconcile and then summarize each user's view of the product with the executive goal. • Define interaction of the product with users, other products or systems, and the organization. • Concur on business justification, time box, and cost box for project.
JAD Session Tasks and Objectives • Define ways in which users will interact with 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 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.
JAD Advantages • Create a sense of involvement • Allow for the simultaneous gathering and consolidating of information • Resolve discrepancies at early stage
JAD Disadvantages • Extreme commitment of a large number of employees • Might still exclude some important personnel • Lack of diplomacy and communication skills among employees
Rapid Application Development • A series of techniques to compress the analysis, design, build, and test phases into a series of short, iterative development cycles
Application Development with RAD Approach • Use of small, well-trained development teams • Construction and review of iterative, evolutionary prototypes • Reliance on integrated development tools that support modeling, prototyping, and component re-usability (CASE) • Construction and maintenance of a central repository • Heavy reliance on interactive requirements and design workshops (JAD) • Adherence to rigid limits on development time frames
Figure 7-15. Differences Between Traditional Lifecycle and RAD Approach
RAD Activities • Process Model • Data Model • Parallel Development
Table 7-9. Situational Characteristics to Consider When Adopting RAD
Table 7-10. Comparison of the Advantages and Disadvantages Associated with the RAD Approach