您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



文章 咨询 工具 课程  
会员   
   
LLM大模型与智能体开发实战
2026年1月17、24日 北京+线上
需求分析与管理
2026年1月22-23日 北京+线上
UAF与企业架构
2026年2月3-4日 北京+线上
     
   
 订阅
ASPICE V4.0 - 需求特征 (Characteristics of requirements)
 
作者:杨环宇
  248   次浏览      9
 2026-1-8
 
编辑推荐:
本文主要介绍需求集合的需求特征和为实现这些需求特征,有哪些推荐的,可以指导实践的规则,希望对你的学习有帮助。
本文来自于仨人谈起,由火龙果软件Alice编辑,推荐。

在上一篇文章中,分享了“单个需求的需求特征 (Characteristics of requirements)”,本文介绍:当把众多的单个需求放在一起,形成的 需求集合的需求特征 (Characteristics of requirements)以及为实现这些需求特征,有哪些推荐的,可以指导实践的规则。

需求特征的分类

说明:关于需求特征分类的解释,请参考上一篇文章。

C10 – Complete (完整的)

需求集合中包括的需求,需要是 Complete(完整的) ,意味着这个需求集合能充分描述其所必要的能力、特征、功能、性能、约束、条件等。

需求集合是Complete(完整的):

  • 需求集合中包括的需求是完整的,未有缺失的需求
  • 需求集合中的每个需求,都是Complete(完整的) – 参考C4
  • 需求集合中的每个需求,都是Necessary(必要的) – 参考C1。即:需求集合中包括了所有必要的需求,排除了所有不必要的需求。

C11 – Consistent (一致的)

需求集合中包括的需求是 Consistent (一致的) ,意味着:

  • 需求集合中的每个需求,都是唯一的,独一无二的
  • 需求集合中的需求之间,没有冲突,没有重叠
  • 需求集合中的所有需求,使用的是一致的单位/度量等的表达
  • 需求集合中的所有需求,遵循一致的需求描述方式、术语、词汇表等

C12 – Feasible (可行的)

需求集合中包括的所有需求,在项目的约束条件内是可实现的,约束条件可包括例如:成本、进度、技术、法律、道德、安全等。

C13 – Comprehensible (可理解的)

需求集合中的需求,必须明确表达:对某实体的期望和要求、需求之间的关系、该实体与外部系统之间的关系等。

C14 – Able to be validated (可被确认的)

需求集合是 Able to be validated (可被确认的) ,意味着:必须能够在可接受风险的约束条件下(如成本、进度、技术和法规遵从性等),确认该需求集合,可以实现其上一层级的需求集合。

例如:

在项目中,是基于“Stakeholders Requirements(相关方需求)” --> “System Requirements (系统需求)”,则:要能够对“System Requirements(系统需求)”进行确认,来确认其可以实现“Stakeholders Requirements(相关方需求)”的 意图 。

C15 – Correct (正确的)

需求集合是 Correct (正确的) ,意味着:需求集合,必须是其所依据的上一个层级需求集合的准确和明确的表达。

需求集合是正确的,意味着:

  • 需求集合未包含不正确的信息
  • 需求集合中未有遗漏所需信息
  • 需求集合中每个需求都是正确的(C8)

例如:

在项目中,是基于“Stakeholders Requirements Set(相关方需求集合)” --> “System Requirements Set (系统需求集合)”,则:需要以“Stakeholders Requirements Set(相关方需求集合)”为判定准则,判断“System Requirements Set (系统需求集合)是否是对的。

前面两篇文章中,分享了:单个需求的需求特征、需求集合的需求特征。

本文讨论:为实现这些需求特征,有哪些推荐的,可以指导实践的规则。

规则类别1 – Accuracy (准确性)

R1 – Structured Statements (结构化的陈述)

需求描述语句必须符合约定的模式(pattern),从而使得需求描述,是一个结构良好的完整语句。

需求描述的Pattern,例如:

  • When <condition clause>, the <subject clause> shall <action verb clause> <object clause> <qualifying clause>.

R2 – Active Voice (主动语态)

需求描述语句,需要使用主动语态。

这样可以明确需求的主体(subject), 更容易确认需求描述是否完整,更容易保证需求的合适性(Appropriate)。

例如:

  • 在xx条件下,BMS软件需要在5ms内,切断接触器。
  • 切断接触器,是“BMS软件”的行为吗?

R3 – Appropriate Subject Verb (恰当的动词)

需求描述语句中要使用恰当的适合于主语(subject)的动词。

例如:如果是使用英文来描述需求的话,则可以使用“shall”, “must”,但不能使用“can”, “may”等。

R4 – Defined Terms (使用定义的术语)

需求描述语句中使用的术语,都需要被定义。

例如:

  • 在xxx条件下,<yyy system>需要提示出当前时间信息。
  • 时间的format?精度?是否需要考虑时区?--> 时间信息,可以定义为术语

R5 – Definite Articles (定冠词)

如果是使用英文来描述需求的话,则需要使用定冠词(“the”),而不能使用不定冠词(“a”)。

这个规则,是为了使需求的描述更具体、更聚焦。

