Team Software Process (TSPi)
Download
Report
Transcript Team Software Process (TSPi)
Team Software Process (TSPi)
CS4320
Fall 2002
TSP Strategy
Provide
Use
a simple process framework based on the PSP.
modest, well-defined problems.
Develop
products in several cycles.
Establish
Provide
Use
standard measures for quality and performance.
detailed role definitions.
role and team evaluations.
Require
process discipline.
Provide
guidance on teamwork problems.
TSP Process
Cycle 1 Launch
Strategy 1
Plan 1
Requirements 1
Design 1
Implementation 1
Test 1
Postmortem 1
Cycle 2 Launch
Strategy 2
Plan 2
Requirements 2
Design 2
Implementation 2
Test 2
Postmortem 2
Cycle 3 Launch
Strategy 3
Plan 3
Requirements 3
Design 3
Implementation 3
Test 3
Postmortem 3
Life Cycle Phases
Launch
Strategy
Plan
Requirements
Design
Implement
Test
Postmortem
Appendix D - Script DEV (p. 363)
Cycle Descriptions
Launch
–
–
–
–
–
review course objectives
describe the TSPi structure and content
assign student teams and roles
describe the customer needs statement
establish team and individual goals
Strategy
–
–
–
–
–
–
create a conceptual design for the product
establish the development strategy: decide what will be produced in
each cycle
make initial size and effort estimates
establish a configuration management plan
Reuse plan
Risk Management
Cycle Descriptions (Cont’d)
Planning
–
–
–
–
estimate the size of each artifact to be developed (SRS, SDS,
code)
identify tasks to be performed; estimate time to complete each
task; assign tasks to team members
make a weekly schedule for task completion
make a quality plan
Requirements
–
–
–
–
analyze need statement and interview customer
specify the requirements
inspect the requirements
develop a system test plan
Cycle Phases
Design
–
–
–
–
create a high-level design
specify the design
inspect the design
develop an integration test plan
Implementation
–
–
–
–
–
–
–
use the PSP to implement modules/units
create detailed design of modules/units
review the design
translate the design to code
review the code
compile and test the modules/units
analyze the quality of the modules/units
Cycle Phases
Test
–
–
–
build and integrate the system
conduct a system test
produce user documentation
Postmortem
–
–
–
conduct a postmortem analysis
write a cycle report
produce peer and team evaluations
Motivation (Teamwork)
The success or failure of a project is seldom due to
technical issues. You almost never find yourself
asking “has the state of the art advanced far enough
so that this program can be written?” Of course it has.
If the project goes down the tubes, it will be nontechnical, human interaction problems that do it in.
The team will fail to bind, or the developers will fail to
gain rapport with the users, or people will fight
interminably over meaningless methodological issues.
-- Tom DeMarco
Common Team Problems
Ineffective Leadership
Failure to compromise/cooperate
Lack of participation
Procrastination
Poor Quality
Function Creep
Ineffective peer evaluation
Teams – An aside from the text
Motivation
–
–
Teamwork
–
How to get best from people.
Study of quality goals vs final product
How to get best from team.
Team Structure
–
Organization Matters
Team Project
Pick either:
–
–
Change Counter
Program Analyzer
Go through 1 cycle
Plan for all cycles
TSPi Teams
Five People
Defined Roles (Read 384-393)
–
–
–
–
–
Team Leader
Development Manager
Planning Manager
Quality/Process Manager
Support Manager
Project Bid Table 3.3
LAUNCH!!! Script LAU1
First Team Meeting
Use Meeting Script
Meeting Goal:
–
–
–
Gather and analyze team data on project
Update Personal Task/Schedules prior to meeting
Produce Weekly Report
Start Project Notebook
TSP Planning Overview STRAT
Develop
the
Strategy
STRAT
Make
Size
Estimates
SUMS
Produce
Conceptual
Design
SUMP
SUMQ
Produce
Quality
Plan
Produce
Team
Plan
TASK
SUMQ
SCHEDULE
Produce
Final Team
Plan
Balance
Team
Workload
Make Team
Member Plans
Make
Personal
Plans
SUMS
TASK
TASK
TASK
SCHEDULE
SCHEDULE
SCHEDULE
Development Strategy
Plan the flight, fly the plan.
Gain common understanding of work
Basis for tracking work
Non-artificial project date
Script STRAT1
Conceptual Design
–
–
–
–
How will I build this product?
What are principle components?
What functions do components provide?
How big are components?
This is a planning design—not THE design!!
Cycle Planning (418 Strat Form)
Cycle LOC Cycle Hours
Ref
Functions
1.1
Compare mod prog to prev ver
1.2
ID added and deleted LOC
1.6
Provide Change Label Header
1
2
3 1 2
X
180
50
18
5
3
Risk Assessment
ID significant risks
Rate High , Medium, Low according to :
–
–
Likelihood of occurrence
Impact on project
Team members track all risks not LL
Risks entered on form ITL (page 405)
Change Management
Copies of each version of product
Record of all changes made
Who made change
When change was made
What change was
Why change made
Development (This cycle)
Develop
the
Strategy
STRAT
Make
Size
Estimates
SUMS
Produce
Conceptual
Design
SUMP
SUMQ
Produce
Quality
Plan
Produce
Team
Plan
TASK
SUMQ
SCHEDULE
Produce
Final Team
Plan
Balance
Team
Workload
Make Team
Member Plans
Make
Personal
Plans
SUMS
TASK
TASK
TASK
SCHEDULE
SCHEDULE
SCHEDULE
Development Script (PLAN Script)
SUMS (Page 433)
–
TASK (Page 438)
–
–
From individual PROBE estimates
10 Hour Individual Threshold
SCHEDULE (Page 417)
–
–
Include not just code, but all work products
Map from TASK forms
Use Estimate of Weekly Hours for Team
Quality Plan (Page 426-429)
–
SUMP, SUMQ
Excel Form
Excel TASK Form
Excel Form SCHEDULE
Excel SUMQ
Excel Time Log LOGT
Excel Defect Log LOGD
Load Balancing
Use whole team
Produce Plans first
Next produce work matrix
Balance work using matrix
Load Balancing Matrix
Bob
Task 1
Fred
Task 2
Homework #3 Details
Teams work to plan entire project
Work on cycle 1
Try to do some amount of coding
SRS – Addendum to Needs Statement
Design – Templates or UML or ???
Code – Try to deliver some code, so you can do the
implementation/test scripts
You have 3 weeks.
May use excel tool, or do manually with forms.
Turn in all artifacts except source code itself.