Professional Documents
Culture Documents
Modern Systems Analysis and Design: The Systems Development Environment
Modern Systems Analysis and Design: The Systems Development Environment
Modern Systems Analysis and Design: The Systems Development Environment
Sixth Edition
Learning Objectives
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). Describe agile methodologies and eXtreme programming. Explain Object Oriented Analysis and Design and the Rational Unified Process (RUP).
Introduction
organizational process Used to develop and maintain computerbased information systems Used by a team of business and systems professionals
Introduction (Cont.)
FIGURE 1-1 An organizational approach to systems analysis and design is driven by methodologies, techniques, and tools
4
programming language: C, C++, C#, Java, Delphi), faster and more reliable computers
Application Software
Computer
software designed to support organizational functions or processes role most responsible for analysis and design of information systems
Systems Analyst
Organizational
handling of data about business activities (transactions) Process orientation Examples: POS, ordering & inventory system
raw data from TPS into meaningful form Data orientation Examples: Monthly sales report, profit statistics
8
to help decision makers Provides interactive environment for decision making Involves data warehouses, executive information systems (EIS) Database, model base, user dialogue Examples: Analysis on the customers demand, estimate inventory volume, set marketing plan
10
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.
11
Traditional methodology used to develop, maintain, and replace information systems. Phases in SDLC:
Planning Analysis Design Implementation Maintenance
12
13
14
15
16
17
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
18
19
20
21
22
23
24
25
Current practice combines analysis, design, and implementation into a single iterative and parallel process of activities.
Tools Joint Application Design (JAD) Rapid Application Development (RAD) Service-Oriented Architecture (SOA) Agile Methodologies eXtreme Programming
27
Prototyping
Iterative development process: Requirements quickly converted to a working system. System is continually revised. Close collaboration between users and analysts.
28
Prototyping (Cont.)
29
30
31
32
FIGURE 1-10 A class diagram from IBMs Rational Rose (Source: IBM)
33
34
35
JAD (Cont.)
FIGURE 6-6 Illustration of the typical room layout for a JAD Source: Based on Wood and Silver, 1995
36
JAD (Cont.)
JAD Participants:
Session
Leader: facilitates group process Users: active, speaking participants Managers: active, speaking participants Sponsor: high-level champion, limited participation Systems Analysts: should mostly listen Scribe: record session activities IS Staff: should mostly listen
37
JAD (Cont.)
End Result
Documentation
Upper CASE tools are used Enables analysts to enter system models directly into CASE during the JAD session Screen designs and prototyping can be done during JAD and shown to users
38
to radically decrease design and implementation time Involves: extensive user involvement, prototyping, JAD sessions, integrated CASE tools, and code generators
39
40
approach to systems development based on building complete systems through assembling software components, each of which model generic business functions
41
FIGURE 1-12 Illustration of a service, a credit check, used by applications and other services
42
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
43
The Agile Methodologies group argues that software development methodologies adapted from engineering generally do not fit with realworld software development.
44
or dynamic requirements Responsible and motivated developers Customers who understand the process and will get involved
45
46
eXtreme Programming
Short, incremental development cycles Automated tests Two-person programming teams
47
Communication
48
on objects rather than data or processes Object: a structure encapsulating attributes and behaviors of a realworld entity
49
class: a logical grouping of objects sharing the same attributes and behaviors Inheritance: hierarchical arrangement of classes enable subclasses to inherit properties of superclasses
50
51
52
53
Summary
54