Management
Management
Information Systems,
Information Systems,
10/e
10/e
Raymond McLeod and George
Raymond McLeod and George
Schell
Chapter 7
Chapter 7
Systems Development
Learning Objectives
Learning Objectives
►
Recognize the systems approach as the
Recognize the systems approach as the
basic framework for solving problems of
basic framework for solving problems of
all kinds.
all kinds.
►
Know how to apply the systems
Know how to apply the systems
approach to solving systems problems.
approach to solving systems problems.
►
Understand that the systems
Understand that the systems
development life cycle (SDLC) is a
development life cycle (SDLC) is a
methodology – a recommended way to
Learning Objectives (Cont’d)
Learning Objectives (Cont’d)
►
Be familiar with the main SDLC approaches –
Be familiar with the main SDLC approaches –
the traditional waterfall cycle, prototyping,
the traditional waterfall cycle, prototyping,
rapid application development, phased
rapid application development, phased
development, and business process redesign.
development, and business process redesign.
►
Know the basics of modeling processes with
Know the basics of modeling processes with
data flow diagrams and use cases.
data flow diagrams and use cases.
►
Understand how systems development
Understand how systems development
projects are managed in a top-down fashion.
projects are managed in a top-down fashion.
►
Be familiar with the basic processes of
Be familiar with the basic processes of
The Systems Approach
The Systems Approach
►
John Dewey identified three series of
John Dewey identified three series of
judgments involved in adequately resolving a
judgments involved in adequately resolving a
controversy
controversy
1.
1.
Recognize the controversy
Recognize the controversy
2.
2.
Weigh alternative claims
Weigh alternative claims
3.
3.
Form a judgment
Form a judgment
►
During the late 1960s/early 1970s, interest in
During the late 1960s/early 1970s, interest in
systematic problem solving strengthened
systematic problem solving strengthened
►
Systems approach
Systems approach
—a series of problem-
—a series of
problem-solving steps that ensure the problem is first
solving steps that ensure the problem is first
understood, alternative solutions are
Series of Steps
Series of Steps
►
Preparation effort
Preparation effort
prepares the problem
prepares the problem
solver by providing a systems orientation.
solver by providing a systems orientation.
Business areas, level of management, resource flows
Business areas, level of management, resource flows
►
Definition effort
Definition effort
consists of identifying the
consists of identifying the
problem to be solved
problem to be solved
& then understanding it.
& then understanding it.
►
Solution effort
Solution effort
involves identifying alternative
involves identifying alternative
solutions, evaluating them, selecting the one
solutions, evaluating them, selecting the one
that appears best, implementing that solution,
that appears best, implementing that solution,
& following up to ensure that the problem is
& following up to ensure that the problem is
solved.
Figure 7.1 Phases & Steps of
Figure 7.1 Phases & Steps of
Figure 7.2 Each Business Area is
Figure 7.2 Each Business Area is
Definition Effort Terminology
Definition Effort Terminology
►
Problem trigger
Problem trigger
is a signal that things
is a signal that things
are going better or worse than planned.
are going better or worse than planned.
►
Symptom
Symptom
is a condition that is produced
is a condition that is produced
by the problem & is usually more obivious
by the problem & is usually more obivious
than the root cause of the problem.
than the root cause of the problem.
►
Problem
Problem
is a condition or event that is
is a condition or event that is
harmful or potentially or beneficial or
harmful or potentially or beneficial or
potentially beneficial to the firm.
Figure 7.3 Analyze System Parts
Figure 7.3 Analyze System Parts
Select the Best Solution
Select the Best Solution
►
Analysis
Analysis
– a systematic evaluation of
– a systematic evaluation of
options.
options.
►
Judgment
Judgment
– the mental process of a
– the mental process of a
single manager.
single manager.
►
Bargaining
Bargaining
– negotiations between
– negotiations between
several managers.
Systems Development
Systems Development
Lifecycle
Lifecycle
►
Methodology
Methodology
is a recommended way of
is a recommended way of
doing something.
doing something.
►
Systems development lifecycle (SDLC)
Systems development lifecycle (SDLC)
is an application of the systems approach to
is an application of the systems approach to
the development of an information system.
the development of an information system.
►
Traditional SDLC stages are:
Traditional SDLC stages are:
Planning
Planning
Analysis
Analysis
Design
Design
Figure 7.4 Circular Pattern of the
Figure 7.4 Circular Pattern of the
Prototyping
Prototyping
►
Prototype
Prototype
is a version of a potential
is a version of a potential
system that provides the developers &
system that provides the developers &
future users with an idea of how the
future users with an idea of how the
system in its completed form will
system in its completed form will
function.
function.
►
Prototyping
Prototyping
is the process of producing
is the process of producing
a prototype.
a prototype.
►
Best suited for small systems – reflecting
Best suited for small systems – reflecting
the prototyping influence.
Evolutionary Prototype
Evolutionary Prototype
►
Evolutionary prototype
Evolutionary prototype
is continually
is continually
refined until it contains all of the
refined until it contains all of the
functionality that users require of the new
functionality that users require of the new
system. The steps involved are:
system. The steps involved are:
Identify user needs.
Identify user needs.
Develop prototype.
Develop prototype.
►
Integrated application developer
Integrated application developer
►Prototyping toolkit
Prototyping toolkit
Figure 7.5 Development of
Figure 7.5 Development of
Requirements Prototype
Requirements Prototype
►
Requirements prototype
Requirements prototype
is developed as
is developed as
a way to define the functional requirements
a way to define the functional requirements
of the new system when users are unable to
of the new system when users are unable to
articulate exactly what they want. Begin
articulate exactly what they want. Begin
with the Evolutionary Prototype steps, then
with the Evolutionary Prototype steps, then
the next steps are:
the next steps are:
Code the new system;
Code the new system;
Test the new system;
Test the new system;
Figure 7.6 Development of
Figure 7.6 Development of
Attraction of Prototyping
Attraction of Prototyping
►
Communications between the developer &
Communications between the developer &
user are improved.
user are improved.
►
The developer can do a better job of
The developer can do a better job of
determining the users’ needs.
determining the users’ needs.
►
The user plays a more active role in system
The user plays a more active role in system
development.
development.
►
The developers & the user spend less time &
The developers & the user spend less time &
effort developing the system.
effort developing the system.
►
Implementation is much easier because the
Implementation is much easier because the
user knows what to expect.
Potential Pitfalls of
Potential Pitfalls of
Prototyping
Prototyping
►
The haste to deliver the prototype may
The haste to deliver the prototype may
produce shortcuts in problem definition,
produce shortcuts in problem definition,
alternative evaluation, & documentation. The
alternative evaluation, & documentation. The
shortcut produces a “quick & dirty” effort.
shortcut produces a “quick & dirty” effort.
►
The user may get overly excited about the
The user may get overly excited about the
prototype, leading to unrealistic expectations
prototype, leading to unrealistic expectations
regarding the production system.
regarding the production system.
►
Evolutionary prototypes may not be very
Evolutionary prototypes may not be very
efficient.
efficient.
►
The computer-human interface provided by
The computer-human interface provided by
certain prototyping tools may not reflect good
certain prototyping tools may not reflect good
design techniques.
Rapid Application
Rapid Application
Development
Development
►
Rapid Application Development (RAD)
Rapid Application Development (RAD)
, is a
, is a
term coined by James Martin. It refers to a
term coined by James Martin. It refers to a
development life cycle intended to produce systems
development life cycle intended to produce systems
quickly without sacrificing quality.
quickly without sacrificing quality.
►
Information engineering
Information engineering
is the name that Martin
is the name that Martin
gives to his overall approach to system
gives to his overall approach to system
development, which treats it as a firm-wide activity.
development, which treats it as a firm-wide activity.
►
Enterprise
Enterprise
is used to describe the entire firm.
is used to describe the entire firm.
►Essential to RAD is management, people,
Essential to RAD is management, people,
methodologies, & tools.
methodologies, & tools.
Figure 7.7 Rapid Application
Figure 7.7 Rapid Application
Phased Development
Phased Development
►
Phased development is an approach for
Phased development is an approach for
developing information systems that
developing information systems that
consists of six stages:
consists of six stages:
Preliminary investigation
Preliminary investigation
Analysis
Analysis
Design
Design
Preliminary construction
Preliminary construction
System test
System test
Installation.
Installation.
Figure 7.8 Stages of Phases
Figure 7.8 Stages of Phases
Module Phases
Module Phases
►
System is subdivided into major
System is subdivided into major
modules such as:
modules such as:
Report writer;
Report writer;
Database;
Database;
Web interface.
Web interface.
►
Number of modules varies with the
Number of modules varies with the
system from 1 to a dozen or so.
system from 1 to a dozen or so.
►
Stages are performed separately for
Stages are performed separately for
each module.
Figure 7.9 Module Phase of
Figure 7.9 Module Phase of
Business Process Redesign
Business Process Redesign
►
Reengineering
Reengineering
or
or
Business process redesign
Business process redesign
(
(
BPR
BPR
) is the process of reworking the systems.
) is the process of reworking the systems.
Systems include both those that process the firm’s data
Systems include both those that process the firm’s data
& those that perform basic functions such as drilling for
& those that perform basic functions such as drilling for
oil.
oil.
►
BPR
BPR
affects the firm’s IT operations in two ways:
affects the firm’s IT operations in two ways:
Aids in the redesign of old information systems (
Aids in the redesign of old information systems (
legacy
legacy
systems);
systems);
Applies to the redesign of information systems to
Applies to the redesign of information systems to
support major operations.
support major operations.
Figure 7.10 Top-Down Initiation
Figure 7.10 Top-Down Initiation
Strategic Initiation of BPR
Strategic Initiation of BPR
►
Reverse engineering
Reverse engineering
is the process of
is the process of
analyzing an existing system to:
analyzing an existing system to:
identify its elements & their interrelationships;
identify its elements & their interrelationships;
Create documentation at a higher level of
Create documentation at a higher level of
abstraction than currently exists.
abstraction than currently exists.
►
Functionality
Functionality
is the job that it performs.
is the job that it performs.
►
Reengineering
Reengineering
is the complete redesign of
is the complete redesign of
a system with the objective of changing its
a system with the objective of changing its
functionality.
functionality.
►
Forward engineering
Forward engineering
is given to the
is given to the
BPR Components
BPR Components
►
BPR components can be applied
BPR components can be applied
separately or in combination.
separately or in combination.
►
Functional quality
Functional quality
is a measure of
is a measure of
what the system does.
what the system does.
►
Technical quality
Technical quality
is a measure of
is a measure of
how well it does it.
Figure 7.11 BPR Component
Figure 7.11 BPR Component
Methodologies in Perspective
Methodologies in Perspective
►
Traditional SDLC
Traditional SDLC
is an application of the
is an application of the
systems approach to the problem of system
systems approach to the problem of system
development; contains all elements.
development; contains all elements.
►
Prototyping
Prototyping
is an abbrev. form focusing on
is an abbrev. form focusing on
the definition & satisfaction of user needs.
the definition & satisfaction of user needs.
►
RAD
RAD
is an alternative approach to the
is an alternative approach to the
design & implementation phases of SDLC.
design & implementation phases of SDLC.
►
Phased development
Phased development
uses traditional
uses traditional
SDLC & applies it in a modular fashion.
System Development Tools
System Development Tools
►
Process modeling
Process modeling
was first done with
was first done with
flowcharts
flowcharts
.
.
ISO standards
ISO standards
Use of 20+ symbols
Use of 20+ symbols
►
Data flow diagrams (DFD)
Data flow diagrams (DFD)
is a graphic
is a graphic
representation of a system that uses four
representation of a system that uses four
symbol shapes to illustrate how data flows
symbol shapes to illustrate how data flows
through interconnected processes..
through interconnected processes..
Data Flow Diagram Symbols
Data Flow Diagram Symbols
►
Terminator
Terminator
describes an environmental element,
describes an environmental element,
such as a person, organization, or another system.
such as a person, organization, or another system.
Environmental elements
Environmental elements
exist outside the boundary of
exist outside the boundary of
the system.
the system.
►
Process
Process
is something than transforms input into
is something than transforms input into
output.
output.
►
Data flow
Data flow
consists of a group of logically related
consists of a group of logically related
data elements that travel from one point or process
data elements that travel from one point or process
to another; can
to another; can
diverge
diverge
and
and
converge
converge
.
.
►
Data storage
Data storage
is a repository of data.
is a repository of data.
►
Connector
Connector
contains the number of the process that
contains the number of the process that
Figure 7.12 DFD of a Sales
Figure 7.12 DFD of a Sales
Leveled Data Flow Diagrams
Leveled Data Flow Diagrams
►
Leveled DFDs
Leveled DFDs
is used to describe the hierarchy of
is used to describe the hierarchy of
diagrams, ranging from context to lowest-level
diagrams, ranging from context to lowest-level
n
n
diagram.
diagram.
►
Figure 0 diagram
Figure 0 diagram
identifies the major processes of a
identifies the major processes of a
system.
system.
Use additional DFDs to achieve documentation at both a more Use additional DFDs to achieve documentation at both a more summarized & a more detailed level.
summarized & a more detailed level.
►
Context diagram
Context diagram
is a diagram that documents the
is a diagram that documents the
system at a more summarized level.
system at a more summarized level.
Positions the system in a environmental context.Positions the system in a environmental context.
►
Figure
Figure
n
n
diagram
diagram
is a diagram that provides more
is a diagram that provides more
detail.
detail.
Figure 7.13 Context Diagram of
Figure 7.13 Context Diagram of
Figure 7.14 Figure 4 Diagram of
Figure 7.14 Figure 4 Diagram of
Use Cases
Use Cases
►
Use case
Use case
is a narrative description in an
is a narrative description in an
outline form of the dialog that occurs
outline form of the dialog that occurs
between a primary & secondary system.
between a primary & secondary system.
►
Continuous narrative format
Continuous narrative format
with each
with each
action numbered sequentially.
action numbered sequentially.
►
Ping-pong format
Ping-pong format
consists of two
consists of two
narratives & the numbering indicates how
narratives & the numbering indicates how
the tasks alternate between the primary &
the tasks alternate between the primary &
secondary systems.
secondary systems.
►
Alternative events are actions that are not
Alternative events are actions that are not
Figure 7.16 Use Case
Figure 7.16 Use Case
Project Management
Project Management
►
Steering committee
Steering committee
is a committee
is a committee
with the purpose of providing ongoing
with the purpose of providing ongoing
guidance, direction, & control of all
guidance, direction, & control of all
systems projects.
systems projects.
►
MIS steering committee
MIS steering committee
purpose is
purpose is
directing the use of the firm’s computing
directing the use of the firm’s computing
resources.
resources.
Figure 7.17 Managers of a
Figure 7.17 Managers of a
System Life Cycle Arranged in a
System Life Cycle Arranged in a
Project Leadership
Project Leadership
►
Project team
Project team
includes all of the
includes all of the
persons who participate in the
persons who participate in the
development of an information
development of an information
system.
system.
►
Team leader
Team leader
(
(
project leader
project leader
)
)
provides direction throughout the life
provides direction throughout the life
of the project.
Project Management
Project Management
Mechanism
Mechanism
►
Basis for project management is the project
Basis for project management is the project
plan.
plan.
►
Gantt chart
Gantt chart
is a horizontal bar chart that
is a horizontal bar chart that
includes a bar for each task to be performed;
includes a bar for each task to be performed;
bars arranged in time sequence.
bars arranged in time sequence.
►
Network diagram
Network diagram
(
(
CPM diagram, PERT
CPM diagram, PERT
chart
chart
) is a drawing that identifies activities &
) is a drawing that identifies activities &
links them with arrows to show the sequence in
links them with arrows to show the sequence in
which they are to be performed.
which they are to be performed.
►
Narrative reports are in the form of weekly
Narrative reports are in the form of weekly
written reports by project leader, communicates
written reports by project leader, communicates
project information to MIS steering committee.
Figure 7.19 A Network
Figure 7.19 A Network
Project Cost-Estimating
Project Cost-Estimating
►
Cost-estimating inputs
Cost-estimating inputs
Work breakdown structure (WBS)
Work breakdown structure (WBS)
Resource requirements, resource rates
Resource requirements, resource rates
Activity duration estimates
Activity duration estimates
Historical information
Historical information
►
Cost-estimating tools & techniques
Cost-estimating tools & techniques
Bottom-up estimating
Bottom-up estimating
Computerized estimating
Computerized estimating
Mathematical models
Mathematical models
►
Cost-estimating outputs
Cost-estimating outputs
Supporting details
Supporting details
Table 7.1 Components of
Table 7.1 Components of
Table 7.2 Example of Project
Table 7.2 Example of Project