| 本條目存在以下問題,請協助 改善本條目或在 討論頁針對議題發表看法。
| 此條目需要 精通或熟悉相关主题的编者参与及协助编辑。 (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).
外部連結