Chapter 3 SAD

advertisement
MIS 215 System Analysis
And Design
Chapter 3
1
What is Information Systems
Analysis and Design?
 A method used by companies to create and maintain
systems that perform basic business functions
 Main goal is to improve employee efficiency by
applying software solutions to key business tasks
 A structured approach must be used in order to ensure
success
Chapter 3
2
What is Information Systems
Analysis and Design? (Cont.)
 Systems Analysts perform analysis and design based
upon:
 Understanding of organization’s objectives, structure
and processes
 Knowledge of how to exploit information technology for
advantage
Chapter 3
3
Systems Analysis and Design: Core
Concepts
 Major goal: to improve organizational systems by
developing or acquiring application software and
training employees in its use
 Application software, or a system, supports
organizational functions or processes
Chapter 3
4
Systems Analysis and Design:
Core Concepts (Cont.)
System:
 Turns data into information and includes:
 Hardware and system software
 Documentation and training materials
 Job roles associated with the system
 Controls to prevent theft or fraud
 The people who use the software to perform their jobs
Chapter 3
5
Software Engineering Process
 A process used to create an information system
 Consists of:
 Methodologies
 A sequence of step-by-step approaches that help develop the
information system
 Techniques
 Processes that the analyst follows to ensure thorough,
complete, and comprehensive analysis and design
 Tools
 Computer programs that aid in applying techniques
Chapter 3
6
Chapter 3
7
Characteristics of a System
 Components
 Interrelated Components







Chapter 3
Boundary
Purpose
Environment
Interfaces
Constraints
Input
Output
8
Characteristics of a System
Chapter 3
9
Important System Concepts
 Decomposition
 The process of breaking down a system into smaller
components
 Allows the systems analyst to:




Chapter 3
Break a system into small, manageable and understandable
subsystems
Focus on one area at a time, without interference from other
areas
Concentrate on component pertinent to one group of users
without confusing users with unnecessary details
Build different components at independent times and have
the help of different analysts
10
Important System Concepts (Cont.)
 Modularity
 Process of dividing a system into modules of a relatively
uniform size
 Modules simplify system design
 Coupling
 Subsystems that are dependent upon each other are
coupled
 Cohesion
 Extent to which a subsystem performs a single function
Chapter 3
11
A Modern Approach to Systems
Analysis and Design
 Systems Integration
 Allows hardware and software from different vendors to
work together
 Enables procedural language systems to work with visual
programming systems
 Visual programming environment uses client/server
model
Chapter 3
12
Your Role in Systems Development
 Study problems and needs of an organization
 Determine best approach to improving
organization through use of:
 People
 Methods
 Information technology
 Help system users and managers define their
requirements for new or enhanced information
systems
Chapter 3
13
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 3
14
Systems Development Life Cycle
(SDLC)
 Traditional methodology used to develop,
maintain, and replace information systems.
 Phases in SDLC:
 Planning
 Analysis
 Design
 Implementation
 Maintenance
Chapter 3
15
Systems Development Life Cycle
(SDLC) (Cont.)
 Planning – an organization’s total information system
needs are identified, analyzed, prioritized, and
arranged
 Analysis – system requirements are studied and
structured
Chapter 3
16
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
 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 3
17
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 3
18
Chapter 3
19
Traditional Waterfall SDLC
One phase begins
when another
completes, with
little backtracking
and looping.
Chapter 3
20
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 3
21
Approaches to Development
 Prototyping
 Building a scaled-down working version of the
system
 Advantages:


Chapter 3
Users are involved in design
Captures requirements in concrete form
22
Different Approaches to Improving
Development
 CASE Tools
 Rapid Application Development (RAD)
 Agile Methodologies
 eXtreme Programming
 Joint Application Design (JAD)
Chapter 3
23
CASE
 Computer-Assisted Software Engineering (CASE)
Tools
 Automated software tools used by systems analysts to
develop information systems
 Can be used throughout SDLC
 Product and tool integration is provided through a
repository
 Diagramming tools enable graphical representation.
Chapter 3
24
CASE (Cont.)
 General types of CASE tools






Chapter 3
Diagramming tools
Computer display and report generators
Analysis tools
Repository
Documentation generators
Code generators
25
CASE (Cont.)
 Computer-Assisted Software Engineering (CASE)
Tools:
 Computer displays and report generators help prototype




Chapter 3
how systems “look and feel”.
Analysis tools automatically check for consistency in
diagrams, forms, and reports.
A central repository provides integrated storage of
diagrams, reports, and project management
specifications.
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.
26
CASE Tools (Cont.)
Chapter 3
27
CASE Tools (Cont.)
Chapter 3
28
Approaches to Development (Cont.)
 Joint Application Design (JAD)
 Users, Managers and Analysts work together for several
days
 System requirements are reviewed
 Structured meetings
Chapter 3
29
Rapid Application Development (RAD)
 Utilizes prototyping to delay producing system
design until after user requirements are clear
 Methodology to radically decrease design and
implementation time
 Involves: extensive user involvement,
prototyping, JAD sessions, integrated CASE
tools, and code generators
Chapter 3
30
RAD (Cont.)
RAD life cycle
Chapter 3
31
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 3
32
Service-Oriented Architecture (SOA)
(Cont.)
Illustration of a service, a credit check,
used by applications and other services
Chapter 3
33
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
Chapter 3
34
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 3
35
Chapter 3
36
eXtreme Programming
 Short, incremental development cycles
 Automated tests
 Two-person programming teams
Chapter 3
37
eXtreme Programming (Cont.)
 Coding and testing operate together
 Advantages:
 Communication between developers
 High level of productivity
 High-quality code
Chapter 3
38
Object-Oriented Analysis and Design
(OOAD)
 Based on objects rather than data or
processes
 Object: a structure encapsulating
attributes and behaviors of a real-world
entity
Chapter 3
39
Object-Oriented Analysis and Design
(OOAD) (Cont.)
 Object class: a logical grouping of
objects sharing the same attributes and
behaviors
 Inheritance: hierarchical arrangement
of classes enable subclasses to inherit
properties of superclasses
Chapter 3
40
Rational Unified Process (RUP)
 An object-oriented systems development
methodology
 RUP establishes four phase of development: inception,
elaboration, construction, and transition.
 Each phase is organized into a number of separate
iterations.
Chapter 3
41
FIGURE 1-13
Phases of OOSAD-based development
Chapter 3
42
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).
 Describe agile methodologies and eXtreme
programming.
 Explain Object Oriented Analysis and Design and the
Rational Unified Process (RUP).
Chapter 3
43
Download