| 本条目存在以下问题,请协助 改善本条目或在 讨论页针对议题发表看法。
| 此条目需要 精通或熟悉相关主题的编者参与及协助编辑。 (2017年12月15日) 请邀请适合的人士改善本条目。更多的细节与详情请参见讨论页。 |
|
需求工程(英语:Requirements engineering,缩写:RE)[1]是指在工程设计过程中定义、记录和维护需求的过程[2][3]。 这在系统工程和软件工程中是一个共同的角色。
1979年美国企业TRW Inc.的技术报告,可能是第一次使用“需求工程”这个术语[4],但是直到20世纪90年代IEEE电脑协会教程出版才得到普遍应用[5],并建立了一个关于需求工程的系列会议,这个会议已经发展成为当前的国际需求工程会议(International Requirements Engineering Conference)。
在瀑布模型中[6],需求工程作为开发过程的第一个阶段。后来的开发方法(包括用于软件的统一软件开发过程(RUP))假设需求工程持续于系统的整个生命周期。
需求管理为系统工程实务的子功能,也在INCOSE(系统工程国际委员会)手册中编入索引。
涉及需求工程的活动差异很大,这取决于正在开发的系统类型、以及所涉及组织的特定实务[7]。这些可能包括:
- 需求获取或需求诱导 :开发者和利益相关者见面,其中,利益相关者将被询问他们对软件产品的需求和要求。
- 需求分析和交涉:需求被识别(包括,如果开发是迭代的新需求),并且与利益相关者的冲突被解决。书写和图形工具(后者通常用于设计阶段,但也有一些人在这此阶段发现它们很有用)被成功地利用为辅助工具。书面分析工具的范例:用例、和用户故事。 图形工具的范例:UML[8]、和LML。
- 系统建模:一些工程领域(或特殊情况)要求产品在其施工或制造开始之前被完全设计和建模,因此,必须提前执行设计阶段。例如,在任何合约可以批准和签署之前,必须详细阐述建筑的蓝图。许多领域可能会使用生命周期建模语言来推导系统的模型,而其他领域则可能使用UML。(注:在许多领域(例如,软件工程),大多数建模活动都被归类为设计活动,而不是需求工程活动。)
- 需求管理
- ^ Nuseibeh, B.; Easterbrook, S. Requirements engineering: a roadmap (PDF). ICSE'00. Proceedings of the conference on the future of Software engineering. 2000: 35–46 [2017-12-15]. CiteSeerX 10.1.1.131.3116
. ISBN 1-58113-253-0. doi:10.1145/336512.336523. (原始内容存档 (PDF)于2015-11-06).
- ^ Kotonya, Gerald; Sommerville, Ian. Requirements Engineering: Processes and Techniques. John Wiley & Sons. September 1998. ISBN 0-471-97208-8.
- ^ Chemuturi, M. Requirements Engineering and Management for Software Development Projects. 2013. ISBN 978-1-4614-5376-5. doi:10.1007/978-1-4614-5377-2.
- ^ Software Requirements Engineering Methodology (Development) (页面存档备份,存于互联网档案馆) Alford, M. W. and Lawson,J. T. TRW Defense and Space Systems Group. 1979.
- ^ Thayer, Richard H.; Dorfman, Merlin (编). Software Requirements Engineering 2nd. IEEE Computer Society Press. March 1997. ISBN 0-8186-7738-4.
- ^ Royce, W. W. Managing the Development of Large Software Systems: Concepts and Techniques (PDF). ICSE'87. Proceedings of the 9th international conference on Software Engineering. 1970: 1–9 [2017-12-15]. (原始内容 (PDF)存档于2017-02-24).
- ^ Sommerville, Ian. Software Engineering 9th. Addison-Wesley. 2009. ISBN 978-0-13-703515-1.
- ^ 存档副本. [2017-12-15]. (原始内容存档于2021-02-04).