Systems Analysis and Design Allen Dennis and Barbara Haley Text

Systems Analysis and Design
Alan Dennis, Barbara Haley Wixom, and Roberta Roth
John Wiley & Sons, Inc.
Slides by Candace S. Garrod
Red Rocks Community College
Modified by Yusuf Altunel
To be presented in CSE 440 Systems Analysis and Design
İKU Department of Computer Engineering
3-1
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
.
Project Management
Chapter 3
3-2
The project should be manageable
•Estimation
•Planning
•Resource Management
•Project Tracking
•Control
•Coordination
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
.
Chapter Outline
Identifying project size
Creating and managing the
workplan
Staffing the project
Coordinating project activities
3-3
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Key Definitions
Project management is the process of
planning and controlling
the development of a system
with the right functionality
within a specified timeframe
at a minimum cost
A project manager
manages and coordinates
the hundreds of tasks
and roles (people)
3-4
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Key Steps in Managing Projects
Identifying project size
Creating and managing the
workplan
Staffing the project
Coordinating project activities
3-5
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
IDENTIFYING PROJECT SIZE
3-6
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
.
Project Manager’s Balancing Act
Project Management involves
making trade-offs…
Project Size
Modifying one element
requires adjusting the others
3-7
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Project Estimation
The process of
assigning projected values
for time and effort
Sources of estimates
Methodology in use
Previous projects
Experienced developers
Estimates begin as a range
become more specific
as the project progresses
3-8
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Project Time Using the
Planning Phase Approach
3-9
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Project Estimation Using the
Function Point Approach
* Function Point Estimation is found by Capers Jones (October of 1979) and SPR
3 - 10
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Unadjusted Function Point Calculation
3 - 11
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Measurement Parameters-1
Number of user inputs.
Each user input to provide
distinct application oriented data to the software
Sources:
arrive from another system!
be entered by the user from input screens!
Inputs should be distinguished from inquiries
inquiries are counted separately!
Number of user outputs.
to provide application oriented information to the user
derived variables
calculated within the system
transferred to another system
data used to prepare a report, …
individual data items within a report
are not counted separately!
reports, screens, error messages, etc.
12
Measurement Parameters-2
Number of user inquiries.
an on-line input
results in the generation of software response
retrieve data
from internal files or databases
but do not change them!
Each distinct inquiry is counted.
Number of files.
Data stored entirely within the system
Types:
logical master files
flat files
database tables…
Number of external interfaces.
All machine readable interfaces
e.g., data files on storage media
used to transmit information
to another system.
13
Example: Spell Checker
user inputs.
The sentences entered
to check their spellings
user outputs.
Error message
with suggested alternative spellings.
user inquiries.
A lookup table for each word
against the internal dictionary
files.
Standard dictionary
User entered dictionary
external interfaces.
External dictionary
i.e. www.wiktionary.org
to reference for more information
14
Complexity of Parameters: Averages
User inputs, outputs, & queries.
6-20 data different data elements
first name, last name, city, etc.
reference to or update 2-3 files
Files and interfaces.
2-5 logical groups of data elements
20-50 number of different data element types
Below these numbers:
Rate is Low
Over these numbers:
Rate is High
15
System Characteristics
1. Data Communications: Are data communications required?
2. Distributed functions: Are there distributed processing functions?
3. Performance: Is performance critical?
4. Heavy used configuration : Is the system designed to easily be configured to satisfy different type of
requirements?
5. Transaction rate: Does the on-line data entry require the input transaction to be built over multiple screens
or operations?
6. Online data entry: Does the system require on-line data entry?
7. End user efficiency: Will the system run in an existing, heavily utilized operational environment?
8. Online update: Are the (master) files updated on-line?
9. Complex processing: Is the internal processing complex?
10. Reusability: Is the code designed to be reusable?
11. Installation ease: Are conversion and installation included in the design?
12. Operational ease: Is the application designed for easy of use of the user?
13. Multiple sites: Is the system designed for multiple installations in different organizations?
14. Facilitate change: Is the application designed to facilitate change?
15. Extensibility: Is the system is designed to easily be extended in future versions?
16. Backup & Recovery: Does the system require reliable backup and recovery?
16
Rating System Characteristics
Answer questions for each of the characteristics
…
(2) How are distributed data functions handled?
(9) Does the application have extensive logic processing?
(16) To what extent are start-up, backup, and recovery procedures
automatic?
…
Assign a rate to each of characteristics
0: no effect on the complexity (not applicable)
1: small effect (not so essential)
2: small-to-medium effect (not critically essential )
3: medium effect (essential)
4: high effect (very important)
5: great effect on the characteristic/absolutely essential
17
Function Point Estimation
Worksheet
Step One – Estimate System Size
(Overall System - Example)
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
18
Data Communications
Distributed functions
Performance
Heavy use configuration
Transaction rate
Online data entry
End-user efficiency
Online update
Complex processing
Reusability
Installation ease
Operational ease
Multiple sites
Facilitate change
Extensibility
Backup & Recovery
Total Processing Complexity (PC):
3
2
0
0
0
2
0
0
0
1
0
0
0
0
0
0
8
Factors affecting software
engineering productivity
Factor
Description
Application domain
experience
Knowledge of the application domain is essential for effective software
development Engineers who already understand a domain is likely to be
the most productive.
Process quality
The development process used can have a significant effect on
productivity.
Project size
The larger a project, the more time required for team communications.
Less time is available for development so individual productivity is
reduced.
Technology support
Good support technology such as CASE tools and configuration
management systems can improve productivity.
Working environment A quiet working environment with private work areas contributes to
improved productivity.
3 - 19
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Function Point Estimation
Adjusting the Function Points
Total Processing Complexity (PC):
(From Step 2)
____ 8 ____
Adjusted Processing Complexity (PCA) = 0.65 + (0.01 * __8__ )
Total Adjusted Function Points: 0.73 * 338 =
TUFP
(From Step 1)
20
247
Converting Function Points to
Lines of Code
3 - 21
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Converting Function Points to
Lines of Code
Pressman pp 94
22
Converting Function Points to
Lines of Code
Language
Average Source
Level Statements Per Function Point
1st Generation Languages (default)
1
320
2nd Generation Languages (default)
3
107
3rd Generation Languages (default)
4
80
4th Generation Languages (default)
16
20
According to SPR (Software Productivity Research) http://www.spr.com/products/programming.shtm
23
Function Point Estimation
Step Two – Estimate Effort Required
COCOMO model
For small to moderate size project
100,000 lines of code,
10 or fewer programmers
is very simple
(Effort in
= 1.4 * thousands-of-lines-of-code
Person Months)
Example:
If LOC = 10000 Then...
Effort = (1.4 * 10)
3 - 24
=
14 Person Months
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Function Point Estimation
Step Three - Schedule Time
Rule of thumb for estimation
Schedule Time (months)
= 3.0 * person-months1/3
14 person-months =>
Schedule to take a little more than 7 months
3 - 25
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
CREATING AND MANAGING THE
WORK PLAN
3 - 26
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
.
Project Scheduling
Task Identification
Project Staffing
Project Tracking
27
Identifying Tasks
Methodology
Using standard list of tasks
Top-down approach
Identify highest level tasks
Break them into increasingly smaller
units
Organize into work breakdown
structure
3 - 28
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Identifying Tasks
Task
Number
3 - 29
Task Name
Duration
in weeks
Dependency
Status
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Project Workplan
Work breakdown structure
List all tasks
Add:
Duration of task
Current task status
Task dependencies
Milestone (dates)
3 - 30
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
A Task Example
3 - 31
Work Plan Information
Example
Name of task
Start date
Completion date
Person assigned
Deliverable(s)
Completion status
Priority
Resources needed
Estimated time
Actual time
Perform economic feasibility
Jan 05, 2005
Jan 19, 2005
Project sponsor: Mary Smith
Cost-benefit analysis
Open
High
Spreadsheet
16 hours
14.5 hours
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Tracking Project Tasks
Gantt Chart
Bar chart format
Useful to monitor project status
PERT Chart
Flowchart format
Illustrates
task dependencies
critical path
3 - 32
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Tracking Tasks Using Gantt Chart
3 - 33
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Tracking Tasks Using PERT Chart
3 - 34
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Margins of Error in
Cost and Time Estimates
3 - 35
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Managing Scope
Scope creep
new requirements!
Defer additional requirements
as future system enhancements
3 - 36
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Timeboxing
Time-oriented planning
instead of task-oriented approach
Reason: time is limited!
Fixed deadline
Reduced functionality
Prefer the most critical ones!
Satisfies the business
Providing a product
Within expected time frame
3 - 37
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Timeboxing Steps
1. Set delivery date
2.
3.
4.
5.
6.
3 - 38
Deadline should not be impossible
Should be set by development group
Prioritize features by importance
Build the system core
Postpone unfinished functionality
Deliver the system with core functionality
Repeat steps 3-5 to add refinements and
enhancements
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
STAFFING THE PROJECT
3 - 39
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
.
Staffing Attributes
Staffing levels will change
over a project’s lifetime
Adding staff may add more overhead
Using teams under 8-10 people
can reduce complexity
communication is effective in small teams
If more people required
Create sub-teams
3 - 40
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Increasing Complexity with
Larger Teams
3 - 41
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Key Definitions
The staffing plan
lists the roles
describes the reporting structure
The project charter
describes the project’s objectives and rules
A functional lead
manages a group of analysts
A technical lead
oversees progress of
programmers
and technical staff members
3 - 42
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
A Possible Team Configuration
3 - 43
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Motivation
Use monetary rewards cautiously
Use intrinsic rewards
Recognition
Achievement
The work itself
Responsibility
Advancement
Chance to learn new skills
3 - 44
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Handling Conflict
Clearly define project plans
Recognize project importance to
organization
Project charter listing norms and
groundrules
Develop schedule commitments ahead of
time
Forecast other priorities
and their possible impact on the project
3 - 45
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
COORDINATING PROJECT
ACTIVITIES
Standards
Documentation
Managing Risks
3 - 46
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
.
Standards
Industry standards
ISBN
Person Names
...
Formal rules for naming files
Forms indicating goals reached
Programming guidelines
Comments
Templates of Documents
3 - 47
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Documentation
Stored in project binder
Documentation is critical
Year 2000 crisis
Good project teams
learn how to document
Continual updating
3 - 48
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Managing Risk
Risk assessment:
A Document
tracks potential risks
potential impact on the project
Ways to deal with risks
Publicized
Avoided
Eliminated
Actions to reduce risks
Prioritize risks according to the
magnitude
Importance
Define scenarios to deal with risks
Continuously check the occurrences of risks
3 - 49
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Risk Management Activities
Risk Identification
Risk Refinement
Risk Estimation
Risk Avoidance
Planning Mitigation Scenarios
Risk Monitoring
Risk Mitigation
Software safety and hazards analysis
3 - 50
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Risk analysis and management
Produce risk assessment document
tracks potential risks
potential impact on the project
Define project risks
Set the importance according to
magnitude
importance
Define the damage risk causes
Set risk mitigation scenarios
Set actions to prevent risks
Set actions to reduce risks
Define the scenarios applied when risk happens
Follow up risk’s realization
Decide if the risk happens
Activate the risk mitigation scenario
51
The Risk Management Process
3 - 52
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Some of Possible Risks
3 - 53
Risk
Risk type
Description
Staff turnover
Project
Experienced staff will leave the project before it is finished.
Management
change
Hardware
unavailability
Requirements
change
Specification
delays
Size
underestimate
CASE tool underperformance
Technology
change
Product
competition
Project
There will be a change of organizational management with different
priorities.
Hardware which is essential for the project will not be delivered on schedule.
Project
Project and
Product
Project and
Product
Project and
Product
Product
There will be a larger number of changes product to the requirements than
anticipated.
Specifications of essential interfaces are not available, on schedule.
Business
The underlying technology on which the system is built is superseded by new
technology.
A competitive product is marketed before the system is completed.
Business
The size of the system has been underestimated.
Product CASE tools which support the project do not perform as anticipated.
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Classic Mistakes
Overly optimistic schedule
Failing to monitor schedule
Failing to update schedule
Adding people to a late project
3 - 54
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Summary
Project management is critical to
successful development of new
systems
Project management involves
planning, controlling and reporting
on time, labor, and costs.
3 - 55
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Copyright © 2006
John Wiley & Sons, Inc.
All rights reserved. Reproduction or translation of this
work beyond that permitted in Section 117 of the 1976
United States Copyright Act without the express written
permission of the copyright owner is unlawful.
Request for further information should be addressed to
the Permissions Department, John Wiley & Sons, Inc.
The purchaser may make back-up copies for his/her
own use only and not for redistribution or resale.
The Publisher assumes no responsibility for errors,
omissions, or damages, caused by the use of these
programs or from the use of the information contained
herein.
3 - 56
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition
Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.