个体软件过程(PSP)详解
- 格式:ppt
- 大小:668.50 KB
- 文档页数:61
个人软件过程(PSP)简介一、前言个人软件过程(Personal Software Process,PSP)是一种可用于控制、管理和改进个人工作方式的自我持续改进过程,是一个包括软件开发表格、指南和规程的结构化框架。
PSP与具体的技术(程序设计语言、工具或者设计方法)相对独立,其原则能够应用到几乎任何的软件工程任务之中。
PSP能够说明个体软件过程的原则;帮助软件工程师作出准确的计划;确定软件工程师为改善产品质量要采取的步骤;建立度量个体软件过程改善的基准;确定过程的改变对软件工程师能力的影响。
二、个体软件过程简介1. 综述在本次课上,我学习了个人软件过程(Personal Software Process,PSP)的相关知识,在本次报告中,将结合一些资料对个人软件过程的相关概念进行介绍,并写一下我自己的观点。
要开发高质量的软件,必须改进软件生产过程,这是软件工程的常识。
目前,业界公认由CMU/SEI开发的软件能力成熟度模型SW-CMM是当前最好的软件过程,并且CMM已经成为事实上的软件过程工业标准。
但是,CMM虽然提供了一个有力的软件过程改进框架,却只告诉我们"应该做什么",而没有告诉我们"应该怎样做",并未提供有关实现关键过程域所需要的具体知识和技能。
为了弥补这个欠缺,Humphrey又主持开发了个体软件过程(Personal Software Process,PSP)。
2. 个体度量过程PSP0和PSP0.1PSP0是建立个体过程的第一步。
通过这一步,学会使用PSP的各种表格采集过程的有关数据,此时执行的是该软件开发单位的当前过程,通常包括计划、开发(包括设计、编码、编译和测试)以及后置处理三个阶段,并要作一些必要的试题,如测定软件开发时间,按照选定的缺陷类型标准、度量引入的缺陷个数和排除的缺陷个数等,用作为测量在PSP的过程中进步的基准。
PSP0.1增加了编码标准、程序规模度量和过程改善建议等三个关键过程域,其中过程改善建议表格用于随时记录过程中存在的问题、解决问题的措施以及改进过程的方法,以提高软件开发人员的质量意识和过程意识。
PSP基本技术PSP(Personal Software Process,个体软件过程)是一个过程描述、测度和方法的结构化集合,能够帮助软件工程师改善其个人性能。
通过采用一些表格、脚本和标准,可帮助软件工程师估算和计划其工作,从而体现了定义过程及测量其质量和生产率的意义。
一个基本的PSP原则是:每个人都是不同的,对于某个工程师有效的方法不一定适合另一个,PSP帮助工程师测量和跟踪他们自己的工作,使得他们能够找到最适合自己的方法。
软件工程师在做项目的开发计划时,或是由经验而来,或是由用户需求而定,往往存在计划与实际相差比较大的情况,或者是前松后紧,遗漏过多,造成维护量的增加。
如何减少这种情况的发生?就需要把经验量化并做出分析。
通过记录项目的估算情况与实际情况,并进行比较分析,则既利于有经验的软件工程师提高以后项目的预测率,也利于新手软件开发人员参考其他工程师的经验。
项目的开发成本是一个很重要的问题。
通过记录项目的估算成本与实际成本,提高软件开发人员对项目成本估算的准确度,这对在项目早期就有一个清楚的认识大有帮助,以利于以后工作的规划与开展。
通过记录软件工程师在项目设计及编写代码阶段出现的错误及解决办法,以及记录测试与维护阶段出现的错误、缺陷及解决办法,并产生报告,列出经常出现的错误及错误类型,可把错误尽量控制在交付用户使用前,并尽量减少错误的发生。
需要注意的是,PSP的目的是为了改善软件工程师的开发性能,而提高性能在于早期对项目有一个比较准确的把握。
项目评估的准确度依赖于历史数据的积累,只有正确的历史数据越来越充分,在评估新项目时所采用的指标数才会越准确。
在项目进展过程中,还需要根据影响因素的变化不断调整估算指标。
项目估算现在软件在大多数基于计算机的系统中已成为最昂贵的部分,如果软件成本估算的误差很大,就会使盈利变成亏损。
软件项目估算是一种解决问题的形式,在多数情况下,要解决的问题非常复杂,想一次性整体解决比较困难。
PSP部分PSP(Personal Software Process)即个人软件过程,是一种可用于控制、管理和改进个人工作方式的自我持续改进过程,是一个包括软件开发表格、指南和规程的结构化框架。
PSP注重于个人的技能,能够指导软件工程师如何保证自己的工作质量,估计和规划自身的工作,度量和追踪个人的表现,管理自身的软件过程和产品质量。
经过PSP学习和实践的正规训练,软件工程师们能够在他们参与的项目工作之中充分利用PSP,从而保证了项目整体的进度和质量。
学校的学生团队不会太大,学生个人的技能将直接影响到项目整体的进度和质量,要保证学生个人的工作质量就需要实施PSPPSP作用:使用自底向上的方法来改进过程,向每个软件工程师表明过程改进的原则,使他们能够明白如何有效地生产出高质量的软件。
为基于个体和小型群组软件过程的优化提供了具体而有效的途径。
其研究与实践填补了cmm的空白。
帮助软件工程师在个人的基础上运用过程的原则,借助于psp提供的一些度量和分析工具,了解自己的技能水平,控制和管理自己的工作方式,使自己日常工作的评估、计划和预测更加准确、更加有效,进而改进个人的工作表现,提高个人的工作质量和产量,积极而有效地参与高级管理人员和过程人员推动的组织范围的软件工程过程改进。
项目管理平台中体现PSP的地方:项目管理平台中的任务指派、任务跟踪、源代码统计、阶段总结TSP部分TSP(Team Software Process)即团队软件过程,是为开发软件产品的开发团队提供指导,TSP侧重于帮助开发团队改善其质量和生产率,以使其更好的满足成本及进度的目标。
TSP注重团队的高效工作和产品交付能力,结合PSP的工程技能,通过告诉软件工程师如何将个体过程结合进小组软件过程,通过告诉管理层如何支持和授权项目小组,坚持高质量的工作,并且依据数据进行项目的管理,展示了如何去生产高质量的产品。
按tsp原理对开发小组的基本度量要素o所编文档的页数。