0% found this document useful (0 votes)
6 views59 pages

CMPG213 SU3 Chap 03 L

This document outlines the objectives and main focus areas of a study unit on information systems development, emphasizing the system design process and the Capability Maturity Model (CMM). It details the phases of system development, principles of system design, and the PIECES framework for categorizing problems and opportunities. Additionally, it discusses project management, the importance of user involvement, and the need for justifying systems as capital investments.

Uploaded by

kurtleighm
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views59 pages

CMPG213 SU3 Chap 03 L

This document outlines the objectives and main focus areas of a study unit on information systems development, emphasizing the system design process and the Capability Maturity Model (CMM). It details the phases of system development, principles of system design, and the PIECES framework for categorizing problems and opportunities. Additionally, it discusses project management, the importance of user involvement, and the need for justifying systems as capital investments.

Uploaded by

kurtleighm
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 59

Information systems

development
Study Unit 3
Chapter 3

McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All


Objectives (Study Guide):
o Understand the process of system design and describe the CMM to
enhance the process; (p.68 – 69)
o Distinguish between the Systems Development Life Cycle and systems
development methodology; (p. 70)
o Know and describe each of the ten principles of systems design; (p. 72 – 76)
o Define the triggers of systems design; (p. 112)
o Describe the PIECES framework for categorising problems,
opportunities and indicators; (p. 77)
o Know and describe the phases of systems development; (p. 79 – 89)
o Describe the overarching life-cycle activities during the system
development process; and (p. 112)
o Describe the role of CASE-tools (diagram on p. 110).
Objectives (Textbook)
• Describe the motivation for a system development process in
terms of the Capability Maturity Model (CMM) for quality
management.
• Differentiate between the system life cycle and a system
development methodology.
• Describe 10 basic principles of system development.
• Define problems, opportunities, and directives—the triggers for
systems development projects.
• Describe the PIECES framework for categorizing problems,
opportunities, and directives.
• Describe the essential phases of system development. For each
phase, describe its purpose, inputs, and outputs.
• Describe cross life cycle activities that overlap multiple system
development phases.
• Describe typical alternative “routes” through the basic phases of
system development. Describe how routes may be combined or
customized for different projects.
• Describe various automated tools for system development.
3-3
Main Focus:
o Understand the process of system design and describe the CMM to enhance
the process; (p.68 – 69)
o Distinguish between the Systems Development Life Cycle and systems
development methodology; (p. 70)
o Know and describe each of the ten principles of systems design; (p. 72 – 76)
o Define the triggers of systems design; (p. 112)
o Describe the PIECES framework for categorising problems, opportunities and
indicators; (p. 77)
o Know and describe the phases of systems development; (p. 79 – 89)
o Describe the overarching life-cycle activities during the system development
process; and (p. 112)
o Describe the role of CASE-tools (diagram on p. 110).
1. Scope definition

2. Problem analysis

3. Requirements analysis

4. Logical design

5. Decision analysis

6. Physical design

7. Construction and testing

8. Implementation and delivery

3-5
Process of System
Development
System development process – a set of activities,
methods, best practices, deliverables, and automated
tools that stakeholders (Chapter 1) use to develop and
continuously improve information systems and
software (Chapters 1 and 2).
– Many variations
– Using a consistent process for system development:
 Create efficiencies that allow management to shift
resources between projects
 Produces consistent documentation that reduces
lifetime costs to maintain the systems
 Promotes quality
3-6
CMM Process Management
Model
Capability Maturity Model (CMM) – a standardized
framework for assessing the maturity level (quality) of an
organization’s information system development and
management processes and products. It consists of five
levels of maturity:
• Level 1—Initial: System development projects follow no
prescribed process.
• Level 2—Repeatable: Project management processes and
practices are established to track project costs, schedules, and
functionality.
• Level 3—Defined: Standard system development process
(methodology) is purchased or developed. All projects use a
version of this process.
• Level 4—Managed: Measurable goals for quality and
productivity are established.
• Level 5—Optimizing: The standardized system development
process (methodology) is continuously monitored and
3-7
improved based on measures and data analysis established in
Level 4.
Capability Maturity Model
(CMM)

