第3章 需求工程与需求分析.ppt

第3章 需求工程与需求分析.ppt

ID:61960608

大小:983.00 KB

页数:115页

时间:2020-02-25

第3章  需求工程与需求分析.ppt_第1页
第3章  需求工程与需求分析.ppt_第2页
第3章  需求工程与需求分析.ppt_第3页
第3章  需求工程与需求分析.ppt_第4页
第3章  需求工程与需求分析.ppt_第5页
资源描述:

《第3章 需求工程与需求分析.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第3章需求工程与需求分析13.1基本的软件需求2基本的软件需求软件项目中百分之四十至百分之六十的问题都是在需求分析阶段埋下的“祸根”。可许多组织仍在那些基本的项目功能上采用一些不合规范的方法,这样导致的后果便是一条鸿沟(期望差异)—开发者开发的与用户所想得到的软件存在着巨大期望差异。3基本的软件需求在软件工程中,所有的风险承担者(stakeholder)都感兴趣的就是需求分析阶段。这些风险承担者包括客户、用户、业务或需求分析员(负责收集客户需求并编写文档,以及负责客户与开发机构之间联系沟通的人)、开发人员、测试人员、用户文档编写者、项目管理者和客户管理者。这部

2、分工作若处理好了,能开发出很出色的产品,同时会使客户感到满意,开发者也倍感满足、充实。若处理不好,则会导致误解、挫折、障碍以及潜在质量和业务价值上的威胁。因为需求分析奠定了软件工程和项目管理的基础。43.1.1软件需求的定义⑴用户解决问题或达到目标所需的条件或权能(Capability)。⑵系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能。⑶一种反映上面⑴或⑵所描述的条件或权能的文档说明。53.1.1软件需求的定义1.一些关于“需求”的解释需求的关键的问题是一定要编写需求文档。如果只有一堆邮件、贴条、会谈过几次或一些零碎的对话,你就确

3、信你已明白用户的需求,那完全是自欺欺人。许多的需求分析专家给出了不同形式的需求定义,但从这些不同形式的定义不难发现:并没有一个清晰、毫无二义性的“需求”术语存在,真正的“需求”实际上在人们的脑海中。任何文档形式的需求(例如:需求规格说明)仅是一个模型,一种叙述(Lawrence1998)。我们需要确保所有项目风险承担者在描述需求的那些名词的理解上务必达成共识。63.1.1软件需求的定义2.需求的层次下面这些定义是需求工程领域中常见术语的定义说明。软件需求包括三个不同的层次——业务需求、用户需求和功能需求(包括非功能需求)。⑴业务需求(businessrequi

4、rement)反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。⑵用户需求(userrequirement)文档描述了用户使用产品必须要完成的任务,这在使用实例(usecase)文档或方案脚本(scenario)说明中予以说明。⑶功能需求(functionalrequirement)定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。所谓特性(feature)是指逻辑上相关的功能需求的集合,给用户提供处理能力并满足业务需求。73.1.1软件需求的定义83.1.2需求的开发和管理需求中名词术语的混淆

5、将导致对科目(规范,discipline)叫法的不一致。一些作者把整个需求范围称之为“需求工程”,另一些则称之为“需求管理”。软件专家认为可把整个软件需求工程研究领域划分为需求开发和需求管理两部分更合适:93.1.2需求的开发和管理需求开发可进一步分为:需求获取(elicitation)、分析(analysis)、编写规格说明(specification)和验证(verification)四个阶段。需求开发活动包括以下几个方面:⑴确定产品所期望的用户类。⑵获取每个用户类的需求。⑶了解实际用户任务和目标以及这些任务所支持的业务需求。⑷分析源于用户的信息以区别用户

6、任务需求、功能需求、业务规则、质量属性、建议解决方法和附加信息。103.1.2需求的开发和管理⑸将系统级的需求分为几个子系统,并将需求中的一部份分配给软件组件。⑹了解相关质量属性的重要性。⑺商讨实施优先级的划分。⑻将所收集的用户需求编写成规格说明和模型。⑼评审需求规格说明,确保对用户需求达到共同的理解与认识,并在整个开发小组接受说明之前将问题都弄清楚。113.1.2需求的开发和管理需求管理需要“建立并维护在软件工程中同客户达成的契约”(CMU/SEI1995)。这种契约都包含在编写的需求规格说明与模型中。通常的需求管理活动包括:⑴定义需求基线(迅速制定需求文档

7、的主体)。⑵评审提出的需求变更、评估每项变更的可能影响从而决定是否实施它。⑶以一种可控制的方式将需求变更融入到项目中。⑷使当前的项目计划与需求一致。⑸估计变更需求所产生影响并在此基础上协商新的承诺(约定)。⑹让每项需求都能与其对应的设计、源代码和测试用例联系起来以实现跟踪。⑺在整个项目过程中跟踪需求状态及其变更情况。123.1.2需求的开发和管理需求开发和需求管理之间的区别133.1.3需求工程的作用1.支持项目的开发。需求工程过程是软件开发阶段的前提和基础。2.支持测试和验证需求规格说明书将为项目测试和验证提供基准,可以用来检查设计和验证系统。3.支持维护维

8、护阶段的工作同以下几个方面紧密联系:⑴

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。