非功能需求和功能需求示例

Non functional requirements and functional requirement example

我在分析奶茶管理网站,就是一个在线帮助用户在线购买,卖家可以管理他们的产品,订单的网站

我必须像这样对这个网站做非功能需求和功能需求

功能要求

注册

登录

将产品添加到卡片

提交订单

取消订单

非功能要求

可加入购物车的奶茶数量

我适合吗?你能给我一些想法让我更好地改进,我是这个部分的新手,非常感谢你

功能要求

好的功能需求应该清楚地描述系统的行为。以下是一些示例:

  • "如果用户在登录时输错密码3次,账户将被锁定24小时。"
  • “将电子产品添加到购物车后,应向用户显示购买保修的选项。”
  • “如果用户在处理订单后尝试取消订单,则用户必须说明取消原因,并且必须在退款前获得批准”

如果您想添加更多功能,创建更多需求,请不要将它们全部堆放在一起。例如,上面列表中的最后一个要求可以拆分为 2:(1)要求取消原因,(2)退款前批准。它还有助于在电子表格(每个需求一行)或 JIRA Stories 中按功能组织需求。

确保您阅读了许多写得很好的需求示例,并进行了练习。遵循清单,并让同事检查您的工作。 总是 问问自己如何测试每个需求。如果您不知道如何为需求编写测试,您怎么能证明产品按预期工作?

非功能性要求

非功能性需求也称为系统的“质量属性”或“约束”。可以添加到购物车的可能项目范围 (0..max) 似乎是对该字段的限制,所以我可以看到有些人会如何将其视为 NFR。但是你会如何测试呢?

相反,您可以将其表述为功能需求:“当用户输入的值大于最大值时,显示一条错误消息”。 NFR 可能会描述错误消息的颜色、大小和位置。 NFR 还可以指定要使用的 UI 套件和要遵循的样式指南。例如,“必须遵循GoogleMaterial设计”(https://material.io).

您还应该熟悉 NFR 类别(也称为“能力”):

以下是网站的 NFR 的一些示例:

  • 性能:“应在不到 2000 毫秒内创建一个新用户帐户”
  • 可靠性:“系统应具有至少 99.9% 的可用性”
  • 容量:“系统最多可同时服务 1000 个用户”
  • 可扩展性:“系统应可水平扩展以增加并发用户数”
  • 可用性:“用户应该能够在 3 次点击内导航到站点中的任何页面”

参考资料

阅读系统工程知识体系 (SEBoK) 的这些指南。密切关注他们,与您的团队分享:

如果您想深入了解,这是一本关于大规模敏捷需求的优秀书籍: