软件需求分析
需求分析就是对客户提出的“要求”或者“需求”进行深入细致地调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么,为系统设计、系统完善和系统维护提供依据。
需求分析是项目计划阶段非常重要的环节,该环节决定了需要“实现什么”,为下一步如何去“实现”提供了明确的方向。
进行需求分析需要做到以下几点:
(一)需求获取:在准备阶段,我们首先要确定需求获取的目标及范围,根据你的目标来选择对应的方式获取需求。
(二)需求分类:一般情况下,我们会根据对象的不同,将需求分为业务需求、用户需求、功能需求等。
(三)需求筛选:有些需求是伪需求,有些需求则不具备实现价值,我们可以通过真实性、价值性、可行性三个维度来筛选需求,过滤掉虚假的、不可行的、没有价值、价值不大或投入产出比不理想的需求。
(四)需求提炼:对剩下的需求进行提炼,目的在于从获取的表面需求中提炼出客户的本质需求。找出“为什么要做”比“做什么”更重要。
(五)需求优先级排序:挖掘到客户的真实目的后,我们需要根据不同维度的需求归类方法,如KANO模型分析法、投入产出比ROI等,对其进行归纳整理并排出优先级,帮助产品有条理地安排开发秩序,避免盲目排序。
(六)产出需求文档:通过以上的分析,我们需要将收集到的需求进行分析、汇总、归类,输出产出需求文档,为接下来的工作做好铺垫。
以上是对需求分析的一些理解和思路,做好需求分析工作之后,就可以对可实现的需求进行落地方案的跟进。
软件需求的分析方法
软件需求分析方法大体分为如下四类:结构化方法、面向对象方法、面向控制方法和面向数据方法。限于篇幅,将主要从结构化方法和面向对象方法以及RUP三个方面进行简要的探讨。 面向对象(Object Oriented, OO)的方法把分析建立在系统对象以及对象间交互的基础之上,使得我们能以3个最基本的方法框架——对象及其属性、分类结构和集合结构来定义和沟通需求。面向对象的问题分析模型从3个侧面进行描述,即对象模型(对象的静态结构)、动态模型(对象相互作用的顺序)和功能模型(数据变换及功能依存关系)。需求工程的抽象原则、层次原则和分割原则同样适用于面向对象方法,即对象抽象与功能抽象原则是一样的,也是从高级到低级、从逻辑到物理,逐级细分.每一级抽象都重复对象建模(对象识别)一动态建模(事件识别)一功能建模(操作识别)的过程,直到每一个对象实例在物理(程序编码)上全部实现为止。
面向对象需求分析(OORA)利用一些基本概念来建立相应模型,以表达目标系统的不同侧面。尽管不同的方法所采用的具体模型不尽相同,但都无外乎用如下五个基本模型来描述软件需求:
整体—部分模型:该模型描述对象(类)是如何由简单的对象(类)构成的。将一个复杂对象(类)描述成一个由交互作用的若干对象(类)构成的结构的能力是OO途径的突出优点。该模型亦称聚合模型。
分类模型:分类模型描述类之间的继承关系。与聚合关系不同,它说明的是一个类可以继承另一个或另一些类的成分,以实现类中成分的复用。
类—对象模型:分析过程必须描述属于每个类的对象所具有的行为,这种行为描述的详细程度可以根据具体情况而定。既可以只说明行为的输入、输出和功能,也可以采用比较形式的途径来精确地描述其输入、输出及其相应的类型甚至使用伪码或小说明的形式来详细刻画。
对象交互模型:一个面向对象的系统模型必须描述其中对象的交互方法。如前所述,对象交互是通过消息传递来实现的。事实人对象交互也可看作是对象行为之间的引用关系。因此,对象交互模型就要刻画对象之间的消息流。对应于不同的详细程度,有不同的消息流描述分析,分析人员应根据具体馆况而选择。一般地,一个详细的对象交互模型能够说明对象之间的消息及其流向,并且同时说明该消息将激活的对象及行为。一个不太详细的对象交互模型可以只说明对象之间有消息,并指明其流向即可。还有一种状况就是介于此两者之间。
状态模型:在状态模型中,把一个对象看作是一个有限状态机,由一个状态到另一状态的转变称作状态转换。状态模型将对象的行为描述成其不同状态之间的通路。它也可以刻画动态系统中对象的创建和废除,并称由对象的创建到对象的废除状态之间的退路为对象的生存期。
状态模型既可以用状态转换因的图形化手段,又可用决策表或称决策矩阵的形式来表。 RUP(Rational Unified Process)是Rational公司开发和维护的过程产品。RUP是工程化的软件开发过程,它提供了在开发机构中分派任务和责任的纪律化方法。RUP不仅仅是一个简单的过程,而是一个通用的过程框架,可用于各种不同类型的软件系统、各种不同的应用领域、各种不同类型的组织、各种不同的功能级别以及各种不同的项目规模。RUP的突出特点可以由以下三个关键词来体现——用例驱动、以构架为中心、迭代和增量的。这些是RUP所特有的,也是同等重要的。构架提供了一种结构来指导迭代过程中的工作,而用例则确定了目标井驱动每次迭代的工作。
进行需求分析的基础是要获得用户的需要,为了完成这一工作,必须建立业务模型,通过描述业务规则、业务逻辑,明确业务过程并对其进行规范、优化。对于一个系统,在建立业务模型时,应从3个方面来描述其特性:功能、行为、数据,对应于这些特性。 基于上述分析可知,结构化分析方法与面向对象分析方法的区别主要体现在两个方面:
* 将系统分解成于系统的方式不同。前者将系统描述成一组交互作用的处理,后者则描述成一组交互作用的对象。
* 子系统之间的交互关系的描述方式不一样。前者加工之间的交互是通过不太精确的数据流来表示的,而后者对象之间通过消息传递交互关系。
因此,面向对象软件需求分析的结果能更好地刻画现实世界,处理复杂问题,对象比过程更具有稳定性,便于维护与复用。
软件需求分析4个步骤
软件需求分析的内容是
如何进行软件需求分析
如何进行软件需求分析
软件需求分析免费下载
链接:https://pan.baidu.com/s/1qNBwqvbRS5ziBSIeanLQAQ
需求分析也称为软件需求分析、系统需求分析或需求分析工程等,是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。
本文发布于:2023-02-28 18:56:00,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/zhishi/a/167759065049456.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:软件需求分析(软件需求分析报告范文).doc
本文 PDF 下载地址:软件需求分析(软件需求分析报告范文).pdf
留言与评论(共有 0 条评论) |