2018年10月17日星期三08:02

非功能性需求-我们为什么需要它们?

撰写者

非功能性需求,当我们谈论NFR(非功能性需求)时,我们会想到什么?

在记录项目中的需求时,您对非功能性需求有什么看法?

当我们说“非功能性”时,通常是指那些与系统功能性无关的需求,那么这些到底是什么以及为什么我们需要它们。

现在想象一下一个系统,它将在像印度这样的国家/地区发布10年级学生学校认证考试的结果,以及宣布结果时的负担。

因此,除了功能之外,我们还需要考虑该系统的所有要求,它必须具有高性能以处理负载以及适当的安全/身份验证系统。

这是一种要求,通常称为非功能性要求,这些要求对于用户社区或对于系统的平稳运行(如可用性,可靠性等)都很重要。

非功能性需求应始终以清晰的术语来描述,例如系统应能够同时处理10万个用户,每个用户的响应时间必须少于2秒。


广告

这是常见的非功能性需求的好清单:

NFR类别

非功能需求

简短说明

适用情况

可以通过测试

约束

价钱

解决方案的目标价格

检查清单

约束

资源限制

诸如由于移动设备的小屏幕尺寸而施加的约束等对开发施加的约束。

检查清单

合规

合规

合规性。

卫生保健(HIPAA,FDA)

跨系统的集成测试

合规

文献资料

文件要求。

卫生保健,航空,汽车

色盲测试用例

合规

法律和许可问题或可避免专利侵权

遵守合规性要求。

测试用例验证记录数据更新

可维护性

可分析性

能够调查故障

备份恢复测试

可维护性

可变性

能够更改一个组件而不影响其他组件,并且不会引起意外故障的能力

查看应用程序代码

可维护性

部署方式

易于部署和升级应用程序。

查看应用程序代码

可维护性

第三方托管

应用程序的源代码被安全保存,并且在某些情况下可供买方使用

购买了外包产品

检查清单

可维护性

可扩展性/可修改性

轻松扩展产品的能力

消费者反馈

可维护性

可支持性

能够支持特定时期,特定地点等的应用程序

检查清单

可维护性

可测性

易于测试自动化

检查清单

性能

性能/响应时间(性能工程)

响应用户请求所花费的时间。

检查清单

性能

资源利用率

已使用容量的百分比

检查清单

性能

可扩展性

支持指定数量的用户/交易的能力

支持大量用户的系统

查看应用程序代码

可移植性

互通性

能够使用现有系统。

查看应用程序代码

可移植性

平台兼容性

能够使用既定平台。

查看应用程序代码

可移植性

可更换性

 

查看应用程序代码

可靠性

可用性

系统可用时间的百分比。

关键系统

延迟测试

可靠性

后备

必须备份数据的频率。

普遍

在所需平台上测试

可靠性

灾难恢复

灾难后恢复应用程序所花费的时间。

多种浏览器测试

可靠性

故障管理(容错)

能够管理故障。

检查清单

可靠性

质量(例如,发现故障,交付故障,清除故障的效率)

目标缺陷密度

关键任务应用

Code 和 design Review

可靠性

恢复/可恢复性(例如,平均恢复时间-MTTR)

快速恢复能力

关键任务应用

查看应用程序代码

可靠性

可靠性(例如平均故障间隔时间-MTBF)

能够在需要时提供服务

关键任务应用

查看应用程序代码

可靠性

可更换性

能够即时更换有故障的零件

关键任务应用

查看应用程序代码

可靠性

弹性

抵御攻击的能力

关键任务应用

检查清单

可靠性

坚固性

即使在不利条件下也能够连续运行。

模拟互联网攻击
如果存在硬件,则进行热循环测试

可靠性

稳定性

 

检查清单

安全

审计和控制又名问责制

跟踪对数据所做的更改。

金融,卫生保健

查看应用程序代码

安全

真实性

 

查看应用程序代码

安全

保密

防止数据暴露给未经授权的用户

查看应用程序代码

安全

廉洁

维护数据的正确性

渗透测试

安全

隐私

保持个人数据安全的能力。

卫生保健

渗透测试

易用性

辅助功能

该应用程序可由色盲等有特殊需求的人使用。

政府

查看应用程序代码

易用性

使用方便

将点击次数限制为最多3次点击,以完成任何交易

查看应用程序代码

易用性

情感因素(例如娱乐或吸收)

使应用程序吸引特定受众。

教育

检查清单

易用性

国际化

能够在不同国家/地区运行应用程序,例如处理多个时区,货币,语言等。

查看应用程序代码

易用性

易学性

不同的用户组应能够在经过培训或未经培训的情况下使用产品

查看应用程序代码

易用性

安全

确保安全使用产品,并防止因应用造成的损坏。例如,导航系统的安全功能。

危及人类生命的地方。航空,汽车,卫生保健等。

键盘控制测试

 

资质认证

特定技术的认证,例如Azure认证。

未经培训的用户测试

 

本土化

满足特定国家或地区(例如石油行业)需求的能力

查看应用程序代码

 

重用性

能够重用现有组件并创建新的可重用组件

查看应用程序代码

可移植性

可安装性

能够轻松安装或卸载

查看应用程序代码

而一些常见的功能要求包括:

  • 业务规则,逻辑,验证
  • 计算/公式
  • 错误消息/处理
  • 交易更正,调整和取消
  • 管理员功能/访问权限,超级用户访问权限
  • 认证方式
  • 授权等级
  • 交易审计日志
  • 外部介面
  • 报告要求
  • 法律/法规/合规要求

非功能性需求应始终以清晰的术语来描述,例如系统应能够同时处理10万个用户,每个用户的响应时间必须少于2秒。

优点

  • 使系统用户友好/易于使用并且可以接受
  • 缺少它们使用户使用起来更加困难,有时由于缺少这些功能而可能放弃系统

缺点

  • 在需求收集练习中经常被遗漏
  • 难以表达或量化
阿南亚·帕尼(Ananya Pani)

我的任务是帮助业务分析师建立成功的职业生涯。

我已经帮助2000多个学士学位选择了更好的职业,并帮助他们取得了职业上的成功。

我与他人共同创立了Adaptive US,排名第一的IIBA V3培训组织。我在Adaptive US管理销售和运营。在我的领导下,Adaptive已成为世界领导者。

我也是鼓励女性在技术领域工作的坚决支持者,并帮助许多女性在长期休假后重返工作岗位。

©BA Times.com 2020

麦格雷戈徽标白色网站