第3章需求分析详解ppt课件

上传人:新** 文档编号:567677319 上传时间:2024-07-22 格式:PPT 页数:61 大小:585.01KB
返回 下载 相关 举报
第3章需求分析详解ppt课件_第1页
第1页 / 共61页
第3章需求分析详解ppt课件_第2页
第2页 / 共61页
第3章需求分析详解ppt课件_第3页
第3页 / 共61页
第3章需求分析详解ppt课件_第4页
第4页 / 共61页
第3章需求分析详解ppt课件_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《第3章需求分析详解ppt课件》由会员分享,可在线阅读,更多相关《第3章需求分析详解ppt课件(61页珍藏版)》请在金锄头文库上搜索。

1、中原工学院信息商务学院中原工学院信息商务学院软件工程导论(第5版)第第3章章 需求分析需求分析中原工学院信息商务学院中原工学院信息商务学院目录目录实体-联系图分析建模与规格说明需求分析的任务与用户沟通获取需求的方法中原工学院信息商务学院中原工学院信息商务学院目录目录验证软件需求其他图形工具数据规范化状态转换图中原工学院信息商务学院中原工学院信息商务学院目标目标v列举信息收集技术技巧v设计项目的E-R图v设计项目的状态转换图v了解其他图形工具中原工学院信息商务学院中原工学院信息商务学院意义:意义:v软件需求的深入理解是软件开发工作获得软件需求的深入理解是软件开发工作获得成功的前提条件,不论我们把

2、设计和编码成功的前提条件,不论我们把设计和编码做得如何出色,不能真正满足用户需求的做得如何出色,不能真正满足用户需求的程序只会令用户失望,给开发带来烦恼。程序只会令用户失望,给开发带来烦恼。第第3章章 需求分析需求分析中原工学院信息商务学院中原工学院信息商务学院第第3章章 需求分析需求分析v需求分析的基本任务是准确地回答“系统必须做什么?”这个问题。v确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。v需求分析阶段结束之前,系统分析员应该写出软件需求规格说明书,以书面形式准确地描述软件需求。中原工学院信息商务学院中原工学院信息商务学院v在分析软件需求和书写软件需求规格

3、说明书的过程中,在分析软件需求和书写软件需求规格说明书的过程中,分析员和用户都起着关键的、必不可少的作用。分析员和用户都起着关键的、必不可少的作用。 中原工学院信息商务学院中原工学院信息商务学院第第3章章 需求分析需求分析v所有的需求分析方法都遵守下述准则:(1) 必须理解并描述问题的信息域,根据这条准则应该建立数据模型。(2) 必须定义软件应完成的功能,这条准则要求建立功能模型。(3) 必须描述作为外部事件结果的软件行为,这条准则要求建立行为模型。(4) 必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。中原工学院信息商务学院中原工学院信息商务学院1确定对系统的综合要求确定对系

4、统的综合要求2 分析系统的数据要求分析系统的数据要求3 导出系统的逻辑模型导出系统的逻辑模型4 修正系统开发计划修正系统开发计划3.1 需求分析的任务需求分析的任务中原工学院信息商务学院中原工学院信息商务学院3.1 需求分析的任务需求分析的任务任务1:确定对系统的综合要求 通常对软件系统有下述几方面的综合要求:功能需求性能需求可靠性和可用性需求出错处理需求接口需求约束逆向需求将来可能提出的要求中原工学院信息商务学院中原工学院信息商务学院3.1 需求分析的任务需求分析的任务任务2:分析系统的数据要求 分析系统的数据要求通常采用建立数据模型的方法(见3.4节实体-联系图)复杂的数据由许多基本的数据

5、元素组成,数据结构表示数据元素之间的逻辑关系,通常用层次方框图和Warnier图来描绘数据结构。软件系统经常使用各种长期保存的信息,这些信息通常以一定的方式组织并存储在数据库或文件中,为减少数据冗余,避免出现插入异常或删除异常,简化修改数据的过程,通常需要把数据结构规范化。中原工学院信息商务学院中原工学院信息商务学院3.1 需求分析的任务需求分析的任务任务3:导出系统的逻辑模型 综合上述两项分析的结果可以导出系统的详细的逻辑模型,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。任务4:修正系统开发计划 根据在分析过程中获得的对系统的更深入更具体的了解,可以比

