小组软件过程-北京邮电软件学院

小组软件过程

作者: 时间:2016年04月22日 10:38 点击数:

introduction

This course teaches students about software development teamwork. It provides a structured set of steps,

shows students what to do at each step, and demonstrates how to connect these steps to produce a

completed software product. It also provides two interesting and reasonably challenging project practices. Each is at the same time small enough to be completed in a semester and large enough to simulate a typical small project. When capable students follow the guidance provided in this course,

they will invariably produce a finished working product.

In the suggested TSPi (the introductory Team Software Process) strategy, teams develop a product in

two or three cycles. In the first cycle, teams build a small working product kernel. With each succeeding cycle function is added to this base. This strategy demonstrates the benefits of using data from a prior project to plan a new project. Also, by taking new roles for each cycle, students will have two or three quite different experiences in just one project. After several development cycles, students will have a broad exposure to team methods, and they are likely to continue using TSPi methods on their own.

Instructors

Xiaoyan ZhangAssociate prof.Email: xiaoyan@bupt.edu.cnWanjiang HanAssociate prof.Email: hanwanjiang@bupt.edu.cn

Syllabus for Team Software Process

Course Code:1100200

Course Title:Team Software Process, 17 class hoursPrerequisites:C Programming Language, Personal Software Process,Software EngineeringMajor(s) Applicable:Software Engineering, Electronic Engineering, Computer ScienceCourse Goals:To understand the theory of team software development;To master the steps in team software development;To learn how to handle communication in team cooperation;To understand different team roles in team software development;To make a solid foundation for the final project and the future job.Course Objectives:After successful completion of this course, a student will be able to: master the features of team software development,and learn how to accomplish team software development effectively;understand the definition, the duties, the activities, the objectives and the characteristics of different roles;learn how to cooperate with teammates, manage the process, and monitor the quality;learn about the steps and matters needing attention in team software development.Teaching Contents and Time Allocation1.TSPi overview-------------------------------------------------1 class hour What is TSPi?TSPi principlesThe TSPi designTSPi structure and flowThe TSPi process2.The Logic of the TSP------------------------------------------1 class hour Why projects fail?Common team problemWhat is a team?Building effective teamsHow team developHow TSPi builds teams3.Launching a team project---------------------------------------1 class hour Why conduct a team launch?Team goalsTeam member goalsThe role goalsThe TSPi launch scripts4.The development strategy--------------------------------------2 class hours What is a strategy?The conceptual designRisk managementA reuse strategyThe strategy scripts5.The development plan------------------------------------------2 class hours The need for planningThe TSPi planning processThe development plan scriptsThe quality plan6.Defining the requirements---------------------------------------2 class hours What are requirements?Why we need requirementsThe SRSThe TSPi requirements scripts7.Designing with teams-------------------------------------------2 class hours Design principlesDesign standardsDesigning for reuseDesigning reviews and inspectionsThe TSPi design scripts8.Product implementation----------------------------------------2 class hours Implementation standardsThe implementation strategyReviews and inspectionsThe IMP scripts9.Integration and system testing----------------------------------2 class hours Testing principlesThe TSPi testing strategyThe build and integration strategyThe system test strategyTest planningTracking and measuring testingDocumentationThe TSPi TEST scripts10.The postmortem----------------------------------------------1 class hour Why we need a postmortem?The PIPThe TSPi postmortem scriptsMidsemester-------------------------------------------------------1 class hourTeaching Focuses and Difficult PointsTo learn about the steps in developing team software; to make clear about the objectives and tasks of the roles in team software development;To plan, follow, and evaluate the achivements and quality that made by the teammates.Required TextbookWatts S. Humphrey, 《Introduction to the Team Software Process》, Tsinghua University Press, Dec2002.

Courseware

Teaching_Video

Chapter 1 TSPi OVERVIEW

1. What is TSPi?

2. What are the four basic TSPi principles?

3. List the seven choices which the TSPi design involves.

4. What is the basic development strategy in TSPi?

5. List the eight process steps which TSPi includes in each development cycle.

Chapter 2 The Logic of the Team Software Process

Exercises

1. Is it generally because of teamwork problem or technical issues when software projects fail TSPi?

2. The TSPi shows teams how to handle pressure by guiding teams through ( ).

A. a launch process

B. a strategy process

C. a planning process

D. a requirement process

3. The TSPi supports the jelling process by walking teams through a ( )procedure.

A. Launch

B. Strategy

C. Plan

D. requirement

4. List the most common problems for student teams.

5. What is a team?

6. What are the three basic conditions that must be met for a group to operate successfully as a

7. What are the characteristics of the effective teams?

8. How does TSPi build teams?

9. List the five TSPi roles.

Chapter 3 Launching a Team Project

Exercises

1. Why conduct a team launch?

2. What are the three basic team goals for TSPi?

3. List the goal-setting considerations.

4. What are the functions of the weekly team meeting for TSPi?

5. What are the functions of the first team meeting for TSPi?

