软件工程:第四章软件需求与获取分析二.ppt

上传人:牧羊曲112 文档编号:6434260 上传时间:2023-10-30 格式:PPT 页数:71 大小:1.02MB
返回 下载 相关 举报
软件工程:第四章软件需求与获取分析二.ppt_第1页
第1页 / 共71页
软件工程:第四章软件需求与获取分析二.ppt_第2页
第2页 / 共71页
软件工程:第四章软件需求与获取分析二.ppt_第3页
第3页 / 共71页
软件工程:第四章软件需求与获取分析二.ppt_第4页
第4页 / 共71页
软件工程:第四章软件需求与获取分析二.ppt_第5页
第5页 / 共71页
点击查看更多>>
资源描述

《软件工程:第四章软件需求与获取分析二.ppt》由会员分享,可在线阅读,更多相关《软件工程:第四章软件需求与获取分析二.ppt(71页珍藏版)》请在三一办公上搜索。

1、第四章 软件需求获取与分析(二),软件需求分析的目标和任务软件需求分析的过程软件需求分析的原则软件需求获取技术结构化分析方法原型化方法软件需求分析的图形工具软件需求文档软件需求评审,结构化分析方法,面向数据流进行需求分析的方法结构化分析方法适合于数据处理类型软件的需求分析具体来说,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止,结构化分析方法概述,结构化分析方法,结构化分析方法是一种建模技术,实体关系图,数据 词典,状态迁移图,数据流图,数据对象描述,控制规格说明,加工规格说明,分析模型的结构,结构化分析方法使

2、用工具:实体关系(E-R)方法 数据流图数据词典状态迁移图逻辑说明工具,结构化分析方法,E-R方法(Entity-Relationship Approach)和实体模型,在需求分析阶段进行数据库逻辑设计过程中,使用E-R图,可定义一个实体模型。实体模型不涉及数据世界的数据结构、存取路径、存取效率等问题。它可以转换成数据库中的数据模型。,数据模型包括三种互相关联的信息:数据对象,描述对象的属性,描述对象间相互连接的关系。,数据可以按相应数据模型进行组织。E-R图中表示实体联系的符号如下:,E-R方法,在E-R图中,每个方框表示实体型或属性,方框之间的连线表示实体之间,或实体与属性之间的联系。出现

3、在连线上的短竖线可以看成是“1”,而圆圈隐含表示“0”。例:在教学管理中,一个教师可以教零门、一门或多门课程,每位学生也需要学习几门课程。因此,教学管理中涉及的对象(实体)有学生、教师和课程。,E-R方法,解答:用E-R图描述它们之间的联系,得下图。其中,学生与课程是多对多的联系,而教师与课程的联系是零、一对多。,E-R方法,进一步,要确定属性。例如,1.学生具有学号、姓名、性别、年龄、专业(其它略)等属性;2.课程具有课程号、课程名、学分、学时数等属性;3.教师具有职工号、姓名、年龄、职称等属性;此外,学生通过学号、分数与课程发生联系。如此可得教学实体模型。,E-R方法,教学实体模型,E-R

4、方法,结构化分析方法使用工具:实体关系(E-R)方法 数据流图数据词典状态迁移图逻辑说明工具,结构化分析方法,数据流图,目标系统被表示成如下图所示的数据变换流程图。系统的功能体现在核心的数据变换中。,描述银行取款过程的数据流图,数据流图,数据流图中的主要图形元素,数据流图,数据流与数据加工之间的关系,数据流图,数据流图的层次结构,为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统,数据流图,分层的数据流图,数据流图,在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入

5、流是该系统的输入数据,输出流是系统所输出数据底层流图是指其加工不需再做分解的数据流图,它处在最底层中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。,数据流图,结构化分析方法步骤示例 商店业务处理系统,数据流图,这个数据流图只是一个高层的系统逻辑模型,它反映了目标系统要实现的功能数据流图绘制步骤 首先确定系统的输入和输出 根据商店业务,画出顶层数据流图,以反映最主要业务处理流程,数据流图,经过分析,商店业务处理的主要功能应当有销售、采购、会计三大项。主要数据流输入的源点和输出终点是顾客和供应商。然后从输入端开始,根据商店业务工作流程,画出数据流流经的各加工框,逐步画到输出

6、端,得到第一层数据流图,数据流图,数据流图绘制步骤,第一层数据流图,数据流图,加细每一个加工框 销售细化,数据流图,采购细化,数据流图,检查和修改数据流图的原则,数据流图上所有图形符号只限于前述四种基本图形元素数据流图的主图必须包括前述四种基本元素,缺一不可数据流图的主图上的数据流必须封闭在外部实体之间?每个加工至少有一个输入数据流和一个输出数据流,数据流图,在数据流图中,需按层给加工框编号。规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。此即父图与子图的平衡可以在数据流图中加入物质流,帮助用户理解数据流图,数据流图,图上每个元素都必须有名字数据流图中

