基本信息
- 作者: (德)Klaus Pohl
- 译者: 彭鑫 沈立炜 赵文耘
- 丛书名: 计算机科学丛书
- 出版社:机械工业出版社
- ISBN:9787111382317
- 上架时间:2012-8-29
- 出版日期:2012 年8月
- 开本:16开
- 页码:520
- 版次:1-1
- 所属分类:计算机 > 软件工程及软件方法学 > 软件项目管理
教材

【插图】

内容简介
计算机书籍
《需求工程:基础、原理和技术》对需求工程中的主要概念、方法、原理和技术进行了全面介绍,覆盖了面向目标的需求工程、基于场景的需求工程、面向方案的需求工程以及需求抽取、文档化、协商、确认和管理等需求工程活动,是一本内容丰富、结构完整的需求工程教科书。全书共分八部分,每一部分针对不同的主题展开论述,并在每一部分的开头对各章节内容分别加注“基础”和“高级”标记,方便读者学习。
《需求工程:基础、原理和技术》运用实例来辅助阐述需求工程的各个方面,并提供了大量经过实践检验的检查表和指南,不仅适合用于高年级本科生和研究生的需求工程及相关课程教学,而且还可以作为软件开发和管理等相关领域专业人员的参考书。
目录
出版者的话
译者序
前言
第一部分基础与框架
第1章动机
1.1软件密集型系统
1.1.1实例: 嵌入式系统在汽车工业中的重要性
1.1.2开发软件密集型系统的挑战
1.2需求工程的重要性
1.2.1对于项目成功的影响
1.2.2需求中的缺陷: 一个实例
1.2.3需求缺陷导致高成本
1.3组织上下文中的需求工程
1.3.1与其他组织过程的相互关系
1.3.2与其他开发活动的相互关系
第2章需求
2.1术语“需求”
2.2需求类型
2.2.1功能性需求
译者序
需求工程通过一种系统化的工程过程实现涉众需求的抽取、协商和文档化。作为需求工程输出制品的需求文档和需求规约是所有其他系统开发活动的重要基础。传统的软件开发过程和开发方法将需求工程作为软件项目的一个早期开发阶段。近些年来,随着以统一过程和敏捷方法为代表的增量、迭代式开发过程的流行,需求工程作为一种跨越整个软件开发生存周期的持续活动的思想已经得到了广泛的接受。另一方面,软件复用、特定领域的软件开发以及软件产品线开发方法的广泛应用又进一步使得需求工程成为一种跨越项目和产品边界的工程化活动。这些都使得需求工程对于软件开发项目的重要性进一步加强。
本书对于需求工程中的主要概念、方法、原理和技术进行了全面介绍,覆盖了面向目标的需求工程、基于场景的需求工程、面向方案的需求工程以及需求抽取、文档化、协商、确认和管理等需求工程活动。特别值得一提的是,本书提出了一种涵盖四个上下文刻面(主体、使用、IT系统、开发)、三个核心活动(抽取、文档化、协商)、三种需求制品(目标、场景、面向方案的需求)和两个横切活动(确认、管理)的需求工程框架,并以此为基础组织全书的内容,使得本书在追求内容丰富与全面性的同时不失其结构性。
本书所介绍的需求工程框架和主要方法都经过长期和广泛的工业实践检验。同时,书中还大量运用实例来辅助阐述需求工程的各个方面,并提供了大量的方法应用指南和检查表。因此,本书不仅适合用于高年级本科生及研究生需求工程相关课程教学,而且还可以作为软件开发及管理相关领域专业人员学习及应用需求工程相关方法、原理和技术的参考书。
彭鑫、沈立炜、赵文耘组织并参加了本书的翻译和审校工作。其中,彭鑫负责第1~26章的翻译工作,沈立炜负责第27~38章的翻译工作,赵文耘审阅了全文。参加翻译工作的还包括董瑞志、李宏伟、林云、黄洋、谢奕、朱天梅等。
本书内容丰富、覆盖面广,鉴于译者水平有限,书中难免有疏漏或错误,还请各位读者批评指正。
前言
20世纪90年代初期我开始研究需求工程,我从一系列工业项目中获得的经验表明:不充分的需求工程经常导致不一致、不完整以及不正确的需求规格说明,并且开发项目中所遇到的大量问题也是由此产生的。因此,持续改进系统开发中需求的抽取、文档化和使用的方式成为了我的愿望和信念。
从上世纪90年代初期到现在,需求工程领域已经有了相当大的发展。研究者们针对许多需求工程问题提出、验证并且实践了很多新的解决方案。许多公司已经意识到需求工程的重要性,并且由此开始更加重视系统开发的早期“阶段”。各大学也开始面向本科生和研究生教授专门的需求工程课程。
然而,我与工业界的合作以及许多国内和国际会议上的报告都表明,很多时候需求工程仍然是以一种不充分、低效以及随意的方式进行的,其根本性的方面常常被忽略,甚至一个组织中负责开发过程的涉众也经常只对需求工程有着不充分以及不完整的认识。
还需要另一本关于需求工程的书吗
真的需要另一本关于需求工程的书吗?对于现有的德文和英文需求工程书籍的分析表明,大多数现有的书籍从不同的视角对需求工程做出了优秀的阐释,然而仍然缺少一本全面、组织结构良好、易于理解的教科书或纲要。
本书的目的
本书基于研究和工业项目中获取的知识和经验写作而成,目的是对需求工程的基础、原理和技术提供一个全面、组织结构良好的介绍。书中所介绍的需求工程的各个方面都用很多例子进行了说明。此外,本书还提供了检查表和指南,以支持所介绍的需求工程原理和技术的实践应用。对于每个主题,我们还给出了经过选择的进一步阅读建议。
简而言之,本书是一本全面的需求工程教科书及纲要。
目标读者
本书针对软件和系统工程以及业务信息系统领域中的专业人员、学生和讲师。参与需求工程或受其影响的专业人员,如项目经理、业务和系统分析员、架构师、开发和测试人员、需求工程师,将在他们的日常工作中发现本书是一本有价值的纲要,也是重要的需求工程基础、原理和实用技术的来源。我个人写作这本书的动机是为我的本科生和研究生提供一本陪伴他们的学习和职业生涯的教科书。打算在课程中使用这本书的教师可以从本书的网站wwwrequirementsbookcom(见下文中的“教授需求工程课程”)上找到参考课程、配套实验练习以及教学幻灯片。
本书的内容
本书第一部分对于需求工程基础进行了全面介绍,并且简要描述了需求工程从软件开发过程中的一个早期、非正式阶段发展成为一种持续、跨越项目和不同产品的活动的演变过程。第一部分结尾介绍了作为本书基石的需求工程框架。该框架由以下4个构造块组成:
4个上下文刻面:每个软件密集型系统都处于一个给定的上下文之中。在需求工程过程中充分考虑系统上下文对于每一个成功的系统开发都是至关重要的。因此在1993年,Matthias Jarke和我将需求工程的主要目标定义为“在上下文中建立愿景”[Jarke and Pohl 1993]。
本书的第二部分对系统及其上下文的分割进行了概述,并提出了一个有利于将其在所有需求工程活动中进行考虑的系统上下文结构。
3类需求制品:经过文档化描述(规约)的系统需求是需求工程过程的关键成果。我们的需求工程框架区分3类需求(制品):目标,描述对于系统的(抽象)意图;场景,描述实现或未能实现目标的具体实例,此外,可以用于描述系统的使用视图等;面向方案的需求,例如数据、功能、行为模型,详细描述系统需求,主要用于支持后续的系统开发活动以及系统的正确实现。
本书第三部分对3类需求的特性进行了概述,介绍了广泛使用的目标、场景和面向方案的需求的类型。而且,对目标和场景在所有核心和横切需求工程活动中的角色也进行了简要讨论(见下文)。关于目标和场景在所有需求工程活动中的使用方面的细节在本书中描述相关活动的部分进行介绍。
3个核心活动:我们区分3个核心需求工程活动:抽取、文档化(规约)和协商。这3个活动派生自需求工程的3个维度:内容维度、文档化维度、共识维度(见[Pohl 1994; Pohl 1997])。
3个核心活动在本书的第四部分进行了详细介绍。对于文档化活动,本书介绍了多种不同的文档化语言(包括自然语言以及基于模型的需求文档化),并提供了在需求工程过程中应用不同的文档化语言和技术的提示和指南。对于抽取和协商活动,本书介绍了一些需求工程中的常用技术。
两个横切活动:除了3个核心活动,还有两个对于需求工程成功至关重要的横切活动:确认活动和管理活动。确认活动的主要目的包括3个方面:确认上下文是否已在需求工程过程中得到了充分考虑;确认需求的文档化描述;确认需求工程活动是否按照过程指南进行了执行。我们将(需求)管理作为需求工程的一部分。管理活动包括3个子活动:确保需求的可追踪性,确定需求优先级,管理需求变更。