首页 » 技术资讯 » 3.软件需求与软件需求规约:确保软件开发成功的基石(需求规约软件开发用户)

3.软件需求与软件需求规约:确保软件开发成功的基石(需求规约软件开发用户)

萌界大人物 2024-07-23 17:42:38 技术资讯 0

扫一扫用手机浏览

文章目录 [+]

软件需求是指用户对软件所需的功能、性能、界面、可靠性、安全性等方面的描述和规定。
软件需求是软件开发的基础,软件开发过程中的所有活动都围绕软件需求展开。
软件需求是软件系统的设计、开发、测试和维护的基础,是软件开发过程中最重要的环节之一。

软件需求规约是对软件需求的详细描述和规定。
软件需求规约是确保软件开发符合用户需求和标准的重要手段。
软件需求规约需要包括软件需求的详细描述、功能需求、性能需求、界面需求、可靠性需求、安全性需求等方面的规定。
软件需求规约是软件开发过程中的重要文档之一,是软件开发团队之间沟通的基础。

为了确保软件需求规约的正确性和完整性,软件需求规约需要满足以下要求:

3.软件需求与软件需求规约:确保软件开发成功的基石(需求规约软件开发用户) 3.软件需求与软件需求规约:确保软件开发成功的基石(需求规约软件开发用户) 技术资讯
(图片来自网络侵删)

1.清晰明确:软件需求规约需要清晰明确地描述软件需求和规定。

2.可追溯性:软件需求规约需要能够追溯到用户需求和标准。

3.软件需求与软件需求规约:确保软件开发成功的基石(需求规约软件开发用户) 3.软件需求与软件需求规约:确保软件开发成功的基石(需求规约软件开发用户) 技术资讯
(图片来自网络侵删)

3.可验证性:软件需求规约需要具有可验证性,能够验证软件功能是否符合用户需求和标准。

4.可变性:软件需求规约需要具有可变性,能够适应用户需求和标准的变化。

一、需求与需求获取

1.需求定义及其基本特性

一个需求是有关一个“要予构造”的陈述,描述了待开发产品/系统(或项)功能上的能力、性能参数或其他性质。

对于单一一个需求,必须具有五个基本特性:

(1)必要的,该需求是用户所要求的;

(2)无歧义的,该需求只能用一种方式解释;

(3)可测的,该需求是可进行测试的;

(4)可跟踪的,该需求可从一个开发阶段跟踪到另一个阶段;

(5)可测量的,该需求是可测量的。

2.功能需求和非功能需求

功能需求规约了系统或系统构件必须执行的功能。

非功能需求:分为性能需求、外部接口需求、设计约束和质量属性需求。

3.需求发现技术

初始发现需求的常用技术,如下所示。

名称

适用情况

成功条件

存在的风险

自悟

需求人员不能直接与用户进行交流,自悟就可能是一种切实可行的、比较有吸引力的方法

需求人员必须具有比最终用户还要多的应用领域和过程方面的知识,并具有丰富的想象力

无法验证发现的需求是否满足用户的要求,无法验证发现的需求是不是正确的

交谈

客户支持需求人员与最终用户进行有关系统需求的交流

依赖于:(1)需求人员是否具有“正确提出问题”的能力(2)回答人员是否具有“揭示需求本意”的能力

在交谈期间所获得的需求可能不断增长,或是以前没有认识到的合理需求的一种表现,或是“完美蠕行”病症的体现,可能导致超出项目成本和进度的限制

名称

适用情况

成功条件

存在的风险

观察

用户允许需求人员进入工作现场,并可进行观察,可与有关人员就有关问题进行交流

需求人员具有洞察事物本质的能力

(1)客户可能抵触这一观察(2)客户可能认为开发者在签约之前,就已经熟悉了他们的业务

小组会

各方组织在管理层面上重视需求工作,并有能力提供人力资源

会议组织得当,包括责权分明,参与会议的人员具有良好的需求发现能力,并允许发表不同的观点,以便很快地标识需求,揭示需求中存在的问题,并与客户达成共识

如果会议组织不到位或受到某些客观环境的限制,就有可能过多地召开这样的会议,并产生一些相互矛盾的需求

提炼

提炼方法是针对已经有了部分需求文档的情况。
依据产品的本来情况,可能有很多文档需要重审,以确定其中是否包含相关联的信息

已存在项目背景文档以及一些紧密相关的需求文档,并且需求人员具有很好的想象力和需求标识能力,包括熟悉相关的技术标准和法

与自悟方法一样,无法验证发现的需求是否正确

二、需求规约

1.需求规约定义及其基本特性

需求规约是一个软件项/产品/系统所有需求陈述的正式文档,它表达了一个软件产品/系统的概念模型。

需求规约一般要满足四个基本特性。

(1)重要性和稳定性程度:按需求的重要性和稳定性,对需求进行分级,例如,基本需求、可选需求和期望需求。

(2)可修改的:在不过多地影响其他需求的前提下,可以容易地修改一个单一需求。

(3)完整的:没有被遗漏的需求。

(4)一致的:不存在互斥的需求。

2.需求规约的表达

在实际工程中,需求规约的表达主要存在三种不同的风格。

(1)非形式化的需求规约。

(2)半形式化的需求规约。

(3)形式化的需求规约。

3.需求规约在软件开发中的作用

(1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现。

(2)对于项目的其余大多数工作,需求规约是一个管理控制点。

(3)对于产品/系统的设计,需求规约是一个正式的、受控的起始点。

(4)需求规约是创建产品验收测试计划和用户指南的基础,即基于需求规约一般还会产生另外两个文档-初始测试计划和用户系统操作描述。

总结

1、软件需求的基本性质包括【必要的】、【无歧义的】、【可测的】、【可跟踪的】、【可测量的】。

2、验证需求是不是歧义的,一般可采用【需求复审】。

3、软件需求可分为两大类:【功能需求和非功能需求】,其中,非功能需求可分为【性能需求】、【外部接口需求】、【设计约束】和【质量属性需求】。

4、设计约束需求包括:【法规政策】、【硬件限制】、【与其他应用的接口】、【并发操作】、【审计功能】、【控制功能】、【高级语言要求】、【握手协议】、【应用的关键程度】、【安全和保密】。

5、初始发现需求常用技术包括【自悟】、【交谈】、【观察】、【小组会】和【提炼】。

(1)自悟:需求人员把自己作为系统的最终用户,审视该系统并提出问题。

(2)交谈:需求人员通过提出问题/用户回答这一方式,直接询问用户需要的是一个什么样的系统。

(3)观察:客户可能抵触这一观察;客户可能认为开发者在签约之前,就已经熟悉了他们的业务。

6、需求规约一般需要满足4个基本性质:【重要性和稳定性程度】、【可修改的】、【完整的】、【一致的】。

7、在实际工程中,需求规约的表达主要存在3种不同的风格:【非形式化的需求规约】、【半形式化的需求规约】、【形式化的需求规约】。

总之,软件需求和软件需求规约是软件开发过程中非常重要的环节。
软件需求规约是确保软件开发符合用户需求和标准的重要手段,需要清晰明确地描述软件需求和规定,并具有可追溯性、可验证性和可变性。
只有通过有效的软件需求和软件需求规约,才能确保软件开发符合用户需求和标准。

参考教材:《软件工程》,机械工业出版社,王立福主编,2011年版。

标签:

相关文章