`
hulianwang2014
  • 浏览: 735945 次
文章分类
社区版块
存档分类
最新评论
  • bcworld: 排版成这样,一点看的欲望都没有了
    jfinal

非功能性需求

 
阅读更多

一、简介
非功能需求是产品必须具备的品质或者它将事情做到了多好,它们可以让产品有吸引力、易于使用、快速、可靠或者安全。比如可以利用非功能性需求来指定响应时间,或计算时达到的精确度、产品必须具有的某种特定外观、能被无法阅读的人士使用、遵守使用这类业务的法律。
这些属性的存在并不是因为它们是产品的基本活动,而是因为客户希望这些功能性活动以某种方式执行,并达到特定的品质。
非功能需求通常并不改变产品的功能。一般来说,不管增加多少的质量属性,功能性需求都会保持不变。也有更复杂的情况存在,有时候非功能需求的实现会为产品增加功能(举例:功能的存在是为了让产品具有期望的特征)。功能性需求是让产品工作的需求,非功能需求是为工作赋予特征的需求。所以说,功能性需求和非功能性需求是相辅相成密不可分的。
非功能性需求经常被忽略,因为它们不易被发现,发现后不易表达、实现以及测试。
其实我们很多时候都将非功能需求不自觉的融入到了功能需求中
Ipod播放器的成功在于它的易用性(基本没人仔细学习过它的使用说明书)、性能(硬盘空间很大、电池寿命长、连续播放时间长)、外观(很好看,很酷,能抓住青年人的心里),在市场上同类产品很多并且功能基本类似的情况下,ipod的成功,在于它很好的把握了非功能性需求。
非功能性需求的分类有很多种,参见国标,它是可以裁减的,不是一成不变的。

二、非功能需求的感性认识
我们日常工作时,是通过场景对用例进行理解,从而进一步分解成步骤和相关的业务规则,针对这些步骤和规则,可以确定功能性需求。非功能性需求就不太符合这种方式,因为某些非功能性需求可以直接与一想功能性需求联系起来,某些适用于整个用例,某些则覆盖整个产品,因此我们在获取非功能需求时不要局限在功能的框架下,要适时改变思路。
下面举个例子,让大家对什么是非功能需求有一个感性上的认识:
目标:我们要设计一个家庭用的水龙头
非功能需求:
A、 水龙头应该外观漂亮,看起来简单不复杂(感观)
B、 水龙头应该能够让手湿的人使用(易用性)
C、 转两圈就应该能达到最大的出水量(操作性)
D、当水温上升到70摄氏度的时候,水龙头能继续使用不烫手(操作性)
E、 能够让有经验的操作者在4分钟内完成例行的安装和维护(可维护性)
F、 水龙头没有尖锐的突出点,对幼儿没有伤害(安全性)
G、开关的转动方向应该符合当地居民的习惯(文化和政策性)
H、 水龙头符合国家标准(法律法规性)

三、非功能需求要做哪些事情
1、观感需求(界面需求):主要描述了对产品外观的期望、情绪和风格。这些需求规定了外观想要达到的目标,它和详细的界面设计还是有区别的,体现的是客户的感觉。作为web服务的一种的网银服务,应该相当重视观感需求,比如网站应该看起来很专业很有权威性、显的很高贵、很精美等。界面需求还包括对控件进行规范和对控件的使用范围进行一个规定等方面的内容。可以考虑借用一个原型来描述。
2、易用性需求:易用性会使产品提高符合用户习惯的能力以及其对使用的期望。它会对用户使用产品的生产效率、错误率以及用户对新产品的接收程度产生很大的影响。可以描述成“90%的最终用户在第一次使用网银系统时,能在45秒内成功的完成转账交易”等
3、执行需求:执行需求是指产品可以在给定的时间或者特定的精确度来执行某些任务,或者在一段时间内的极端状态值。在考虑执行需求时,可以从完成任务的速度、结果的精确度、容量、允许值的范围、单位时间内完成的任务数、资源的使用效率、两次故障间的平均屋故障时间、连续不停机时间等方面入手。它还应该包括对风险的控制内容。
4、操作和环境需求:主要描述产品使用的环境。分为软件环境和硬件环境方面内容。还应包括使用产品时必须要提供的合作软件的内容。
5、可维护性需求:在这项上,我的理解和理论上有一些偏差,有待讨论,呵呵。
6、安全性需求:安全性指产品消除潜在风险的能力和对风险的承受能力。包含保密性、可靠性和完整性三个子特性。保密性指的是数据不能被授权用户以外的任何人访问的能力。可靠性指的是授权用户可以不受阻止的访问数据、与其它软件的兼容的能力和产品的强壮度。完整性指的是安预期目标完成任务的能力。
7、文化和政策需求:这是一类特殊的需求,由于人的习惯、宗教、语言、禁忌或偏见,可能会导致产品不被接收。
8、法律需求:
四、非功能需求的验收
非功能需求的验收和测试是个比较头疼的事情,因为很多项目看上去是无法量化的。但是需求工程里明确说明“不能测量的需求就不是一项真的需求”、“需求都是能测试的”,所以应该尽量为这些非功能需求加上数字标准,从而对其进行量化。
例如:
非功能需求:产品具有很高的用户友好度
验收标准:在引入该产品的3个月内,60%的用户应该可以在45秒内用它来完成转账的任务,失败率控制在万分之一以内。

界面需求验收标准:60%的用户在第一次看见该产品的5秒内,就会意识到这是民生银行的网银。

执行需求验收标准:在95%的情况下,一般时段响应时间不超过1。5秒,高峰时段不超过4秒

注:提出非功能需求,不要提出解决方案,提需求不是做设计。

分享到:
评论

相关推荐

    非功能性需求表格

    根据给定的信息,“非功能性需求表格”主要涉及的是在需求分析阶段如何定义、记录和管理非功能性需求。本文将深入探讨非功能性需求的概念、重要性、分类以及如何通过表格的形式来管理和跟踪这些需求。 ### 一、非...

    关于非功能性需求说明书

    非功能性需求是软件开发中不可或缺的一部分,它们定义了软件产品的质量属性,决定了软件在实际环境中的表现和用户体验。这些需求不直接对应于软件的具体功能,而是关乎系统如何运作、如何适应变化以及如何确保长期的...

    系统的功能性需求与非功能性需求.doc

    在软件工程领域,需求分析是一个关键的起始步骤,它包括识别和记录系统应该做什么的功能性需求,以及系统应该如何表现的非功能性需求。 首先,我们来看功能性需求。功能性需求主要描述了系统必须执行的操作,即系统...

    软件架构的非功能性需求指标和区域化支持.pdf

    软件架构的非功能性需求指标和区域化支持 软件架构的非功能性需求指标是软件架构中一个重要的组成部分,它们直接影响软件系统的性能、可靠性、安全性等方面。非功能性需求是软件架构师在设计软件系统时需要考虑的...

    2014-2-论非功能性需求对企业应用架构设计的影响.pdf

    "论非功能性需求对企业应用架构设计的影响" 在软件开发中,非功能性需求是指软件产品的性能、可用性、安全性、可修改性和易用性等方面的要求。这些要求对软件产品的质量和功能性需求定义产生了重要的影响。本文将...

    系统的功能性需求与非功能性需求.docx

    系统的功能性需求与非功能性需求 本文档旨在明确客户的基本需求,更好地完成对客户需求的了解,并量化和明晰本系统的工作量和工作进度。文档范围包括产品售后服务系统项目的介绍、面向的用户群体、系统的功能性需求...

    系统的功能性需求与非功能性需求.pdf

    系统的功能性需求与非功能性需求 系统的功能性需求是指系统必须具备的功能特性,以满足用户的需求。这些需求通常是明确的、可衡量的、相关的、可行的、时间-bound的、定义明确的和可追溯的。在本文档中,我们将讨论...

    非功能性需求,不要成为项目的坑

    我们在审批case的时候,最容易忽略的部分就是非功能性需求。非功能性需求分析不透彻,或者被忽略,常常给项目埋下巨大无比的坑。这个坑,想必大家都或多或少遇到过吧。比如项目要交付的时候,交互或需求不明确或者有...

    需求分析-运行时非功能性需求

    需求分析-运行时非功能性需求 在软件开发中,需求分析是至关重要的一步骤。其中,非功能性需求是对系统性能、可用性、安全性、可靠性以及可管理性等方面的描述。下面,我们将对这五个方面进行详细的解释。 性能:...

    图书管理系统毕业论文

    2.4系统的非功能性需求 5 2.4.1用户界面需求 5 2.4.2软硬件环境需求 5 2.4.3软件质量需求 5 三、可行性分析报告 5 3.1技术可行性 5 3.2人员可能性 5 3.3时间、设备可能性 5 3.4系统工作量 5 3.5代码工作量 5 3.6文档...

    学校学生宿舍管理系统需求规格说明书(教学用例)

    在编写目标方面,该说明书旨在为开发团队提供一个清晰的开发方向,明确系统的功能性和非功能性需求,以便进行合理的开发工作,并为系统的后续开发和维护提供参考。 系统的主要目标是为宿舍管理部门提供一个高效、...

    基于智能手机研发非功能需求与传统软件工程非功能需求分析比较

    智能手机的性能需求涉及到处理器速度、内存容量和响应时间,安全性需求包含数据加密、隐私保护和防病毒功能,易用性需求强调直观的操作界面和良好的人机交互,可靠性需求则关注软件的稳定性和故障恢复机制。...

    非功能性需求(NFR)的分析和识别方法.ppt

    NFR在软件产品研发中的重要性、NFR分析和识别的目标、NFR分析和识别的方法、NFR在项目周期中的行为和参与角色

    程序开发功能需求文档模板.docx

    功能性需求描述软件必须实现的具体功能,而非功能性需求涵盖性能、安全性、可维护性等方面。 5. 接口需求 定义软件与其他系统、硬件、用户或其他软件的交互方式,包括数据交换格式、通信协议等。 6. 系统行为 通过...

Global site tag (gtag.js) - Google Analytics