软件与系统工程标准系列
Abstract
本文深入解析了需求工程流程,致力于将利益相关者的需求有效转化为系统实际需求。该流程遵循国际标准化(ISO)的ISO/IEC 15288和12207标准,包括需求定义、分析以及架构设计等关键步骤,确保需求的完整性及可追溯性,以支持系统开发的顺利进行。
本文是对IEEE-29148系统与软件工程标准中“生命周期流程-需求工程”章节的详细解读与扩展。全文共分为五大部分,分别是:
- 需求工程流程概述
- 涉众需求定义流程
- 需求分析流程
- 需求工程活动详述
- 需求管理策略
第一部分为:需求工程流程的基本框架与思路。
在项目实施中,应遵循以下系统与软件工程流程标准:ISO/IEC 15288:2008及IEEE Std 15288‐2008,以及ISO/IEC 12207:2008及IEEE Std 12207‐2008。这些标准均强调了利益相关者需求的定义与分析的重要性。
这些标准涵盖了以下关键环节:依据利益相关者的要求定义流程(遵循ISO/IEC 15288或12207的相应子条款),进行需求分析(依据第6.4.2款),以及针对采购或供应软件产品的软件需求分析流程(依据ISO/IEC 12207的子条款7.1.2)。
主要流程包括:明确涉众的需求定义;进行需求分析,这可能涉及ISO/IEC 15288或ISO/IEC 12207中描述的系统或软件需求分析;这些流程将产生一组基础需求,进而流入架构设计流程。
在架构设计流程中,需求将被分配、分解并追溯至系统元素。需求分配的过程也启动了需求流程的递归和迭代应用。这符合ISO/IEC TR 24748-1《系统和软件工程 生命周期管理》第1部分中所述的项目系统生命周期模型的定义和应用。
除上述流程外,还有一些与需求相关的技术和项目流程。软件活动与系统活动的界定虽然有所不同,但就本国际标准而言,相关条款的标题通常与ISO/IEC 15288中的系统工程流程保持一致。
附件C列出了两个标准中流程之间的关系及其与本国际标准相关条款的映射。通过表C-1和C-2可以明确了解需求工程中的主要技术流程及其适用的活动。表C-3则列出了与需求工程相关的其他技术活动。
本文同时发布于《软件需求探索》杂志,其中详细介绍了涉众定义与解释、需求分析流程、需求工程活动、需求管理以及涉众需求定义流程等关键内容。