R6 – Common Unit of Measure (通用的计量单位)

需求描述中,如果包括对“数量”的描述时,那么数字应该使用适当、一致的计量单位。

R7 – Vague Terms (笼统的措辞)

需求描述中,应避免使用笼统的措辞。

例如:

  • BMS系统需要将电芯的 相关数据 ,每隔50ms,传送给 Dashboard 。

R8 – Escape Clauses (例外条件)

需求描述中,避免使用一些模糊条件或可能性的免责条款,如“尽可能”、“尽可能少”、“在可能情况下”、“尽量多”、“必要时”、“在必要的范围内”、“按要求”等。

R9 – Open-Ended Clauses (开放式条款)

需求描述中,避免使用开放式条款,例如:在需求描述中不能使用“等…”、”包括但不限于”等内容。

规则类别2 – Concision (简洁)

R10 – Superfluous Infinitives (多余的不定式)

需求描述中,避免使用多余的不定式,如“被设计成”、“能够”、“有能力”、“使能”、“允许”。

例如:

  • BMS系统,能够每10ms,将XX数据,发送给Dashboard。
  • BMS系统,每隔10ms发送XX数据,如果发送了10次,只有1次成功,这个需求算不算满足呢?

R11 – Separate Clauses (单独条款)

需求描述中,如果存在多个条件时,对每个条件都应单独进行描述。

例如:

  • 在充电状态时,BMS系统,需要根据充电状态,每10ms向 Charger 发送精度是0.1Y或0.01Y的XX数据。
  • 什么情况下发送0.1Y精度的数据,什么情况下发送0.01Y的数据?

规则类别3 – Non-ambiguity (无歧义)

R12 – Correct Grammar (正确的语法)

为避免歧义,陈述需求的语句,需要使用正确的语法。

例如:

  • The <xxx website> shall only use Approved Fonts.

有几种可能的理解呢?only是对什么的限制?

R13 – Correct Spelling (拼写正确)

为避免歧义,陈述需求的语句中,不能有别字、错字等。

R14 – Correct Punctuation (正确的标点符号)

为避免歧义,陈述需求的语句中,需要正确的使用标点符号。

R15 – Logical Expressions (逻辑表达式)

需求描述中,需要 使用已定义的规则来表示逻辑表达式,例如:”[X AND Y]”、“[X OR Y]”,”[X XOR Y]”等。

R16 – Use Of “Not” (“不”的使用)

需求描述中,不使用“不”。

R17 – Use Of Oblique Symbol (“/”的使用)

需求描述中,不使用“/”。

规则类别4 – Singularity(单一性)

R18 – Single Thought Sentence (单一意思的语句)

一个需求描述中,只是包括一个要求(或者说,只包括一个idea)

R19 – Combinations (组合)

需求描述中,避免使用连接词,例如:和(and)、或者(or)等。

例如:

  • The <xxx system> shall display the Location and Identity of the Lead Vehicle.

解释:

  • 显示Location,和显示Identity是2个需求,不能合在一起。 有些时候,这两个需求的验证方式是不一样的,合在一起不利于需求的验证。
  • 该需求中还存在另外一个问题:没有明确说明如何显示(即:显示的format)

R20 – Purpose Phases (表达目的的短语)

需求描述中,避免使用“表达目的”的短语。

例如:

  • The Record_Sub system shall display the Name of each Line_Item so that the Operator can confirm that it is the correct Item.

R21 – Parentheses (从属文本)

需求描述中,避免使用包含从属文本的括号和方括号。

例如:

  • When the Water_Temperature exceeds 85 °C (usually towards the end of the boiling cycle) , the Control_Unit shall disconnect power from the Boiler within <xxx ms>.

R22 – Enumeration (枚举)

需求描述中,需要把所有情况都枚举(罗列)出来,逐一说明。不能笼统的说。

例如:

  • The thermal control system shall monitor system temperature.
    • monitor什么?
    • 什么是monitor?
  • The thermal control system shall manage temperature-related functions.
    • 要manage哪些功能?
    • manage是指什么?

R23 – Supporting Diagram, Model (支持的图表、模型)

当需求内容复杂时,需要使用图表、模型等方式配合需求描述。

规则类别5 – Completeness (完整性)

R24 – Pronouns (代词)

需求描述中,避免使用人称代词和不定代词,如:他、她、它、这个、那个、所有的。

R25 – Headings (标题)

避免依赖标题来支持对需求的解释或理解。

规则类别6 – Realism (现实考虑)

R26 – Absolutes (绝对的)

避免使用无法实现的绝对的表达方式。

例如:

The <xxx system> shall have 100% availability.

规则类别7 – Conditions (条件)

R27 – Explicit Conditions (显示的、明确的条件)

明确说明条件的适用性,而不是将适用性留给读者依赖上下文进行推断。

例如:

  • The Free_Access_Mode shall be set to ON within <xxx ms>. 

这个需求,需要满足什么条件才能触发呢?

R28 – Multiple Conditions (多个条件)

当需求的触发,需要多个条件时,需要明确:这多个条件之间是什么关系,例如:是AND的关系,还是OR的关系。