3-8
Impact of System Development
“Process” on Quality

CMM Project Statistics for a Project Resulting in 200,000 Lines of Code


Organization’ Project Project Number of Median Lowest Highest
s CMM Level Duration Person- Defects Cost ($ Cost ($ Cost
(months) Months Shipped millions) millions) ($ millions)
1 30 600 61 5.5 1.8 100+
2 18.5 143 12 1.3 .96 1.7
3 15 80 7 .728 .518 .933

3-9
Life Cycle versus Methodology

• System life cycle – the factoring of the lifetime of an


information system into two stages, (1) systems
development and (2) systems operation and
maintenance.

• System development methodology – a formalized


approach to the systems development process; a
standardized development process that defines (as in
CMM Level 3) a set of activities, methods, best
practices, deliverables, and automated tools that system
developers and project managers are to use to develop
and continuously improve information systems and
software.
3-10
A System Life Cycle

3-11
Representative System
Development Methodologies
• Architected Rapid Application Development
(Architected RAD)
• Dynamic Systems Development Methodology
(DSDM)
• Joint Application Development (JAD)
• Information Engineering (IE)
• Rapid Application Development (RAD)
• Rational Unified Process (RUP)
• Structured Analysis and Design
• eXtreme Programming (XP)
3-12
Principles of System
Development
• Get the system users involved.
• Use a problem-solving approach.
• Establish phases and activities.
• Document through development.
• Establish standards.
• Manage the process and projects
• Justify systems as capital investments.
• Don’t be afraid to cancel or revise scope.
• Divide (into subsystems) and conquer.
• Design systems for growth and change.
3-13
Use a Problem-Solving
Approach
Classical Problem-solving approach
1. Study and understand the problem, its
context, and its impact.
2. Define the requirements that must be meet
by any solution.
3. Identify candidate solutions that fulfill the
requirements, and select the “best”
solution.
4. Design and/or implement the chosen
solution.
5. Observe and evaluate the solution’s
3-14
impact, and refine the solution accordingly.
Establish Phases and Activities
Overlap of System Development Phases

3-15
Manage the Process and
Projects
Process management – an ongoing activity that
documents, manages, oversees the use of, and
improves an organization’s chosen methodology (the
“process”) for system development. Process
management is concerned with phases, activities,
deliverables, and quality standards should be
consistently applied to all projects.

Project management is the process of scoping,


planning, staffing, organizing, directing, and controlling
a project to develop an information system at a
minimum cost, within a specified time frame, and with
acceptable quality.
3-16
Justify Information Systems as
Capital Investments
Cost-effectiveness – The result obtained by striking a
balance between the lifetime costs of developing, maintaining,
and operating an information system and the benefits derived
from that system. Cost-effectiveness is measured by a cost-
benefit analysis.

Strategic information systems plan – a formal strategic plan


(3-5 years) for building and improving an information
technology infrastructure and the information system
applications that use that infrastructure.
Strategic enterprise plan – a formal strategic plan (3-5 years)
for an entire business that defines its mission, vision, goals,
strategies, benchmarks (maatstawwe), and measures of
progress and achievement. Usually, the strategic enterprise
plan is complemented by strategic business unit plans that
define how each business unit will contribute to the enterprise
plan. The information systems plan is one of those unit-level
3-17
plans.
Don’t Be Afraid to Cancel
or Revise Scope
Creeping commitment – a strategy in which
feasibility (lewensvatbaarheid) and risks are
continuously reevaluated throughout a project.
Project budgets and deadlines are adjusted
accordingly.

Risk management – the process of identifying,


evaluating, and controlling what might go wrong
in a project before it becomes a threat to the
successful completion of the project or
implementation of the information system. Risk
management is driven by risk analysis or
3-18
assessment.
Classwork

• Problems and Exercises No 6 P114

3-19
MEMO No 6 P114

3-20
MEMO No 6 P114

3-21
Where Do Systems Development
Projects Come From?

• Problem – an undesirable situation that


