项目管理-TSPPSP
- 格式:ppt
- 大小:1.05 MB
- 文档页数:17
PS项目管理1. 概述PS项目管理是指对PS(Photoshop)软件的项目进行管理和组织的过程。
在一个典型的PS项目中,通常涉及到多个设计师协同工作,并且需要按照预定的时间表和质量要求完成设计任务。
PS项目管理旨在提高项目的效率和质量,确保项目能够按时完成。
2. 项目计划在PS项目管理中,项目计划是一个关键的阶段。
项目计划包括确定项目目标、明确项目范围、制定项目时间表、分配资源等。
一个完整的项目计划应该包含以下几个方面的内容:2.1 项目目标项目目标是指PS项目的期望结果,通常与客户的需求和预期一致。
在确定项目目标时,需要明确项目的主要目的和关键成功标准。
2.2 项目范围项目范围是指明确项目的具体任务和交付物。
在PS项目中,项目范围可能包括设计素材的创建、图像的编辑和修饰等。
2.3 项目时间表项目时间表是指按照一定的时间顺序,安排项目任务的完成时间。
在制定项目时间表时,需要考虑到不同任务之间的依赖关系和设计师的实际可用时间。
2.4 资源分配资源分配是指分配合适的设计师和工作资源来完成项目任务。
在进行资源分配时,需要考虑到设计师的专长和工作负荷,以及项目的紧急程度和优先级。
3. 项目执行项目执行是PS项目管理的核心阶段,它包括具体的设计工作和项目进度的监控。
在项目执行阶段,设计师需要根据项目计划中的任务要求,按照设计规范和标准进行设计工作。
同时,项目经理需要对项目进度进行监控和跟踪,确保项目按时完成。
3.1 设计工作设计工作是指根据项目要求,使用PS软件进行具体的设计和编辑工作。
在设计工作中,设计师需要熟悉PS软件的各种功能和技术,以及项目的设计要求和风格。
3.2 项目进度监控项目经理需要对项目进度进行实时监控和跟踪。
通过使用项目管理工具和技术,可以帮助项目经理及时发现项目中的潜在问题,并采取相应的措施加以解决,以保证项目进度的顺利推进。
4. 项目评估在项目执行完成后,需要对项目进行评估,以便总结经验教训并改进项目管理的方法和流程。
项目管理历史发展概要项目管理是第二次世界大战后期发展起来的重大新管理技术之一,最早起源于美国。
有代表性的项目管理技术比如关键性途径方法(CPM)和计划评审技术(PERT),甘特图(Ganttchart)的提出,它们是两种分别独立发展起来的技术。
甘特图(Ganttchart)又叫横道图、条状图(Barchart)。
它是在第一次世界大战时期发明的,以亨利·L·甘特先生的名字命名,他制定了一个完整地用条形图表进度的标志系统。
其中CPM是美国杜邦公司和兰德公司于1957年联合研究提出,它假设每项活动的作业时间是确定值,重点在于费用和成本的控制。
PERT出现是在1958年,由美国海军特种计划局和洛克希德航空公司在规划和研究在核潜艇上发射“北极星”导弹的计划中首先提出。
与CPM不同的是,PERT中作业时间是不确定的,是用概率的方法进行估计的估算值,另外它也并不十分关心项目费用和成本,重点在于时间控制,被主要应用于含有大量不确定因素的大规模开发研究项目。
随后两者有发展一致的趋势,常常被结合使用,以求得时间和费用的最佳控制。
20世纪60年代,项目管理的应用范围也还只是局限于建筑、国防和航天等少数领域,但因为项目管理在美国的阿波罗登月项目中取得巨大成功,由此风靡全球。
国际上许多人开始对项目管理产生了浓厚的兴趣,并逐渐形成了两大项目管理的研究体系,其一是以欧洲为首的体系——国际项目管理协会(IPMA);另外是以美国为首的体系——美国项目管理协会(PMI)。
在过去的30多年中,他们的工作卓有成效,为推动国际项目管理现代化发挥了积极地作用。
项目管理发展史研究专家以20世纪80年代为界把项目管理划分为两个阶段。
项目管理(ProjectManagementpm)是美国最早的曼哈顿计划开始的名称.。
后由华罗庚教授50年代引进中国(由于历史原因叫统筹法和优选法)。
台湾省叫项目专案。
发展在冷战的史普托尼克危机(苏联发射第一颗人造卫星)之前,项目管理还没有用做一个独立的概念。
第十三讲CMM、TSP、PSP综述一、前言1984年,美国国防部出资在卡内基·梅隆大学设立软件工程研究所(Software Engineering Institute, 简称SEI)。
SEI于1986年开始研究软件过程能力成熟度模型(Capability Maturity Model, CMM),1991年正式推出了CMM1·0版,1993年推出CMM1·1版。
此后,SEI还完成了能力成熟度模型集成(Capability Maturity Model Integration,简称CMMI)。
目前,CMM2·0版已经推出。
CMM自问世以来备受关注,在一些发达国家和地区得到了广泛应用,近年来,在我国也逐步得到了应用,成为衡量软件公司软件开发管理水平的重要参考因素,并成为软件过程改进的事实标准。
CMM源于工业界的最佳实践,经过SEI的总结、提炼和抽象形成了一个系统地指导软件机构改进软件过程能力的完整框架,它在一定程度上是抽象的模型,它为一般的软件机构提供了指导。
换句话说,它给出了软件机构过程能力改进的一个目标,但在实际操作中,机构应该采取哪些合适的步骤,才能达到这一目标,CMM并未清楚详细地提及,而且关键实践所描述的活动并不一定适合不同背景的所有机构。
针对这种情况,SEI 于1995年后提出了TSP(Team Software Process)和PSP(Personal Software Process),用以改善机构中小组过程能力和个体软件过程能力。
二、CMM简介由SEI提出的CMM描述了有效的软件过程单元的框架,它强调软件机构能一致地、可预测地生产出高质量的软件产品的能力,认为软件产品质量的好坏主要取决于开发和维护该产品所使用的软件过程的质量。
一个有效的软件过程在于能将训练有素的人员、先进的技术、工具和方法有机地结合起来。
CMM将机构的软件过程能力分为5个成熟度级别,分别是初始级、可重复级、已定义级、已管理级和优化级。
TSP团队软件过程简介什么是TSP团队软件过程(TSP), 和个人软件过程(PSP)结合在一起,帮助高绩效工程师来●确保高质量软件产品●生产安全的软件产品●改进组织的过程管理工程组使用TSP 将集成团队概念应用到软件密集系统的开发中。
一个4 天的启动过程帮助团队和他们的经理●建立目标●定义团队角色●评估风险●制订团队计划在启动后,TSP 提供一个定义的过程框架用以管理、跟踪和报告团队过程。
使用TSP, 组织可以建立自我导向的团队,计划并跟踪他们的工作,建立目标,并拥有他们的过程和计划。
可以是纯软件团队或集成产品团队,3 到20 个工程师。
TSP 将帮助你的组织建立一个成熟规范的工程实践,生产安全、可靠的软件。
对软件买家和开发商,TSP 也作为一个新度量框架的基础得到使用。
团队软件过程(TSP)扩展和完善CMMI和PSP方法,指导工程师开发和维护团队的工作。
它展示如何建立一个自我导向的团队及如何扮演一个有效团队成员的角色。
它还向管理层展示如何指导和支持这些团队和如何维护一个培养团队高绩效的环境。
TSP有5个目标:●建立自我导向的团队,计划和跟踪他们的工作,建立目标,并拥有过程和计划。
可以是纯软件团队或集成产品团队(IPT),3到20个工程师●向管理者显示如何教导和鼓励团队和如何帮助他们维持颠峰状态的绩效●通过使CMM5级行为成为正常和可预期的行为从而加速软件过程改进●为高成熟度组织提供改进指南●支持行业团队技能的大学教学TSP的根本好处是它向工程师展示在成本控制和大胆的进度计划下如何生产高质量的产品。
它通过向工程师展示如何管理自己的工作,并使他们成为计划和过程的主人来实现这一点。
TSP 的行业结果TSP 帮助团队表现得职业化也许TSP最强大的效果是可以帮助团队管理其工作环境,产品组遇到的最常见问题是不合理的进度压力。
尽管这很正常,也具有破坏性。
当团队被迫按照不合理的进度工作时,他们无法制订有用的计划。
PSP与TSP介绍PSP、TSP与CMMI:发展历史CMM与PSP在20世纪80年代后期到90年代早期,SEI开发了能力成熟度模型(CMM),为软件开发总结了组织级的最佳实践。
SEI特别会员Watts Humphrey决定将CMM的基本原理应用于单个开发人员的软件开发实践中。
个人软件过程(PSP)就是他努力的成果,为单个软件开发人员设计的CMM 五级过程。
CMM与TSP不久大家就发现,虽然使用PSP可以取得优异的结果,但是如果周围的环境不能鼓励并且要求遵守PSP实践,这些必要的规范性是几乎不可能得到维持的。
所以汉弗莱为大多数组织中最小的运作单位——项目组,开发了团队软件过程(TSP),TSP是为项目组设计的CMM5级过程。
在一份SEI技术报告中,记录了使用TSP在满足成本和进度估算的同时达到一流质量水平的最新结果CMM的演变同时,CMM的成功也引发了相似模型的开发以覆盖系统工程(SE-CMM)、集成产品开发(IPD-CMM)、软件采购(SA-CMM)以及人力资源(P-CMM)。
为了缓解模型数量的过快增长,SEI 使用从未正式发布的CMM第二版、系统工程CMM和IPD-CMM开发了能力成熟度模型集成(CMMI),关于PSP何为PSP?个人软件过程(PSP)向工程师显示如何• 管理其项目质量• 做出可以实现的承诺• 改进估算与计划• 减少产品缺陷由于人员成本占据了软件开发的70%,所以工程师的技能与工作习惯很大程度决定了软件开发过程的结果,基于CMM中发现的实践,PSP可以被工程师作为指导,帮助建立开发软件的一套结构化和规范的方法。
PSP是组织计划引入TSP的前提条件。
PSP可以被应用于软件开发过程的许多方面,包括• 小型程序开发• 需求定义• 文档编写• 系统测试• 系统维护• 大型软件系统的加强图一:PSP过程的演化图二到图四显示了工程师经历的部分收益。
图二显示了估算偏差从55%降到27%约两倍的改进。
何为项目管理?何为项目管理?项目管理是管理学的一个分支学科,对项目管理的定义是:指在项目活动中运用专门的知识、技能、工具和方法,使项目能够在有限资源限定条件下,实现或超过设定的需求和期望的过程。
下面店铺就为大家介绍一下何为项目管理,谢谢您的阅读,祝您阅读愉快。
何为项目管理?篇1一、基本介绍项目管理是管理学的一个分支学科,对项目管理的定义是:指在项目活动中运用专门的知识、技能、工具和方法,使项目能够在有限资源限定条件下,实现或超过设定的需求和期望的过程。
项目管理是对一些与成功地达成一系列目标相关的活动(譬如任务)的整体监测和管控。
这包括策划、进度计划和维护组成项目的活动的进展。
“项目是在限定的资源及限定的时间内需完成的一次性任务。
具体可以是一项工程、服务、研究课题及活动等。
”“项目管理是运用管理的知识、工具和技术于项目活动上,来达成解决项目的问题或达成项目的需求。
所谓管理包含领导(leading)、组织(organizing)、用人(staffing)、计划(planning)、控制(controlling)等五项主要工作。
”项目管理(Project Management):运用各种相关技能、方法与工具,为满足或超越项目有关各方对项目的要求与期望,所开展的各种计划、组织、领导、控制等方面的活动。
二、历史1.概要项目管理是第二次世界大战后期发展起来的重大新管理技术之一,最早起源于美国。
有代表性的项目管理技术比如关键性途径方法(CPM)和计划评审技术(PERT),甘特图(Gantt chart)的提出,它们是两种分别独立发展起来的技术。
甘特图(Gantt chart)又叫横道图、条状图(Bar chart)。
它是在第一次世界大战时期发明的,以亨利·L·甘特先生的名字命名,他制定了一个完整地用条形图表进度的标志系统。
其中CPM是美国杜邦公司和兰德公司于1957年联合研究提出,它假设每项活动的作业时间是确定值,重点在于费用和成本的控制。
项目管理PMP知识体系十大领域五大过程组PMP(Project Management Professional)是由PMI(Project Management Institute)颁发的国际认证,是全球项目管理领域最具权威性的认证之一、PMP认证要求考生熟悉项目管理知识体系,其中核心内容包括十大领域和五大过程组。
一、十大领域1.整体项目管理:涉及项目的整体规划、执行、监控和收尾等活动,包括制定项目章程、项目管理计划以及整体变更控制等。
2.范围管理:确定项目目标和任务,准确定义项目的范围和范围的变更控制。
3.进度管理:制定项目计划和进度控制,确保项目按时完成。
4.成本管理:制定项目的预算和成本控制,跟踪和管理项目的成本。
5.质量管理:制定项目的质量策划和质量控制,确保项目的质量。
6.资源管理:规划、获取和管理项目的资源,包括人力资源、物资资源、设备资源等。
7.沟通管理:制定项目的沟通管理计划,确保项目信息的有效传递和沟通。
8.风险管理:制定风险管理计划,识别、评估、分析和应对项目的风险。
9.采购管理:制定采购管理计划,对项目所需的产品、服务和材料进行采购和供应商管理。
10.相关方管理:识别、分析和管理项目相关方的利益和需求,确保项目的各方利益得到满足。
以上十大领域覆盖了项目管理的方方面面,涵盖了项目的各个环节和活动,确保了项目在全面、高效和有序的管理下进行。
1.启动过程组:确定项目、项目目标、项目范围,编制项目章程,制定初步项目计划等。
2.规划过程组:规划项目的各个方面,包括范围、进度、成本、质量、资源、沟通、风险等。
3.执行过程组:按照项目计划执行工作,包括资源分配、团队组建、沟通、风险应对等。
4.监控过程组:对项目进行监控和控制,识别和解决项目中的问题和风险,确保项目按计划进行。
5.收尾过程组:项目完工后的工作,包括验收、交付、总结和反思,确保项目结束和成果交付。
五大过程组是项目管理的核心步骤,各个过程组相互衔接、相互影响,在整个项目生命周期中起到了关键作用。
CMM、PSP和TSP对软件过程持续改进的意义和方法的探讨【摘要】:软件过程的持续改进能力是软件开发技术的核心问题,是软件公司或者软件使用企业共同关注的问题,文章对CMM、PSP和TSP在软件过程持续改进方面的意义和方法做了一些探讨。
【关键词】:CMM;PSP;TSP;软件过程;改进保障软件过程质量的标准和体系有三种:美国CMU-SEI的CMM/PSP/TSP;国际ISO 9000质量标准体系;国际ISO/IEC 15504 (SPICE)。
它们都是致力于将人员、技术和工具等组织起来,通过有效的管理手段,提高企业运行效率,保证运行和生产质量。
文章仅就CMM、PSP和TSP在软件过程持续改进方面的意义和方法做一些探讨。
1.CMM、PSP和TSP概述一般认为,CMM/TSP/PSP是目前世界上的最好的软件管理模式。
CMM提供了框架和目标,PSP针对个人进行优化,TSP针对团队进行优化。
它们的比较通用的名称为:软件能力成熟度模型CMM(Capability Maturity Model);个体软件过程PSP(Personal Software Process);团队软件过程TSP(Team Software Process)。
三者互相补充,共同发挥作用促进软件质量保障体系的实施。
CMM是过程改善的第一步,它提供了评价组织的能力,识别优先改善需求和追踪改善进展的管理方式。
企业只有开始CMM改善后,才能接受需要规划的事实,认识到质量的重要性,才能注重对员工经常进行培训,合理分配项目人员,并且建立起有效的项目小组。
然而,它实现的成功与否与组织内部有关人员的积极参加和创造性活动密不可分。
PSP能够指导软件工程师如何保证自己的工作质量,估计和规划自身工作,度量和追踪个人的表现,管理自身的软件过程和产品质量。
经过PSP学习和实践的正规训练,软件工程师们能够在他们参与的项目工作之中充分运用PSP,从而有助于CMM目标的实现。
摘 要胜利油田随着企业信息化进程的进一步加快因此管理困难越来越成为软件开发在胜利油田进一步发展的障碍本文研究了运用TSP及PSP过程进行软件开发管理的方法PSP方法对提高软件开发质量的作用PSP是过程化的本文首先对TSPÈ»ºó̽ÌÖÁ˲âÁ¿Êý¾ÝµÄ¶ÈÁ¿ºÍÖÊÁ¿Êý¾ÝµÄ¼ÆËã·½·¨ÒÔ¼°ÏÖʵÒâÒå±¾ÎÄʵÏÖÁËÈí¼þ¿ª·¢¹ý³Ì¹ÜÀí¹¤¾ßÈí¼þµÄ¿ª·¢¿ÉÀûÓÿª·¢ÈËÔ±¸öÈ˵ÄPSP数据计算汇总开发小组的TSP数据涵盖了从需求分析到测试的全部过程2级数据库结构集C lient/Server和B row s e r/W eb Server技术于一体Array本文还运用实例讨论了的应用效果对个人和团队实施TSP±¾ÎÄ×îºó¶ÔÂÛÎÄËù×öµÄ¹¤×÷½øÐÐÁË×ܽáPSP³õÆÚµÄʵʩ¹ý³ÌÖÐ×ÜÊÇ´æÔÚ±ê×¼²»Í³Ò»Ö»ÓÐͨ¹ý²»¶Ï»ýÀÛ¸öÌåÈí¼þ¹ý³Ì小组软件过程 软件开发管理AbstractWith the quicken of enterprise Informatization in Shengli Oil Field, the requirement of software development rises increasingly, there emerged many questions such as poor designing, hard to management and can't ensure the quality of software development, and the questions listed above handicap more progress in Shengli Oil Field of software development. To solve the questions, this paper studied the management methods of software development with TSP&PSP, actualized the development of tool software, and integrated concretely examples to explain the effect of increasing the software development quality with TSP&PSP.TSP&PSP based on quantitative analysis, it's an coursing method of software development management. This paper studied TSP&PSP course firstly, then discussed the measurement of meterage data, calculation methods of quality data, and practical significance. Based on the courses and methods, we achieved a tool software named TSP&PSP Management System which used to manage the course of software development. The system includes the two classes of PSP and TSP .We can calculate and summary the TSP datas by using the PSP datas of programmers. That system divides the process into 13 processes, which covers the whole process from analyzing to testing. That system has the following characteristics: the two classes database structures the integration of Client /server and Browser/Web ServerPSP and TSP is a long course, the beginning of which always remains some questions , such as the difference of standard and the badness of the nicety. Only by continuously accumulating, we can advance the management work for developing software.Keywords附件四上海交通大学学位论文原创性声明本人郑重声明是本人在导师的指导下除文中已经注明引用的内容外对本文的研究做出重要贡献的个人和集体本人完全意识到本声明的法律结果由本人承担巴永军日期附件五上海交通大学学位论文版权使用授权书本学位论文作者完全了解学校有关保留同意学校保留并向国家有关部门或机构送交论文的复印件和电子版本人授权上海交通大学可以将本学位论文的全部或部分内容编入有关数据库进行检索缩印或扫描等复制手段保存和汇编本学位论文本学位论文属于 不保密°ÍÓÀ¾ü Ö¸µ¼½ÌʦǩÃû2005Äê 08Ô 31ÈÕ ÈÕÆÚ第一章绪论1.1 问题的提出与解决方法计算机系统的发展已经历了三个阶段[1]ÕâʱµÄ¼ÆËã»úÓ¦ÓÃÈí¼þͨ³£ÓÉʹÓÃÕß×Ô¼º½øÐпª·¢Ã»Óй¤³Ì»¯Ò²²»ÐèÒª½øÐйÜÀíÕâʱÆÚµÄÈí¼þ¿ª·¢²ÉÈ¡ÁËʽµÄ¿ª·¢·½[2]软件作坊七十年代中期以后ʽ传统软件工程学更侧重于软件开发的工程化方法和工具因为软件开发工作本身的一些特点度量工作量困难所以管理方法的研究和引入难度很大美国卡内基梅隆大学软件工程研究所不同版本1.2 论文研究的现实意义随着胜利油田计算机应用的普及软件开发人员和管理人员也越来越感觉到对开发工作的管理缺少手段如果能够引进TSP & PSP方法则可以极大地促进油田软件开发水平的提高尝试对TSP & PSP方法进行研究TSP & PSP管理系统1.3 论文的组织论文比较系统并总结了根据这些理论开发的的情况第一章简要的介绍了课题背景以及论文的组织个体软件过程第三章研究了TSP过程方法设计第五章对论文的工作进行总结并说明了进一步的研究方向第二章个体软件过程PSPÒ»°ãÒëΪ¸öÌåÈí¼þ¹ý³ÌPSP过程由一系列方法form脚本等组成度量和管理他们的工作[4]Éú²úÂʵķ½·¨²¢ÇÒ¿ÉÒÔÓÃÓÚÈí¼þ¿ª·¢µÄ¸÷¸ö·½ÃæÔËÐвâÊÔPSP能更有效地提高程序开发人员的效率在可确定的进度安排下通过PSP°üÀ¨ÔõÑù¼Æ»®ºÍ¸ú×ÙËûÃǵŤ×÷ÔõÑù½¨Á¢²âÁ¿Ä¿±ê×ÜÖ®²¢ÇÒ±¾ÏîÄ¿×îºóµÄ·ÖÎö½á¹ûÒªÓÃÓÚÖ¸µ¼ÏÂÒ»¸öÏîÄ¿ÕâЩÔ-ÔòÊÇ1ËûÃDZØÐëΪ×Ô¼ºµÄ¹¤×÷±àÖÆ¼Æ»®为了不断提高开发人员的个人工作能力为了开发高质量的软件产品把开发高质量软件当作他们的奋斗目标4Ëù»¨´ú¼Û»á±ÈÍíÆÚ·¢ÏÖ²¢¸ÄÕýÕâЩȱÏÝСµÄ¶à5PSP的基本流程为在以后的工作中他们记录每一个步骤的完成时间发现和改正的每一个缺陷开发人员还必须计划跟踪他们的软件质量最后以进一步优化他们的工作过程2.2 PSP 过程结构PSP 过程的基本概念如图2-1所示第一步为工作计划编制计划说明书用于指导整个工作他们要记录工作时间整个项目最后的工作为分析总结然后填写计划总结表为了管理PSP 过程表单过程脚本定义了过程每部分的步骤提供了记录和存储数据的模板PSP 计划编制过程如图2-2所示下面是这些任务的详细介绍定义需估算工作产生时间进度工作历史数据工作安用户需分析过任务要进行软件开发计划的编制需求是整个计划工作的基础估算数据和编制计划的准确性是由对用户需求的了解程度决定的为了估算数据和编制计划但是在计划的早期阶段完整的设计概念设计是开发人员根据当前对所开发产品的了解所做出的粗略描述他们再对概念设计进行逐步检验最终产生完整的产品设计对于软件开发团队和组织来说但对于开发人员个体来说因此然后基于他们个人的代码长度与编程效率历史数据最后根据计算出的每个阶段的时间产生时间进度表下一步还要根据历史数据估算程序开发各个阶段的时间以该数据为参考设计编码编译这样产生时间进度表开发人员就可以根据他们可以支配的来安排该项工作的工作时间进度了完成这些阶段所花费的时间开发产品这个阶段不是计划编制过程的一部分分析过程开发人员对整个工作要做最后的分析总结工作时间等实际数据以及与质量有关的其它数据这些数据用以指导以后的工作开发人员要检查所有的过程改进建议来调整工作过程2.3 PSP数据在PSP中因此在工作的每个阶段包括产品的工作量PSP数据可以分为测量数据和质量数据两种质量评价数据则反映了开发过程质量2.3.1 PSP测量数据以下是主要的测量数据:时间测量开发人员使用时间记录表来记录他们每个阶段所使用的时间结束时间和中断时间例如和别人进行其他事情的讨论等忽略这些时间将会降低计算的精确性2Èí¼þ¿ª·¢ÈËÔ±ÔÚijÏ×÷ÉÏËù»¨·ÑµÄʱ¼äÒÀÀµÓÚÕâÏ×÷µÄ¹¤×÷Á¿±ØÐëÊ×ÏȹÀËãÕâÏ×÷µÄ¹¤×÷Á¿ËûÃÇ»¹Òª²âÁ¿¸Ã¹¤×÷µÄ¹¤×÷Á¿´úÂ볤¶È·´Ó³¿ª·¢ÈËÔ±µÄ¹¤×÷Á¿LOC Array是代码行数的英文缩写代码长度包含以下种类Base最原始版本的代码长度则原始版本代码长度为0Added在原始版本的基础上增加的代码长度Modified在原始版本的基础上修改的代码长度Deleted在原始版本的基础上删除的代码长度New and Changed新增加的代码长度和修改的代码长度之和这部分代码反映了开发人员的工作Reused在共享程序库中存在的并且在本次开发中应用的代码长度New reuse总的代码长度简称TÆä³¤¶ÈΪ»ù±¾µÄ´úÂ볤¶È¼õȥɾ³ýµÄ´úÂ볤¶È¼ÓÉÏÔö¼ÓµÄºÍ¸´ÓõĴúÂ볤¶È3PSP过程最关注的质量数据是关于软件产品缺陷的数据由开发人员识别为了管理缺陷缺陷本身的情况缺陷发现和改正的阶段缺陷所涉及到所有的开发阶段检查阶段这些数据记录在缺陷记录表中时间和缺陷数据PSP方法提供了一组质量评价的方法主要的PSP质量评价数据有例如在一个500LOC的程序中发现20个缺陷缺陷密度可以对完成的产品进行测量因为测试阶段的任务就是在产品交付用户使用前检查并更改缺陷可能遗留下缺陷就越多在测试阶段发现的缺陷密度往往反映了最后提交产品中的遗留缺陷密度从表中我们可以看出测试阶段缺陷密度和最终提交产品缺陷密度之间的联系测试阶段的缺陷密度越低即产品的质量就越高一般认为没有经过PSP训练的开发人员40之间[4]表2-1 缺陷密度数据表Table2-1 Defects Ratio Data Table产品1产品2产品3产品4产品5单元测试204798101154提交的产品519233041复查速度在PSP的设计复查和代码复查阶段统计数据显示200LOC时因此这样才能发现更多的错误在PSP方法中它们是设计复查时间与设计时间比设计时间与编码时间比反映了开发人员设计工作的质量则设计不充分开发人员还是需要花费大量的时间和精力进行设计不能文档化且不能被复查开发人员应当至少花费与编码同样多的时间进行设计缺陷引入与改正速度Table2-2 Defects Injected And Removed阶段引入缺陷/小时改正缺陷/小时设计 1.760.10设计复查0.11 2.96编码 4.200.51编码复查0.11 6.52编译0.6015.84单元测试0.38 2.21PSP对于设计复查时间和设计时间比的建议是基于统计数据的表2-2是一位开发人员各个阶段引入缺陷和改正缺陷的平均数据在详细设计阶段而在设计复查阶段因此要在设计复查阶段改正在设计阶段引入的所有缺陷对于设计复查时间和设计时间比编码复查时间与编码时间之比也同样反映了开发过程的质量该开发人员在编码阶段每小时引入4.20个缺陷这样才能改正所有在编码阶段引入的错误PSP同样建议是50%[4]»ù±¾µÄȱÏݱÈÊý¾ÝÓбàÂ븴²é½×¶ÎÓë±àÒë½×¶ÎȱÏݱȶÔÓÚ±àÂ븴²é½×¶ÎºÍ±àÒë½×¶ÎȱÏݱÈ我们知道当开发人员在编码复查阶段发现的缺陷不小于编译阶段发现的缺陷的2倍时同样PSP同样建议至少为2ºÍʱ¼ä±ÈȱÏݱÈÊý¾Ý±»ÓÃÓÚ¾ö¶¨²úÆ·ÊÇ·ñÓ¦¸Ã½øÈë×ÛºÏϵͳ²âÊÔ±àÂ븴²é½×¶ÎÓë±àÒë½×¶ÎȱÏݱȱíʾÁ˱àÂëÖÊÁ¿Èç¹ûÕâ2个值都比较低会有大量问题出现第一种是阶段收益例如单元测试排除的缺陷数为9第二种是过程收益PSP方法认为软件产品应用过程中随时都有可能发现新的缺陷为了计算缺陷排除收益PSP方法建议的预测方法是例如单元测试阶段发现的缺陷数为7对于这些遗留缺陷的引入如在表2-3中其中1个在编码阶段引入有了对最后遗留缺陷数和这些缺陷的引入预测收益了进入该阶段后的遗留缺陷数为26则阶段收益为11/26=42.3%´Ó±íÖÐÊý¾Ý»¹¿ÉÒÔ¼ÆËã¹ý³ÌÊÕÒæÂÊ编译之前发现的缺陷数为11+28=39表2-3假设7个为遗留缺陷假设1个为遗留缺陷用以指导开发人员的工作计划编码阶段缺陷引入率为4 defects/hour则他在编制工作计划时缺陷率使用项目计划表中的数据进行计算它反映了不同的缺陷排除阶段的效率高低在单元测试阶段的缺陷排除效率为1.71该项参数用于帮助开发人员更加有效的设计他们的缺陷排除计划A/FÖʼì/过失比简写为A/F¼´ÔÚÕû¸ö¿ª·¢¹ý³ÌÖÐÓÃÓÚÖʼìµÄʱ¼äÖʼì³É±¾Ö¸Éè¼Æ¸´²éºÍ±àÂ븴²é2个阶段的时间包括改正这些阶段所发现缺陷的时间即在整个开发过程中用于过失修改的时间过失时间指编译和单元测试2个阶段的时间PSP建议A/F的值至少为2.02.4 PSP质量管理软件质量成为软件开发中越来越重要的因素而且由于系统变得更加快速程序缺陷也更加具有破坏性PSP提供了许多跟踪和管理软件缺陷的方法最重要的PSP质量目标是早期缺陷清除因为在软件开发过程中所以PSP过程包含设计复查和编码复查2个阶段分析缺陷方面的数据这2个阶段发现改正错误具有极高的效率PSP技术中第一是要求开发人员纪录他们发现并改正的每个缺陷然后设法修正自己的工作过程消除这些原因第三种采用更加充分的设计这样减少产生的缺陷数目并详细地说明了PSP测量数据和质量评价数据的定义和计算方法第三章小组软件过程TSPÒ»°ãÒëΪС×éÈí¼þ¹ý³Ì»òÍŶÓÈí¼þ¹ý³Ì²àÖØÓÚ°ïÖú¿ª·¢ÍŶӸÄÉÆÆäÖÊÁ¿ºÍÉú²úÂÊTSP 被设计为满足2至20人规模的开发团队多种用于协助开发人员和管理人员进行开发团队构建同时也出现了多种用于简化开发人员的计划编制数据分析和项目报告建立等工作的原型工具所以TSP的首要因素是开发团队需要适当的组织熟练的人员和有效的领导PSP为软件开发人员提供了可定义 CMM提供了高效软件工程工作的所需要的整个改进框架TSP是一系列的帮助软件开发小组提高开发效率的方法为软件开发小组提供明确的指导[9]¸´ÔÓÐԸ߲»¿ÉÄÜÓɸöÈËÍê³ÉÍŶÓÐ-×÷ÊÇÌá¸ßÈí¼þ¿ª·¢ÖÊÁ¿µÄ¾ö¶¨ÒòËØÖ®Ò»Ï໥֮¼äµÄÐ-×÷ÊÇÐèÒª¾-¹ý³¤ÆÚÄ¥ºÏ²¢ÇÒ¾-¹ýÒ»¶¨ÑµÁ·×ñÑ-¹²Í¬µÄ¹¤×÷¹ý³ÌÃÀ¹ú¿¨ÄÚ»ù÷¡´óѧÈí¼þ¹¤³ÌÑо¿Ëù推广TSP方法提高软件开发效率和产品质量只有可操作性强的过程定义才能为软件开发小组提供指导软件开发小组成员可以按照说明一步一步进行工作用以指导小组内的开发与管理人员可操作性强如何一步步建立一个高效的团队工作环境建立高效的团队环境3.2TSP过程结构TSP的基础是PSP¿ª·¢ÈËÔ±±ØÐëÒª¾-¹ýPSP训练才能建立和利用TSP过程3.2.1TSP启动过程TSP小组首先进行的工作是小组启动过程在这个过程中制定项目计划就可以按照制定的过程进行工作了因为TSP过程遵循迭代和扩展开发的策略重启动还是完善开发人员详细计划的需要一定时间后则需要完善开发小组要制定一份整体计划完成或者接近完成阶段计划后开发小组再次修订整体计划中有问题的部分TSP过程流如图3-1所示整个小组就要参与TSP小组启动过程从图中可以看到每部分的脚本都详细地说明了该部分的所有工作小组所有成员必须全部参加计划的制定他们有责任遵循这个计划进行工作开发小组才会更加有效软件开发小组一般需要经过专业的指导才能合理的完成启动过程富有经验的人员提供但不同的开发小组情况并不完全相同因此小组启动第一阶段的目标是向小组所有成员说明要进行的开发工作目标这个阶段要与有经验的管理人员和应用人员通过交流了解要完成的项目和项目管理的重要意义由小组内部人员参加逐步生成团队内部有效协作的环境一般的TSP小组工作角色有用户界面管理员功能管理员计划编制管理员质量管理员和支持管理员如安全管理员在小组内部组长一般不再担任其他角色第四步产生概念设计定义要使用的过程还要列出所有的开发任务最后根据估算时间产生时间进度表开发小组确定质量目标和质量管理计划还包括估计每位成员的每阶段注入和改正的缺陷数用户试用测试和最终提交后遗留的缺陷数小组成员制定下阶段的详细计划并检查整个小组的工作量按分配的结果制定小组平衡计划小组成员估计项目的主要风险情况并按照可能性和影响程度排列启动过程的第八步是开发小组为管理人员的检查做准备这期间开发小组要向管理人员解释他们制定的计划产生过程一般小组要准备新的计划直到管理人员和开发小组对项目计划的内容达成一致这阶段开发小组要检查整个启动过程提交过程改进建议以及改进所用的过程[9]¿ª·¢Ð¡×é×îÖØÒªµÄÈÎÎñÊDZ£Ö¤Ð¡×éËùÓгÉÔ±Ñϸñ×ñÑ-¸Ã¼Æ»®领导责任处理软件用户和上级管理人员的意见会议和汇报开发小组领导的最大的责任就是激发团队的活力过程纪律约束他们必须保证所有的小组成员的工作遵循制定的计划因为几乎每个项目都面对及时完成开发进度的巨大压力所以在对过程纪律约束的管理中过程数据和质量3С×éÁìµ¼ÕßµÄÁíÒ»ÏîÈÎÎñÊDZ£Ö¤ËùÓгÉÔ±Ìá³öÎÊÌâ¶¼Òª±»¸ú×ٺ͹ÜÀíС×éÁìµ¼ÕßÒª¼ì²éÿһ¸öÎÊÌâÈç¹ûÐèÒª´¦ÀíTSP小组使用问题跟踪记录跟踪和管理所有问题内部交流内部交流是提高软件开发效率的非常重要的一个方面不知道其同事的工作进展内部交流是保持团队活力的关键在定期的交流会议中小组成员同时也检查过去一段时间他们自己的工作进展的工作计划小组成员还要指出下阶段需要同事帮助和支持的主要问题5Óû§Íê³ÉÏîÄ¿Æô¶¯¹ý³Ìºó¾Í¿ªÊ¼ÁËÕýʽµÄ¿ª·¢¹¤×÷¼Æ»®ÖÐÌṩÁ˽øÕ¹Çé¿öµÄ²âÁ¿±ê×¼ºÍÓ°Ï칤×÷½ø¶ÈµÄÎÊÌâËùν¼ÛÖµ»ñÈ¡·¨ÀýÈçÒ»¸öÏîÄ¿¼Æ»®Ê¹ÓÃ1000小时完成完成计划用时为32小时的一个分解任务就获得3.2个价值点表3-1 价值点数据Table3-1 Value Point Data计划实际本周工作时10698工作时累计300274本周获取价值点 1.9 2.1获取价值点累计 5.8 5.3通常开发小组可能有多种类型的分解任务和相当复杂的项目有些任务会完成得相当早没有一个简单的办法知道开发工作进度是落后落后于计划利用价值获取法计算的价值点累计价值获取法也可以帮助开发小组估算他们何时完成他们的任务例如过去每周获取的价值点数据并假设该开发速度不变例如表3-1中EV就是每周获取1.7667EV¸ÃÏîÄ¿ËùÓõÄ×Üʱ¼äΪ100/1.7667=56.6周则要完成该项工作还需要53.6周则完成该项目还需要/2.1=44.9周时间6¾¡¹Ü¼ÛÖµ»ñÈ¡·¨¿ÉÒÔ°ïÖú¿ª·¢Ð¡×é¸ú×Ù¿ª·¢½ø³ÌºÍ¹ÀË㿪·¢Íê³Éʱ¼ä为了合适地管理各项分解任务的相互联系在一些较大的开发小组工作量平衡工作量的不平衡将影响开发小组的开发效率一是有经验的开发人员通常会完成更多的工作量所以往往会给他们分配更多的工作量而给工作经验少的开发人员分配少的多的工作量这种波动会造成实际情况与计划的差异但这种情况的出现会使部分成员出现工作空闲时间所以在检查项目情况时应该修改制定的计划TSP中要求开发小组要定期例如每周进行一次工作量平衡但多数组织并不知道如何对软件质量进行管理在TSP中为了管理软件质量设置质量目标并制定质量计划以达到设置的质量目标TSP质量管理包括质量计划的制定及质量问题的识别下面分别加以说明TSP小组制定质量计划估算每个阶段引入的缺陷数目就可以进一步估算排除的缺陷数目了引入和排除缺陷数估算完成后最后检查质量计划是否合理并达到质量目标开发小组质量计划完成后他们跟踪每个分解任务所有开发阶段的测量数据如果不符合要求3.3.2质量问题识别TSP中有多种方法进行质量问题识别就可以快速得到缺陷密度收益及其他测量数据是否达到开发小组的质量目标可以有充分的时间检查过程数据TSP引入了多种质量测量方法无缺陷百分比图3-3是一个典型的无缺陷百分比数据的示意图我们可以非常清晰地看到这类项目的哪些阶段是引入和改正缺陷的关键图3-3 无缺陷百分比Fig3-3 Percent Defect Free缺陷清除概图图3-4是一个缺陷清除概图的例子PDF只能应用于整个系统和大型构件包括系统级系统的每个构成部分甚至模块级别如果PDF或者系统级的缺陷清除概图指示某个阶段存在问题图3-4 缺陷清除概图Fig3-4 Defect Removal Profile3.3.3质量问题修改TSP数据提供了关于产品模块或组成构件的质量测量数据开发小组甚至可以在编译对于存在问题的模块或构件测试期间要跟踪所有的程序模块2Ôٴμì²é³ÌÐòÄ£¿é指定一位开发人员修改发现的问题TSP和PSP过程的设计原则是提前预防问题的发生开发人员一般可以减少40%50%的程序缺陷[7]Ê×ÏÈÔÚÉè¼Æ½×¶Î¾Í´óÁ¿¼õÉÙȱÏݵÄÒýÈëͨ¹ýÖÊÁ¿¼Æ»®ºÍ¹ý³Ì¸ú×Ù¿ÉÒÔ´óÁ¿¼õÉÙȱÏÝ的引入TSP在每个开发阶段结束后引入了复查阶段防止将来出现同样的错误重点介绍了TSP的启动过程和团队协作过程第四章设计TSP和PSP方法定义了软件的开发过程开发人员必须经过相关培训TSP和PSP又是基于定量分析的方法[8]Ìá¸ß¿ª·¢ÖÊÁ¿ÔòÒò¹¤×÷Á¿ºÜ´óµÄÖ÷Òª¹¦ÄܾÍÊǰïÖú¿ª·¢ÈËÔ±°´ÕÕ¿ª·¢¹ý³Ì¹¤×÷²¢¼Ç¼ºÍ´¦ÀíTSP和PSP数据使他们更专注于实际的开发工作4.1 基本功能将一个项目的开发周期分成13个过程阶段用户需求分析复查阶段概念设计复查阶段详细设计复查阶段编码复查阶段单元测试阶段系统测试阶段每个阶段都包含测量数据和质量数据开发人员通过专用客户端或Web输入自己的PSP数据并将其与PSP计划数据进行比较分析开发人员可以参考这些数据来改进个人的开发过程TSP小组利用个人的PSP汇总数据进行整个小组的数据汇总与TSP计划数据进行比较分析提高开发质量TSP&PSP管理系统开发完成后以为将来项目的TSP和PSP方法提供参考4.2 数据设计TSP和PSP方法是基于定量分析的程序开发管理方法我们为每个过程阶段制定了相关的管理数据在用户需求分析阶段/用户需求分析复查阶段数据计划复查时间(小时)用户需求分析复查时间(小时)总长度(页)重用(最初,新添)(页)Óû§ÐèÇó²úÉú´íÎó´íÎóÈÕÖ¾概念设计阶段/概念设计复查阶段统计数据计划复查时间(小时)概念设计复查时间(小时)总长度(页)重用(最初,新添)(页)¸ÅÄîÉè¼Æ²úÉúȱÏÝȱÏÝÈÕÖ¾3计划复查时间(小时)详细设计复查时间(小时)删除代码长度(LOC)添加代码长度(LOC) Array详细设计产生缺陷LOC缺陷日志4计划复查时间(小时)编码复查时间(小时)删除代码长度(LOC)添加代码长度(LOC)编码产生缺陷LOC错误日志5计划时间(小时)编译时间(小时)最初源代码长度(LOC)修改代码长度(LOC)重用代码长度(LOC)±àÒë²úÉúȱÏÝLOC错误日志6计划时间(小时)测试时间(小时)最初源代码长度(LOC)修改代码长度(LOC)重Array用代码长度(LOC)LOC测试改正缺陷单元测试组件正确个数系统测试组件正确个数整个的开发周期的任何过程阶段并将其与PSP计划数据进行比较分析其中包括工作效率缺陷密度两个阶段的时间比率收益率单位时间改错率早期发现缺陷的程度提高开发质量TSP小组利用个人的PSP汇总数据进行整个小组的数据汇总与TSP计划数据进行比较分析下面介绍质量数据及计算方法1工作效率就是计算以下的两个数据单位时间的代码量每行代码所需时间组件正确率一般在编译阶段集成测试阶段用户测试阶段计算组件正确率3各阶段缺陷与新的和改变的(LOC)的比率Array缺陷密度=100*(缺陷数量/еÄÊýÁ¿4单位时间的复查率=新的+改变的 / 复查时间其中包括需求阶段详细设计阶段两个阶段的时间比率1.用户需求分析复查时间/ 用户需求时间¼ìÑé¸ÅÄîÉè¼ÆµÄÖÊÁ¿3.详细设计复查时间 / 详细设计时间检验编码质量不同阶段之间缺陷发现比这说明是否作了高效率的编码复查. 表明了编码质量2.详细设计阶段发现的缺陷/ 单元测试阶段发现的缺陷说明本程序在总测试及以后的使用中都有问题7Ò»°ã¼ÆËãÈçÏÂ6个比率8单位时间改错率=改正缺陷/ 时间1.用户需求分析复查阶段改正缺陷/ 时间2.概念设计复查阶段改正缺陷/ 时间3.详细设计复查阶段改正缺陷/ 时间4.编码复查阶段改正缺陷/ 时间5.编译阶段改正缺陷/ 时间6.单元测试阶段改正缺陷/ 时间不同阶段之间缺陷改正比以帮助设计效率高的查错计划10早期发现缺陷的程度=A/FF 表示开发时间用在缺陷花费的部分,指编译及单元测试花费的时间图4-1为的测量数据表设计TSP&PSP管理系统图4-1 测量数据设计Fig4-1 Design Of Measurement Data图4-2 质量数据设计Fig4-2 Designed Of Quality Data4.3 详细设计图4-3为结构图TSP项目管理统计汇总管理信息查询下面逐一介绍以上各个功能模块oracle)组件正确率单位时间的检查率不同阶段之间错误发现比单位时间错误率不同阶段之间错误改正比TSP&PSP管理系统有效性一般开发人员项目高级管理人员用户使用本系统前必须登录如只有系统管理员才能使用“系统维护”模块执行PSP级汇总其他开发人员的信息执行TSP 级汇总采用了动态数据表管理的方法然后自动生成数据表数据词典中还包含用户访问权限图表的设定数据词典本身也是一些数据表因此只有系统管理员可以读写数据字典表信息(PSP_tables)TSP 及PSP开发阶段维护(PSP_phases)读写日志(PSP_log)等表表名称排序字段表类型纵向图表_X_轴信息是否产生横向图表横向图表_Y_轴信息是否用于组计划对比通过这些字段可以控制表的存取权限并且控制图表的生成及公式表名字段描述输入类型是否只读显示高度通过这些信息显示大小及字段的只读性阶段名称组件正确率的表达式单位时间复查率的表达式工作效率的表达式缺陷密度的表达式两个阶段的时间比率的表达式各阶段之间缺陷发现比的表达式收益率的表达式单位时间缺陷率的表达式单位时间改错率的表达式各阶段之间缺陷改正比表达式质检/过失比的表达式用户名TSP写权限PSP写权限维护读权限通过这个表可以。