Lecture 4 - SW Proj Plan.ppt

advertisement
CIS 4251 / CIS 5930
SOFTWARE DEVELOPMENT
Fall 1999
Sept. 1, 1999
Marge Holtsinger
Lecture Overview
 Review of Previous
Discussion
 Project Management
 Project Metrics
 Project Planning
Software Engineering
 “Establishment & use of sound engineering
principles in order to obtain economically
software that is reliable and works efficiently on
real machines.”
 “Application of a systematic, disciplined,
quantifiable approach to the development,
operation, & maintenance of software; that is, the
application of engineering to software.
Layered Approach
Tools
How Tos
Methods
Process
Quality
TQM
Case, Use,
etc.
Framework
Spiral Model
 Evolutionary process that combines
iterative nature of prototyping with
controlled & systematic aspects of the linear
sequential model
 Software is developed in a series of
incremental releases
90-90 Rule
 The first 90% of a system absorbs 90 % of
the allocated effort and time.
 The last 10% takes the other 90% of the
allocated effort and time.
3 P’s of Effective Project Mgmt
 People
– Resource Management
 Problem
– Vision / Scope
– Problem Decomposition
 Process
– Match the problem to the process
People
 Recruiting
 Selection
 Performance Management
 Training / Career Development
 Compensation
 Organization and Work Design
Who Are the Players?
 Senior Management
 Project (technical) Managers
 Practitioners
 Customers
 End Users
Team Leader Must Be Able To
 Motivate
 Organize
 Encourage people to be creative
 Problem solve
 Take control when necessary
 Reward initiative and accomplishments
 Encourage team building
Problem
 Vision - represents the unbounded view of
what the product can do for its users;
–
–
–
–
Business Problem
How business will change with new solution
Business context of the solution
Establishes long term vision of the product
Problem
 Scope
– Incorporates the vision mapped against reality
– Identifies priorities; what the customer deems
as essential for success
– Describes functions, performance, constraints,
interfaces, reliability
– Obtained by preliminary customer interviews;
Need enough information for a preliminary
estimate.
Project Trade-off Matrix
Project Trade-off Matrix Optimize Constrain Accept
Resources (COST)
Ship Date (SCHEDULE)
Features (SCOPE)
Process
 Melding of Problem and Process
 Common Process Framework Activities
– Customer Communication
– Planning
– Risk Analysis
– Engineering
 Project Proposal is the deliverable
Project Proposal
 Vision Statement
 Scope
 Project Assumptions
 Project Trade-off Matrix
 Hardware / Software
 Players
– Team Roles & Responsibilities
– Customer Profile
Software Project Planning
 Estimating
 Features and Priorities
 Risk Assessment
 Resources
 Milestones and Deliverables
Software Project Estimation
 Not an exact science
 More accurate if delay estimation until late
in the project
 Base estimates on similar projects
 Decomposition techniques to estimate
effort & cost
 Empirical models to estimate effort & cost
Decomposition Techniques
 Software sizing
– “Fuzzy-logic” sizing
– Function point sizing
– Standard component sizing
– Change sizing
LOC Based Estimation
 Major functions are identified
 Range of values for LOC for each function
are estimated
 Must have historical data to determine
productivity
FP-Based Estimation
 Based on information domain values
– Number of inputs
– Number of outputs
– Number of inquiries
– Number of files
– Number of external interfaces
 Complexity factors are then determined
Process-Based Estimation
 Estimate effort required for each software
process / phase of the project
–
–
–
–
–
Vision/Scope
Project plan
Analysis
Design
Development
What Causes Poor Estimates
 Scope of project not understood
 Productivity data is incorrect
Empirical Estimation Models
 Based on historical data on LOC and FP
 Derived using regression analysis on data
collected from past software projects
– E=A+B*(ev)c A, B, & C are derived constants,
E is the effort in person months, and ev is the
estimation variable
Download