您现在的位置是:影视综艺

,什么叫做需求分析

2020-10-13 05:55影视综艺

简介所谓"需求分析",是指解决的进细的分析,弄清楚问题的要求,包括需要输么数据,要得到什么结果,最后应输出什么。可以说,在软件工程当中的"需求分析"就是确定要计算机"做什么",要达到什么样的效果。可以说需 ...

所谓"需求分析",是指解决的进细的分析,弄清楚问题的要求,包括需要输么数据,要得到什么结果,最后应输出什么。可以说,在软件工程当中的"需求分析"就是确定要计算机"做什么",要达到什么样的效果。可以说需求分析是做系统之前必做的。

在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后,他们才能够分析和寻求新系统的解决方法。需求分析阶段的任务是确定软件系统功能。

-

下面是更多关于需求分析的问答

  所谓"需求分析",是指解决的问题进行详细的分析清楚问题的要求,需要输入什么数据,要得到什么结果,最后应输出什么。可以说,“需求分析”就是确定要计算机“做什么”。

  编辑本段特点

  需求分析是一项重要的工作,也是最困难的工作。该阶段工作有以下特点:

  (1)用户与开发人员很难进行交流

  在软件生存周期中,其它四个阶段都是面向软件技术问题,只有本阶段是面向用户的。需求分析是对用户的业务活动进行分析,明确在用户的业务环境中软件系统应该"做什么"。但是在开始时,开发人员和用户双方都不能准确地提出系统要"做什么?"。因为软件开发人员不是用户问题领域的专家,不熟悉用户的业务活动和业务环境,又不可能在短期内搞清楚;而用户不熟悉计算机应用的有关问题。由于双方互相不了解对方的工作,又缺乏共同语言,所以在交流时存在着隔阂。

  (2)用户的需求是动态变化的

  对于一个大型而复杂的软件系统,用户很难精确完整地提出它的功能和性能要求。一开始只能提出一个大概、模糊的功能,只有经过长时间的反复认识才逐步明确。有时进入到设计、编程阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑给软件开发带来困难。

  (3)系统变更的代价呈非线性增长

  需求分析是软件开发的基础。假定在该阶段发现一个错误,解决它需要用一小时的时间,到设计、编程、测试和维护阶段解决,则要花2.5、5、25、100倍的时间。

  因此,对于大型复杂系统而言,首先要进行可行性研究。开发人员对用户的要求及现实环境进行调查、了解,从技术、经济和社会因素三个方面进行研究并论证该软件项目的可行性,根据可行性研究的结果,决定项目的取舍。

  编辑本段方法

  ⑴首先调查组织机构情况

  包括了解该组织的部门组成情况,各部门的职能等,为分析信息流程作准备。

  ⑵然后调查各部门的业务活动情况

  包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么。

  ⑶协助用户明确对新系统的各种要求

  包括信息要求、处理要求、完全性与完整性要求。

  ⑷确定新系统的边界

  确定哪些功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。

  常用的调查方法有:

  ⑴跟班作业

  通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。

  ⑵开调查会

  通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。

  ⑶请专人介绍。

  ⑷询问

  对某些调查中的问题,可以找专人询问。

  ⑸设计调查表请用户填写

  如果调查表设计得合理,这种方法是很有效,也很易于为用户接受的。

  ⑹查阅记录

  即查阅与原系统有关的数据记录,包括原始单据、账簿、报表等。

  通过调查了解了用户需求后,还需要进一步分析和表达用户的需求。

  分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。

  编辑本段案例

  (1)需求分析报告的编写目的

  本需求分析报告的目的是规范化本软件的编写,旨在于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,同时提出了本铁路售票系统的软件开发过程,便于程序员与客户之间的交流、协作,并作为工作成果的原始依据,同时也表明了本软件的共性,以期能够获得更大范围的应用。

  (2)产品背景明细

  软件名称:铁路售票系统

  (3)缩写及缩略语

  铁路售票应用系统软件:基本元素为构成铁路售票及相关行为所必须的各种部分。

  需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。

  需求分析:包括提炼,分析和仔细审查已收集到的需求,以确保所有的风险承担者都明其含义并找出其中的错误,遗憾或其它不足的地方。

  模块的独立性:是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他的模块的接口是简单的。

  本工程描述:

  (1)软件开发的目标:

  完善目前铁路售票系统,使之能跟上时代的发展。同时通过实践来提高自己的动手能力。

  (2)应用范围:

  理论上能够实现于铁路部门的售票系统,其目的在于在原有的系统基础使得铁路售票实名化,以期实现完善日常生活中铁路售票的各种缺陷。 需求工作的难点不是重视程度,而是有效的方法。我读到过一篇文章受益匪浅,Iperson能力模型-需求分析师。可参考。 需求分析是指开发人员要准确理解的要求,进行细致的调析,将用户非的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。

需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。 强的,尽然那么详细 一。 确定对合要求

1. 功能需求

这方面的需求指定系统提供的服务。通过需求分析划分出系统必须完成的所有功能。

2. 性能需求

性能需求指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等方面的需求。

3. 可靠性和可用性需求

可靠性需求定量地指定系统的可靠性。

可用性与可靠性密切相关,它量化了用户可以使用系统的程度。

4. 出错处理需求

这类需求说明系统对环境错误应该怎样响应。例如,如果它接收到从另一个系统发来的违反协议格式的消息,应该做什么?注意,上述这类错误并不是由该应用系统本身造成的。

5. 接口需求

接口需求描述应用系统与它的环境通信的格式。常见的接口需求有:用户接口需求;硬件接口需求;软件接口需求;通信接口需求。

6. 约束

设计约束或实现约束描述在设计或实现应用系统时应遵守的限制条件。在需求分析阶段提出这类需求,并不是要取代设计(或实现)过程,只是说明用户或环境强加给项目的限制条件。常见的约束有:精度;工具和语言约束;设计约束;应该使用的标准;应该使用的硬件平台。

7. 逆向需求

逆向需求说明软件系统不应该做什么。理论上有无限多个逆向需求,我们应该仅选取能澄清真实需求且可消除可能发生的误解的那些逆向需求。

8. 将来可能提出的要求

应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求。

注意:举例让学生理解:这样做的目的是,在设计过程中对系统将来可能的扩充和修改预做准备,以便一旦确实需要时能比较容易地进行这种扩充和修改。

二 。分析系统的数据要求

任何一个软件系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远影响,因此,必须分析系统的数据要求,这是软件需求分析的一个重要任务。

分析系统的数据要求通常采用建立数据模型的方法(举例)。

三。 导出系统的逻辑模型

综合上述两项分析的结果可以导出系统的详细的逻辑模型,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。

四。 修正系统开发计划

根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。

Tags:需求分析,什么叫做需求分析,