Software Engineering Requirements Engineering
Download
Report
Transcript Software Engineering Requirements Engineering
Project Management
Acronyms:
SEPM: Software Engineering Project Management
SPM: Software Project Manager
PM: Project Manager
SPMP: Software Project Management Plan
Objectives of SEPM
Delivery of a product that reliably performs specified
functions developed within cost and schedule
Real world:
May not have specification
Relative importance of cost/time/specs is ambiguous
Cost/schedule/spec changes during project
The contract under discussion may not embody all of the
strategic goals of the enterprise
The contract under discussion may not embody all of the
goals of the PM
Definitions
Project Management: a system of procedures,
practices, technologies, skills, and experience
needed to manage a project:
Planning: determine course of actions
Organizing: Determine work to be done and
partition into units
Staffing: Select and train people
Leading: Motivate people to achieve objectives
Controlling: Evaluate accomplishment of tasks
1. Planning
Specify goals and objectives for project
Specify strategies, policies, plans for achieving goals
Process:
Set objectives: identify tasks and resources needed
Develop policies (provide guides for decision making)
Forecast future and anticipate events. Assess risk
Analyze alternatives including planning for subcontractors, if
applicable
Prepare budgets: Need cost estimation
Develop project plan
2. Organizing
Identify project functions, activities, and tasks
Describe organization of project team and identify
dependence on external groups
Select project management structure for monitoring,
coordinating, and communicating
Create position descriptions and define responsibilities
and qualifications
3. Staffing
Fill positions
Assimilate new personnel
Educate and train personnel
Evaluate personnel
Compensate personnel
Filling Positions
This is perhaps the most important part of project
management
Consider
Intelligence, education, skills
Character, personality
Assimilation and Education
Ensure staff are familiar with project objectives and
schedules
Education: teaches basic principles and theory (long
term)
Training: teaches a specific skill to use, operate, or make
something (short term)
Projects require training; Organizations require
education.
4. Leading
Provide vision and direction
Create effective work environment
Motivate personnel
Supervise and coordinate personnel and activities
Resolve conflicts
Handle changes
5. Controlling
Ensure the project goes according to plan
Set goals
Monitor
Measure results
Initiate corrective actions
Reward and discipline
Creating a Project Plan
Task list; work breakdown schedule
Resources
Network of tasks
Task list
Precursors to the task
The output of the task
The resources required to complete the task
End of task (milestone)
Work Decomposition
Need
Define
requirements/objectives
Produce conceptual
design
Subdivide work into
manageable units
Estimate
size
Size
Database
Estimate
resources
Productivity
Database
Produce
schedule
Resources
Pool
Identify risks
Develop
Product
Sequence project
activities
Size, Resource
Schedule Data
Process
Analysis
Product
Tracking Reports
Q: How to you eat an elephant?
Work Decomposition
A: With a work breakdown structure, of course
WBS
... is “an enumeration of all work activities in hierarchic
refinements of detail, which organizes work to be done into
short, manageable tasks, with quantifiable inputs, outputs,
schedules, and assigned responsibilities”
[Tausworthe 80]
Work Breakdown Structure
…provides a framework from which
the total project is described as a summation of elements
planning can be performed
costs and budgets can be estimated
time, cost, and performance can be tracked
status can be reported
work assignments established
tasks of interest to project management are identified and
measured
[Boehm 81]
Work Decomposition
Total
program
1
2
3
4
Project1
Project2
…
Task1
Subtask1
Subtask2
Work
Pkg1
5
6
…
Level of
Effortw
Level of
Effort2
Projectn
Task2
…
Work
Pkg2
…
Taskx
Subtasky
…
Level of
Effortw
Work
Pkgz
Level
1
2
3
4
5
6
Description
Project
Phase
Subphase
Task group
Task
Subtask
Sample Standard WBS
0000
Entire System
1000 Product
1100
Subsystem 1
1110
Component 1
1111 Requirements Analysis
1112 Design
1113 Code and unit test
1114 Module integration test
1115 Formal qualification test
1116 Problem resolution
1117 Documentation
1118 Formal review
1120
Component 2
...
11X0
Component X
11Z0
Integration test
1200
Subsystem 2
...
1X00
Subsystem X
1Y00 Integration test
2000 Training
2100
Equipment
2200
Services
2300 Facilities
3000 Support equipment
3100
Organizational
3200
Depot
4000 Systems test and eval
4100
Development test and eval
4200
Operational test and eval
4300
Mockups
4400
Test and evaluation
equipment
4500
Test facilities
Sample Standard WBS-2
5000
System project management
5100 Engineering support
5110
Configuration management
5111
CM plan
5112
Configuration item identification
5113
Configuration audit
5114
Configuration status accounting
5120
Quality assurance
5121
QA plan
5122
Process identification
5123
Process control
5124
QA audits
5125
QA status accounting
5200 Project management
5210
Planning
5240
Staffing
5250
Directing
5260
Controlling
6000 Deployment
6100
Technical support
6200
Site construction
6300
Site conversion
Sample Standard WBS-3
Entire System
Product
Training
1100 Subsystem 1
1X00 Subsystem X
1Y00 Integration test
Support
Equipment
3100
3200
2100
2200
2300
Equipment
Services
Facilities
Test
5100
Organizational
Depot
4100
4200
4300
4400
4500
Mgmt
5200
Development
test and eval
Operational test
and eval
Mockups
Test and
evaluation
equipment
Test facilities
Deployment
Systems
engineering
Project
management
6100
6200
6300
Technical
support
Site
construction
Site conversion
WBS dictionary
Project number:
WBS level
1 2 3 4 5 6
X
WORK BREAKDOWN STRUCTURE
DICTIONARY
Element Designator & Title:
1000 Satellite Software
Element Description
The compete flyaway software for the XYZ communications satellite.
WBS level
1 2 3 4 5 6
X
X
X
1100
1200
1300
Associated Lower Level Elements
Designator & Title
Bird health and status subsystem
Navigation subsystem
Communications subsystem
Date:
Sheet
Of
Mapping the WBS
Project X
Component1
Analysis
Design
Code &
unit test
Analysis
Component2
Intgr test
Design
Qual test
Code &
unit test
Intgr test
Qual test
Task Assignment Record
Team ______
Assigned To
Assigned By
* both parties should initial
Date Assigned
Date Due
Assignment Description
Date
Submitted
*
Project Meeting Record
Team ________
Meeting number:
Type of meeting:
Date:
Start time:
Duration:
Participant Roles
Facilitator:
Recorder:
Timekeeper:
Role: _________________
Role: _________________
Subject/Meeting Objective:
Example Roles
Functioning
Explainer of ideas or procedures
Recorder
Encourager of participation
Clarifier/Paraphraser
Formulating
Summarizer
Checker of understanding
Elaborator
Fermenting
Criticizer of ideas, not people
Asker of Justification
Differentiator
Prober
Reality tester
Attachments
:
Summary of Covered Topics
Summary of Decisions
Summary of Conclusions
Meeting’s Overall
Score:
Comments:
Next Meeting:
Unproductive
1
Summary of Next Steps
Items for Future Consideration
Other: _________________________
2
3
4
5
6
7
8
9
10
Productive
Date: ______________ Time: ___________ Location: _____________________
Subject/Meeting Objective:
Resources
Time
People
Equipment
When are they available?
How much of each is needed?
Network of Tasks
How are all the tasks related?
What is the critical path?
What are the milestones?
Gantt charts, PERT charts
Gantt Charts
Program Evaluation Review Technique
(PERT) Charts
7
4
7
10
5
6
Do’s and Don’ts of management
Use metrics
Measure how long it takes, then use it to estimate in the
future
Be realistic
Do you have enough time? Will the outsiders produce the
needed product?
Allow preliminary design: adjust plan
Can’t say how long until you fully understand the problem.
Don’t accept arbitrary plans
“We need the new accounting system in 3 months”