prevents the organization from fully achieving its
purpose, goals, and/or objectives.
• Opportunity – a chance to improve the
organization even in the absence of an
identified problem.
• Directive - a new requirement that is imposed
by management, government, or some external
influence.
3-22
Where Do Systems Development
Projects Come From?
• Planned Projects
• An information systems strategy plan has
examined the business as a whole to identify those
system development projects that will return the
greatest strategic (long-term) value to the business
• A business process redesign has thoroughly
analyzed a series of business processes to eliminate
redundancy and bureaucracy and to improve
efficiency and value added. Now it is time to redesign
the supporting information system for those
redesigned business processes.
3-23
Where Do Systems Development
Projects Come From?
• Unplanned projects
• Triggered by a specific problem, opportunity, or
directive that occurs in the course of doing business.
• Steering committee – an administrative body of
system owners and information technology
executives that prioritizes and approves candidate
system development projects.
• Backlog – a repository of project proposals that
cannot be funded or staffed because they are a lower
priority than those that have been approved for
system development.

3-24
The PIECES Problem-Solving
Framework
P the need to improve performance (e.g.
response time, throughput)
I the need to improve information (and
data)
E the need to improve economics, control
costs, or increase profits
C the need to improve control or security
E the need to improve efficiency of people
and processes
S the need to improve service to customers,
suppliers, partners, employees, etc.
Classwork
Problems and Exercises No 7 P114
• The categories of problems are Performance, Information and
data, Economics (costs and profits), Control or security,
Efficiency of people and processes and service to stakeholders.
• Categorize the following problems using the PIECES framework:
a. Duplicate data is stored throughout the system.
b. There is a need to port an existing application to PDA
devices.
c. Quarterly sales reports need to be generated automatically
d. Employees can gain access to confidential parts of the
personnel system.
e. User interfaces for the inventory system are difficult to use
and confusing, resulting in a high frequency of incorrect
orders.

3-26
Classwork
Problems and Exercises No 7 P114
a. Duplicate data is stored throughout the system.
b. There is a need to port an existing application to PDA devices.
c. Quarterly sales reports need to be generated automatically
d. Employees can gain access to confidential parts of the
personnel system.
e. User interfaces for the inventory system are difficult to use and
confusing, resulting in a high frequency of incorrect orders.

3-27
Project Phases
• FAST - (Framework for the Application of Systems
Thinking ) a hypothetical methodology used
throughout this book to demonstrate a representative
systems development process.
• Each methodology will use different project phases.
FAST Phases Classic Phases (from Chapter 1)
Project System System System
Initiation Analysis Design Implementation
Scope Definition X
Problem Analysis X X
Requirements Analysis X
Logical Design X
Decision Analysis (a system analysis transition phase)
Physical Design and Integration X
Construction and Testing X X
Installation and Delivery X
3-28
FAST Project Phases

3-29
Building Blocks View of
System Development
Deliverables:

Information Functional Communicatio


scope & scope & n scope &
vision vision vision

Business Business Business &


DATA PROCESS System
requirements requirements INTERFACE
requirements
Logical Logical
Logical
DATA PROCESS INTERFACE
models models models

Physical Physical
Physical BUSINESS User &
DATABASE PROCESS system
Design
design INTERFACE
Physical
specification Software Design design
specification specification
Middleware

Middleware

Commercial
software USER
packages INTERFACES
DATABASE Custom-built System
application INTERFACES
software

3-30
Scope Definition Phase
Problem statement – a statement and categorization of
problems, opportunities, and directives; may also include
constraints and an initial vision for the solution. Synonyms
include preliminary study and feasibility assessment.

Constraint – any factor, limitation, or restraint that may limit a


solution or the problem-solving process.

Scope creep – a common phenomenon wherein the


requirements and expectations of a project increase, often
without regard to the impact on budget and schedule.

Statement of work – a contract with management and the


user community to develop or enhance an information system;
defines vision, scope, constraints, high-level user
requirements, schedule, and budget. Synonyms include
project charter, project plan, and service-level agreement.
3-31
Requirements Analysis Phase

• What capabilities should the new system


provide for its users?
• What data must be captured and stored?
• What performance level is expected? (i.e.
WHAT the system must do)
• What are the priorities of the various
requirements?