规则类别8 – Uniqueness (唯一性、独特性)

R29 – Classification (分类)

根据所解决的问题的某种考虑,对需求进行分类。

例如:

  • 按照功能性需求、非功能性需求进行分组
  • 对功能性需求,按照Input、Process、Output进一步分组
  • 按照ASIL等级,对需求进行分类

R30 – Unique Expression (唯一)

每个需求的描述,有且只有一次。

规则类别9 – Abstraction (抽象)

R31 – Solution Free (实现的自由)

除非真的对设计和实现有约束,否则避免在需求描述中包括“设计和实现”的内容。

例如:

  • 系统需求中, 不包括 系统架构设计的内容、也 不依赖 系统架构设计的内容。

规则类别10 – Quantifiers (量词)

R32 – Universal Qualification (普适性)

当要进行普适性的描述时,使用”each”,而不是“all”、“any”或“both”。

例如:

  • The Operation_Logger shall record any (or all)  warning messages.
  • 调整改进后 -->
  • The Operation_Logger shall record each Warning_Message. (注:Warning_Message需要被定义,这样本条需求才是确定的)

规则类别11 – Tolerance (容忍)

R33 – Range of Values (值的范围)

需求描述中使用数量的时候,需要明确值的范围。

规则类别12 – Quantification (量化)

R34 – Measurable Performance (可测量的性能)

需求描述中包括性能指标时,需要定义具体的可测量的性能目标,这样才能根据这些可测量的目标进行验证。

例如:

  • The <xxx system> shall use minimum power.
  • 调整改进后 -->
  • The <xxx system> shall consume less than or equal to 50W of mains power.

R35 – Temporal Dependencies (时序上的依赖)

显式的、明确的定义时序依赖关系,而不是使用不确定的时序表达。

例如:

  • Continual operation of the pump shall eventually result in the tank being empty.
  • 调整改进后 -->
  • The Pump shall remove greater than 99% of the Fluid from the Tank in less than 3 days of continuous operation.

规则类别13 – Uniformity of Language (语言的统一性)

R36 – Consistent Terms and Units (一致的术语和单位)

R37 – Acronyms (首字母缩写)

R38 – Abbreviations (缩略语)

需求集合的每个需求,以及整个项目生命周期的开发和测试活动中,使用一致的术语和度量单位、首字母缩写、缩略语等。

R39 – Style Guide (风格指南)

需求集合中的每个需求,都采用一致的需求描述风格。

R40 – Decimal Format (十进制格式)

使用一致的格式来规范十进制数字的描述。

例如:

  • 当精度要求是0.01的时候,数字”512”的表达方式应该是”512.00”。

规则类别14 – Modularity (模块化)

R41 – Related Requirements (相关的需求)

对需求进行分组或分类时,将相关的需求,放在一起。

例如:

  • 按照类型分类,包括:基础功能、高级功能、Safey需求、Cybersecurity需求等
  • 按照场景对需求进行分类
  • 按照Input、Output、Process进行分类

R42 – Structured Sets (结构化集合)

按照已定义好的结构,对需求进行分类。

例如:

  • 功能性需求,包括:功能需求 + 性能需求
  • 非功能需求 – 质量需求,包括reliability, availability, maintainability, accessibility, transportability
  • 合规性需求

 

   
248 次浏览       9
相关文章

中央计算的软件定义汽车架构设计
汽车电子控制系统中的软件开发过程
一文读懂汽车芯片-有线通信芯片
OTA在汽车上有哪些难点痛点?
相关文档

汽车设计-汽车的整体结构及动力系统
自动驾驶汽车软件计算框架
SysML在汽车领域的应用实践
电子电气架构-大陆汽车系统架构平台
相关课程

AutoSAR原理与实践
功能安全管理体系(基于ISO26262)
MBSE(基于模型的系统工程)
基于SOA的汽车电子架构设计与开发

最新活动计划
视觉大模型及其应用 1-30[在线]
基于UML+EA进行分析设计 2-3[北京]
需求分析与管理 2-9[北京]
基于模型的数据治理 3-10[北京]
UAF与企业架构 2-3[北京]
ASPICE4.0核心开发过程 3-21[在线]
嵌入式软件测试 3-27[上海]
 
 
最新文章
ASPICE中配置管理是个什么东西?
了解软件安全分析与组件鉴定
掌握Autosar ComStack的精髓!
基于整车功能的正向诊断需求开发
搞定Autosar SWC开发秘籍,码住!
汽车OTA更新的系统性威胁评估
最新课程
基于SOA的汽车电子架构设计与开发
Auto SAR原理与实践
AUTOSAR架构与实践(从CP到 AP )
AUTOSAR架构建模方法与工具(EA)
ASPICE4.0核心开发过程指南
MBSE(基于模型的系统工程)
更多...   
成功案例
某知名车企 AUTOSAR应用设计与开发
吉利汽车 MBSE工程体系汽车建模及评估
某整车企业 《功能需求分析与设计》
富奥汽车零部件 建模工具EA
零跑汽车 建模工具EA及服务
北汽福田 建模工具EA
小鹏汽车 建模工具EA
更多...