MXD 在需求开发质量管控上的杀手锏——需求特性
SYS.2 系统需求分析、SWE.1 软件需求分析、HWE.1硬件需求分析的BP①1都是明确各自层级的需求。明确的根据有2,1是根据已定义的需求特性,2是各自上游的输入。
什么是需求特性?
需求特性是指在需求定义和描述过程中所表现出的各种特征和属性,它们共同决定了需求的质量、有效性和可管理性。
需求特性在一定程度上可以视为开发需求时需要遵守的基本原则。它们为需求的编写、评估和管理提供了指导和标准,有助于确保需求的清晰、准确、完整、可行和有效。遵循这些需求特性,可以提高需求的质量,减少需求的模糊性和不确定性,降低项目风险,提高开发效率,更好地满足用户的期望和业务的需求。
需求特性在ISO IEEE 29148、ISO26262-8:2018或INCOSE需求编写指南等标准中定义。MXD结合以上标准确定了《MXD需求开发规范》,明确需求开发的10个需求特性,确定了需求开发规范,并以此衍生出需求评审检查单,为需求开发工程师的高质量工作提供坚实基础和有力保证。
小编和诸君分享一下MXD在需求开发时的检查重点、可能遇到的问题、问题的起因及改进措施,和诸君共勉。
需求特性 | 要求 | 不符合实例 | 不符合后果 | 不符合起因 | 不符合解决措施 | 不符合改进其他建议 |
完整性 | 需求涵盖了所有必要的方面和功能,没有遗漏重要的内容 | 1)未考虑ECU在极端低温环境下的工作性能需求。 | 1)导致开发过程中频繁变更需求,项目延期和成本增加; | 1)对使用场景和用户需求了解不够深入全面; | 1)建立全面的需求收集方法; | 1)与不同领域专家和用户深入交流; |
一致性 | 需求之间相互协调,没有冲突和矛盾 | 1)ECU的操作方式在不同文档中的描述不一致。 | 1)导致系统功能混乱,无法正常运行; 2)可能引发内部矛盾,影响团队协作和项目进度 | 1)不同需求来源之间沟通不畅; | 1)统一需求管理流程; | 1)建立需求冲突解决机制; |
可验证性 | 需求能够通过具体的方法和标准进行检验和确认 | 1)需求中对ECU的精度要求未说明通过何种测试方法来验证。 | 1)开发团队无法明确工作是否达到需求标准; | 1)需求中未明确验证的条件和方法; | 1)明确需求的验证条件和方法; | 1)建立验证标准和流程; |
可追溯性 | 需求的来源、变更和影响能够清晰地追踪和记录 | 1)无法追溯某一ECU功能需求的提出者和变更记录。 | 1)产品问题难以回溯需求,无法确定问题根源和责任; | 1)未建立清晰的需求标识和编号体系;2)需求变更时未做好记录和关联; | 1)建立规范的需求管理流程; | 1)使用需求管理工具; |
安全性 | 需求满足产品在使用过程中不会对人员、环境等造成危害 | 1)ECU对突发故障的应急处理机制不完善,可能导致车辆失控。 | 1)车辆发生事故,威胁乘客和行人生命安全; | 1)对潜在安全风险评估不足; | 1)进行全面深入的安全风险评估; | 1)开展安全培训; |
可靠性 | 需求所描述的产品或系统能够稳定、持续地运行,减少故障的发生 | 1)ECU中的某个关键传感器易受干扰,导致数据错误。 | 1)系统频繁故障,影响车辆正常使用; | 1)对零部件质量和寿命估计不足; | 1)选用高质量零部件; | 1)引入可靠性评估模型; |
明确性 | 需求的表述清晰、准确,不存在歧义 | 1)需求中“适当提高底盘高度”表述不明确,未给出具体数值范围。 | 1)导致开发人员误解需求,开发出不符合预期的产品; | 1)需求表述模糊、歧义; | 1)使用清晰、简洁、无歧义的语言; | 1)组织需求澄清会议; |
次序性 | 需求的开发和实现顺序进行合理安排 | 1)先开发了非关键的ECU外观需求,而忽略了核心的性能需求。 | 1)需求开发顺序混乱,影响项目进度; | 1)未对需求进行优先级排序; | 1)对需求进行优先级评估; | 1)根据资源和时间灵活调整次序; |
黑盒性 | 需求的表述不涉及具体的设计和实现细节,为工程师的设计提供足够的灵活性和创新空间 | 1)需求中指定了ECU必须采用某种特定的算法。 3)暗示了ECU开发平台的沿用。 | 1)约束工程师的自由设计,限制创新; | 1)过早涉及设计细节; | 1)保持需求的抽象和高层描述; | 1)开展需求规格和设计规格辨析; |
兼容性 | 新的需求在实现过程中能够与已有的需求、系统和环境相互适应和协同工作的特性。 | 1)ECU 无法适配常见氧传感器。 2)ECU 软件升级致旧款硬件死机重置。 3)ECU 与变速箱控制单元通信不良。 | 1)车辆故障,影响燃油和排放; 2)行车失动力,有安全风险; 3)换挡顿挫,影响舒适和变速箱。 | 1)开发未考虑传感器多样性; 2)未充分测试旧硬件; 3)通信协议和数据格式差异 | 1)重设计接口与协议,建立测试流程; 2)停止推送,修复硬件,优化升级方案; 3)优化协议和算法,联合调试 | 1)加强与供应商合作,预留接口; 2)升级前完善硬件测试环境; 3)制定统一通信标准,加强合作 |
注:需求特性之间存在着依赖关系,比如明确性不符合,或者一致性不符合,那么可验证性肯定不符合。
释①:BP(Base practices)基本实践,ASPICE里的BP指的是为实现特定业务目标而执行的一系列相互关联的活动和任务的集合。