嵌入式系统非功能需求全解析
1. 非功能需求概述
在系统开发中,需求往往侧重于系统的功能实现。然而,要使产品取得成功,还需要涵盖所有开发者必须正确处理的系统方面,这些方面被称为非功能需求,也被叫做质量属性或额外功能特性。
非功能需求并非直接的行为表现,因此不能直接在软件或硬件中实现。它们主要分为两类:涌现属性和约束条件。涌现属性是系统整体所具有的特性,但难以归因于系统的某一个部分。例如,系统处理速度通常是系统整体的属性,要了解运行所有软件时的总 CPU 负载,就必须知道系统中每个软件部分的执行时间,并没有一个单一的子程序能让系统更快地满足其截止时间要求。约束条件则是在创建系统时必须遵循的规则,这些规则无论对整体系统是有益还是有害,开发者都必须遵守。比如“必须在 Linux 上运行”或“必须符合 UL 安全标准”。
1.1 满足非功能需求的重要性
如果系统不能正确实现其非功能需求,那么它就和遗漏了重要功能一样存在缺陷。以软件为例,如果软件每分钟崩溃一次,那很可能存在问题;而每周崩溃一次是否算成功,则取决于应用环境。但无论如何,软件不应该有专门负责导致崩溃的模块,软件是否崩溃与系统中各个模块的交互有关。缺乏频繁崩溃这一特性是软件成功的重要标准,如果需求文档中没有提及所需的软件稳定性级别,就无法确保获得足够稳定的软件。因此,需求文档应该涵盖系统成功所需的所有方面,仅仅列出系统执行的功能是不够的,还必须包含非功能需求。
1.2 可能出现的症状
由于项目早期开发者往往专注于实现功能而非非功能问题,许多需求不完整的症状在产品接近发货时才会显现出来。需要关注的症状包括:
- 需求文档没有涵盖以下所有主题的章节:性能、
嵌入式系统非功能需求全解析
超级会员免费看
订阅专栏 解锁全文
1060

被折叠的 条评论
为什么被折叠?



