需求分析传统结构化方法

上传人:壹****1 文档编号:542120806 上传时间:2023-12-20 格式:DOC 页数:12 大小:260KB
返回 下载 相关 举报
需求分析传统结构化方法_第1页
第1页 / 共12页
需求分析传统结构化方法_第2页
第2页 / 共12页
需求分析传统结构化方法_第3页
第3页 / 共12页
需求分析传统结构化方法_第4页
第4页 / 共12页
需求分析传统结构化方法_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《需求分析传统结构化方法》由会员分享,可在线阅读,更多相关《需求分析传统结构化方法(12页珍藏版)》请在金锄头文库上搜索。

1、. .2.2需求分析需求分析是通过开发人员的分析概括,抽象为完整的需求定义,再形成一系列文档的过程。2.2.1需求分析的目的与意义需求分析是一个非常重要的过程,它完成的好坏直接影响后续软件开发的质量。有效的需求分析通常都具有一定的难度。需求分析不仅仅是属于软件开发生命周期早期的一项工作,而且还应该贯穿于整个生命周期中,它应该随着工程的深入而不断地变化。此外,为了方便后续的评审和测试等工作,需求的描述应该尽量做到:具体、详细、可以测量和可以实现,并且基于时间。2.2.2需求分析的步骤遵循科学的需求分析步骤可以使需求分析工作更高效。需求分析的一般步骤如图2-3所示。图2-3需求分析的步骤需求涉及的

2、方面:在功能方面,需求包括系统要做什么,相对于原系统目标系统需要进展哪些修改,目标用户有哪些,以及不同用户需要通过系统完成何种操作等。在性能方面,需求包括用户对于系统执行速度、响应时间、吞吐量和并发度等指标的要求。在运行环境方面,需求包括目标系统对于网络设置、硬件设备、温度和湿度等周围环境的要求,以及对操作系统、数据库和浏览器等软件配置的要求。在界面方面,需求涉及数据的输入/输出格式的限制及方式、数据的存储介质和显示器的分辨率要求等问题。1. 获取需求,识别问题开发人员从功能、性能、界面和运行环境等多个方面识别目标系统要解决哪些问题,要满足哪些限制条件,这个过程就是对需求的获取。开发人员通过调

3、查研究,要理解当前系统的工作模型和用户对新系统的设想与要求。遗漏需最难修订的需求错误。获取需需求分析的根底。为了能有效地获取需求,开发人员应该采取科学的需求获取方法。在实践中,获取需求的方法有很多种,比方,问卷调查、访谈、实地操作、建立原型和研究资料等。问卷调查法是采用调查问卷的形式来进展需求分析的一种方法。通过对用户填写的调查问卷进展汇总、统计和分析,开发人员便可以得到一些有用的信息。采用这种方法时,调查问卷的设计很重要。一般在设计调查问卷时,要合理地控制开放式问题和封闭式问题的比例。开放式问题的答复不受限制,自由灵活,能够激发用户的思维,使他们能尽可能地阐述自己的真实想法。但是,对开放式问

4、题进展汇总和分析的工作会比较复杂。封闭式问题的答案是预先设定的,用户从假设干答案中进展选择。封闭式问题便于对问卷信息进展归纳与整理,但是会限制用户的思维。访谈通过开发人员与特定的用户代表进展座谈,进而了解到用户的意见,是最直接的需求获取方法。为了使访谈有效,在进展访谈之前,开发人员要首先确定访谈的目的,进而准备一个问题列表,预先准备好希望通过访谈解决的问题。在访谈的过程中,开发人员要注意态度诚恳,并保持虚心求教的姿态,同时还要对重点问题进展深入的讨论。由于被访谈的用户身份可能多种多样,开发人员要根据用户的身份特点,进展提问,给予启发。当然,进展详细的记录也是访谈过程中必不可少的工作。访谈完成后