3-32
Logical Design Phase
Logical design – the translation of business user requirements
into a system model that depicts only the business requirements
and not any possible technical design or implementation of
those requirements. Common synonyms include conceptual
design and essential design.

System model – a picture of a system that represents reality or


a desired reality. System models facilitate improved
communication between system users, system analysts, system
designers, and system builders.

Analysis paralysis – a satirical term coined to describe a


common project condition in which excessive system modeling
dramatically slows progress toward implementation of the
intended system solution.
3-33
Decision Analysis Phase
• Candidate solutions evaluated in terms of:
• Technical feasibility – Is the solution technically practical?
Does our staff have the technical expertise to design and build
this solution?
• Operational feasibility – Will the solution fulfill the users’
requirements? To what degree? How will the solution change
the users’ work environment? How do users feel about such a
solution?
• Economic feasibility – Is the solution cost-effective?
• Schedule feasibility – Can the solution be designed and
implemented within an acceptable time?
• Risk feasibility – What is the probability of a successful
implementation using the technology and approach?

3-34
Physical Design & Integration
Phase
Physical design – the translation of business user
requirements into a system model that depicts a technical
implementation of the users’ business requirements. Common
synonyms include technical design or implementation model.

Two extreme philosophies of physical design


• Design by specification – physical system models and detailed
specification are produced as a series of written (or computer-
generated) blueprints for construction.
• Design by prototyping – Incomplete but functioning applications or
subsystems (called prototypes) are constructed and refined based
on feedback from users and other designers.

3-35
Classwork

• Problems and Exercises No 8 P114

3-36
Construction and Testing Phase

• Construct and test system components


• Software
• Purchased
• Custom-built
• Databases
• User and System Interfaces
• Hardware
• Networks

3-37
Installation and Delivery Phase

• Deliver the system into operation


(production)
• Deliver User training
• Deliver completed documentation
• Convert existing data

3-38
System Operation &
Maintenance
System support – the ongoing technical
support for users of a system, as well as
the maintenance required to deal with any
errors, omissions, or new requirements
that may arise.

3-39
Cross Life-Cycle Activities
Cross life-cycle activity – activities that overlap
multiple phases
• Fact-finding - formal process of using research,
interviews, meetings, questionnaires, sampling, and
other techniques to collect information about system
problems, requirements and preferences.
• Documentation and presentation
• Documentation – recording facts and specifications for a
systems for current and future reference.
• Presentation – communicating findings, recommendations,
and documentation for review by interested users and
managers.
• Repository – database and/or file directory where system
developers store all documentation, knowledge, and
artifacts for information systems or project(s).
• Feasibility (lewensvatbaarheid) analysis
3-40 • Process and project management
System Development Documentation,
Repository, and Presentations

3-41
Sequential versus Iterative
Development
Waterfall development
approach an approach to
systems analysis and design
that completes each phase one
after another and only once .

Iterative development
approach an approach to
systems analysis and design
that completes the entire
information system in
successive iterations. Each
iterations does some analysis,
some design, and some
construction. Synonyms include
incremental and spiral.
3-42
Model-Driven Development
Strategy
• Model-driven development – a system development
strategy that emphasizes the drawing of system models
to help visualize and analyze problems, define business
requirements, and design information systems.
• Process modeling – a process-centered technique popularized
by the structured analysis and design methodology that used
models of business process requirements to derive effective
software designs for a system.

• Data modeling – a data-centered technique used to model


business data requirements and design database systems that
fulfill those requirements.

• Object modeling – a technique that attempts to merge the data


and process concerns into singular constructs called objects.
Object models are diagrams that document a system in terms of
its objects and their interactions.
3-43
Logical vs. Physical Models

Logical model - a pictorial representation


that depicts what a system is or does.

Physical model - a technical pictorial


representation that depicts what a system is
or does and how the system is
implemented.

3-44
Model-Driven Development
Strategy

