1. 怎么编写用户业务需求分析
需求分析 格式1 引言1.1 编写目的 【说明】目标:对用户的需求进行收集、整理与分析,弄清楚系统究竟要 “干什么”及“由谁干”,并用合乎规范的文字及图表予以描述。
不需要说明“怎么干”,因为那是设计阶段的事情。有关文字与图表应尽量让用户便于理解。
预期读者:用户方的相关业务人员、双方的开发人员和系统维护人员。 作用:实现开发方与用户方的双向沟通,是把业务需求计算机化的关键步骤。
为下一阶段的概要设计工作提供依据。当用户的需求发生变更时,应添写补充说 明;如变动过大可形成新版本。
软件需求说明(Software Requirements Specification)的主要作用为: 为用户方与开发方建立共同协议奠定基础。 提高开发效率、强化进度控制。
为项目的的评测与验收提供依据。 便于移植。
作为系统不断提高的基础。1.2 编写背景1.2.1 系统名称及版本号 【说明】形如“网银三期***系统V3.0.0”。
其中,版本号的格式为“XX.XX.XX”,X为阿拉伯数字,左“0”可省略。1.2.2 使用者 【说明】适应对象和范围。
主要指预期读者,也供有关领导审阅。1.2.3 与其它系统的关系 【说明】在用户现有的及预期的整个应用系统中,给本系统准确定位。
用示意图及相应的文字予以说明。2 用户的基本情况2.1 系统建设背景 【说明】项目背景与依据、现有基础、项目规模、预期目标等。
可繁可简,格式自定。2.2 组织机构与职能 【说明】用层次示意图及相应文字表示(如果需要开发的系统与部门没有直接依赖关系此节可省略,本章随后的小节数将顺次减1),加注:组织机构的层次数、数目、各个机构的职能简述。
2.3 用户特点 【说明】所在行业特征、操作人员与系统维护人员的数量、学历与水平、数据量大小、使用频度等。2.4 用户业务分析 【说明】在本部分,希望系统分析人员能够对用户业务现状进行分析、对用户对本系统的未来发展方向作出一定的预测等。
以便设计人员对业务及其发展有所了解,增强系统设计的前瞻性。2.5 计算机应用现状 【说明】可繁可简,格式自定。
3 业务需求3.1 项目概述 【说明】 第一、指明项目的开发意图、应用目标(总目标、分期目标)、作用范围、预期效益等。第二、指明在输入信息转变为输出信息的过程中,为了满足用户的业务需求,应用软件必须完成的基本功能(采用自然语言叙述)。
但此时不要求对基本功能进行分解。第三、如果本系统与其他系统相关联,则应确定本系统的基本功能边界(可采用图示+文字说明的形式,用蓝色标示出本系统的功能,用绿色标示出相关系统的功能)。
3.2 约束条件3.2.1 费用约束 【说明】 预计投资金额概算、其中软硬件费用的比例、资金分期到位计划。3.2.2 进度约束 【说明】预计完成日期、分步实施期限。
3.2.3 其它约束 【说明】场地面积限制、通信设施基础、其它干扰因素。 注意:任何计算机系统都不是包罗万象的;用户自身的能力也是有限的。
轻诺必寡信。故应特别指出:由于哪些条件的约束,本系统不能满足哪些业务需求与系统需求。
本章主要介绍项目的总体业务功能,要求站在客户的角度把握系统需求.3.3 性能需求 【说明】依据ISO9000标准及我们的理解,下面列出了软件的6组性能,共涵盖21个子特性。这些性能/子特性的相对重要性并不是等同的。
编写时,可以基于具体项目的实际需求,对下述标题或内容进行取舍/侧重。事实上不可能做到面面俱到,往往要作出某些折中。
本节说明系统在性能方面的预期目标,不要求提供实现上述目标的具体实施方案。3.3.1 功能性 【说明】指与软件实现的各项功能及其指定性质有关的一组属性。
这些功能都是满足规定需求和潜在需求所必需的。它包括5个子特性:适用性:与指定业务所需各项功能的实现及其适合程度有关的一些软件属性。
准确性:与保证正确(或符合要求的)结果(或效果)有关的一些软件属性。互操作性:与软件同一些指定系统交互作用能力有关的一些软件属性。
复合性:使软件遵守相关的标准、约定/法律或类似规定有关的一些软件属性。保密安全性:与针对蓄意(或无意)而非法存取程序和数据的预防能力有关的一些软件属性。
这里主要指的是保护软件的要素,旨在防止各种非法访问、修改、破坏、泄密及感染计算机病毒等。3.3.2 可靠性 【说明】指在规定的条件和期限内,与软件保持其性能水平有关的一组软件属性。
成熟性:与软件故障引起的失误频率有关的一些软件属性。容错性:在软件故障发生或其规定界面被破坏的情况下,与软件仍能保持规定性 能水平的能力有关的一些软件属性。
可恢复性:在失效的情况下、在限定的期限和强度范围内,与软件重建性能水平 并恢复直接受影响的数据的能力有关的一些软件属性。3.3.3 易使用性 【说明】指与规定用户(或潜在用户)使用软件所需的努力程度、对这种使用所做的评估有关的一组软件属性。
它包括3个子特性:易理解性:与用户为理解其逻辑概念及适用范围需做的努力有关的一些软件属性。易学习性:与用户学习其应用(例如操作控制、输入、输出)需做的努力有关的一些软件属性。
易操作性:与用户操作及运行控制需做的努力有关的。
2. 如何写业务需求
需求分析是一项重要的工作,也是最困难的工作。该阶段工作有以下特点:
(1)用户与开发人员很难进行交流
在软件生存周期中,其它四个阶段都是面向软件技术问题,只有本阶段是面向用户的。需求分析是对用户的业务活动进行分析,明确在用户的业务环境中软件系统应该"做什么"。但是在开始时,开发人员和用户双方都不能准确地提出系统要"做什么?"。因为软件开发人员不是用户问题领域的专家,不熟悉用户的业务活动和业务环境,又不可能在短期内搞清楚;而用户不熟悉计算机应用的有关问题。由于双方互相不了解对方的工作,又缺乏共同语言,所以在交流时存在着隔阂。
(2)用户的需求是动态变化的
对于一个大型而复杂的软件系统,用户很难精确完整地提出它的功能和性能要求。一开始只能提出一个大概、模糊的功能,只有经过长时间的反复认识才逐步明确。有时进入到设计、编程阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑给软件开发带来困难。
(3)系统变更的代价呈非线性增长
需求分析是软件开发的基础。假定在该阶段发现一个错误,解决它需要用一小时的时间,到设计、编程、测试和维护阶段解决,则要花2.5、5、25、100倍的时间。
因此,对于大型复杂系统而言,首先要进行可行性研究。开发人员对用户的要求及现实环境进行调查、了解,从技术、经济和社会因素三个方面进行研究并论证该软件项目的可行性,根据可行性研究的结果,决定项目的取舍。
编辑本段方法
⑴首先调查组织机构情况
包括了解该组织的部门组成情况,各部门的职能等,为分析信息流程作准备。
⑵然后调查各部门的业务活动情况
包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么。
⑶协助用户明确对新系统的各种要求
包括信息要求、处理要求、完全性与完整性要求。
⑷确定新系统的边界
确定哪些功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。
常用的调查方法有:
⑴跟班作业
通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。
⑵开调查会
通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。
⑶请专人介绍。
⑷询问
对某些调查中的问题,可以找专人询问。
⑸设计调查表请用户填写
如果调查表设计得合理,这种方法是很有效,也很易于为用户接受的。
⑹查阅记录
即查阅与原系统有关的数据记录,包括原始单据、账簿、报表等。
通过调查了解了用户需求后,还需要进一步分析和表达用户的需求。
分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。
编辑本段案例
(1)需求分析报告的编写目的
本需求分析报告的目的是规范化本软件的编写,旨在于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,同时提出了本铁路售票系统的软件开发过程,便于程序员与客户之间的交流、协作,并作为工作成果的原始依据,同时也表明了本软件的共性,以期能够获得更大范围的应用。
(2)产品背景明细
软件名称:铁路售票系统
(3)缩写及缩略语
铁路售票应用系统软件:基本元素为构成铁路售票及相关行为所必须的各种部分。
需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。
需求分析:包括提炼,分析和仔细审查已收集到的需求,以确保所有的风险承担者都明其含义并找出其中的错误,遗憾或其它不足的地方。
模块的独立性:是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他的模块的接口是简单的。
本工程描述:
(1)软件开发的目标:
完善目前铁路售票系统,使之能跟上时代的发展。同时通过实践来提高自己的动手能力。
(2)应用范围:
理论上能够实现于铁路部门的售票系统,其目的在于在原有的系统基础使得铁路售票实名化,以期实现完善日常生活中铁路售票的各种缺陷。
3. 需求分析具体要怎么写
方法⑴首先调查组织机构情况
包括了解该组织的部门组成情况,各部门的职能等,为分析信息流程作准备。
⑵然后调查各部门的业务活动情况
⑶协助用户明确对新系统的各种要求
包括信息要求、处理要求、完全性与完整性要求。
⑷确定新系统的边界
常用的调查方法有:⑴跟班作业通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。
⑵开调查会通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。
⑶请专人介绍。
⑷询问对某些调查中的问题,可以找专人询问。
⑸设计调查表请用户填写
如果调查表设计得合理,这种方法是很有效,也很易于为用户接受的。
⑹查阅记录即查阅与原系统有关的数据记录,包括原始单据、账簿、报表等。
通过调查了解了用户需求后,还需要进一步分析和表达用户的需求。
分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。
4. 需求分析如何写啊
在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围和定义时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。
在软件工程的历史中,很长时间里人们一直认为需求分析是整个软件工程中最简单的一个步骤,但在过去十年中越来越多的人认识到它是整个过程中最关键的一个过程。假如在需求分析时分析者们未能正确地认识到顾客的需要的话,那么最后的软件实际上不可能达到顾客的需要,或者软件无法在规定的时间里完工。
5. 如何进行业务需求分析
业务需求分析是明确企业的哪些业务要用到网络以及对网络功能的要求(如带宽、QoS、网络布局等)。
其实,这就是一个业务需求初步收集的过程。作为网络规划者,你要一一记下了,然后确定相关的关键人物。
再进行详谈,确认与网络有关的所有业务项目。只有把与网络有关的业务搞清楚了,你才能确定他们都需要哪些网络功能,需要采用什么样的网络架构,应该购买什么样的设备。
也只有你充分的了解了他们业务的特点,你才能确定他们对网络的可靠性、可用性、安全性等性能参数的要求;才能确定哪些业务需要走局域网流量,那些需要连接Internet,并准确的预测其增长率对网络的要求。参考附件表格。
6. 如何写业务需求
需求分析是一项重要的工作,也是最困难的工作。该阶段工作有以下特点:
(1)用户与开发人员很难进行交流
在软件生存周期中,其它四个阶段都是面向软件技术问题,只有本阶段是面向用户的。需求分析是对用户的业务活动进行分析,明确在用户的业务环境中软件系统应该"做什么"。但是在开始时,开发人员和用户双方都不能准确地提出系统要"做什么?"。因为软件开发人员不是用户问题领域的专家,不熟悉用户的业务活动和业务环境,又不可能在短期内搞清楚;而用户不熟悉计算机应用的有关问题。由于双方互相不了解对方的工作,又缺乏共同语言,所以在交流时存在着隔阂。
(2)用户的需求是动态变化的
对于一个大型而复杂的软件系统,用户很难精确完整地提出它的功能和性能要求。一开始只能提出一个大概、模糊的功能,只有经过长时间的反复认识才逐步明确。有时进入到设计、编程阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑给软件开发带来困难。
(3)系统变更的代价呈非线性增长
需求分析是软件开发的基础。假定在该阶段发现一个错误,解决它需要用一小时的时间,到设计、编程、测试和维护阶段解决,则要花2.5、5、25、100倍的时间。
因此,对于大型复杂系统而言,首先要进行可行性研究。开发人员对用户的要求及现实环境进行调查、了解,从技术、经济和社会因素三个方面进行研究并论证该软件项目的可行性,根据可行性研究的结果,决定项目的取舍。
编辑本段方法
⑴首先调查组织机构情况
包括了解该组织的部门组成情况,各部门的职能等,为分析信息流程作准备。
⑵然后调查各部门的业务活动情况
包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么。
⑶协助用户明确对新系统的各种要求
包括信息要求、处理要求、完全性与完整性要求。
⑷确定新系统的边界
确定哪些功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。
常用的调查方法有:
⑴跟班作业
通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。
⑵开调查会
通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。
⑶请专人介绍。
⑷询问
对某些调查中的问题,可以找专人询问。
⑸设计调查表请用户填写
如果调查表设计得合理,这种方法是很有效,也很易于为用户接受的。
⑹查阅记录
即查阅与原系统有关的数据记录,包括原始单据、账簿、报表等。
通过调查了解了用户需求后,还需要进一步分析和表达用户的需求。
分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。
编辑本段案例
(1)需求分析报告的编写目的
本需求分析报告的目的是规范化本软件的编写,旨在于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,同时提出了本铁路售票系统的软件开发过程,便于程序员与客户之间的交流、协作,并作为工作成果的原始依据,同时也表明了本软件的共性,以期能够获得更大范围的应用。
(2)产品背景明细
软件名称:铁路售票系统
(3)缩写及缩略语
铁路售票应用系统软件:基本元素为构成铁路售票及相关行为所必须的各种部分。
需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。
需求分析:包括提炼,分析和仔细审查已收集到的需求,以确保所有的风险承担者都明其含义并找出其中的错误,遗憾或其它不足的地方。
模块的独立性:是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他的模块的接口是简单的。
本工程描述:
(1)软件开发的目标:
完善目前铁路售票系统,使之能跟上时代的发展。同时通过实践来提高自己的动手能力。
(2)应用范围:
理论上能够实现于铁路部门的售票系统,其目的在于在原有的系统基础使得铁路售票实名化,以期实现完善日常生活中铁路售票的各种缺陷。
7. 如何做需求分析
一、我们应当如何做需求分析 需求分析不是一蹴而就的,它应当贯穿整个开发周期,不断的分析确认的过程。
这就是敏捷开发倡导的需求反馈。敏捷开发认为,需求分析阶段不可能解决所有的需求问题,因此在设计、开发、测试,直到最终交付客户,这整个过程都应当不停地用开发的成果与客户交流,及时获得反馈。
只有这样才能及时纠正需求理解的偏差,保证项目的成功。二、我们应当怎样做需求调研1.初识。
我们对客户提出的需求进行深入理解以后,运用我们专业知识,提出比客户的原始需求更加合理、可操作的解决方案,让客户感觉你说的正是他们想要的。如果能够这样,客户不仅能够欣然接收你提出的方案,而且会感觉你非常专业,你在客户心目中的形象也会无形中提高,使你有更多的机会提出有利于开发的可行方案,降低开发的风险。
这毫无疑问会形成一个良性循环,但要做到这一点并不容易,毫无疑问,在与客户接触初期的表现起到了极其关键的作用。(1)高层领导关心的是宏观的目标,因此软件研发目标、宏观统计报表、决策支持功能,我们应该怎样做需求分析,应当与高层领导谈。
(2)中层领导关心的是具体的效益,即软件给各个部门信息化管理方面带来的效益,因此,中层领导是各项业务流程、功能模块的需求决策者。他们关心功能的定义、业务流转的衔接、查询报表的设计,但不太关心一些具体的操作,以及一些具体业务流程的细节。
(3)基层人员是每一项业务流程的操作者,也是软件今后真正的使用者。他们是真正了解你所要开发的软件的业务需求的领域专家,是你进行需求调研的重点对象。
但是,基层人员往往受到自身视野的局限,可能只清楚自己工作涉及的十分狭小的一个范围,因此我们需要努力寻找那些业务涉及面广,经验丰富,又有一定大局观的真正的专家。另外 ,他们就是软件今后真正的使用者,让他们参加,会让他们成为今后软件推行的忠实支持者,对其他操作人员的指导者,益处多多。
而他们关心的则是每项操作的细节。俗话说:万事开头难。
如果你在项目开始的时候总感觉千头万绪不知如何着手,在这里我给大家的三点建议:1)树立良好的职业威信;2)进行详细角色分析,将与会各方代表对号入座;3)从宏观上制订目标与方案。随后的工作,就是与各方代码建立联系,逐一拜访他们,将需求调研工作一步一步进行下去。
2.拜访。需求调研不是一蹴而就的事情,是一件持续数月甚至数年的工作(假如项目还有后期维护) 。
在这漫长的时间里,我们需要依靠客户这个群体的帮助,一步一步掌握真实可靠的业务需求 。不仅如此,技术这东西总有不如意甚至实现不了的地方,我们需要客户的理解与包容,这都需要有良好的客户关系。
尽管如此,我们也不能总是期望客户中的所有人都能与我们合作,很多项目都不可避免地存在阻碍项目开展的人。3.研讨会。
(1)由于业务人员自身的局限 ,不可能对所有业务领域的细节全面掌握,往往总是有自己熟悉的部分,也有自己不熟悉的部 分。划分业务组,可以让业务人员分别在自己最熟悉的业务范围内参与讨论,可以有效提高业务讨论的质量;(2)集中式的业务研讨形式和分散式的业务研讨形式;(3)有效抑制个性化差异、分模块组织专项研讨会。
4.业务研讨 在需求分析过程中,客户存在的最大问题就是提不出正确的需求,这表现为几种形式:(1)由于对软件不了解,客户提不出需求,不知道软件最终会做成什么样子。这类客户在需求讨论过程中,往往只能描述目前自己手工管理的方式是怎样的,不知道计算机会怎样管理。
(2)能提出一些业务需求,但当软件做出来摆在自己面前时,需求就变了。这类客户,他们能熟练使用电脑,对信息化管理是清楚的。
他们提出的业务需求从整体上应当是八九不离十的 。但是,由于没有实物,在软件中的一些具体操作并没有完全想清楚。
(3)能非常详细地提出业务需求,甚至有时候该怎么做的提出来了。这类客户,参与过很多软件信息化建设,甚至有些还是软件开发的半专业人士。
但是他们提出的业务需求过于具体 ,甚至怎样实现都说出来了,但这些有时候不是最佳设计方案、可能在技术上难于实现,甚至有些就是过于理想化而不可实现。 解决办法:业务领域分析:客户现有的业务流程是什么样的,都有些什么操作?客户在业务中都有些什么事物,什么专用名词,都是怎样定义的,相互之间的关系是什么?客户在每一项操作中的目的是什么,为什么要这样做,他们制作的手工报表都说明了什么问 题?(1)我们做需求分析,眼界不能仅仅停留在软件本身,应当更开阔一些,应当扩展到跟这个业务有关的那些领域知识中。
(2)在客户提出的所有原始需求中那些与业务实现有关的需求都是无效的需求,它们仅仅只能作为我们的一个参考。(3)还有一些是技术难于实现或者根本就无法实现的需求,我们应当耐心地说服和引导客户,并给他提出一个更加合理的方案。
(4)需求分析不是一种简单的你说我记的收集活动,而是在大量业务分析与技术可行性分析基础上的分析活动。只有建立在这种分析基础上的软件研发,才能保证需求的正确与变更的可控。
5.迭。
8. 项目需求分析怎么写
项目需求分析的概念 需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。
(这个和我在微软体验到的又不太一样,微软的需求分析大多是市场人员和用户协助小组的人去评估用户的接受程度,这一点也可以理解,因为公司的性质有根本差别)在这个过程中,用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。需求分析阶段结束后,要求得到:1.SRS文档(System Requirement Specification); 2.DRM 文档;3.Acceptance Plan. 从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。
狭义上理解:需求分析指需求的分析、定义过程。 一、为什么要需求分析 需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个for linux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,痕不得找块豆腐一头撞死. 需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在软件开发的过程中具有举足轻重的地位.大家一定要对需求分析具有足够的重视.在一个大型软件系统的开发中,他的作用要远远大于程序设计. 二、需求分析的任务 简言之,需求分析的任务就是解决"做什么"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求.三、需求分析的过程 需求分析阶段的工作,可以分为四个方面:问题识别,分析与综合,制订规格说明,评审. 问题识别 就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标. 分析与综合 逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分.最后,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型). 制订规格说明书 即编制文档,描述需求的文档称为软件需求规格说明书.请注意,需求分析阶段的成果是需求规格说明书(好象软考曾经考过这个问题),向下一阶段提交. 评审 对功能的正确性,完整性和清晰性,以及其它需求给予评价.评审通过才可进行下一阶段的工作,否则重新进行需求分析。
四、需求分析的方法 需求分析的方法有很多.这里只强调原型化方法,其它的方法如:结构化方法,动态分析法等(个人认为,对初学者不必深究这些方法,实际上我也从来没用过这些方法)在此不讨论. 原型化方法是十分重要的(是软考等常考的知识点).原型就是软件的一个早期可运行的版本,它实现了目标系统的某些或全部功能. 原型化方法就是尽可能快地建造一个粗糙的系统,这系统实现了目标系统的某些或全部功能,但是这个系统可能在可靠性,界面的友好性或其他方面上存在缺陷.建造这样一个系统的目的是为了考察某一方面的可行性,如算法的可行性,技术的可行性,或考察是否满足用户的需求等.如,为了考察是否满足用户的要求,可以用某些软件工具快速的建造一个原型系统,这个系统只是一个界面,然后听取用户的意见,改进这个原型.以后的目标系统就在原型系统的基础上开发. 原型主要有三种类型(软考考过):探索型,实验型,进化型.探索型:目的是要弄清楚对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性.实验型:用于大规模开发和实现前,考核方案是否合适,规格说明是否可靠.进化型:目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。 在使用原型化方法是有两种不同的策略:废弃策略,追加策略.废弃策略:先建造一个功能简单而且质量要求不高的模型系统,针对这个系统反复进行修改,形成比较好的思想,据此设计出较完整,准确,一致,可靠的最终系统.系统构造完成后,原来的模型系统就被废弃不用.探索型和实验型属于这种策略。
追加策略:先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,发展成为最终系统。进化型属于这种策略.。
转载请注明出处育才学习网 » 业务与需求分析怎么写