5、,开发人员要对访谈的收获进展总结,澄清已解决的和有待进一步解决的问题。关注用户的行为而不是他们的言语。为了深入地了解用户需求,有时候开发人员还会以用户的身份直接参与到现有系统的使用过程中,在亲身实践的根底上,更直接地体会现有系统的弊端以及新系统应该解决的问题,这种需求获取方法就是实地操作。通过实地操作得到的信息会更加准确和真实,但是这种方法会比较费时间。当用户本身对需求的了解不太清晰的时候,开发人员通常采用建立原型系统的方法对用户需求进展挖掘。原型系统就是目标系统的一个可操作的模型。在初步获取需求后,开发人员会快速地开发一个原型系统。通过对原型系统进展模拟操作,开发人员能及时获得用户的意见,从

6、而对需求进展明确。利用原型系统获取需求的方法的示意图如图2-4所示。点击查看大图图2-4利用原型系统获取需求2. 分析需求,建立目标系统的逻辑模型在获得需求后,开发人员应该对问题进展分析抽象,并在此根底上从高层建立目标系统的逻辑模型。模型是对事物高层次的抽象,通常由一组符号和组织这些符号的规那么组成。常用的模型图有数据流图、E-R图、用例图和状态转换图等,不同的模型从不同的角度或不同的侧重点描述目标系统。绘制模型图的过程,既是开发人员进展逻辑思考的过程,也是开发人员更进一步认识目标系统的过程。3. 将需求文档化获得需求后要将其描述出来,即将需求文档化。对于大型的软件系统,需求阶段一般会输出三个

7、文档:系统定义文档用户需求报告;系统需求文档系统需求规格说明书;软件需求文档软件需求规格说明书。对于简单的软件系统而言,需求阶段只需要输出软件需求文档即软件需求规格说明书就可以了。软件需求规格说明书主要描述软件的需求,从开发人员的角度对目标系统的业务模型、功能模型和数据模型等容进展描述。作为后续的软件设计和测试的重要依据,需求阶段的输出文档应该具有清晰性、无二义性和准确性,并且能够全面和确切地描述用户需求。4. 需求验证需求验证是对需求分析的成果进展评估和验证的过程。为了确保需求分析的正确性、一致性、完整性和有效性,提高软件开发的效率,为后续的软件开发做好准备,需求验证的工作非常必要。在需求验

8、证的过程中,可以对需求阶段的输出文档进展多种检查,比方,一致性检查、完整性检查和有效性检查等。同时,需求评审也是在这个阶段进展的。2.3 构造化需求分析的方法构造化需求分析是20世纪70年代由Yourdon、Constaintine及DeMarco提出的一种面向数据流的需求分析方法。它基于分解和抽象的根本思想,逐步建立目标系统的逻辑模型,进而描绘出满足用户要求的软件系统。分解是指对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解为假设干个小问题,然后再分别解决。图2-5演示了对目标系统X进展自顶向下逐层分解的示意图。点击查看大图图2-5自顶向下逐层分解最顶层描述了整个目标系

9、统,中间层将目标系统划分为假设干个模块,每个模块完成一定的功能,而最底层是对每个模块实现方法的细节性描述。可见,在逐层分解的过程中,起初并不考虑细节性的问题,而是先关注问题最本质的属性,随着分解自顶向下进展,才逐渐考虑越来越具体的细节。这种用最本质的属性表示一个软件系统的方法就是抽象。抽象是一种人类处理复杂问题的根本方法。分解和抽象是构造化需求分析的根本指导思想。在构造化需求分析的过程中,通常还需要借助数据流程图、数据字典、E-R图、构造化语言、判定表、判定树等工具。接下来我们介绍数据流图、数据字典和E-R图的相关知识。2.4构造化需求分析的工具2.4.1数据流图数据流图Data Flow D

10、iagram,DFD是描述系统中数据流的图形工具,是一种用来表示信息流和信息变换过程的图解方法,可以标识一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换为逻辑输出所需的加工处理。数据流图把软件系统看成是由数据流联系的各种功能的组合,在需求分析的过程中,可以用来建立目标系统的逻辑模型。构造化需求分析采用的是自顶向下,由外到,逐层分解的思想,开发人员要先画出系统顶层的数据流图,然后再逐层画出低层的数据流图。顶层的数据流图要定义系统围,并描述系统与外界的数据联系,它是对系统架构的高度概括和抽象。底层的数据流图是对系统某个局部的精细描述。数据流图的目的是在用户和系统开发人员之间提供语义的桥梁。-Ken

