团队软件过程(第2版)
基本信息
- 作者: (美)Watts S. Humphrey [作译者介绍]
- 译者: 吴超英 师春泽 汪浩
- 丛书名: 软件工程经典系列
- 出版社:人民邮电出版社
- ISBN:9787115251893
- 上架时间:2011-6-2
- 出版日期:2011 年6月
- 开本:16开
- 页码:382
- 版次:2-1
- 所属分类:
计算机 > 软件工程及软件方法学 > 综合
内容简介回到顶部↑
书籍
计算机书籍
《团队软件过程(第2版)》(简称“tspi”),是美国embry-riddle aeronautical大学为计算机科学系研究生和高年级本科生开设的一门软件工程课的教科书。这本书系统地论述了如何以开发团队的形式来进行软件的开发,并对开发过程作出了具体而详尽的指导,包括团队成员之间的协调、进度的管理、质量的控制等令读者最感兴趣的方面。
《团队软件过程(第2版)》内容包括四个部分:第一部分——绪论,包括前两章,是对理论的简单介绍,介绍了什么是tspi、tspi的组织结构等内容。第二部分——tspi过程,包括第3章到第10章,则是整个小组研究周期的详细内容,详细解释了小组软件开发的步骤,并且给出了 tspi完整形式的例子。第三部分——小组角色,包括第11章到第15章,提供了小组成员角色的细致描述:小组领导者、开发经理、计划经理、质量/进度监督经理,以及技术支持经理。第四部分——使用tspi,包括第16章到第18章,讲述了在使用本书的过程中需要注意的一些原则。
《团队软件过程(第2版)》实用性与可读性较强,适用于软件开发项目经理、程序员和一般编程爱好者在开发软件时参考,也可作为高等学校计算机软件工程课程的参考书使用。
计算机书籍
《团队软件过程(第2版)》(简称“tspi”),是美国embry-riddle aeronautical大学为计算机科学系研究生和高年级本科生开设的一门软件工程课的教科书。这本书系统地论述了如何以开发团队的形式来进行软件的开发,并对开发过程作出了具体而详尽的指导,包括团队成员之间的协调、进度的管理、质量的控制等令读者最感兴趣的方面。
《团队软件过程(第2版)》内容包括四个部分:第一部分——绪论,包括前两章,是对理论的简单介绍,介绍了什么是tspi、tspi的组织结构等内容。第二部分——tspi过程,包括第3章到第10章,则是整个小组研究周期的详细内容,详细解释了小组软件开发的步骤,并且给出了 tspi完整形式的例子。第三部分——小组角色,包括第11章到第15章,提供了小组成员角色的细致描述:小组领导者、开发经理、计划经理、质量/进度监督经理,以及技术支持经理。第四部分——使用tspi,包括第16章到第18章,讲述了在使用本书的过程中需要注意的一些原则。
《团队软件过程(第2版)》实用性与可读性较强,适用于软件开发项目经理、程序员和一般编程爱好者在开发软件时参考,也可作为高等学校计算机软件工程课程的参考书使用。
作译者回到顶部↑
本书提供作译者介绍
Watts S.Humphrey 是位知名作者,在软件开发过程和软件过程改进方面著有多本影响深远的图书:Managing the Software Process(1989)、A Discipline for Software Engineering(1995)、Managing Technical People(1997)。Humphrey曾长期在IBM公司担任高级软件开发经理,获得了大量的软件开发过程方面的经验,是卡内基梅隆大学软件工程研究所的研究员,就软件质量和软件过程方面的主题著书立说、提供咨询,并在世界各地发表这方面的演讲。
.. << 查看详细
.. << 查看详细
目录回到顶部↑
《团队软件过程(第2版)》
第一部分 绪论
第1章 tspi简介 2
1.1 tspi是什么 2
工程小组为何需要过程 3
1.2 tspi原则 3
1.3 tspi的设计 3
1.3.1 在个体软件过程(psp)的基础上提供一个简单的框架 4
1.3.2 在几个周期内开发产品 4
1.3.3 建立标准的质量和绩效度量 5
1.3.4 为团队和学生提供精确的度量 5
1.3.5 进行角色和团队评阶 5
1.3.6 需要过程规范 5
1.3.7 提供团队问题的指导 6
1.4 tspi的结构和流程 6
周期性开发策略 6
1.5 tspi过程 7
1.6 本书结构和流程 10
1.7 小结 10
第2章 团队软件过程的基本原理 11
第一部分 绪论
第1章 tspi简介 2
1.1 tspi是什么 2
工程小组为何需要过程 3
1.2 tspi原则 3
1.3 tspi的设计 3
1.3.1 在个体软件过程(psp)的基础上提供一个简单的框架 4
1.3.2 在几个周期内开发产品 4
1.3.3 建立标准的质量和绩效度量 5
1.3.4 为团队和学生提供精确的度量 5
1.3.5 进行角色和团队评阶 5
1.3.6 需要过程规范 5
1.3.7 提供团队问题的指导 6
1.4 tspi的结构和流程 6
周期性开发策略 6
1.5 tspi过程 7
1.6 本书结构和流程 10
1.7 小结 10
第2章 团队软件过程的基本原理 11
译者序回到顶部↑
人民邮电出版社邀请我们重新翻译《团队软件过程》 (Introduction to the TeamSoftware Process)这本书,我们欣然答应了。该书面向软件工程师和团队管理者而写,将软件工程与管理方法很好地融合在一起,具有很强的实践指导意义。该书集成了软件工程、估算、计划与跟踪、质量管理和自我指导团队的概念,使之更容易结合一个组织机构内的现有实践。TSP适合大多数业务开发和技术,可以在小周期、螺旋增量式周期或者在瀑布模型中迭代实施,敏捷而有规范地管理,正是适合当前的开发模式,也更适应小型软件组织机构开发管理的特点。虽然这本书出版了很多年,但是书中的精髓还没有真正为人们理解和掌握。如今TSP在世界范围越来越广泛地被采用,CMU/SEI每年都举办TSP研讨会,提供一个交流TSP实践方法和概念的场所。2010年年会的主题为“改变软件工程的世界”,不得不使我们要加倍关注它在当今软件工程和管理上的价值。
软件开发是一个极具有挑战性的工作。每个项目都可能面临不断变更的需求,进度永远是紧迫的,资源也总是短缺的。在其他行业,工程师是个令人羡慕的职业。而对软件业来讲,大部分的工程师大都以一个受害者的形象在行业中出现,他们陷入困境不能自拔。该书的作者Watts Humphrey说软件工程师要想摆脱这个局面,需要做到四件事:第一,具有正确的态度;第二,适当的技能;第三,要有改进的勇气;第四,富有可信度。TSP/PSP帮助软件工程师做到了。
本书主要是针对开发软件密集型产品的工程团队而写的指导书。使用团队软件过程帮助软件工程师、项目经理和组织机构建立一个成熟和有规范的工程实践,在最短的时间和较低成本条件下生产出安全、可靠的软件。本书对经过Personal Software Process (PSP,个体软件过程)培训后的工程师和学生特别有用,它介绍了TSP和具体的改进软件团队工作需要的具体步骤。TSP不但提高团队绩效,同时也能提高工程师的个人绩效。TSP已经在世界近百家企业采用,如IBM、微软、oracle、Adobe等。据2008年的统计,特别是微软,已经投资大约300万美元在IT公司引进TSP,已经培训了上千名PSP开发人员,超过200个TSP项目。由于微软已经在质量和进度预测方面得到了改善,预计TSP已经为它们节省8400万美元。墨西哥政府自2000年开始,出资支持企业实施TSP。同时TSP是对CMMI模型的补充,提供了最优实践和操作实例来指导团队获得更优的性能绩效。它可以加速实施CMMI各个等级,特别是高成熟度等级,是高性能实施过程改进的最佳途径。TSP已经应用在各种领域的小型和大型组织机构,都取得了相似的结果。例如在企业生产力方面提升了25%,甚至更多;减少成本和进度偏差55+/—10%以下;测试成本和进度减少超过80%。如果希望了解更多有关SEI的TSP发展,可以通过查询以下网址http://www.sei.cmu.edu/TSP/,或跟踪www.sei.cmu.edu/tspsymposium,可以通过这个研讨会网址了解更多会议内容,或是浏览过去的会议资料。
Watts Humphrey曾经说过,软件是大量的知识智力工作,当人们不理解他们正在做的事的话就很难去管理这些人。自1986年,他将全部精力献身于软件工程领域,努力通过实践有效的管理原则来改变软件软件工程的世界。他创造了个体软件过程(PersonalSoftware Process,PSP),来帮助软件工程师通过使用有规范的、数据驱动的方式进行自我管理他们的项目。Humphrey获得了举世瞩目的成就,终于在2005年荣获美国总统颁发的国家技术奖章。
我们将这本书再版翻译出来,推荐给读者,目的是提供更具体详细的关于小组软件过程的方法和实践,期望将这些方法运用到你的组织机构中,对软件开发和改进产生深刻的影响。本书内容丰富,通俗易懂,实用性强,可作为大学、研究生计算机专业教材,更适合企业中的软件开发团队作为实训和培训的指导教材。
在我国,已有一些企业在实施CMMI前或过程中,将PSP和TSP作为建立实践基础的必要阶梯。PSP和TSP的引入和推广,已经成为培养优秀软件工程师的摇篮。
从国内整体来看,软件工程师的从业专业水准还没有与国际接轨,积极推广PSP和TSP是解决软件开发人才短缺、缩短培养周期的主要途径之一,也是为持续过程改进,提高生产率、软件质量和缩短开发工期的长远之计。
在这本书的翻译过程中,从SEI传来了一个不幸的消息,Watts Humphrey于2010年10月28日与世长辞了,我们为失去这位伟大的行业领袖而遗憾,这个译文也是为了纪念他,希望他的遗产能为中国软件产业的发展和改进造福。
最后,由于我们的水平有限,在本书的翻译中难免有错误或不妥之处,恳请读者批评指正。
吴超英 师春泽 汪浩
2011年3月
软件开发是一个极具有挑战性的工作。每个项目都可能面临不断变更的需求,进度永远是紧迫的,资源也总是短缺的。在其他行业,工程师是个令人羡慕的职业。而对软件业来讲,大部分的工程师大都以一个受害者的形象在行业中出现,他们陷入困境不能自拔。该书的作者Watts Humphrey说软件工程师要想摆脱这个局面,需要做到四件事:第一,具有正确的态度;第二,适当的技能;第三,要有改进的勇气;第四,富有可信度。TSP/PSP帮助软件工程师做到了。
本书主要是针对开发软件密集型产品的工程团队而写的指导书。使用团队软件过程帮助软件工程师、项目经理和组织机构建立一个成熟和有规范的工程实践,在最短的时间和较低成本条件下生产出安全、可靠的软件。本书对经过Personal Software Process (PSP,个体软件过程)培训后的工程师和学生特别有用,它介绍了TSP和具体的改进软件团队工作需要的具体步骤。TSP不但提高团队绩效,同时也能提高工程师的个人绩效。TSP已经在世界近百家企业采用,如IBM、微软、oracle、Adobe等。据2008年的统计,特别是微软,已经投资大约300万美元在IT公司引进TSP,已经培训了上千名PSP开发人员,超过200个TSP项目。由于微软已经在质量和进度预测方面得到了改善,预计TSP已经为它们节省8400万美元。墨西哥政府自2000年开始,出资支持企业实施TSP。同时TSP是对CMMI模型的补充,提供了最优实践和操作实例来指导团队获得更优的性能绩效。它可以加速实施CMMI各个等级,特别是高成熟度等级,是高性能实施过程改进的最佳途径。TSP已经应用在各种领域的小型和大型组织机构,都取得了相似的结果。例如在企业生产力方面提升了25%,甚至更多;减少成本和进度偏差55+/—10%以下;测试成本和进度减少超过80%。如果希望了解更多有关SEI的TSP发展,可以通过查询以下网址http://www.sei.cmu.edu/TSP/,或跟踪www.sei.cmu.edu/tspsymposium,可以通过这个研讨会网址了解更多会议内容,或是浏览过去的会议资料。
Watts Humphrey曾经说过,软件是大量的知识智力工作,当人们不理解他们正在做的事的话就很难去管理这些人。自1986年,他将全部精力献身于软件工程领域,努力通过实践有效的管理原则来改变软件软件工程的世界。他创造了个体软件过程(PersonalSoftware Process,PSP),来帮助软件工程师通过使用有规范的、数据驱动的方式进行自我管理他们的项目。Humphrey获得了举世瞩目的成就,终于在2005年荣获美国总统颁发的国家技术奖章。
我们将这本书再版翻译出来,推荐给读者,目的是提供更具体详细的关于小组软件过程的方法和实践,期望将这些方法运用到你的组织机构中,对软件开发和改进产生深刻的影响。本书内容丰富,通俗易懂,实用性强,可作为大学、研究生计算机专业教材,更适合企业中的软件开发团队作为实训和培训的指导教材。
在我国,已有一些企业在实施CMMI前或过程中,将PSP和TSP作为建立实践基础的必要阶梯。PSP和TSP的引入和推广,已经成为培养优秀软件工程师的摇篮。
从国内整体来看,软件工程师的从业专业水准还没有与国际接轨,积极推广PSP和TSP是解决软件开发人才短缺、缩短培养周期的主要途径之一,也是为持续过程改进,提高生产率、软件质量和缩短开发工期的长远之计。
在这本书的翻译过程中,从SEI传来了一个不幸的消息,Watts Humphrey于2010年10月28日与世长辞了,我们为失去这位伟大的行业领袖而遗憾,这个译文也是为了纪念他,希望他的遗产能为中国软件产业的发展和改进造福。
最后,由于我们的水平有限,在本书的翻译中难免有错误或不妥之处,恳请读者批评指正。
吴超英 师春泽 汪浩
2011年3月
前言回到顶部↑
这本书是为已经学习并使用过个体软件过程(PSP)的学生和工程师准备的。你可能在研究生课程、高级培训课程或者初级导论课程中学过PSP。或者,你可能是工程师,正在探索如何在实际的团队工作环境中应用PSP。不论是哪种情况,只要你学过PSP,你就具备了使用本书中的方法和实践的基础。
学习过PSP之后,你可能需要指导,以便弄清如何将它应用于软件过程的诸多任务上。这就是团队软件过程(TSP)的主旨:为在软件开发领域中应用成熟的工程学方法提供一个框架。
关于团队协作有很多东西可讲,本书只涵盖了最基本的内容。TSPi(团队软件过程导论)介绍了团队的概念,组建团队的基本步骤,以及在团队中工作的方法。但是要注意,本书是为导论课程设计的,并没有涵盖在大规模工业项目中使用TSP的全部资料。
TSPi是如何帮助工程师的
本书向工程师介绍有关软件开发团队协作的内容。TSPi提供了一系列结构化的步骤,告诉工程师每一步该做什么,并且详细阐述了如何将这些步骤连接起来以开发完整的产品。TSPi还提供了两个饶有趣味且相对具有挑战性的项目练习,每个练习都具有适当的规模。既不过大,以保证在几周之内可以完成:也不过小,以保证可以模拟典型的小规模项目。如果有能力的工程师遵循本书的指导,那么他们一定能开发出完整的工作产品。
在本书建议的TSPi策略中,团队在两到三个周期内开发一个产品。在第一个周期内,团队构建工作产品内核。在后续的每个周期内,逐渐向内核加入新功能。这种策略体现了使用历史项目数据来制定新项目计划的好处。另外,由于在每个周期中都有新的角色,工程师们可以在一个项目中就经历两到三种不同类型的工作。经过几个开发周期后,工程师们就会对团队协作方法有一个广泛的了解,这样一来,他们就更有可能在自己将来的工作中继续使用TSPi方法。
为何要学习TSPi课程
经实践证明,在培养软件工程专业的学生方面,项目课程是行之有效的,因此,越来越多的大学开始开设相关课程。这些课程很受学生欢迎,修习人数一般都会超过预期。学生想学习可应用于将来工作的知识,而团队训练课程正好满足了他们的需要。毕业后的学生及其雇主普遍反映,软件项目课程为实际工作打下了良好的基础。
现在,在团队项目课程方面,已经有很多有益的实践。尽管大多数此类课程都是成功的,但普遍有三个问题:第一,学生经常去尝试过大的项目;第二,他们大多只强调产品而忽略了过程;第三,总有一些成员会破坏团队气氛。虽然TSPi不能完全避免这些问题,但它提供了有关避免这些问题或减少这些问题影响的有益指导。
为了高效利用课程时间,团队软件课程应该精心组织,并且要基于经实践证明的项目经验。如果没有明确定义的过程或结构化的团队框架,工程师就必须自己决定该如何完成项目。如果没有过程和框架,工作组就必须自己学习团队建设和团队协作的基本要素,而这一过程通常都会伴随着痛苦的尝试和失败。显然,这样做代价高昂并且没有必要,因为团队协作的原则通常众所周知、简单明了。
TSPi以行之有效的团队协作方法训练工程师,首先帮助他们熟悉团队建设的过程,然后指导他们使用经过明确定义和度量的框架来开发产品。在经过PSP训练的前提下,工程师一般都能遵循TSPi脚本步骤,并使用TSPi支持工具来计划和管理自己的工作。遵循TSPi的指导,项目工作会变得更有效率,工程师也可以更加专注于学习软件工程,而不是在团队建设和团队管理方面花费大量的时间。
TSPi明确定义了团队角色,每个团队成员都要以某种角色进行工作。每个角色都有详细说明,指出这个角色应该做什么,何时以及如何去完成任务。在每个团队成员都知道他们自己和其他人应该做什么的情况下,他们就能更好地作为一个团队高效工作。如果一个团队成员没有完成工作,其他团队成员就会知道相关情况,从而及时地采取措施处理相关问题。如果团队不能独立解决人际关系问题,他们可以求助于教师或管理人员。本书的教师手册给出了处理很多常见的团队协作问题的有效方法。
如果学生团队成员担任明确的角色和职责,并使大家都了解,教师就能给出更加公平和详细的成绩。除了给整个团队打分,还可以给每个人的表现打分。这不仅激励学生表现得更好,同时也是一种更公平的给团队训练课程打分的方式。
本书组织结构
本书是为引导团队学习TSPi过程而设计的。前两章(第一部分)是简介,第二部分阐述了完整的团队开发周期。书中详细解释了过程脚本,并且给出了TSPi表格的完整示例。
第三部分给出了TSPi团队成员角色的详细说明:团队领导、开发经理、计划经理、质量和过程经理,以及支持经理。当阅读有关每个角色的章节后,你可以将TSPi角色脚本作为工作参考。
TSPi课程伊始,每个学生都要填写一个INFO表格(见附录F),这个表格记录了有关学生兴趣和背景的信息。教师根据这些信息将整个班级划分为5人小组,再给每个小组成员分配初始角色。如果个别小组有4或6个人,教师就必须对角色进行适当调整。每个角色都要有人担任,每个工程师必须担任至少一个角色。对于一个4人的小组,支持经理角色的任务要在所有小组成员间分摊。对于一个6人小组,质量和过程经理角色要分割为两个角色:质量经理和过程经理。
选择团队成员并进行角色分配之后,各个团队就启动各自的项目,并定期汇报项目进展。每个开发周期结束时,工程师要评估团队的整体表现和每个角色的个人表现。基于这些信息,教师就能评估每个团队和每个人的工作,并且在后续的开发周期中更好地分配角色。如果有必要,教师可以对团队的人员组成进行调整,但是,除非出现了严重问题,否则团队的人员组成应该在整个课程中保持稳定。
使用标准及预定义的问题
尽管TSPi可以应用于各类项目,但本书只提供了两个标准和预定义的问题,它们是为满足课程多样性的要求而专门设计的。虽然使用真实的客户需求也有好处,但是,因为以下三个原因,我们不推荐这样做。第一,课程有严格的进度要求。虽然多数客户一开始都同意按照固定的时间表推进项目,但是很少有客户真正知道开发软件需要多长时间。另外,因为入门工程师一般不知道如何按照严格的进度来管理项目,所以项目失败的几率是很高的。这个问题的根源在于,实际的客户需求大多既不够清晰也不稳定,导致频繁变更和大量延期。
学习过PSP之后,你可能需要指导,以便弄清如何将它应用于软件过程的诸多任务上。这就是团队软件过程(TSP)的主旨:为在软件开发领域中应用成熟的工程学方法提供一个框架。
关于团队协作有很多东西可讲,本书只涵盖了最基本的内容。TSPi(团队软件过程导论)介绍了团队的概念,组建团队的基本步骤,以及在团队中工作的方法。但是要注意,本书是为导论课程设计的,并没有涵盖在大规模工业项目中使用TSP的全部资料。
TSPi是如何帮助工程师的
本书向工程师介绍有关软件开发团队协作的内容。TSPi提供了一系列结构化的步骤,告诉工程师每一步该做什么,并且详细阐述了如何将这些步骤连接起来以开发完整的产品。TSPi还提供了两个饶有趣味且相对具有挑战性的项目练习,每个练习都具有适当的规模。既不过大,以保证在几周之内可以完成:也不过小,以保证可以模拟典型的小规模项目。如果有能力的工程师遵循本书的指导,那么他们一定能开发出完整的工作产品。
在本书建议的TSPi策略中,团队在两到三个周期内开发一个产品。在第一个周期内,团队构建工作产品内核。在后续的每个周期内,逐渐向内核加入新功能。这种策略体现了使用历史项目数据来制定新项目计划的好处。另外,由于在每个周期中都有新的角色,工程师们可以在一个项目中就经历两到三种不同类型的工作。经过几个开发周期后,工程师们就会对团队协作方法有一个广泛的了解,这样一来,他们就更有可能在自己将来的工作中继续使用TSPi方法。
为何要学习TSPi课程
经实践证明,在培养软件工程专业的学生方面,项目课程是行之有效的,因此,越来越多的大学开始开设相关课程。这些课程很受学生欢迎,修习人数一般都会超过预期。学生想学习可应用于将来工作的知识,而团队训练课程正好满足了他们的需要。毕业后的学生及其雇主普遍反映,软件项目课程为实际工作打下了良好的基础。
现在,在团队项目课程方面,已经有很多有益的实践。尽管大多数此类课程都是成功的,但普遍有三个问题:第一,学生经常去尝试过大的项目;第二,他们大多只强调产品而忽略了过程;第三,总有一些成员会破坏团队气氛。虽然TSPi不能完全避免这些问题,但它提供了有关避免这些问题或减少这些问题影响的有益指导。
为了高效利用课程时间,团队软件课程应该精心组织,并且要基于经实践证明的项目经验。如果没有明确定义的过程或结构化的团队框架,工程师就必须自己决定该如何完成项目。如果没有过程和框架,工作组就必须自己学习团队建设和团队协作的基本要素,而这一过程通常都会伴随着痛苦的尝试和失败。显然,这样做代价高昂并且没有必要,因为团队协作的原则通常众所周知、简单明了。
TSPi以行之有效的团队协作方法训练工程师,首先帮助他们熟悉团队建设的过程,然后指导他们使用经过明确定义和度量的框架来开发产品。在经过PSP训练的前提下,工程师一般都能遵循TSPi脚本步骤,并使用TSPi支持工具来计划和管理自己的工作。遵循TSPi的指导,项目工作会变得更有效率,工程师也可以更加专注于学习软件工程,而不是在团队建设和团队管理方面花费大量的时间。
TSPi明确定义了团队角色,每个团队成员都要以某种角色进行工作。每个角色都有详细说明,指出这个角色应该做什么,何时以及如何去完成任务。在每个团队成员都知道他们自己和其他人应该做什么的情况下,他们就能更好地作为一个团队高效工作。如果一个团队成员没有完成工作,其他团队成员就会知道相关情况,从而及时地采取措施处理相关问题。如果团队不能独立解决人际关系问题,他们可以求助于教师或管理人员。本书的教师手册给出了处理很多常见的团队协作问题的有效方法。
如果学生团队成员担任明确的角色和职责,并使大家都了解,教师就能给出更加公平和详细的成绩。除了给整个团队打分,还可以给每个人的表现打分。这不仅激励学生表现得更好,同时也是一种更公平的给团队训练课程打分的方式。
本书组织结构
本书是为引导团队学习TSPi过程而设计的。前两章(第一部分)是简介,第二部分阐述了完整的团队开发周期。书中详细解释了过程脚本,并且给出了TSPi表格的完整示例。
第三部分给出了TSPi团队成员角色的详细说明:团队领导、开发经理、计划经理、质量和过程经理,以及支持经理。当阅读有关每个角色的章节后,你可以将TSPi角色脚本作为工作参考。
TSPi课程伊始,每个学生都要填写一个INFO表格(见附录F),这个表格记录了有关学生兴趣和背景的信息。教师根据这些信息将整个班级划分为5人小组,再给每个小组成员分配初始角色。如果个别小组有4或6个人,教师就必须对角色进行适当调整。每个角色都要有人担任,每个工程师必须担任至少一个角色。对于一个4人的小组,支持经理角色的任务要在所有小组成员间分摊。对于一个6人小组,质量和过程经理角色要分割为两个角色:质量经理和过程经理。
选择团队成员并进行角色分配之后,各个团队就启动各自的项目,并定期汇报项目进展。每个开发周期结束时,工程师要评估团队的整体表现和每个角色的个人表现。基于这些信息,教师就能评估每个团队和每个人的工作,并且在后续的开发周期中更好地分配角色。如果有必要,教师可以对团队的人员组成进行调整,但是,除非出现了严重问题,否则团队的人员组成应该在整个课程中保持稳定。
使用标准及预定义的问题
尽管TSPi可以应用于各类项目,但本书只提供了两个标准和预定义的问题,它们是为满足课程多样性的要求而专门设计的。虽然使用真实的客户需求也有好处,但是,因为以下三个原因,我们不推荐这样做。第一,课程有严格的进度要求。虽然多数客户一开始都同意按照固定的时间表推进项目,但是很少有客户真正知道开发软件需要多长时间。另外,因为入门工程师一般不知道如何按照严格的进度来管理项目,所以项目失败的几率是很高的。这个问题的根源在于,实际的客户需求大多既不够清晰也不稳定,导致频繁变更和大量延期。
【插图】







点击看大图

加载中...

