Modern Systems Analysis and Design
Sixth Edition
Jeffrey A. Hoffer Joey F. George Joseph S. Valacich
Chapter 1 The Systems Development Environment
Edited for DCS 5138 (Tri 2 2010/2011)
Learning Objectives
Define information systems analysis and design. Describe the information Systems Development Life Cycle (SDLC). Explain new approaches in development.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
Introduction
Information Systems Analysis and Design
Complex
organizational process Used to develop and maintain computerbased information systems Used by a team of business and systems professionals
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
Introduction (Cont.)
FIGURE 1-1 An organizational approach to systems analysis and design is driven by methodologies, techniques, and tools
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
A Modern Approach to Systems Analysis and Design
1980s: major breakthrough with 4GL, CASE tools, object oriented methods 1990s: focus on system integration, GUI applications, client/server platforms, Internet The new century: Web application development, wireless PDAs, componentbased applications
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
A Modern Approach to Systems Analysis and Design (Cont.)
Application Software
Computer
software designed to support organizational functions or processes role most responsible for analysis and design of information systems
Systems Analyst
Organizational
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
Developing Information Systems
System Development Methodology is a standard process followed in an organization to conduct all the steps necessary to analyze, design, implement, and maintain information systems.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
Systems Development Life Cycle (SDLC)
Traditional methodology used to develop, maintain, and replace information systems. Phases in SDLC:
Planning Analysis Design Implementation Maintenance
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
Standard and Evolutionary Views of SDLC
FIGURE 1-2 The systems development life cycle
FIGURE 1-3 Evolutionary model
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
Systems Development Life Cycle (SDLC) (Cont.)
Planning an organizations total information system needs are identified, analyzed, prioritized, and arranged Analysis system requirements are studied and structured
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
10
Systems Development Life Cycle (SDLC) (Cont.)
Design a description of the recommended solution is converted into logical and then physical system specifications Logical design all functional features of the system chosen for development in analysis are described independently of any computer platform
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
11
Systems Development Life Cycle (SDLC) (Cont.)
Physical design the logical specifications of the system from logical design are transformed into the technology-specific details from which all programming and system construction can be accomplished
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
12
Systems Development Life Cycle (SDLC) (Cont.)
Implementation the information system is coded, tested, installed and supported in the organization Maintenance an information system is systematically repaired and improved
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
13
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
14
Traditional Waterfall SDLC
One phase begins when another completes, with little backtracking and looping.
FIGURE 1-9 A traditional waterfall SDLC
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
15
Problems with Waterfall Approach
System requirements locked in after being determined (can't change) Limited user involvement (only in requirements phase) Too much focus on milestone deadlines of SDLC phases to the detriment of sound development practices
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
16
Different Approaches to Improving Development
Prototyping
CASE
Tools Rapid Application Development (RAD) Service-Oriented Architecture (SOA) Agile Methodologies eXtreme Programming
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
17
Prototyping
Iterative development process: Requirements quickly converted to a working system System is continually revised Close collaboration between users and analysts
Computer-Aided Software Engineering (CASE) Tools
Diagramming tools enable graphical representation. Computer displays and report generators help prototype how systems look and feel.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
19
Computer-Aided Software Engineering (CASE) Tools (Cont.)
Analysis tools automatically check for consistency in diagrams, forms, and reports. A central repository provides integrated storage of diagrams, reports, and project management specifications.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
20
Computer-Aided Software Engineering (CASE) Tools (Cont.)
Documentation generators standardize technical and user documentation. Code generators enable automatic generation of programs and database code directly from design documents, diagrams, forms, and reports.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
21
CASE Tools (Cont.)
FIGURE 1-10 A class diagram from IBMs Rational Rose (Source: IBM)
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
22
CASE Tools (Cont.)
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
23
Rapid Application Development (RAD)
Methodology
to radically decrease design and implementation time Involves: extensive user involvement, prototyping, JAD sessions, integrated CASE tools, and code generators
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
24
Service-Oriented Architecture (SOA)
An
approach to systems development based on building complete systems through assembling software components, each of which model generic business functions
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
25
Service-Oriented Architecture (SOA) (Cont.)
FIGURE 1-12 Illustration of a service, a credit check, used by applications and other services
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
26
Agile Methodologies
Motivated by recognition of software development as fluid, unpredictable, and dynamic Three key principles
Adaptive
rather than predictive Emphasize people rather than roles Self-adaptive processes
27
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
The Agile Methodologies group argues that software development methodologies adapted from engineering generally do not fit with realworld software development.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
28
When to use Agile Methodologies
If your project involves:
Unpredictable
or dynamic requirements Responsible and motivated developers Customers who understand the process and will get involved
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
29
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
30
eXtreme Programming
Short, incremental development cycles Automated tests Two-person programming teams Coding and testing operate together Advantages:
Communication
between developers High level of productivity High-quality code
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
31
Our Approach to Systems Development
The SDLC is an organizing and guiding principle in this book. We may construct artificial boundaries or artificially separate activities and processes for learning purposes. Our intent is to help you understand all the pieces and how to assemble them.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
32
Summary
In this chapter you learned how to:
Define information systems analysis and design. Describe the information Systems Development Life Cycle (SDLC). Explain Rapid Application Development (RAD), prototyping, Computer Aided Software Engineering (CASE), and Service-Oriented Architecture (SOA). Explain agile methodologies and eXtreme programming.
Chapter 1
Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall
33