7、不可夹带控制流初画时可以忽略琐碎的细节,以集中精力于主要数据流,结构化分析方法使用工具:实体关系(E-R)方法 数据流图数据词典状态迁移图逻辑说明工具,结构化分析方法,数据词典,数据词典与数据流图配合,能清楚地表达数据处理的要求数据词典精确地、严格地定义了每一个与系统相关的数据元素,并以字典式顺序将它们组织起来,使得用户和分析员对所有的输入、输出、存储成分和中间计算有共同的理解。,数据词典,词条描述 对于在数据流图中每一个被命名的图形元素,均加以定义,其内容有:名字,别名或编号,分类,描述,定义,位置,其它等,在数据词典的每一个词条中应包含以下信息:名称:数据对象或控制项、数据存储或外部实体的

8、名字别名或编号分类:数据对象?数据流?数据文件?外部实体?描述:描述内容或数据结构等何处使用:使用该词条(数据或控制项)的加工,数据词典,数据结构的描述,符 号 含 义 举 例 被定义为 与 x=ab.,.或.|.或 x=a,b,x=a|b.或 m.n 重复 x=a,x=3a8(.)可选 x=(a)“.”基本数据元素 x=“a”.连结符 x=1.9,数据词典,例:存折格式的数据结构,数据词典,存折户名所号帐号开户日性质(印密)1存取行50户名2字母24所号“001”.“999”帐号“00000001”.“99999999”开户日年月日性质“1”.“6”注:“1”表示普通户,“5”表示工资户等印

9、密“0”注:印密在存折上不显示存取行日期(摘要)支出存入余额操作复核,数据词典,结构化分析方法使用工具:实体关系(E-R)方法 数据流图数据词典状态迁移图逻辑说明工具,结构化分析方法,状态迁移图,行为建模给出需求分析方法的所有操作原则状态迁移图(STD)或状态迁移表来描述系 统或对象的状态,以及导致系统或对象的状态改变的事件,从而描述系统的行为。,状态迁移图,状态迁移图变形,使用加进判断框和处理框的记法。,状态迁移图的细化,状态迁移图,结构化分析方法使用工具:实体关系(E-R)方法 数据流图数据词典状态迁移图逻辑说明工具,结构化分析方法,对数据流图的每一个基本加工,必须有一个基本加工逻辑说明基

10、本加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则加工逻辑说明必须描述实现加工的策略而不是实现加工的细节加工逻辑说明中包含的信息应是充足的,完备的,有用的,无冗余的,基本加工逻辑说明,逻辑说明工具,用于写加工逻辑说明的工具,结构化英语 判定表 判定树,逻辑说明工具,1.结构化英语(PDL),结构化英语的词汇表由 英语命令动词 数据词典中定义的名字 有限的自定义词 逻辑关系词 IF_THEN_ELSE、CASE_OF、WHILE_DO、REPEAT_UNTIL等组成。,逻辑说明工具,其基本控制结构有三种:简单陈述句结构:避免复合语句 重复结构:while_do 或repea

11、t_until 结构 判定结构:if_then_else 或case_of 结构,逻辑说明工具,商店业务处理系统中“检查发货单”,if 发货单金额超过$500 then if 欠款超过了60天 then 在偿还欠款前不予批准 else(欠款未超期)发批准书,发货单 else(发货单金额未超过$500)if 欠款超过60天 then 发批准书,发货单及赊欠报告 else(欠款未超期)发批准书,发货单,逻辑说明工具,2.判定表,如果数据流图的加工需要依赖于多个逻辑条件的取值,使用判定表来描述比较合适,逻辑说明工具,还是以“检查发货单”为例,逻辑说明工具,3.判定树,判定树也是用来表达加工逻辑的一种

12、工具。有时侯它比判定表更直观。,检查发货单,金额$500,金额$500,欠款60天,不发出批准书,欠款60天,发货单,发出批准书、,欠款60天,发出批准书、,发货单及赊欠报告,欠款60天,发出批准书、,发货单,逻辑说明工具,第四章 软件需求获取与分析,软件需求分析的目标和任务软件需求分析的过程软件需求分析的原则软件需求获取技术结构化分析方法原型化方法软件需求分析的图形工具软件需求文档软件需求评审,原型化方法,在开发初期,要想得到一个完整准确的规格说明不是一件容易的事。特别是对一些大型的软件项目。用户往往对系统只有一个模糊的想法,很难完全准确地表达对系统的全面要求。软件开发者对于所要解决的应用问

