首页 第3章需求分析

第3章需求分析

举报
开通vip

第3章需求分析nullnull 第3章 需求分析需求分析的概念和任务 获取需求的方法 结构化分析方法 原型法null软件需求分析概述 从开发工作的流程来看,需求分析是软件计划的下一工作步骤,它为软件设计阶段提供一个软件需求规格说明书。软件计划需求分析软件功能软件作用范围成本、资源估算软件规格说明软件开发工作流程null 1、需求的概念 比较权威的定义是IEEE软件工程标准词汇表中的需求定义: ⑴用户解决问题或达到目标所需的条件或权能(Capability)。 ⑵系统或系统部件要满足合同、标准、规...

第3章需求分析
nullnull 第3章 需求分析需求分析的概念和任务 获取需求的方法 结构化分析方法 原型法null软件需求分析概述 从开发工作的流程来看,需求分析是软件 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 的下一工作步骤,它为软件设计阶段提供一个软件需求规格说明书。软件计划需求分析软件功能软件作用范围成本、资源估算软件规格说明软件开发工作流程null 1、需求的概念 比较权威的定义是IEEE软件工程 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 词汇表中的需求定义: ⑴用户解决问题或达到目标所需的条件或权能(Capability)。 ⑵系统或系统部件要满足 合同 劳动合同范本免费下载装修合同范本免费下载租赁合同免费下载房屋买卖合同下载劳务合同范本下载 、标准、规范或其它正式规定文档所需具有的条件或权能。 ⑶一种反映上面(1)或(2)所描述的条件或权能的文档说明。软件需求分析概述null 2、需求的层次 需求可分解为4个层次:业务需求、用户需求、功能需求和非功能需求。 ⑴业务需求:业务需求是反映组织机构或客户对软件高层次的目标要求。这项需求是用户高层领导机构决定的,它确定了系统的目标、规模和范围。 ⑵用户需求:用户需求是用户使用该软件要完成的任务。 ⑶功能需求:功能需求定义了软件必须实现的功能。 ⑷非功能需求:非功能需求是对功能需求的补充。 软件需求分析概述null3、需求分析的目标和任务 需求分析的目标 构造一个完全地、精致 地目标系统逻辑模型; 确定设计约束和定义软件有效性要求。软件规格说明软件需求分析概述null 需求分析的任务 需求分析阶段研究的对象是软件项目的用户要求,其任务是借助当前系统的逻辑模型, 调查研究、分析综合,并通过抽象思维、逻辑推理导出目标系统的逻辑模型,解决系统“作什么”的问题,并将结果准确表达。3、需求分析的目标和任务软件需求分析概述null返回 软件开发项目是要实现目标系统的物理模型,包括确定待开发软件系统的元素,将功能和信息结构分配到系统元素中。 逻辑模型,忽视实现机制与细节,只描述系统要完成的功能和要处理的信息。软件需求分析概述null实现步骤: (1)分析现实世界,充分理解当前系统,并用一个具体模型描述,获得当前系统的物理模型。 (2)在理解当前系统“怎么做”的基础上,抽取“作什么”的本质,抽象出系统的逻辑模型。 (3)分析目标系统与当前系统逻辑上的差别,导出目标系统的逻辑模型。 (4)对目标系统逻辑模型进行补充,以求完整地描述。软件需求分析概述null当前系统逻辑模型物理模型目标系统理解需求表达需求由当前系统建立目标系统模型过程软件需求分析概述null需求分析的过程 需求分析阶段的工作有以下四个方面: 问题识别分析与综合编制需求分析阶段文档需求分析评审软件需求分析概述null需求获取功能要求 性能要求 运行和扩充要求 维护要求 系统文档规格要求问题识别包括:软件需求分析概述null问题识别包括:确定软件需求经济可行性 技术可行性 法律可行性 对不同 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 进行比较选择进行可行性研究软件需求分析概述null问题识别包括:确定软件需求进行可行性研究建立分析的通讯关系软件需求分析概述null编写需求规格说明 (1)需求规格说明包含对目标软件系统的外部行为的完整描述、需求验证标准以及用户在性能、质量、可维护性等方面的要求。 (2)用户手册包括用户界面描述以及有关目标系统使用方法的初步构想。 (3)在需求分析中确立测试标准,作为系统开发目标是否完成的验收依据。 (4)修改的项目开发计划是根据新的分析结果,对可行性分析和软件计划阶段中制订的初步的项目开发计划作必要的修改、补充和完善。软件需求分析概述null需求验证 由专家、分析人员、开发人员、用户组成评审组,对需求分析所得的结果 进行评审。 ⑴完整性 ⑵正确性 ⑶一致性 ⑷必要性 ⑸无歧义性 ⑹可验证性 ⑺优先级的划分 软件需求分析概述null获取需求的方法 需求分析至今仍是公认为的软件开发中最为困难、亟待解决的一个问题。 1、存在问题 (1)对需求的理解问题。 (2)分析人员与用户的通信问题。 (3)用户需求的可变性问题。 ⑷分析方法和分析工具问题。 null2、 常用方法 (1)访谈:正式的和非正式的访谈 (2)问卷调查 问卷调查即把需要调查的内容制成表格交给用户填写。该方法对需要调查大量人员的意见时,十分有效。 (3)情景分析 情景分析就是对目标系统解决某个具体问题的方法和结果,给出可能的情景描述,以获知用户的具体需求。 (4)实地考察 (5)构造原型获取需求的方法null3、 需求分析的原则 (1)解决逻辑问题 需求分析是对问题的识别和说明过程,分析员要回答的是“系统必须做什么”的问题,而不是“系统应该怎么做”的问题。 (2)以运行环境为基础 需求分析工作应以具体的运行环境为基础,实事求是 。 (3)用户参与的原则 需求分析工作是系统分析人员同用户不断交互的过程。 (4)构造高质量的需求规格说明 需求规格说明是需求分析工作重要的完成标志。 获取需求的方法null4、需求分析方法概述 不管采用哪种方法进行需求分析,都应满足如下基本要求。 ⑴必须能理解问题的数据域和功能域 数据域一般描述为:数据内容、数据结构和数据流。其中,数据内容就是数据项,数据结构就是数据项的组织形式,数据流是数据通过系统时的变化方式。 对数据进行的一系列的转换即系统应实现的功能和子功能。两个功能之间的数据传递就确定了功能之间的接口。 获取需求的方法null4、需求分析方法概述 不管采用哪种方法进行需求分析,都应满足如下基本要求。 ⑵必须能按自顶向下、逐层分解的方式对问题进行分解和不断细化. 分解是将求解的复杂问题,分解为若干相对简单问题求解的组合。分解的目的是为了降低问题求解的复杂性,将复杂问题分解成一些小的、容易控制和理解的子问题不仅便于理解,还可以将子问题划分给不同的开发小组,分别完成,然后再装配起来形成一个完整的系统。更重要的是可以促进软件开发走向构件开发的道路。 获取需求的方法null4、需求分析方法概述 不管采用哪种方法进行需求分析,都应满足如下基本要求。 ⑶要给出系统的逻辑视图和物理视图 软件需求的逻辑视图描述的是软件要达到的功能和要处理的信息之间的关系,但没有描述实现的细节。 软件需求的物理视图给出的是处理功能和信息结构的实际表现形式,需考虑实际的环境和具体的设备。 获取需求的方法null结构化分析方法结构化分析方法: 是面向数据流进行需求分析,以结构化的方式进行系统的分析方法。适用于分析大型的数据处理系统。 该方法的特点是利用数据流图来帮助人们理解问题,对问题进行分析。即利用图形工具来模拟数据处理过程。 该方法的核心是数据流图。数据流图是一种用来表示信息流程和信息变换过程的图解方法,它将系统看成是由数据流联系的各种功能的组合。数据流图可以方便的描述用数据流的流动联系的各种功能。通过各种功能的输入/输出结果, 表现现有系统或待开发系统的功能。 null此外: 用数据字典定义数据流图中的各项数据; 结构化英语、判定树和判定表对数据流图中的基本功能进行描述。 通过将系统分解成多层处理后,在较低层次上,可以看到数据流图的高层次加工的细节和相关的数据流。结构化分析方法的实质就是采用一组分层的数据流图及相应的数据字典作为系统的模型。 结构化分析方法从总体上看是一种强烈依赖数据流的自顶向下的建模方法,它不仅是需求分析技术,也是完成规格说明文档的技术手段。 结构化分析方法null结构化分析方法(structured analisys)结构化分析法 使用的工具null结构化分析法 使用的工具数据字典数据流图结构化英语判定表或判定数结构化分析方法(structured analisys)null结构化分析法 使用的工具数据字典数据流图结构化英语判定表或判定数结构化分析方法(structured analisys)null数据流图1、组成元素:四种基本图形符号 圆框:表示从输入到输出的数据流中的一个加工,在框内注明加工的名称; 方框:表示数据的源点或数据的汇点,即外部实体,在框内注明实体的名称; 箭头:表示被加工数据的路径和流向,即数据流,可用名词和或名词性短语命名; 双杠:表示数据存储,可以是一个记录或一个数据文件,可用名词和或名词性短语命名。结构化分析方法(structured analisys)null 数据流描述DFD中各成分的接口。数据流的方向可以: 从加工流向加工: 从加工流向数据存储; 从源点流向加工; 从加工流向终点。 数据流:结构化分析方法(structured analisys)null数据流的含义: (1)数据流是一组成分已知的数据。可以是一个数据,也可以是一组数据。 (2)两个加工之间可以有多个数据流。当数据流间毫无关系,也不是同时流出(或同时到达时)如果强制和为一个数据流会使问题含糊不清。 (3)数据流应有良好的命名,它不仅作为数据的标识,还有利于深化对系统的认识。 数据流:结构化分析方法(structured analisys)null (4)同一数据流可流向不同加工,不同加工也可流出相同的数据流。(合并与分解)。 (5)流入/流出简单存储的数据流不需要命名。因为数据存储名已有足够的信息来表示数据流的意义。 (6)数据流不代表控制流。数据流反映了处理的对象,控制流是一种选择或用来影响加工的性质,而不是对它进行加工的对象。 数据流的含义:数据流:结构化分析方法(structured analisys)null 加工是对数据执行某种操作或变换,是把输入数据流变成输出数据流的一种变换。每个加工应有一个名字代表它的意义。分层的DFD中每个加工还应进行编号。 加工结构化分析方法(structured analisys)null 数据存储可以表示文件、文件的一部分、数据库的元素或记录的一部分等。数据可以存储在磁盘、磁带、存储器和其他任何介质上。应对数据文件进行命名。在DFD中应注意指向数据文件的箭头的方向(可以是双向的)。 数据存储结构化分析方法(structured analisys)null 源点和终点是代表系统之外的人、物或组织。它们发出或接受系统的数据,其作用是提供系统和外界环境之间关系的注释性说明,说明数据的来龙去脉,使数据流图更清晰。 源点和终点结构化分析方法(structured analisys)null数据流图实例顾客验证 订单图书目录文件顾客档案顾客信 用情况汇总对 各出版社 的要求订单待处理订单文件出版社档案文件正确订单一批订单书目、地址订货存根文件订货存根出版社对出版社的订单图书预定系统的数据流图结构化分析方法(structured analisys)null数据流图的画法: 基本原则: 数据流图中所有图形符号必须是四种元素之一; 数据流图的主图必须含有四种元素,缺一不可; 数据流图的主图必须封闭在外部实体之间,实体可以有多个; 加工框至少有一个输入数据流和一个输出数据流; 任何一个数据流子图必须与它的父图上的一个加工框对应,两者的输入/输出数据流必须一致; 图中的每一个元素都必须有名字。结构化分析方法(structured analisys)null数据流图的画法: 基本原则: 可以在数据流图中加入物质流; 不可在数据流图中夹带控制流; 初画时,可忽略一些细节。 注意:画数据流图时,不考虑初始化,暂不考虑出错路径等细节,不画控制流和控制信息。基本原则是“先外后内”。结构化分析方法(structured analisys)null画数据流图的步骤: 1、找外部实体,找到外部实体即可确定系统与外部世界的界面,也就可确定数据流源和数据终点; 2、找出外部实体的输入和输出数据流; 3、画出外部实体; 4、从外部实体的输出流(源)出发,按照系统的逻辑需要,逐步画出一系列逻辑加工框,直至数据终点; 5、按照一般原则进行检查和修改; 6、按上述步骤画出所需的子图。结构化分析方法(structured analisys)null 控制系统复杂性的基本思想: 对大型、复杂系统,最困难的是处理复杂性。在软件工程中,控制复杂性的主要手段是“分解”和“抽象”。 SA方法采用这种“分解”和“抽象”的手段来对付复杂。结构化分析方法(structured analisys)null如何表示系统的功能呢? “采用自顶向下逐层分解”的方法。 对系统作了合理的分解后,在最下层就可以分别理解系统的每一个细节,并为每一个细节写下小说明,再将所有小说明组织起来,即得到整个系统的系统说明书。这种逐层分解也体现了抽象的原则,使人们不至于一下子就被许多细节淹没,而是有控制的逐步了解更多的细节,有利于理解问题。结构化分析方法(structured analisys)nullS213FFFFDFD/L0DFD/L1DFD/L2.1DFD/L2.2DFD/L2.3分层数据流图结构化分析方法(structured analisys)null父图和子图的平衡父图子图结构化分析方法(structured analisys)nullM3.13.23.4NXPQS3.3检查输出计算ACDEX≥0时数据流图例:结构化分析方法(structured analisys)null数据字典 数据字典是对数据流图上的每一个成分进行定义和说明的工具。 数据字典中有关系统的详细信息,是以后进行系统设计及维护的重要依据。 数据字典编写的基本要求: 1、对数据流图上的各种元素的定义必须明确,一致且易理解。 2、命名、编号应与数据流图一致。 3、对数据流图的成分定义与说明无遗漏,无同名异义,或异名同义。 4、格式规范,文字精练,符号正确。结构化分析方法(structured analisys)null 数据字典中的条目包括6种形式: 1、数据项:数据处理中基本的不可分割的逻辑单位。(如材料号等) 2、数据结构:描述数据流或数据存储的逻辑组成。 3、数据流:定义数据流图中的数据流,包括名字、编号、来源去向、包含的数据结构名等。 4、数据存储:说明存储文件的名称、编号,组成、记录数等。 5、处理功能:说明加工的名称、编号,输入/输出数据流,加工逻辑概括描述等。 6、外部实体:说明外部实体的名称、编号,输入/输出数据流等。结构化分析方法(structured analisys)null 数据字典定义式中的符号: 符号 含义 举例 = 被定义为 日期=年+月+日 + 与 学生输入数据=学号+姓名 […,…] […|…] 或 学生输入数据=[学号|姓名] {….} 重复 帐目={账号+户名 +款额+存期+地址} m{…}n 重复 密码=1{字母+数字}8 (….) 选择 登录信息=用户名+(密码) “…” 基本数据元素 印密=“0” .. 连接符 学号=“00001”..“99999”结构化分析方法(structured analisys)null结构化英语(PDL): 语言叙述描述加工逻辑,是一种最自然的方法。但自然语言有不精确、容易产生二义性等问题。因此在自然语言上增加一些限制,形成半形式化语言。结构化语言在自然语言的基础上发展了3种规范化的语言表达方式,它使用的词汇主要有3种:英语命令动词;数据流图和数据字典中的名字;表示处理的逻辑结构的保留字。 3种基本控制结构: 简单陈述结构:每一句子只能是祈使句、简单句,只有一个谓语动词。 判定结构; 重复结构。结构化分析方法(structured analisys)null 如果 当前库存量=0 做缺货处理 否则 如果 当前库存量≤库存下限 做下限报警 否则 如果 当前库存量≤订货点量 做订货处理 否则 如果 当前库存量≥上限 做上限报警 否则 正常处理结构化分析方法(structured analisys)null判定表: 在某些数据处理问题中,其数据流图的处理需要依赖于多个逻辑条件的取值,这些取值可能构成 多种不同的情况,相应执行不同的动作。这类问题适合使用判定树或判定表作为描述加工小说明的工 具. 判定表为说明复杂的决策逻辑提供了一种描述机制,它以一种形式化的表格为基础。 结构化分析方法(structured analisys)null判定表通常由四部分组成: (1)基本条件:列出所有可能的条件,通常这些条件的次序无关; (2)基本动作:列出所有可能采取的动作,通常次序无关; (3)条件项:各种条件给出的多种取值,即多个条件所取真假值的组合。 (4)动作项:和条件项紧密相关,指出在各种条件的特定取值下应采取的动作。 任何一个条件项的特定取值及其相应要执行的动作,称为规则(在判定表中贯穿条件项和动作项一列)。结构化分析方法(structured analisys)null结构化分析方法(structured analisys)判定表的组成:null构造步骤: 1、计算所有可能的条件组合,确定规则个数, 通常N个条件,最多可以有2N个条件组合数。 2、列出所有的基本条件和基本动作。 3、对每一种状态找出所有的条件,填入条件项。 4、对每一种规则指定动作,填入动作项。结构化分析方法(structured analisys)null判定树: 是判定表的一种变化,它是一种程树状的图形工具,适合于描述处理中具有多种策略,要根据若干条件的判定,确定所采用策略的情况。 判定树的优点是清晰、直观,但当条件多,而且互相组合时,不容易清楚地表达判断过程。结构化分析方法(structured analisys)null结构化分析方法(structured analisys)null 条件 1 2 3 4 5 6 7 8 年交易额>10万 能否按期付款 距离本厂<800公里 无折扣 99% 98% 87% 96% 95% 90% YYYYYNYNYYNNNYYNYNNNYNNN√√√√√√√√结构化分析方法(structured analisys)null原型化方法快速原型的概念: 通常, 原型是指模拟某种产品的原始模型。而在软件开发中,原型是软件的一个早期可运行版本。 快速原型法是根据软件需求迅速地产生软件产品的系统的一个原型,该原型能够表现出目标系统的功能和行为特性,但不一定符合其全部的实现需求。用户可通过原型作出 评价 LEC评价法下载LEC评价法下载评价量规免费下载学院评价表文档下载学院评价表文档下载 ,开发者根据用户的意见对原型加以修改,这样能够尽早的获得更完整、更准确的需求和设计。null原型化方法快速原型的特性: “快速”:尽快向用户提供一个可在计算机上运行的目标系统的模型,以便使用户和开发者尽可能快地达成对目标系统 “做什么”的共识。 “易于修改”:如果原型的第一版不是用户所需要的,就必须根据用户的意见迅速地修改它,构建出原型的第二版。 null软件原型的分类: 废弃型:先构造一个功能简单而且质量要求不高的模型系统,针对这个模型系统反复进行分析修改,形成比较好的设计思想,据此设计出更加完整、准确、一致、可靠的最终系统。系统构造完成后,原来的模型系统就被废弃。 追加型:先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,最后发展成为最终系统。原型化方法null快速原型开发模型: ①快速分析 ②构造原型 ③运行和评价原型 ④修正和改进 ⑤判定原型是否完成 ⑥判定原型细部是否说明 ⑦对原型细部说明 ⑧判定原型效果 ⑨整理原型、提供文档原型化方法
本文档为【第3章需求分析】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_864820
暂无简介~
格式:ppt
大小:243KB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2012-10-28
浏览量:32