6、较准确地估计系统的成本和进度,修正以前制定的开发计划。中原工学院信息商务学院中原工学院信息商务学院v访谈v面向数据流自顶向下求精v简易的应用规格说明技术v快速建立软件原型3.2 与用户沟通获取需求的方法与用户沟通获取需求的方法中原工学院信息商务学院中原工学院信息商务学院3.2.1 访谈访谈v访谈是最早开始使用且是迄今为止仍然广泛使用的需求分析技术。正式访谈 - 系统分析员将提出一些事先准备好的具体问题。非正式访谈 - 分析员将提出一些用户可以自由回答的开放性问题,以鼓励被访问人员说出自己的想法。v当需要调查大量人员的意见时,请被调查人填写调查表是十分有效的做法。中原工学院信息商务学院中原工学院

7、信息商务学院3.2.1 访谈访谈v在访问用户的过程中使用情景分析技术往往十分有效。所谓情景分析,就是对用户将来使用目标系统解决某个具体问题的方法和结果进行分析。系统分析员利用情景分析技术往往能够获知用户的具体需求。v情景分析技术的用处主要体现在下述两个方面:(1) 它能在某种程度上演示目标系统的行为,从而便于用户理解,而且还可能进一步揭示出一些分析员目前还不知道的需求。(2) 由于情景分析较易为用户所理解,使用这种技术能保证用户在需求分析过程中始终扮演一个积极主动的角色。中原工学院信息商务学院中原工学院信息商务学院3.2.2 面向数据流自顶向下求精面向数据流自顶向下求精v数据决定了需要的处理和

8、算法,它是需求分析的出发点。v结构化分析方法实质上就是面向数据流自顶向下逐步求精进行需求分析的方法。v通过可行性研究已经得出了目标系统的高层数据流图,需求分析的一个主要目标是把数据流和数据存储定义到元素级。为了达到这个目标,通常从数据流图的输出端着手分析。中原工学院信息商务学院中原工学院信息商务学院3.2.2 面向数据流自顶向下求精面向数据流自顶向下求精图3.1面向数据流自顶向下求精过程中原工学院信息商务学院中原工学院信息商务学院问题:v使用传统的访谈或面向数据流自顶向下求精方法定义需求时,用户处于被动地位而且往往有意无意地与开发者区分“彼此”。由于不能像同一个团队的人那样齐心协力地识别和精化

9、需求,这两种方法的效果有时并不理想。中原工学院信息商务学院中原工学院信息商务学院3.2.3 简易的应用规格说明技术简易的应用规格说明技术v简易的应用规格说明技术是一种面向团队的需求收集法v提倡用户与开发者密切合作,共同标识问题,提出解决方案要素,商讨不同的方案并指定基本需求v目前它已成为信息系统领域使用的主流技术。中原工学院信息商务学院中原工学院信息商务学院使用简易的应用规格说明技术分析需求的典型过程:使用简易的应用规格说明技术分析需求的典型过程:1.初步的访谈,通过用户对基本问题的回答,初步确定待解决的问题的范围和解决方案。2.开发者和用户分别写出“产品需求”。3.开发者和用户开会讨论,共同

10、创建一张意见一致的组合列表。4. 把与会者分成更小的小组,每个小组的工作目标是为每张列表中的项目制定小型规格说明。小型规格说明是对列表中包含的单词或短语的准确说明。5. 每个小组向全体与会者展示他们制定的小型规格说明,讨论,以创建出意见一致的确认标准。6. 由一名或多名与会者根据会议成果起草完整的软件需求规格说明书。中原工学院信息商务学院中原工学院信息商务学院3.2.4 快速建立软件原型快速建立软件原型v快速建立软件原型是最准确、最有效、最强大的需求分析技术。所谓软件原型,就是快速建立起来的旨在演示目标系统主要功能的可运行的程序。v构建软件原型的要点是,它应该实现用户看得见的功能,省略目标系统

11、的“隐含”功能。v软件原型的应该具备的第一个特性是“快速”,第二个特性是“容易修改”。中原工学院信息商务学院中原工学院信息商务学院3.2.4 快速建立软件原型快速建立软件原型v为了快速地构建和修改原型,可以使用下述3种方法和工具:第四代技术可重用的软件构件形式化规格说明和原型环境中原工学院信息商务学院中原工学院信息商务学院3.3 分析建模与规格说明分析建模与规格说明3.3.1 分析建模v模型为了理解事物而对事物作出的一种抽象,是对事物的一种无歧义的书面描述。v通常,模型由一组图形符合和组织这些符号的规则组成。v需求分析过程应该建立3种模型:数据模型 - - 实体-联系图 功能模型- - 数据流