3-45
Model-Driven Development
Strategy
Advantages Disadvantages
• Requirements • Time consuming
often more • Models only as
thorough good as users'
• Easier to analyze understanding of
alternatives requirements
• Design • Reduces users'
specifications often role because
more stable and pictures are not
3-46 flexible software
Rapid Application Development
Strategy
• Rapid application development (RAD) – a system
development strategy that emphasizes speed of
development through extensive user involvement in the
rapid, iterative, and incremental construction of series of
functioning prototypes of a system that eventually
evolves into the final system.

• Prototype – a small-scale, representative, or working model


of the users’ requirements or a proposed design for an
information system.

• Time box – the imposition (instelling) of a non-extendable


period of time, usually 60-90 days, by which the first (or next)
version of a system must be delivered into operation.
3-47
Rapid Application Development
Strategy

3-48
Rapid Application Development
Strategy
Advantages Disadvantages
• User requirements often • May encourage "code,
uncertain or imprecise implement, repair" mentality
• Encourages active user and • Can solve wrong problem
management participation since problem analysis is
• Projects get higher visibility abbreviated
and support • May discourage analysts from
• Stakeholders see working considering alternatives
solutions more rapidly • Stakeholders reluctant to
• Errors detected earlier throw away prototype
• Testing and training are • Emphasis on speed can
natural by-products adversely impact quality
• More natural process because
change is expected

3-49
Commercial Application Package
Implementation Strategy
• Commercial application package – software
application that can be purchased and customized to
meet business requirements of a large number of
organizations or specific industry. A synonym is
commercial off-the-shelf (COTS) system.
• Request for proposal (RFP) – formal document that
communicates business, technical, and support
requirements for application software package to vendors
that may wish to compete for the sale of application package
and services.
• Request for quotation (RFQ) – formal document that
communicates business, technical, and support
requirements for an application software package to a single
vendor that has been determined as being able to supply
that application package and services.
• Gap analysis – comparison of business and technical
requirements for a commercial application package against
3-50 capabilities and features of a specific commercial application
package to define requirements that cannot be met.
Commercial Application Package
Implementation Strategy

3-51
Commercial Application Package
Implementation Strategy
Advantages Disadvantages
• Systems usually implemented • Dependent on long-term
more quickly viability of vendor
• Avoids staffing required to • Rarely reflects ideal solution
develop in-house solutions • Often resistance to changes
• Generally less expensive business processes to adapt
• Vendor assumes responsibility to software
for improvements and
corrections
• Many business functions more
similar than dissimilar for all
businesses in a given industry

3-52
A System Maintenance
Perspective

3-53
Automated Tools and
Technology

• Computer-aided systems engineering


(CASE), e.g. Oracle's Designer 2000
• Application development environments
(ADEs), e.g. C++.NET, Oracle's
Developer
• Process and project manager application
to support cross life-cycle activities, e.g.
Microsoft's Project
3-54
Computer-Assisted Software
Engineering (CASE)
Computer-aided systems engineering (CASE) –
automated software tools that support the drawing and
analysis of system models and associated specifications.
Some CASE tools also provide prototyping and code
generation capabilities.
• CASE repository – system developers’ database where
developers can store system models, detailed
descriptions and specifications, and other products of
system development. Synonyms: dictionary and
encyclopedia.
• Forward engineering – CASE tool capability that can
generate initial software or database code directly from
system.
• Reverse engineering – CASE tool capability that can
generate initial system models from software or
database code.
3-55
Using a CASE Tool for System
Development

3-56
CASE Tool Architecture

3-57
Application Development
Environments
Application development environments (ADEs) – an
integrated software development tool that provides all the
facilities necessary to develop new application software
with maximum speed and quality. A common synonym is
integrated development environment (IDE)
• ADE facilities may include:
• Programming languages or interpreters
• Interface construction tools
• Middleware
• Testing tools
• Version control tools
• Help authoring tools
• Repository links
3-58
Process and Project Managers

• Process manager application – an automated tool that


helps document and manage a methodology and routes,
its deliverables, and quality management standards. An
emerging synonym is methodware.
• Project manager application – an automated tool to
help plan system development activities (preferably using
the approved methodology), estimate and assign
resources (including people and costs), schedule
activities and resources, monitor progress against
schedule and budget, control and modify schedule and
resources, and report project progress.

3-59

You might also like