我是软件工程的新手,我的问题与质量保证或测试没有直接关系。

当涉及到需求工程(RE)时,需求可以分类为:



用户需求与系统需求和功能需求vs.非功能需求

系统需求是用户需求的翻译,其技术性更高。它们基本上是软件必须执行的事情。

功能要求基本相同。

那么它们又有何不同?还是根据视角,它们以相同的方式指代相同的事物?

#1 楼

系统需求是用户需求的翻译,其技术性更高。它们基本上是软件必须执行的事情。
不完全是。该系统通常由硬件和软件组成。在某些情况下,它甚至可能包括执行明确定义的过程的人员(例如,更换耗尽的电池)。

需求可以分为用户需求/系统需求和功能需求/非功能需求
据我了解,您正在混合分类。至少有用户要求;以及系统,硬件和软件的功能和非功能要求。您甚至可以将系统分解为子系统,也可以分解为模块中的软件需求...“高级分析”需求的示例:

用户需求:用户应该能够关闭警报器确认错误消息后。
系统的非功能要求:通过连接新的处理器,系统应能够同时处理多达80个请求。
系统的功能要求:系统必须向用户发出警告如果消息中包含代码0xEFAC,则发出2500 Hz的声音。
硬件非功能要求:系统必须承受至少10分钟的断电。
硬件功能要求:如果JP14跳线已打开并且寄存器R4的值为0xEFAC,硬件必须在PK1上施加+ 5V。
软件非功能要求:该软件应能够同时满足50个INFO请求。
软件功能要求:该软件必须提供如果出现错误,则左上角的红色警报框圣人已损坏。

#2 楼

我认为这些术语的使用不正确:

用普通语言编写的用户需求应称为用户的故事等。
硬件需求通常称为系统需求。您的应用程序需要执行的操作以及使用哪种方式(即其功能)

PS另外,您可以从Wiki上了解有关需求的信息:http://en.wikipedia.org/wiki/Requirement

#3 楼

“功能需求”的定义是从本质上指定系统应该做的事情。

非功能需求的定义是从本质上指定系统应该如何运行并且是约束。根据系统行为。人们还可以将非功能性需求视为系统的质量属性。

简单地,区别在于非功能性需求描述了系统的工作方式,而功能性需求则描述了系统应该做什么。


功能要求包括:



业务规则
交易更正,调整和取消
行政功能
身份验证
授权级别
审计跟踪
外部接口
认证要求
报告要求
历史数据
法律或法规要求


非功能性要求:




性能–例如响应时间,吞吐量,利用率,静态体积
可伸缩性
容量
可用性
可靠性
可恢复性
可维护性
可维护性
安全性
法规
可管理性
环境,数据完整性