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”