个体软件过程(英文版)
[绝版]基本信息
- 作者: Watts S.Humphrey [作译者介绍]
- 丛书名: 软件工程系列教材
- 出版社:人民邮电出版社
- ISBN:7115103496
- 上架时间:2002-11-13
- 出版日期:2002 年10月
- 开本:16开
- 页码:278
- 版次:1-1
- 所属分类:
计算机 > 软件工程及软件方法学 > 综合
编辑推荐
除了设计和编写软件应用程序外,软件工程师面临的主要挑战之一是管理软件工程过程,并使工作更为高效和富有成果。
在这本简要介绍有效软件工程实用基本原理的著作中,作者Watts Humphrey为广大的学生和专业程序员等读者群提供了个体软件开发过程方面的知识。Watts Humphrey是著名的软件工程专家,其著作Managing the Softwaer Process影响深远。本书以实际训练的方式提供了一些实用的练习,读者可以用来丰富时间管理和质量保证方面的经验并提高技能,这将有助于他们完成令人满意的工和,并能更好地应用专业编程知识,在职业生涯中获得更大的成功。
本书包括以下内容:
通过培养工作习惯和提高个人软件管理技术,使各种水平的软件工程师的工作更高效和富有成果。
来自世界顶级软件过程和软件质量专家的建议和指导;
提高个人技能的实用练习。
内容简介回到顶部↑
《个体软件过程引论》(简称"PSPi"),是Watts S. Humphrey于1997年特为美国大学一年级学生编写的教科书。书中描述了很多资深的软件工程师解决软件工程问题的方法,特别是有关软件项目计划和软件质量控制方面的先进方法,并提供了很多练习来帮助读者掌握这些方法。
美国Embry-Riddle航空大学计算机科学系以本书初稿为教材,为该系一年级学生讲授了这门课程,经验证明,这对造就学生成为合格的软件专业人员很有帮助。每章之后还附有习题,以帮助读者复习与掌握该章的主要内容。由于本书是在两个学期的计算机科学或软件工程导论课程中使用,所以本书的内容分成两部分,在第一学期中讲授时间管理(前10章),在第二学期中讲授质量问题(后10章)。
本书实用性与可读性较强,可作为高等学校计算机软件工程课程的教材,也可作为工程技术人员自学个体软件过程的教材,是进行软件过程改善和能力成熟度模型SW-CMM评估的重要参考资料。本书同样适用于软件过程改进人员、软件开发项目经理、程序员和一般编程爱好者在开发软件时参考。
美国Embry-Riddle航空大学计算机科学系以本书初稿为教材,为该系一年级学生讲授了这门课程,经验证明,这对造就学生成为合格的软件专业人员很有帮助。每章之后还附有习题,以帮助读者复习与掌握该章的主要内容。由于本书是在两个学期的计算机科学或软件工程导论课程中使用,所以本书的内容分成两部分,在第一学期中讲授时间管理(前10章),在第二学期中讲授质量问题(后10章)。
本书实用性与可读性较强,可作为高等学校计算机软件工程课程的教材,也可作为工程技术人员自学个体软件过程的教材,是进行软件过程改善和能力成熟度模型SW-CMM评估的重要参考资料。本书同样适用于软件过程改进人员、软件开发项目经理、程序员和一般编程爱好者在开发软件时参考。
作译者回到顶部↑
本书提供作译者介绍
Watts S.Humphrey是位知名作者,在软伯开发过程和软件过程改进方面期待有多本影响深远的图书:Managing the software Process 、A Discipline for Software Engineering、Mananing Technical People.Humphrey曾长期在IBM公司担任高级软件开发经理,获得了大量的软件开发过程方面的经验,目前是卡内基梅隆大学软件工程研究所的研究员,就软件质量和软件过程方面的主题著书立说、提供咨询、并在世界各地发表这方面的演讲。
.. << 查看详细
.. << 查看详细
目录回到顶部↑
1. the software engineer's job.
what is software engineering?
why is good engineering important?
the personal software process.
the discipline of high-quality work.
the importance of high-quality work.
how to improve the quality of your work.
the improvement process.
the strategy of this book.
2. the management.
the logic of time management.
understanding how you spend time.
the engineering notebook.
the notebook design.
engineering notebook examples.
what is software engineering?
why is good engineering important?
the personal software process.
the discipline of high-quality work.
the importance of high-quality work.
how to improve the quality of your work.
the improvement process.
the strategy of this book.
2. the management.
the logic of time management.
understanding how you spend time.
the engineering notebook.
the notebook design.
engineering notebook examples.
序言回到顶部↑
Introduction to the Personal Software Process(个体软件过程引论)这本著作是Watts S. Humphrey特地为大学一年级学生编写的教科书。该书描述了很多资深的软件工程师解决软件工程问题的方法,其中包括Humphrey本人的许多宝贵经验,并提供了很多练习来帮助学生掌握这些方法。根据美国Carnegie-Mellon大学软件工程研究所Humphrey等人的实践数据,在应用了PSP之后,软件系统中总的缺陷减少了58.0%,在测试阶段发现的缺陷减少了71.9%,生产效率提高了20.8%。在美国,Embry-Riddle航空大学计算机科学系率先以本书初稿为教材,为该系一年级学生讲授了这门课程,取得了很好的效果,接着几十所大学相继开设了这门课程。经验证明,这对造就学生成为合格的软件专业人员很有帮助。
为了在企业中推广PSP,需要高层经理的大力支持,需要有合格的教员和合适的教材,而且还需要所有参与人员的积极参与。然而,遵循个体软件过程开发软件并不是一件轻而易举的事,需要人们改变自己的工作方式。但是,人们通常很难改变自己的工作习惯,他们虽然愿意进行改变,但往往离不开原有的习惯。只有在用他们自己的事实证明新的方法确实有效之后,才愿意真正进行改变。因此,推广个体软件过程需要以认真的实践为基础,并努力总结亲身经历的经验和教训。
个体软件过程是一门实践性很强的学科,需要通过编写程序才能真正掌握PSP的精髓。为了精简讲授内容,减少重复实践,可以将PSP课程的程序设计练习与其它课程的作业结合起来。在最近与Humphrey的一次通信中,他认为如果在讲授个体软件过程PSP之前,先讲一些统计过程控制原理,对理解PSP的方法和理念非常有利。
诚然,PSP方法的成功与否,在很大程度上取决于教师激发学生学习和实践这些概念的能力。这不仅需要教师本人对PSP持积极态度,而且需要努力实践,认真积累数据,用自己的经验向学员展示PSP方法的威力。可以认为,教员是否按PSP原理进行认真的实践,是讲授好PSP课程的重要前提。
在Embry-Riddle航空大学计算机科学系的教员和学员为本书撰写的前言以及Humphrey本人在本书正文和他为本书撰写的前言中,都特别强调采集数据的重要性,并特别指出千万不要粗制滥造数据,否则所收集的数据就没有什么用处。因此,我们在学习PSP课程时,要按正确的方法去做,要努力理解PSP的整体框架和所蕴涵的概念,积极采集真实的数据,在自己的工作中坚持贯彻PSP的原则。诚然,要掌握PSP的方法,不仅需要认真参与有关PSP的培训,更需要在后续课程和实际工作中进一步提高、巩固和扩展。可以认为,这是掌握PSP方法的基本保证。
自从1994年以来,Humphrey一直大力倡导这种方法,他在美国很多著名公司推行PSP方法,获得了很好的结果。而且还从1996年开始,大力倡导群组软件过程TSP方法。最近他继撰写《群组软件过程》(Introduction to the Team Software Process)这本著作之后,又撰写了《软件取胜之道》(Winning with Software: An Executive Strategy)这本著作,更进一步描述了群组软件过程的基本原理,并详尽地阐述了在软件组织中如何应用PSP和TSP的原理以及它所能带来的效益。应该指出,如果一个组织正在按照CMM改进过程,则PSP和TSP是与CMM完全相容的。如果一个组织还没有按照CMM改进过程,则有关PSP和TSP的训练,可以为未来的CMM实践奠定坚实的基础。他在最近还进一步指出,可以把PSP看作CMM五级的个体过程,而把TSP看作CMM五级的群组过程。因此要有效地进行软件过程改进,若能将软件能力成熟度模型SW-CMM、个体软件过程PSP和群组软件过程TSP这三者紧密结合起来,并以统计过程控制理论为基础,相互配合、各有侧重,形成一个相互支持、不可分割的整体,一定能取得很好的效果。
在美国Carnegie-Mellon大学软件工程研究所对外开设的课程中,对个体软件过程PSP给予了特别的重视。其中"个体软件过程引论"是一门历时两天的课程,讨论了PSP的关键概念以及相关的术语和理念,并为软件工程人员参加群组软件过程作好准备。其中为软件工程师开设的PSP课程有两门,第一门讨论软件项目规划,第二门讨论软件产品质量,每门课都是五天。在第一门课中,除了讨论个体过程引论,还讨论规模测量、规模估计、如何基于历史数据来估计规模和资源以及如何进行过程测量等问题。第二门课主要讨论缺陷管理、设计过程、设计验证、如何将PSP应用于大型项目以及如何进行过程开发等问题。这两门课程都是以Humphrey所著的另一本书"软件工程规范"(The Discipline for Software Engineering)为教本。
北京航空航天大学软件工程研究所从1997年开始在硕士研究生中开设"个体软件过程引论"课程,最近两年改在本科生的"软件工程"课程中讲授PSP的内容,今年还对一些公司的软件工程师进行了PSP培训,这些都取得了一定的效果。但是由于实践时间不长,数据采集不全,需要进一步坚持改善与总结提高。
从去年下半年以来,在我国软件企业界正在掀起能力成熟度模型CMM评估的热潮。需要着重指出的是,在软件能力成熟度模型SW-CMM的18个关键过程域中,有12个与个体软件过程PSP紧密相关,有16个与群组软件过程TSP紧密相关。因此,如果能熟悉个体软件过程PSP和群组软件过程TSP,不仅有助于工程师改善工作效率,而且也非常有利于组织的过程改善。可以预料,在大学中讲授PSP和TSP课程,对培养合格的软件专业人员和加速我国软件产业的发展将起积极的推动作用。
我们应该看到,在软件领域我国在总体上离开世界先进水平还有相当大的差距。但是,我们不能跟随他国的脚印,走他人的老路。我们应该抓住机遇,直接针对未来的目标,在软件工程技术和软件工程管理两个方面,注意研究和倡导经过实践证明行之有效的软件工程的新原理和新方法,联系实际,认真实践,并充分利用我国丰富优秀的人力资源和尊重教育的优良传统,大力培养各个层次的高质量的软件工程人员,使其具有开发各类大型、复杂软件系统的能力。我相信,人民邮电出版社把Introduction to the Personal Software Process这本著作影印出版,在把我国建设成为一个真正现代化的软件产业大国的历史任务中,特别是在培养和造就初中级软件工程技术人才的历史任务中,一定能起到积极的推动作用。
周伯生
2002年9月20日于北京
为了在企业中推广PSP,需要高层经理的大力支持,需要有合格的教员和合适的教材,而且还需要所有参与人员的积极参与。然而,遵循个体软件过程开发软件并不是一件轻而易举的事,需要人们改变自己的工作方式。但是,人们通常很难改变自己的工作习惯,他们虽然愿意进行改变,但往往离不开原有的习惯。只有在用他们自己的事实证明新的方法确实有效之后,才愿意真正进行改变。因此,推广个体软件过程需要以认真的实践为基础,并努力总结亲身经历的经验和教训。
个体软件过程是一门实践性很强的学科,需要通过编写程序才能真正掌握PSP的精髓。为了精简讲授内容,减少重复实践,可以将PSP课程的程序设计练习与其它课程的作业结合起来。在最近与Humphrey的一次通信中,他认为如果在讲授个体软件过程PSP之前,先讲一些统计过程控制原理,对理解PSP的方法和理念非常有利。
诚然,PSP方法的成功与否,在很大程度上取决于教师激发学生学习和实践这些概念的能力。这不仅需要教师本人对PSP持积极态度,而且需要努力实践,认真积累数据,用自己的经验向学员展示PSP方法的威力。可以认为,教员是否按PSP原理进行认真的实践,是讲授好PSP课程的重要前提。
在Embry-Riddle航空大学计算机科学系的教员和学员为本书撰写的前言以及Humphrey本人在本书正文和他为本书撰写的前言中,都特别强调采集数据的重要性,并特别指出千万不要粗制滥造数据,否则所收集的数据就没有什么用处。因此,我们在学习PSP课程时,要按正确的方法去做,要努力理解PSP的整体框架和所蕴涵的概念,积极采集真实的数据,在自己的工作中坚持贯彻PSP的原则。诚然,要掌握PSP的方法,不仅需要认真参与有关PSP的培训,更需要在后续课程和实际工作中进一步提高、巩固和扩展。可以认为,这是掌握PSP方法的基本保证。
自从1994年以来,Humphrey一直大力倡导这种方法,他在美国很多著名公司推行PSP方法,获得了很好的结果。而且还从1996年开始,大力倡导群组软件过程TSP方法。最近他继撰写《群组软件过程》(Introduction to the Team Software Process)这本著作之后,又撰写了《软件取胜之道》(Winning with Software: An Executive Strategy)这本著作,更进一步描述了群组软件过程的基本原理,并详尽地阐述了在软件组织中如何应用PSP和TSP的原理以及它所能带来的效益。应该指出,如果一个组织正在按照CMM改进过程,则PSP和TSP是与CMM完全相容的。如果一个组织还没有按照CMM改进过程,则有关PSP和TSP的训练,可以为未来的CMM实践奠定坚实的基础。他在最近还进一步指出,可以把PSP看作CMM五级的个体过程,而把TSP看作CMM五级的群组过程。因此要有效地进行软件过程改进,若能将软件能力成熟度模型SW-CMM、个体软件过程PSP和群组软件过程TSP这三者紧密结合起来,并以统计过程控制理论为基础,相互配合、各有侧重,形成一个相互支持、不可分割的整体,一定能取得很好的效果。
在美国Carnegie-Mellon大学软件工程研究所对外开设的课程中,对个体软件过程PSP给予了特别的重视。其中"个体软件过程引论"是一门历时两天的课程,讨论了PSP的关键概念以及相关的术语和理念,并为软件工程人员参加群组软件过程作好准备。其中为软件工程师开设的PSP课程有两门,第一门讨论软件项目规划,第二门讨论软件产品质量,每门课都是五天。在第一门课中,除了讨论个体过程引论,还讨论规模测量、规模估计、如何基于历史数据来估计规模和资源以及如何进行过程测量等问题。第二门课主要讨论缺陷管理、设计过程、设计验证、如何将PSP应用于大型项目以及如何进行过程开发等问题。这两门课程都是以Humphrey所著的另一本书"软件工程规范"(The Discipline for Software Engineering)为教本。
北京航空航天大学软件工程研究所从1997年开始在硕士研究生中开设"个体软件过程引论"课程,最近两年改在本科生的"软件工程"课程中讲授PSP的内容,今年还对一些公司的软件工程师进行了PSP培训,这些都取得了一定的效果。但是由于实践时间不长,数据采集不全,需要进一步坚持改善与总结提高。
从去年下半年以来,在我国软件企业界正在掀起能力成熟度模型CMM评估的热潮。需要着重指出的是,在软件能力成熟度模型SW-CMM的18个关键过程域中,有12个与个体软件过程PSP紧密相关,有16个与群组软件过程TSP紧密相关。因此,如果能熟悉个体软件过程PSP和群组软件过程TSP,不仅有助于工程师改善工作效率,而且也非常有利于组织的过程改善。可以预料,在大学中讲授PSP和TSP课程,对培养合格的软件专业人员和加速我国软件产业的发展将起积极的推动作用。
我们应该看到,在软件领域我国在总体上离开世界先进水平还有相当大的差距。但是,我们不能跟随他国的脚印,走他人的老路。我们应该抓住机遇,直接针对未来的目标,在软件工程技术和软件工程管理两个方面,注意研究和倡导经过实践证明行之有效的软件工程的新原理和新方法,联系实际,认真实践,并充分利用我国丰富优秀的人力资源和尊重教育的优良传统,大力培养各个层次的高质量的软件工程人员,使其具有开发各类大型、复杂软件系统的能力。我相信,人民邮电出版社把Introduction to the Personal Software Process这本著作影印出版,在把我国建设成为一个真正现代化的软件产业大国的历史任务中,特别是在培养和造就初中级软件工程技术人才的历史任务中,一定能起到积极的推动作用。
周伯生
2002年9月20日于北京








点击看大图






加载中...