12、图行为模型-状态转换图中原工学院信息商务学院中原工学院信息商务学院3.3.2 软件需求规格说明软件需求规格说明v通过需求分析除了创建分析模型之外,还应该写出软件需求规格说明书,它是需求分析阶段得出的最主要的文档。v描述软件需求说明书有两种方法:自然语言形式化方法中原工学院信息商务学院中原工学院信息商务学院3.4 实体联系图实体联系图v数据模型是一种面向问题的数据模型,是按照用户的观点对数据建立的模型。它描述了从用户角度看到的数据,反映了用户的现实环境,而且与在软件系统中的实现方法无关。v通常使用实体-联系图(简称ER图)来建立数据模型v数据模型中包含3种相互关联的信息:数据对象(实体)、数据对

13、象的属性及数据对象彼此间相互连接的关系。中原工学院信息商务学院中原工学院信息商务学院3.4.1 数据对象数据对象v数据对象是对软件必须理解的具有一系列不同性质或属性的事物的抽象,仅有单个值的事物不是数据对象。由一组属性来定义的实体都可以被认为是数据对象。数据对象彼此间是有关联的数据对象只封装了数据而没有对施加于数据上的操作的引用,这是数据对象与面向对象范型中“类”或“对象”的显著区别。中原工学院信息商务学院中原工学院信息商务学院3.4.2 属性属性v属性定义了数据对象的性质。v应该根据对所要解决的问题的理解,来确定特定数据对象的一组合适的属性。例如:学生具有学号、姓名、性别、年龄、专业(其它略

14、)等属性; 课程具有课程号、课程名、学分、学时数等属性; 教师具有职工号、姓名、年龄、职称等属性。中原工学院信息商务学院中原工学院信息商务学院3.4.3 联系联系v数据对象彼此之间相互连接的方式称为联系,也称为关系。v联系有3种类型:一对一联系(1:1)一对多联系(1:N)多对多联系(M:N)v联系也可能有属性。比如成绩既不是学生的属性,也不是课程的属性,而是学生“学”课程的属性,这个属性就是联系“学”的属性。中原工学院信息商务学院中原工学院信息商务学院3.4.4 实体实体-联系图的符号联系图的符号v实体-联系图的基本符号符号含义表示实体表示实体间的联系,与实体的连线上需用数字标明具体的对应关

15、系表示实体或联系的属性用于实体、属性及联系的连接中原工学院信息商务学院中原工学院信息商务学院举 例图3.2 某校教学管理ER图对象对象教教师师属属性性学学生生属属性性课课程程属属性性联联系系属属性性关系关系中原工学院信息商务学院中原工学院信息商务学院例子:例子:v请为某仓库的管理设计一个ER模型。该仓库主要管理零件的订购和供应等事项。仓库向工程项目供应零件,并且根据需要向供应商订购零件。中原工学院信息商务学院中原工学院信息商务学院工程项目零件供应商项目名称订购量供应商编号供应商名称地址项目编号开工日期供应订购供应量零件名称零件编号MNNM中原工学院信息商务学院中原工学院信息商务学院3.5 数据

16、规范化数据规范化v软件系统经常使用各种长期保存的信息,这些信息通常以一定的方式组织并存储在数据库或文件中,为减少数据冗余,避免出现插入异常或删除异常,简化修改数据的过程,通常需要把数据结构规范化。v通常用“范式”定义消除数据冗余的程度。第一范式第二范式第三范式中原工学院信息商务学院中原工学院信息商务学院3.6 状态转换图状态转换图v状态转换图通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。3.6.1 状态v状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式。v在状态图中定义的状态主要有初态、终态和中间状态。在一张状态图中,只能有一