Chapter 4 The Development Strategy

Exercises

1. What is a strategy?

2. How do you establish strategy criteria in the TSPi?

3. How do you make a conceptual design in the TSPi?

4. List the six likely risks you might consider in selecting your strategy.

5. Enter the data on each risk in the _________ form.

6. What is the SCM?

7. The SCM plan must include_________________, _________ _____ and________________.

8. List the key functions the configuration management process has.

Chapter 5 The Development plan

Exercises

1. Why make plans?

2. What is PV?

3. What is EV?

4. What is the cumulative PV?

5. Why the TSPi process requires that teams estimate tasks to a granularity of about 10 or a fewer

hours?

6. The TSPi provides a __________ phase when you can record time spent on “management and

miscellaneous” tasks.

7. How do you produce the overall team TSK and SCHEDULE forms in the TSPi?

8. The data in the form SUMP come from form( ) .

A. SUMS

B. SUMQ

C. TASK

D. SCHEDULE

9. List the three summary rates in form SUMQ.

10. If an assembly had 10 parts and 4 of them had testing defects in cycle 1,the assembly would be

% Defect-free (PDF) in testing.

11. In TSPi, the ratio that compares the number of defects found in code review to the number of

defects found in compiling should be more than

12. In TSPi, if you had 15 defects in a program at compile entry, injected 5 defects during the

compile, and found 15 of these defects in the compile, then compile phase yield is .

13. A reasonable rule of thumb is to spend about ( )or more of code time in DLD in TSPi.

A. 25%

B. 50%

C. 75%

D. 100%

14. For products produced with TSPi, A/FR ratios of ( )should be adequate.

A. 1.0

B. 2.0

C. 3.0

D. 4.0

Chapter 6 Defining the Requirements

Exercises

1. What are requirements?

2. Why we need requirements?

3. Why the SRS is important?

4. Why the requirements phase is also the time to plan for system testing?

5. The ( ) leads the inspection and follow the inspection script (INS).

A. team leader

B. development manager

C. quality/process manager

D. support manager

6. The ( ) baselines an official SRS copy, which the team can now change only by using the change

control procedure (form CCR).

A. team leader

B. development manager

C. quality/process manager

D. support manager

Chapter 7 Designing with Teams

Exercises

1. What are the design standards?

2. What are the principal issues in designing for reuse?

3. Why it is important to produce the integration test plan while you are producing the design

specifications?

4. List the four steps that the TSPi process for producing the high-level design consists of.

Chapter 8 Product Implementation

Exercises

1. What are the implementation standards?

2. What are the implementation strategies?

3. Why reviews and inspections are very important in the implementation phase?

4. Why it is important to develop unit test code and facilities before the detailed-design

Chapter 9 Integration and System Testing

Exercises

1. What is the purpose of testing in TSPi?

2. What are the principal TSPi testing activities?

3. List the four build and integration test strategies.

4. List the four system test strategies.

5. In TSPi, the convenient way to record test measurements data is in a ( ) form.

A. LOGTEST

B. LOGT

C. LOGD

D. ITL

6. What should you do to write a well-designed user documentation?

7. List the six items that must be checked in user documentation review.

Chapter 10 The Postmortem

Exercises

1. Why we need a postmortem?

2. What a postmortem can do for you?

3. The TSPi uses form( )to note any improvement ideas that occur to you.

A. PEER

B. ITL

C. PIP

D. INS

4. In TSPi, each team member completes an evaluation of the team and of each team role using form().

A. SUMP

B. PIP

C. PEER

D. SUMQ

Grading

Grading:

1.  Unannounced quiz:10%

2.  Midsemester:20%

3.  Final:70%

References

[1] 《Introduction to the Team Software Process》,Watts S.Humphrey,Tsinghua University Press,Dec. 2002;

[2] 《TSP——Leading a Development Team》,Watts .Humphrey,Posts & Telecom Press,Jul.2006;

[3] 《Managing the Software Process》,Watts .Humphrey, Tsinghua University Press,Aug. 2002;

[4] 《PSP:A Self-Improvement Process for Software Engineers》,Watts .Humphrey, Posts & Telecom

Press,Apr.2006;

[5] 《Introduction to the Personal Software Process》,Watts .Humphrey, Posts & Telecom Press,

Oct.2002.

[6] http://www.sei.cmu.edu/news-at-sei/features/1999/jun/Background.jun99.pdf

[7] http://www.sei.cmu.edu/tsp/

[8] http://www.secc.org.eg/2005_Training_TSP-PSP.asp

[9] http://www.construx.com/Page.aspx?hid=2019

[10] http://portal.acm.org/citation.cfm?id=SERIES9115.318193&coll=GUIDE&dl=GUIDE

[11] http://www-static.cc.gatech.edu/classes/AY2003/cs4320_fall/syllabus.html

更多内容请详见>>http://www.buptsse.cn/TSP/Default.htm

北京市昌平区北七家镇北京邮电大学宏福校区(102209) 010-58828027