250 likes | 382 Views
Contemporary Information Systems Development. Chapter 10. Chapter Objectives. Explain emerging approaches for collecting and structuring the information needed to design and construct an information system
E N D
Contemporary Information Systems Development Chapter 10
Chapter Objectives • Explain emerging approaches for collecting and structuring the information needed to design and construct an information system • Describe prototyping, rapid application development, and object-oriented analysis and design • Understand how and why to use several automated tools for supporting contemporary development
Contemporary Methods for Collecting and Structuring System Requirements • Critical Success Factors (CSF) • Joint Application Requirements (JAR)/Joint Application Design (JAD)
Critical Success Factors (CSF) • Something that must go well to ensure success for a manager, department or company • How the CSF approach works • Select people from a cross-section of the major functional areas • Ask each person to define his or her own CSF • Merge personal CSF to create set of organization-wide CSF
Strengths Understandable by senior managers Provides structured process for collecting information needs of company Weaknesses Can lead to an over-simplification of a complex situation Hard to find analysts to perform the CSF process Not user-centered Strengths and Weaknesses of the CSF Approach
Joint Application Requirements (JAR)Joint Application Design (JAD) • Group-based methods for collecting requirements and creating designs • How the JAD approach works • Held in a conference room or a special-purpose JAD room • JAD expert facilitator helps group work effectively • Scribe records jointly agreed-upon design information
Strengths More people involved in the effort Provides greater acceptance of new system Training and support costs significantly lower Weaknesses Difficult to get all relevant users together Inherent group process problems Strengths and Weaknesses of JAD
Contemporary Approaches for Designing and Building Systems • Prototyping • Rapid Application Development • Object-Oriented Analysis and Design
Prototyping • Uses a “trial-and-error” approach • How Prototyping Works • Interview users of the system • Develop a prototype of the new system • Share with users • Users preview and ask for changes • Modify the prototype again; share with users • Continue process until users approve the system
Strengths Develops close working relationship between designer and users Best method for systems with hard-to-define specifications Works well with other development tools Weaknesses Not appropriate for every type of system Sometimes rushes the development process Strengths and Weaknesses of Prototyping
How RAD works Prototyping Computer-based development tools Special management practices Close user involvement Four-phased methodology Requirements planning User design Construction Move to the new system Rapid Application Development (RAD)
Strengths Has active involvement of users Produces a system in a fraction of the time normally needed Weaknesses Can limit systems in functionality and flexibility for change May not be of highest quality Strengths and Weaknesses of Rapid Application Development
Object-Oriented Analysis and Design (OOA&D) • Uses object-oriented languages (OOP) with reusable modules • How OOA&D works • Requirements broken down into smaller and smaller pieces called “modules” • Modules defined, programmed, and then pieced together to create the system • Has a tight coupling between data and the operations performed on them
Strengths Forces designers to integrate their thinking Can improve quality Can reduce development time Objects can be reused by other systems Weaknesses Needs retraining of existing analysts and programmers No research to support claim of higher quality or reduced time Many programmers do not search for reusable code Strengths and Weaknesses of OOA&D
Tools for Supporting Contemporary Systems Development • Computer Aided Software Engineering (CASE) • Group Support Systems • Advanced Programming Languages
Computer Aided Software Engineering (CASE) • Automated software tools used to develop information systems • Upper CASE • Used to automate the first three phases of SDLC • Lower CASE • Used to automate the last two phases of SDLC
General Types of CASE Tools • Diagramming tools • Screen and report generators • Analysis tools • Repository • Documentation generators • Code generators
Group Support Systems • GSS technology used to structure and coordinate group processes • GSS + JAD = Electronic JAD (E-JAD) • Using GSS software to support JAR / JAD activities
Advanced Programming Languages • Visual Programming • Allows developers to quickly build new user interfaces, reports, and other features • Object Oriented Programming (OOP) • Creates reusable objects • Fourth-Generation Languages and Beyond • Allows users to request information with easy to use syntax