17、个初态,而终态则可以有0至多个。中原工学院信息商务学院中原工学院信息商务学院3.6.1 状态状态v状态图既可以表示系统循环运行过程,也可以表示系统单程生命期。v当描绘循环运行过程时,通常并不关心循环是怎样启动的。v当描绘单程生命期时,需要标明初始状态(系统启动时进入初始状态)和最终状态(系统运行结束时到达最终状态)。中原工学院信息商务学院中原工学院信息商务学院3.6.2 事件事件v事件是在某个特定时刻发生的事情,它是对引起系统做动作或从一个状态转换到另一个状态的外界事件的抽象。3.6.3 符号初态用实心圆表示终态用一对同心圆(内圆为实心圆)表示中间状态用圆角矩形表示,可以用两条水平横线把它分成

18、上、中、下3个部分,分别放置状态名(必选)、状态变量的名字和值(可选)、活动表(可选)中原工学院信息商务学院中原工学院信息商务学院3.6.3 符号符号图3.3状态图中使用的主要符号中原工学院信息商务学院中原工学院信息商务学院3.6.3 符号符号活动表的语法格式为: 事件名(参数表)/动作表达式活动表中有3种标准事件:Entry事件指定进入该状态的动作Exit事件指定退出该状态的动作Do事件指定在该状态下的动作(最常用)活动表的动作表达式描述应做的具体动作状态转换由两个状态之间带箭头的连线表示,箭头指明了转换方向。状态通常由事件触发,此时应在表示状态转换的箭头上标出触发转换的事件表达式;若未标,

19、则表示在源状态的内部活动执行完之后自动触发转换。中原工学院信息商务学院中原工学院信息商务学院3.6.3 符号符号事件表达式的语法如下:事件说明守卫条件/动作表达式事件说明的语法为: 事件名(参数表)守卫条件是一个布尔表达式。若同时使用事件说明和守卫条件,则当且仅当事件发生且布尔表达式为真时,状态转换才发生;若只有守卫条件没有事件说明,则只要守卫条件为真,状态转换就发生。动作表达式是一个过程表达式,当状态转换开始时执行该表达式中原工学院信息商务学院中原工学院信息商务学院习题习题3.6:v复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的

20、工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。 请用状态转换图描绘复印机的行为。中原工学院信息商务学院中原工学院信息商务学院例子:例子:v一个保险箱上装了一个复合锁,锁有三个位置,分别标记为1、2、3,转盘可向左(L)或向右(R)转动。这样,在任意时刻转盘都有6种可能的运动,即1L、1R、2L、2R、3L和3R。保险箱的组合密码是1L、3R、2L,转盘的任何其他运动都将引起报警。试用状态转换图描述保险

21、箱的行为。中原工学院信息商务学院中原工学院信息商务学院中原工学院信息商务学院中原工学院信息商务学院3.6.4 例子例子图3.4电话系统的状态图中原工学院信息商务学院中原工学院信息商务学院3.6.4 例子例子v图中表明,没有人打电话时电话处于闲置状态;有人拿起听筒则进入拨号音状态,到达这个状态后,电话的行为是响起拨号音并计时;这时如果拿起听筒的人改变主意不想打了,他把听筒放下(挂断),电话重又回到闲置状态;如果拿起听筒很长时间不拨号(超时),则进入超时状态;。中原工学院信息商务学院中原工学院信息商务学院3.7 其他图形工具其他图形工具3.7.1 层次方框图v层次方框图用树形结构的一系列多层次的矩

22、形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构下面的各层矩形框代表这个数据的子集最底层的各个框代表组成这个数据的实际数据元素(不能再分割的元素)中原工学院信息商务学院中原工学院信息商务学院层次方框图例子层次方框图例子 例如,一家计算机公司的产品由硬件、软件和服务3类产品组成;硬件产品又分为处理机、存储器和外部设备;软件产品又分为系统软件和应用软件,系统软件又进一步分为操作系统、编译程序和软件工具;服务包括软件服务、硬件维修和培训3方面。试用层次方框图来描绘这家计算机公司全部产品的数据结构。中原工学院信息商务学院中原工学院信息商务学院层次方框图例子层次方框图例子图

23、3.5层次方框图的一个例子中原工学院信息商务学院中原工学院信息商务学院3.7.2 Warnier图图vWarnier图也用树形结构描绘信息,但它提供的描绘手段比层次方框图更丰富。v用Warnier图可以清楚地描绘信息的逻辑结构。它可以表明一个(或一类)信息元素是重复出现的也可以表示特定信息在某一类信息中是有条件地出现的重复和条件约束是软件处理过程的基础,所以很容易把Warnier图转变成软件设计的工具。中原工学院信息商务学院中原工学院信息商务学院3.7.2 Warnier图图vWarnier图用花括号的开括号来区分数据结构的层次在一个开括号内的所有名字都属于同一类信息异或符号表明一类信息或数据