13、题认识更是模糊不清,一.原型化方法的引入,随着开发工作向前推进,用户可能会产生新的要求,或因环境变化,要求系统也能随之变化;开发者又可能在设计与实现的过程中遇到些没有预料到的实际困难,需要以改变需求来解脱困境。因此规格说明难以完善、需求的变更以及通信中的模糊和误解,都会成为软件开发顺利推进的障碍。为解决这些问题,逐渐形成了软件系统的快速原型的概念。,原型化方法,一.原型化方法的引入,二.软件原型的分类,在软件开发中,原型是软件的一个早期可运行的版本,它反映最终系统的部分重要特性。它分成废弃型和演化型(追加型),原型化方法,原型化方法,1.废弃型 先构造一个功能简单而且质量要求不高的模型系统,针

14、对这个模型系统反复进行分析修改,形成比较好的设计思想,据此设计出更加完整、准确、一致、可靠的最终系统。系统构造完成后,原来的模型系统就被废弃不用。,二.软件原型的分类,探索型:目的是要弄清对目标系统要求,确定所希望的特性,并探讨多种方案的可行性。它主要针对开发目标模糊,用户和开发者对项目都缺乏经验的情况。实验型:这种原型用于大规模开发和实现之前,考核方案是否合适,规格说明是否可靠。,原型化方法,废弃型又分为:,2.演化型 这种原型的目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。,原型化方法,二.软件原型的分类,建立快速原型,进行系统的分析和构造

15、的优点:,增进软件者和用户对系统服务需求的理解,使比较含糊的具有不确定性的软件需求(主要是功能)明确化。软件原型化方法提供了一种有力的学习手段。,原型化方法,使用原型化方法,可以容易地确定系统的性能,确认系统设计的可行性,确认系统作为产品的结果。软件原型的最终版本,有的可以原封不动地成为产品,有的略加修改就可以成为最终系统的一个组成部分,这样有利于建成最终系统。,原型化方法,原型化方法,三.原型选择方法,选择适当的原型方法表,原型化方法,原型的开发和使用过程叫做原型生存期,四.原型生存期,原型化方法,原型生存期,五.原型开发技术,可执行规格说明基于脚本的设计自动程序设计专用语言可复用(reus

16、able)的软件简化假设,原型化方法,可执行规格说明是用于需求规格说明的一种自动化技术。可执行规格说明语言可描述系统要“做什么”,但它并不描述系统要“怎样做”。使用这种方法,人们可以直接观察他们用语言规定的任何系统性行为。可执行规格说明包括形式化规格说明、有限状态模型(状态迁移图)和可执行的数据流图。,原型化方法,1.可执行规格说明,2.基于脚本(场景)的设计,脚本是指用户界面的原型。一个脚本用以模拟在系统运行期间用户经历的事件。它提供了输入处理输出的屏幕格式和有关对话的模型。因此,软件开发者能够给用户显示系统的逼真的视图,使用户得以判断是否符合他的意图。,原型化方法,3.自动程序设计,自动程

17、序设计是指在程序自动生成环境的支持下,利用计算机实现软件的开发。它可以自动地或半自动地把用户的非过程式问题规格说明转换为某种高级语言程序。,原型化方法,4.专用语言,专用语言是应用领域的模型化语言。在原型开发中使用专用语言,可方便用户和软件开发者在计划中的系统特性方面的交流。,原型化方法,5.软件复用技术,利用可复用的模块,做出适当的组合,就可得到快速构造的原型系统。为了快速地构造原型,这些模块首先必须有简单而清晰的界面;其次它们应当尽量不依赖其它的模块或数据结构;第三,它们应具有一些通用的功能。,原型化方法,6.简化假设,简化假设是在开发过程中使设计者迅速得到一个简化的系统所做的假设。尽管这

18、些假设可能实际上并不能成立,但它们在原型开发过程中可以使开发者的注意力集中在一些主要的方面。,原型化方法,简化假设实例在修改一个文件时,可以假设这个文件确实存在。在存取文件时,待存取的记录总是存在。一旦计划中的系统满足用户所有的要求,就可以撤消这些假设,并追加一些细节。,原型化方法,第四章 软件需求获取与分析,软件需求分析的目标和任务软件需求分析的过程软件需求分析的原则软件需求获取技术结构化分析方法原型化方法软件需求分析的图形工具软件需求文档软件需求评审,需求分析的图形工具,在描述复杂的关系时,图形比方案叙述优越,形象和直观。在进行需求分析时,经常使用三种图形工具:层次方框图 Warnier图 IPO图,需求分析的图形工具,层次方框图,需求分析的图形工具,Warnier图,需求分析的图形工具,IPO图,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号