ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 功能需求与非功能需求:主要区别 > 原文: [https://www.guru99.com/functional-vs-non-functional-requirements.html](https://www.guru99.com/functional-vs-non-functional-requirements.html) ## 什么是功能需求? 在软件工程中,功能需求定义了系统或其组件。 它描述了软件必须执行的功能。 函数不过是输入,其行为和输出。 它可以是计算,数据处理,业务流程,用户交互或定义系统可能执行的功能的任何其他特定功能。 功能性软件要求可帮助您捕获系统的预期行为。 此行为可以表示为功能,服务或任务,或者需要执行哪个系统。 ## 什么是非功能性要求? 非功能性需求定义了软件系统的质量属性。 它们代表了一组用于判断系统特定操作的标准。 例如,网站加载速度有多快? 非功能性要求对于确保整个软件系统的可用性和有效性至关重要。 不满足非功能性要求可能导致系统无法满足用户需求。 非功能需求使您可以跨各种敏捷积压对系统的设计施加约束或限制。 例如,当同时用户数为> 10000 时,站点应在 3 秒内加载。非功能需求的描述与功能需求一样重要。 在本教程中,您将了解更多有关: * [功能需求示例](#3) * [非功能需求的示例](#4) * [功能要求与非功能要求](#5) * [功能需求的优势](#6) * [非功能需求的优势](#7) ## 功能要求示例 * 该软件会根据 ABC 联系人管理系统自动验证客户 * 销售系统应允许用户记录客户的销售 * 该应用程序中所有窗口的背景颜色将是蓝色,并且具有十六进制 RGB 颜色值 0x0000FF。 * 只有管​​理级别的雇员有权查看收入数据。 * 该软件系统应与银行 API 集成 * 软件系统应通过 [508 节](https://www.section508.gov/)可访问性要求。 ## 非功能要求的示例 以下是一些非功能需求的示例: 1. 首次成功登录后,用户必须立即更改最初分配的登录密码。 此外,首字母绝对不能重复使用。 2. 员工从未允许更新其工资信息。 此类尝试应报告给安全管理员。 3. 用户每次访问数据项的不成功尝试均应记录在审核跟踪中。 4. 网站应足以应付 2000 万用户,影响其性能 5. 该软件应该是可移植的。 因此,从一个操作系统迁移到另一操作系统不会造成任何问题。 6. 信息隐私,限制技术的出口,知识产权等应进行审计。 ## 功能要求与非功能要求 ![](https://img.kancloud.cn/ee/85/ee8523747be849bc8ba466cc57d82265_677x192.png) | **参数** | **功能要求** | **非功能性要求** | | --- | --- | --- | | 这是什么 | 动词 | 属性 | | 需求 | 必填 | 这是非强制性的 | | 捕获类型 | 它是在用例中捕获的。 | 它被捕获为质量属性。 | | 最终结果 | 产品功能 | 产品属性 | | 捕捉 | 易于捕捉 | 难以捕捉的 | | 目的 | 帮助您验证软件的功能。 | 帮助您验证软件的性能。 | | 重点领域 | 关注用户需求 | 专注于用户的期望。 | | 文献资料 | 描述产品的作用 | 描述产品如何运作 | | 测试类型 | 功能测试,例如系统,集成,端到端,API 测试等。 | 非功能测试,例如性能,压力,可用性,安全性测试等。 | | 测试执行 | 测试执行是在进行非功能测试之前完成的。 | 功能测试后 | | 产品资讯 | 产品功能 | 产品属性 | ## 功能需求的优势 这里是创建典型功能需求文档的优缺点- * 帮助您检查应用程序是否正在提供该应用程序的功能要求中提到的所有功能 * 功能需求文档可帮助您定义系统或其子系统之一的功能。 * 功能需求以及需求分析有助于识别缺失的需求。 它们有助于明确定义预期的系统服务和行为。 * 在功能需求收集阶段捕获的错误最便宜。 * 支持用户目标,任务或活动,以便于项目管理 * 功能需求可以用例形式或用户故事形式表达,因为它们表现出外部可见的功能行为。 ## 非功能需求的优势 非功能测试的优点/优点是: * 非功能性要求确保软件系统遵循法律和合规性规则。 * 它们确保软件系统的可靠性,可用性和性能 * 它们确保了良好的用户体验并简化了软件的操作。 * 它们有助于制定软件系统的安全策略。 ## 关键区别 * 功能需求定义了系统或其组件,而非功能需求定义了软件系统的性能属性。 * 功能需求和需求分析可帮助您识别缺失的需求,而非功能需求的优势在于可帮助您确保良好的用户体验并简化软件的操作。 * 功能需求是动词,非功能需求是属性 * 非功能性需求的类型是可伸缩性容量,可用性,可靠性,可恢复性,数据完整性等,而事务更正,调整和取消,业务规则,认证要求,报告要求,管理功能,授权级别,审计跟踪,外部接口 ,历史数据管理,法律或法规要求是各种类型的功能要求。