24、元素在一定条件下才出现,而且这个符号上、下方的两个名字所代表的数据只能出现一个在一个名字下方(或右侧)的圆括号中的数字指明这个名字代表的信息(或元素)在这个数据结构中重复出现的次数中原工学院信息商务学院中原工学院信息商务学院3.7.2 Warnier图图v例子:一种软件产品要么是系统软件要么是应用软件。系统软件中有P1种操作系统,P2种编译程序,此外还有软件工具。软件工具又可以进一步细分为P3种编辑程序、P4种测试驱动程序和P5种设备辅助工具。中原工学院信息商务学院中原工学院信息商务学院3.7.2 Warnier图图图3.6 Warnier图的一个例子中原工学院信息商务学院中原工学院信息商务学

25、院3.7.3 IPO图图vIPO图是输入、处理、输出图的简称,它能方便地描绘输入数据、对数据的处理和输出数据之间的关系。v在需求分析阶段可以使用IPO图简略地描述数据流图中各个处理的基本算法。vIPO图使用的基本符号既少又简单:左边框中列出有关的输入数据中间框中列出主要的处理右边框中列出产生的输出数据处理框中列出处理的次序暗示了执行的顺序粗大箭头指出数据通信的情况中原工学院信息商务学院中原工学院信息商务学院3.7.3 IPO图图图3.7 主文件更新的IPO图中原工学院信息商务学院中原工学院信息商务学院3.7.3 IPO图图图3.8改进的IPO图的形式建议使用一种改进的IPO图(也称为IPO表)

26、,这种图中包含某些附加的信息。中原工学院信息商务学院中原工学院信息商务学院3.7.3 IPO图图中原工学院信息商务学院中原工学院信息商务学院3.8 验证软件需求验证软件需求3.8.1验证软件需求的正确性v为了提高软件质量,确保软件开发成功,降低软件开发成本,一旦对目标系统提出一组要求之后,必须严格验证这些需求的正确性。v一般从以下4个方面来验证需求的正确性:一致性完整性现实性有效性中原工学院信息商务学院中原工学院信息商务学院3.8.1验证软件需求的正确性验证软件需求的正确性v一致性。所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。v完整性。需求必须是完整的,规格说明书应该包括用户需要

27、的每一个功能或性能。v现实性。指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。v有效性。必须证明需求是正确有效的,确实能解决用户面对的问题。中原工学院信息商务学院中原工学院信息商务学院3.8.2 验证软件需求的方法验证软件需求的方法1.验证需求的一致性当软件需求规格说明书是用自然语言书写时,只能靠人工技术来审验当软件需求规格说明书是用形式化的需求陈述语言书写的时候,可以用软件工具验证需求的一致性2.验证需求的现实性参照以往开发类似系统的经验,分析用现有软、硬件技术实现目标系统的可能性3.验证需求的完整性和有效性检验需求的完整性,只有在用户的密切合作下才能完成中原工学院信息商务学院中

28、原工学院信息商务学院3.8.3 用于需求分析的软件工具用于需求分析的软件工具vPSL/PSA(问题陈述语言/问题陈述分析程序)系统PSL是用来描述系统的形式语言,PSA是处理PSL描述的分析程序。用PSL描述的系统属性放在一个数据库中。一旦建立起数据库之后即可增加信息、删除信息或修改信息,并且保持信息的一致性。PSA对数据库进行处理以产生各种报告,测试不一致性或遗漏,并且生成文档资料。中原工学院信息商务学院中原工学院信息商务学院3.8.3 用于需求分析的软件工具用于需求分析的软件工具vPSL/PSA系统的功能主要有下述4种:(1) 描述任何应用领域的信息系统;(2) 创建一个数据库保存对该信息系统的描述符;(3) 对描述符施加增加、删除和更改等操作;(4) 产生格式化的文档和关于规格说明书的各种分析报告。vPSL/PSA系统的主要优点:它改进了文档质量,能保证文档具有完整性、一致性和无二义性,从而可以减少管理和维护的费用。数据存放在数据库中,便于增加、删除和更改。中原工学院信息商务学院中原工学院信息商务学院

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

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