11、neth Kozar按照Gane-Sarson法,在绘制数据流图的过程中,主要用到了4个根本符号,如表2-1所示。表2-1数据流图的根本符号1 SA 法概述SA 法也是一种建模的活动,主要是根据软件部的数据传递、变换关系,自顶向下逐层分解,描绘出满足功能要求的软件模型。1SA 法的根本思想构造化分析Structured Analysis,简称SA 法是面向数据流的需求分析方法,是70年代由Yourdon,Constaintine 及DeMarco 等人提出和开展,并得到广泛的应用。构造化分析方法的根本思想是分解和抽象。分解:是指对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题

12、分解成假设干小问题,然后分别解决。图4 是自顶向下逐层分解的示意图。顶层抽象地描述了整个系统,底层具体地画出了系统的每一个细节,而中间层是从抽象到具体的逐层过渡。抽象:分解可以分层进展,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的容,这种用最本质的属性表示一个自系统的方法就是抽象。2SA 法的步骤建立当前系统的具体模型;系统的具体模型就是现实环境的忠实写照,即将当前系统用DFD 图描述出来。这样的表达与当前系统完全对应,因此用户容易理解。抽象出当前系统的逻辑模型;分析系统的具体模型,抽象出其本质的因素,排除次要因素,获得用DFD 图描述的当前系统的逻辑模型。建

13、立目标系统的逻辑模型;分析目标系统与当前系统逻辑上的差异,从而进一步明确目标系统做什么,建立目标系统的逻辑模型修改后的DFD 图。为了对目标系统作完整的描述,还需要考虑人机界面和其它一些问题。3SA 法的描述工具 分层的数据流图 数据词典 描述加工逻辑的构造化语言、判定表或判定树。2 数据流图 数据流图Data Flow Diagram,简称DFD是描述系统中数据流程的图形工具,它标识了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换逻辑输出所需的加工处理。1数据流图的图符数据流图有以下4 种根本图形符号:箭头表示数据流,圆或椭圆表示加工。双杠或者单杠表示数据存储,矩形框表示数据的源点或终点,

14、即外部实体。 数据流 是数据在系统传播的路径,由一组成固定的数据项组成。除了与数据存储文件之间的数据流不用命名外,其余数据流都应该用名词或名词短语命名。数据流可以从加工流向加工,也可以从加工流向文件或从文件流向加工,也可以从源点流向加工或从加工流向终点。 加工 也称为数据处理,它对数据流进展某些操作或变换。每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。在分层的数据流图中,加工还应有编号。 数据存储 指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。流向数据存储的数据流可理解为写入文件,或查询文件,从数据存储流出的数据可理解为从文件读数据或得到查询结果。 数据源点和终点 是

15、软件系统外部环境中的实体包括人员、组织或其他软件系统,统称为外部实体。一般只出现在数据流图的顶层图中。还有一些辅助的图例:例1:画出图书预定系统的DFD 图。现有一图书预定系统,接收由顾客发来的订单,并对订单进展验证,验证过程是根据图书目录检查订单的正确性,同时根据顾客档案确定是新顾客还是老顾客,是否有信誉。经过验证的正确订单,暂存放在待处理的订单文件中。对订单进展成批处理,根据档案,将订单按照进展分类汇总,并保存订单存根,然后将汇总订单发往各。画图步骤是: 首先确定外部实体顾客、及输入、输出数据流订单、订单。 再分解顶层的加工验证订单、汇总订单。 确定所使用的文件图书目录文件、顾客档案等5 个文件。 用数据流将各局部连接起来,形成数据封闭。特别要注意的是:数据流图不是传统的流程图或框图,数据流也不是控制流。数据流图是从数据的角度来描述一个系统,而框图那么是从对数据进展加工的工作人员的角度来描述系统。数据流图中的箭头是数据流,而框图中的箭头那么是控制流,控制流表达的是程序执行的次序。以下图是培训中心管理系统的数据流图,由于只有一层,因此分解的加工较多不易理解,而且如果其中某个加工较

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号