软件工程需求课件_第1页
软件工程需求课件_第2页
软件工程需求课件_第3页
软件工程需求课件_第4页
软件工程需求课件_第5页
已阅读5页,还剩143页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章用例图第五章用例图1学习内容什么叫用例图用例图的构成要素用例的重要元素用例之间的关系使用Rose创建用例的步骤说明学习内容什么叫用例图2什么叫用例图1.用例图的含义由参与者(Actor)、用例(UseCase)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。要在用例图上显示某个用例,可绘制一个椭圆,然后将用例的名称放在椭圆的中心或椭圆下面的中间位置。要在用例图上绘制一个参与者(表示一个系统用户),可绘制一个人形符号。参与者和用例之间的关系使用带箭头或者不带箭头的线段来描述,箭头表示在这一关系中哪一方是对话的主动发起者,箭头所指方是对话的被动接受者。什么叫用例图1.用例图的含义由参与者(Actor)、用例3什么叫用例图在用例建模中,为了更加清楚的描述用例或者参与者,会使用到注释。什么叫用例图在用例建模中,为了更加清楚的描述用例或者参与者,4什么叫用例图2.用例图的作用用例图是需求分析中的产物,主要作用是描述参与者和用例之间的关系,帮助开发人员可视化的了解系统的功能。借助于用例图,系统用户、系统分析人员、系统设计人员、领域专家能够以可视化的方式对问题进行探讨,减少了大量交流上的障碍,便于对问题达成共识。用例图可视化地表达了系统的需求,具有直观、规范等优点,克服了纯文字性说明的不足。用例方法是完全从外部来定义系统功能,它把需求和设计完全的分离开来。我们不用关心系统内部是如何完成各种功能的,系统对于我们来说就是一个黑箱子。什么叫用例图2.用例图的作用5用例图的构成要素1.参与者参与者(Actor)是指存在于系统外部并直接与系统进行交互的人、系统、子系统或类的外部实体的抽象。每个参与者可以参与一个或多个用例,每个用例也可以有一个或多个参与者。在用例图中使用一个人形图标来表示参与者,参与者的名字写在人形图标下面。用例图的构成要素1.参与者6用例图的构成要素2.参与者间的关系由于参与者实质上也是类,所以它拥有与类相同的关系描述,即参与者与参与者之间主要是泛化关系(或称为“继承”关系)。泛化关系的含义是把某些参与者的共同行为提取出来表示成通用行为,并描述成超类。泛化关系表示的是参与者之间的一般/特殊关系,在UML图中,使用带空心三角箭头的实线表示泛化关系。用例图的构成要素2.参与者间的关系7用例图的构成要素3.系统边界在项目开发过程中,边界是一个非常重要的概念。这里说的系统边界是指系统与系统之间的界限。通常我们所说的系统可以认为是由一系列的相互作用的元素形成的具有特定功能的有机整体。系统同时又是相对的,一个系统本身又可以是另一个更大系统的组成部分,因此,系统与系统之间需要使用系统边界进行区分开来。我们把系统边界以外的同系统相关联的其他部分,称之为系统环境。用例图的构成要素3.系统边界8用例的重要元素1.识别用例任何用例都不能在缺少参与者的情况下独立存在。同样,任何参与者也必须要有与之关联的用例。所以识别用例的最好方法就是从分析系统参与者开始,在这个过程中往往会发现新的参与者。可以通过以下问题来寻找用例:(1)参与者希望系统提供什么功能?(2)参与者是否会读取、创建、修改、删除、存储系统的某种信息?如果是的话,参与者又是如何完成这些操作的?(3)参与者是否会将外部的某些事件通知给系统?(4)系统中发生的事件是否通知参与者?(5)是否存在影响系统的外部事件。用例的重要元素1.识别用例9用例的重要元素2.用例的粒度用例的粒度指的是用例所包含的系统服务或功能单元的多少。用例的粒度越大,用例包含的功能越多,反之则包含的功能越少。如果用例的粒度很小,得到的用例数就会太多。反之,如果用例的粒度很大,那么得到的用例数就会很少。如果用例数目过多会造成用例模型过大和引入设计困难大大提高。如果用例数目过少会造成用例的粒度太大,不便于进一步的充分分析。用例的重要元素2.用例的粒度10用例的重要元素比如:网站后台管理系统中的会员信息维护用例,管理员需要进行添加会员信息、修改会员信息、删除会员信息等操作。我们还可以根据具体的操作把它抽象成3个用例,它展示的系统需求和单个用例是完全一样的。用例的重要元素比如:网站后台管理系统中的会员信息维护用例,管11用例的重要元素3.用例规约对于每一个用例,我们还需要有详细的描述信息,以便让别人对于整个系统有一个更加详细的了解,这些信息包含在用例规约之中。每一个用例的用例规约都应该包含以下内容:(1)简要说明:对用例作用和目的的简要描述。(2)事件流:事件流包括基本流和备选流。基本流描述的是用例的基本流程,是指用例“正常”运行时的场景。(3)用例场景:同一个用例在实际执行的时候会有很多不同的情况发生,称之为用例场景,也可以说用例场景就是用例的实例。(4)特殊需求:特殊需求指的是一个用例的非功能性需求和设计约束。特殊需求通常是非功能性需求,包括可靠性、性能、可用性和可扩展性等。例如法律或法规方面的需求、应用程序标准和所构建系统的质量属性等。(5)前置条件:执行用例之前系统必须所处的状态。例如,前置条件是要求用户有访问的权限或是要求某个用例必须已经执行完。(6)后置条件:用例执行完毕后系统可能处于的一组状态。例如,要求在某个用例执行完后,必须执行另一个用例。用例的重要元素3.用例规约12用例之间的关系1.包含包含关系指用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分。在UML中,包含关系是通过带箭头的虚线段加<<include>>字样来表示,箭头由基础用例(Base)指向被包含用例(Inclusion)。用例之间的关系1.包含13用例之间的关系包含关系代表着基础用例会用到被包含用例,具体的讲就是将被包含用例的事件流插入到基础用例的事件流中。需要注意的是,包含关系是UML1.3中的表述,在UML1.1中,同等语义的关系被表述为使用(uses)。用例之间的关系包含关系代表着基础用例会用到被包含用例,具体的14用例之间的关系在处理包含关系时,具体的做法就是把几个用例的公共部分单独的抽象出来成为一个新的用例。主要有两种情况需要用到包含关系:第一,多个用例用到同一段的行为,则可以把这段共同的行为单独抽象成为一个用例,然后让其他用例来包含这一用例。第二,某一个用例的功能过多、事件流过于复杂时,我们也可以把某一段事件流抽象成为一个被包含的用例,以达到简化描述的目的。用例之间的关系在处理包含关系时,具体的做法就是把几个用例的公15用例之间的关系2.扩展在一定条件下,把新的行为加入到已有的用例中,获得的新用例叫做扩展用例(Extension),原有的用例叫做基础用例(Base),从扩展用例到基础用例的关系就是扩展关系。一个基础用例可以拥有一个或者多个扩展用例,这些扩展用例可以一起使用。用例之间的关系2.扩展16用例之间的关系3.泛化用例的泛化指的是一个父用例可以被特化形成多个子用例,而父用例和子用例之间的关系就是泛化关系。在用例的泛化关系中,子用例继承了父用例所有的结构、行为和关系,子用例是父用例的一种特殊形式。子用例还可以添加、覆盖、改变继承的行为。在UML中,用例的泛化关系通过一个三角箭头从子用例指向父用例来表示。用例之间的关系3.泛化17用例之间的关系泛化的示例:银行存款有两种方式,一种是银行柜台存款,一种是ATM机存款。在这里,银行柜台存款和ATM机存款都是存款的一种特殊方式,因此“存款”为父用例,“银行柜台存款”和“ATM机存款”为子用例。用例之间的关系泛化的示例:银行存款有两种方式,一种是银行柜台18使用Rose创建用例的步骤说明需求分析“学生信息管理系统”部分功能性需求包括以下内容:(1)系统管理员登录后可以对班级的基本信息进行增加、删除、修改、查询等操作。学校领导登录后可以对班级基本信息进行查询操作。(2)教师登录后可以对学生的考试成绩进行录入、删除、修改、查询等操作。学生登录后可以对考试成绩进行查询操作。(3)学生登录后可以了解所有选修课程的具体信息,可以根据自己的需要选择不同课程。系统管理员登录后可以增加、修改、查询、删除选修课程。(4)系统管理员可以对账号进行创建、设置、查看、删除等操作。

使用Rose创建用例的步骤说明需求分析19使用Rose创建用例的步骤说明2.识别参与者对于一个学校来说,最重要的就是教育学生成才,所以我们首先要考虑到的参与者就是学生。要给学生上课,必然就需要教师。教师负责教育学生、并且在日常管理中可以查询学生的基本信息、查询学生的考试成绩。作为一个学校,除了教师和学生,还有不可或缺的就是校领导。为了便于校领导掌握学校的基本情况,加强对学校的管理导.不管什么系统,基本都会有比较专业的人员来负责管理系统,本系统也不例外。系统管理员除了负责维护系统的日常运行,还要进行录入学生基本信息、维护选课信息等工作。使用Rose创建用例的步骤说明2.识别参与者20使用Rose创建用例的步骤说明3.构建用例模型系统管理员直接参与的用例为登录、找回密码、查看班级基本信息、删除班级基本信息、修改班级基本信息和录入班级基本信息。校领导直接参与用例登录、找回密码和查看班级基本信息。当登录过程中发生忘记密码的情况,就需要使用找回密码的功能来找回密码,而在正常情况下用不到找回密码这个功能所以用例找回密码”和用例登录之间是扩展关系。

使用Rose创建用例的步骤说明3.构建用例模型系统管理员直21使用Rose创建用例的步骤说明教师参与用例录入成绩、修改成绩、保存成绩、查询成绩、删除成绩和登录。学生参与用例登录和查询成绩。因为修改成绩和录入成绩的时候都要保存成绩,所以将保存成绩抽象出来作为单独的一个用例。用例录入成绩、修改成绩和用例保存成绩之间是包含关系,用例找回密码和用例登录之间是扩展关系。使用Rose创建用例的步骤说明教师参与用例录入成绩、修改成绩22使用Rose创建用例的步骤说明学生作为参与者直接参与用例查看课程信息、按课程编号查看、按课程名查看、选择课程、删除已选课程、登录和找回密码。系统管理员参与用例登录、找回密码和“维护课程信息”。其中查看课程信息有两种方式,一种是按照课程名查看,另一种是按照课程编号查看。所以查看课程信息是父用例,而按照课程名查看和按照课程编号查看是子用例,他们之间的关系是泛化关系。用例找回密码和用例登录之间是扩展关系。使用Rose创建用例的步骤说明学生作为参与者直接参与用例查看23使用Rose创建用例的步骤说明系统管理员参与用例创建新账号、设置账号、设置账号基本信息、设置账号权限、查看账号和删除账号。在设置帐号时,主要分为设置账号的基本信息和设置账号的权限,为了便于修改和维护,将这两个功能分别抽象为两个用例。所以用例设置账号基本信息、设置账号权限和用例设置账号之间是包含关系。使用Rose创建用例的步骤说明系统管理员参与用例创建新账号、24练习题网络的普及带给了人们更多的学习途径,随之用来管理远程网络教学的“远程网络教学系统”也诞生了。“远程网络教学系统”的功能需求包括:(1)学生登录网站后,可以浏览课件、查找课件、下载课件、观看教学视频。(2)教师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得。(3)系统管理员负责对网站页面的维护,审核不法课件和不法教学信息,批准用户注册。练习题网络的普及带给了人们更多的学习途径,随之用来管理远程网25练习题(1)学生需要登录“远程网络教学系统”后才能正常使用该系统所有功能。如果忘记密码,可以通过“找回密码”功能找回密码。登录后学生可以浏览课件、查找课件、下载课件、观看教学视频,请画出学生参与者的用例图。练习题(1)学生需要登录“远程网络教学系统”后才能正常使用该26练习题(2)教师登录“远程网络教学系统”后可以上传课件、上传教学视频课件、发布教学心得、修改教学心得。如果忘记密码,可以通过“找回密码”功能找回密码。请画出教师参与者的用例图。练习题(2)教师登录“远程网络教学系统”后可以上传课件、上传27软件需求工程(5)

——第5章需求建模方法与技术

PPT:sdnu_cs_2010@Passord:123456软件需求工程(5)

——第5章需求建模方法与技术28需求建模需求建模主要是根据待开发软件系统的需求利用某种建模方法建立该系统的逻辑模型,以帮助软件开发人员检测软件需求的一致性、完全性、二义性和错误等。当前系统模型化目标系统物理模型具体化物理模型抽象化逻辑模型实例化逻辑模型做什么导出理解需求表达需求需求建模需求建模主要是根据待开发软件系统的需求利用某种建模方29逻辑模型VS物理模型逻辑模型给出的是软件要达到的功能和要处理信息之间的关系,而不是实现的细节。物理模型给出的是处理功能和信息结构的实际表现形式,这往往是由设备本身决定的。逻辑模型VS物理模型30需求建模方法的共同特点提供描述手段规定描述模型的手段,包括要记录什么内容及用什么符号来表达等。自然语言、图形符号语言和形式语言等。提供基本步骤规定基本实施步骤,确定每一步的目的,要产生什么样的结果,每步中要注意哪些概念,以及完成该步的工作需要掌握哪些必要的信息和哪些辅助性的工作等。需求建模方法的共同特点提供描述手段31模型的定义根据目的对事物进行的抽象描述。根据实物、设计图或设想,按比例生成或按其他特征制成的同实物相似的物体。把一个数学结构作为某个形式语言的解释时,称为模型。为了理解事物而对事物作出的一种抽象,是对事物的一种无二义性的书面描述。模型的定义根据目的对事物进行的抽象描述。32模型的分类描述性模型能真实和较完整地反映客观世界。规约性模型能用于创造新事物的规约。探测性模型是过渡性的,经常被修改而非最终决定的模型。模型的分类描述性模型33模型概念的差异在数学和逻辑学中,满足理论的客观世界中的对象集合称为模型。例如,利用图论描述网络结构。在软件工程中,对客观世界的问题领域进行抽象,并用某种描述方法表示的结果称为模型。模型概念的差异在数学和逻辑学中,满足理论的客观世界中的对象集34结构化的需求建模方法结构化的分析方法是一种传统的需求建模方法。20世纪70年代,SA方法由美国Yourdon公司和密歇根大学在开发ISDOS工具系统时提出。SA方法主要适用于数据处理,特别是大型管理信息系统的需求分析。SA方法主要用于分析系统的功能,是一种直接根据数据流划分功能层次的分析方法。结构化的需求建模方法结构化的分析方法是一种传统的需求建模方法35软件需求的分类目标需求:表示组织或客户高层次的目标;(描述了组织为什么要开发一个系统)业务需求:描述用户的目标,或用户要求系统必须完成的任务;功能需求:规定开发人员必须在产品中实现的软件功能;性能需求:实际的软件系统功能应达到的技术指标;约束与限制:软件开发人员在设计和实现软件系统时的限制。软件需求的分类目标需求:表示组织或客户高层次的目标;(描述了36SA方法的基本特点SA是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速,自然和方便。表达问题时尽可能使用图形符号的方式;设计数据流图时只考虑系统必须完成的基本功能,不需要考虑如何具体地实现这些功能。SA方法的基本特点37控制流图为了将SA方法用于分析实时控制系统的需求,在数据流图中加入控制成分,产生控制流图。使SA方法既能表示数据转换,又能表示控制状态的变化。控制流图为了将SA方法用于分析实时控制系统的需求,在数据流图38SA方法的基本思想SA方法的基本思想是按照由抽象到具体、逐层分解的方法,确定软件系统内部的数据流、变换的关系,并用数据流图表示。SA方法总的指导思想自顶向下、逐步求精。它的基本原则是功能的分解与抽象。SA方法的基本思想SA方法的基本思想是按照由抽象到具体、逐层39分解:对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解成若干小问题,然后分别解决(如右图)。结构化分析方法的基本思想是“分解”和“抽象”。抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容,这种用最本质的属性表示一个系统的方法就是“抽象”。1.11.21.3x2132.12.22.33.13.2分解:对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,40SA方法的描述手段SA方法的描述手段由三个部分组成:

◆一套分层的数据流图

◆一本词典

◆其他补充材料SA方法的描述手段SA方法的描述手段由三个部分组成:41数据流图的简例STP1P2xyzF加工(P1,P2)数据流(x,y,z)文件(F)数据流的终点(T)数据流的源点(S)数据流图的简例STP1P2xyzF加工(P1,P2)数据流(42DFD图的例子顾客出版社验证订单汇总订单订单出版社订单图书目录文件顾客档案待处理订单文件正确订单一批订单出版社档案文件订货存根文件DFD图的例子顾客出版社验证汇总订单出版社图书目录文件顾客档43数据流图数据流图(DataFlowDiagram,DFD)是描述系统中数据流程的图形工具,它标识了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换为逻辑输出所需的加工处理。数据存储数据源点或终点加工加工名数据流数据流名文件名实体名带标识的有向弧圆或椭圆横线加箭头方框一、数据流图的图符四种基本图形符号:文件名文件名数据流图数据流图(DataFlowDiagram,DFD44数据流数据流是由一组数据项组成的数据,通常由带标识的有向弧表示。数据流可以由单个数据项组成,也可以由一组数据项组成。数据流之间没有任何联系,并且无需标识它们之间的流动次序。每个数据流要有一个合适的名字。在数据流的命名中,不能使用缺乏具体含义的词。例如“信息”、“数据”等。数据流数据流是由一组数据项组成的数据,通常由带标识的有向弧表45数据流分类成绩P取考生成绩分类成绩P考生成绩不能把控制流作为数据流数据流分类成绩P取考生成绩分类成绩P考生成绩不能把控46加工(变换)对数据进行的操作或变换称为加工。加工通常用圆圈或椭圆等表示。各加工与数据流或文件相连接。加工名应该反映出该加工的含义。加工(变换)对数据进行的操作或变换称为加工。47文件文件是存放数据的逻辑单位。文件名文件名文件名表示加工写文件表示加工读文件表示加工读写文件注:文件的命名最好与文件中存放的内容相对应文件文件是存放数据的逻辑单位。文件名文件名文件名表示加工写文48源点和终点源点和终点用于表示数据的来源和最终去向。通常用方框表示。源点和终点主要代表软件系统外的实体。源点和终点源点和终点用于表示数据的来源和最终去向。49DFD实例学员操作员培训中心管理信息系统学员和操作员操作命令电子邮件、信函或询问要求等

入学通知书、收据、回答和响应信息等DFD实例学员操作员培训中心学员和操作员操作命令电子邮件、信50学员收集信息分类事务处理注销复审单据处理学费处理报名处理查询学员电子邮件信函事务信息注销请求学费收费报名请求查询请求产生收费单注册单课程收费单收据注销收费单入学通知书收据注销通知单课程学生学收集分类处理复审处理处理处理学员电子邮件信函事务信息51图书预定系统(顶层DFD图)注意:标注各加工框及数据流名称。顾客出版社验证订单汇总订单订单出版社订单图书目录文件顾客档案待处理订单文件正确订单一批订单出版社档案文件订货存根文件画图步骤:1、确定外部实体及输入、输出数据流。2、确定分解顶层的加工。3、确定使用的文件。4、用数据流将各部分连接起来,形成数据封闭。图书预定系统(顶层DFD图)注意:标注各加工框及数据流名称。52分层的DFD

“先全局后局部,先整体后细节,先抽象后具体”通常可将这种分层的DFD图,分为顶层、中间层、底层。具体步骤:

1。先确定系统范围,画出顶层的DFD图。2。逐层分解顶层DFD图,获得若干中间层DFD图。3。画出底层的DFD图。

顶层图说明了系统的边界,即系统的输入和输出数据流,顶层图只有一张。底层图由一些不能再分解的加工组成,这些加工都已足够简单,称为基本加工。在顶层和底层之间的是中间层。中间层的数据流图描述了某个加工的分解,而它的组成部分又要进一步分解。画各层DFD图时,“由外向内”。分层的DFD“先全局后局部,先整体后细节,先抽象后具53X1321.11.21.41.32.12.21.1.11.1.22.1.32.1.22.1.12.2.22.2.32.2.1顶层中间层底层先全局后局部,先整体后细节,先抽象后具体.0图1图2图1.1图2.1图2.2图分层DFD图X1354画分层DFD图应注意的问题(1)应区别于流程图(2)DFD图的完整性问题(数据守恒和数据封闭原则)所谓数据守恒是指加工的输入输出数据流是否匹配,即每一个加工既有输入数据流又有输出数据流。或者说一个加工至少有一个输入数据流,一个输出数据流。

数据封闭是对整个系统而言。ABC画分层DFD图应注意的问题(1)应区别于流程图ABC55(3)DFD的一致性问题(父图与子图的平衡问题)

父图中某个加工的输入输出数据流应该同相应的子图的输入输出相同(相对应),分层数据流图的这种特点称为子图与父图“平衡”。(3)DFD的一致性问题(父图与子图的平衡问题)56父图与子图平衡14.123456abcdefghi4.24.34.44.5dghf父图与子图平衡14.123456abcdefgh57父图与子图平衡123cfebad3.13.23.3cedg父图与子图平衡123cfebadcedg584)在分层DFD中文件的表示在抽象层中未使用到的文件可以不表示出来,在子图中用到的文件则表示在该子图中。在抽象层中表示出的文件,则应该在相应的某(些)子图中表示出来。4)在分层DFD中文件的表示59(5)分解层级的深度逐层分解的目的是要把复杂的加工分解成比较简单和易于理解的基本加工。

(5)分解层级的深度60分解遵循的一些原则分解最好不超过7或8层,尽量减少分解层次;分解因根据问题的逻辑特性进行,不能硬性分解;每个加工分解为子加工后,子图中的子加工数不易太多,通常为7~10个;上层可分解快些,下层应该慢些;分解要均匀,避免在一张DFD中,有些已是基本加工,另外一些还要分解为多层。分解遵循的一些原则分解最好不超过7或8层,尽量减少分解层次;61何时分解结束一般来说,应该满足两个条件:(1)一个加工能用几句或十几句话就可清楚地描述其含义;(2)一个加工基本上只有一个输入流和输出流何时分解结束一般来说,应该满足两个条件:62画分层DFD的步骤确定软件系统的输入/输出数据流、源点和终点;将基本系统模型加上源点和终点,构成顶层DFD图;画出各层的DFD图。基本系统模型。。。。。。画分层DFD的步骤确定软件系统的输入/输出数据流、源点和终点63画DFD图时应遵循的准则将所有软件的输入/输出数据流用一连串加工连接起来;应集中精力找出数据流;在找到数据流后,标识该数据流,然后分析该数据流的组成成分及来去方向,并将其与加工连接;当加工需要用到共享或暂存数据时,设置文件及其标识;分析加工的内部,如果加工还比较抽象或其内部还有数据流,则需将该加工进一步分解,直至到达底层图;为所有的数据流命名;为所有加工命名编号。画DFD图时应遵循的准则将所有软件的输入/输出数据流用一连串64画DFD图注意事项画图时只考虑如何描述实际情况,不要急于考虑系统应如何启动,如何工作等;画图时可暂不考虑一些例外的情况,如出错处理等;画图的过程是一个重复的过程,需要不断地修改和完善。画DFD图注意事项画图时只考虑如何描述实际情况,不要急于考虑65DFD图的改进DFD图必须经过反复修改,才能获得最终的目标系统的逻辑模型(目标系统的DFD图)。可从以下方面考虑DFD图的改进:

1、检查数据流的正确性①数据守恒②子图、父图的平衡③文件使用是否合理。特别注意输入/出文件的数据流。

2、改进DFD图的易理解性①简化加工之间的联系(加工间的数据流越少,独立性越强,易理解性越好)。②改进分解的均匀性。③适当命名(各成分名称无二义性,准确、具体)。DFD图的改进DFD图必须经过反复修改,才能获得最终的目标66经过初步的需求分析,得到系统功能要求:1、监视病员的病症(血压、体温、脉搏等)。2、定时更新病历。3、病员出现异常情况时报警。4、随机地产生某一病员的病情报告。3.2.4实例:医院病房监护系统产生病情报告监视病情更新病历3.2.4实例:医院病房监护系统经过初步的需求分析,得到系统功能要求:3.2.4实例:医院67系统功能要求:1、监视病员的病症(血压、体温、脉搏等)2、定时更新病历3、病员出现异常情况时报警。4、随机地产生某一病员的病情报告。顶层:患者护士护士病员监护系统病员病历患者生理信号要求报告病症报告报警信息医院病房监护系统系统功能要求:顶层:患者护士护士病员监病员病历患者生理信号要68医院病房监护系统第一层DFD图第一层:患者护士护士中央监视患者病历患者生理信号要求报告病症报告报警本地检测生成报告患者病情极限更新病历患者生理数据整理后的患者生理数据生理信号极限值1324日志数据日志数据医院病房监护系统第一层DFD图第一层:患者护士护士中央监视患69医院病房监护系统二层DFD图第二层:加工“中央监视”分解计算超过极限值否患者生理数据超过极限值报警分析患者信息产生报警信息患者病情界限整理患者的生理数据体温血压、体温脉搏生理信号极限值时间脉搏血压日期时钟整理后的患者生理数据3.13.23.33.4医院病房监护系统二层DFD图第二层:加工“中央监视”分解计算70计算超过极限值否患者生理数据超过极限值报警分析患者信息产生报警信息病情极限整理患者的生理数据体温血压、体温、脉搏生理信号极限值时间脉搏血压日期时钟整理后的生理数据3.13.23.33.4第二层:加工“中央监视”分解医院病房监护系统分层DFD图图2..15第一层整理后的生理数据生理信号极限值患者护士护士中央监视患者病历生理信号要求报告病症报告报警局部监视生成报告病情极限更新病历病员数据1324病历数据图2..16计算超过患者生理数据超过极限值报警分析产生病情极限体温血压、71数据词典

分层数据流图只是表达了系统的“分解”,为了完整地描述这个系统,还需借助“数据词典”对图中的每个数据和加工给出解释。对数据流图中包含的所有元素的定义的集合构成了数据词典。词典中可有以下四种类型的条目:数据流文件数据项加工数据词典分层数据流图只是表达了系统的“分解”,为了完整72

A、数据流条目给出某个数据流的定义,通常是列出该数据流的各组成数据项。例如:报名单=姓名+单位名+年龄+性别+课程名常用符号:=、+、[|]、{}、()、B、文件条目给出某个文件的定义,同数据流一样,文件的定义通常是列出文件记录的组成数据流例如某销售系统的订单文件:订单文件=订单编号+顾客名称+产品名称+订货数量+交货日期A、数据流条目给出某个数据流的定义,通常是列出该73C、数据项条目

数据项条目给出某个数据单项的定义,通常是数据项的值类型,允许的取值范围。D、加工条目加工类条目就是“加工小说明”。一般应该单独列出。加工条目主要描述加工的处理逻辑或“做什么”标识符类型长度中文名称来源去向JS整型3教室教务处学员C、数据项条目D、加工条目标识符类型长度中文名称来源去74

第五章用例图第五章用例图75学习内容什么叫用例图用例图的构成要素用例的重要元素用例之间的关系使用Rose创建用例的步骤说明学习内容什么叫用例图76什么叫用例图1.用例图的含义由参与者(Actor)、用例(UseCase)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。要在用例图上显示某个用例,可绘制一个椭圆,然后将用例的名称放在椭圆的中心或椭圆下面的中间位置。要在用例图上绘制一个参与者(表示一个系统用户),可绘制一个人形符号。参与者和用例之间的关系使用带箭头或者不带箭头的线段来描述,箭头表示在这一关系中哪一方是对话的主动发起者,箭头所指方是对话的被动接受者。什么叫用例图1.用例图的含义由参与者(Actor)、用例77什么叫用例图在用例建模中,为了更加清楚的描述用例或者参与者,会使用到注释。什么叫用例图在用例建模中,为了更加清楚的描述用例或者参与者,78什么叫用例图2.用例图的作用用例图是需求分析中的产物,主要作用是描述参与者和用例之间的关系,帮助开发人员可视化的了解系统的功能。借助于用例图,系统用户、系统分析人员、系统设计人员、领域专家能够以可视化的方式对问题进行探讨,减少了大量交流上的障碍,便于对问题达成共识。用例图可视化地表达了系统的需求,具有直观、规范等优点,克服了纯文字性说明的不足。用例方法是完全从外部来定义系统功能,它把需求和设计完全的分离开来。我们不用关心系统内部是如何完成各种功能的,系统对于我们来说就是一个黑箱子。什么叫用例图2.用例图的作用79用例图的构成要素1.参与者参与者(Actor)是指存在于系统外部并直接与系统进行交互的人、系统、子系统或类的外部实体的抽象。每个参与者可以参与一个或多个用例,每个用例也可以有一个或多个参与者。在用例图中使用一个人形图标来表示参与者,参与者的名字写在人形图标下面。用例图的构成要素1.参与者80用例图的构成要素2.参与者间的关系由于参与者实质上也是类,所以它拥有与类相同的关系描述,即参与者与参与者之间主要是泛化关系(或称为“继承”关系)。泛化关系的含义是把某些参与者的共同行为提取出来表示成通用行为,并描述成超类。泛化关系表示的是参与者之间的一般/特殊关系,在UML图中,使用带空心三角箭头的实线表示泛化关系。用例图的构成要素2.参与者间的关系81用例图的构成要素3.系统边界在项目开发过程中,边界是一个非常重要的概念。这里说的系统边界是指系统与系统之间的界限。通常我们所说的系统可以认为是由一系列的相互作用的元素形成的具有特定功能的有机整体。系统同时又是相对的,一个系统本身又可以是另一个更大系统的组成部分,因此,系统与系统之间需要使用系统边界进行区分开来。我们把系统边界以外的同系统相关联的其他部分,称之为系统环境。用例图的构成要素3.系统边界82用例的重要元素1.识别用例任何用例都不能在缺少参与者的情况下独立存在。同样,任何参与者也必须要有与之关联的用例。所以识别用例的最好方法就是从分析系统参与者开始,在这个过程中往往会发现新的参与者。可以通过以下问题来寻找用例:(1)参与者希望系统提供什么功能?(2)参与者是否会读取、创建、修改、删除、存储系统的某种信息?如果是的话,参与者又是如何完成这些操作的?(3)参与者是否会将外部的某些事件通知给系统?(4)系统中发生的事件是否通知参与者?(5)是否存在影响系统的外部事件。用例的重要元素1.识别用例83用例的重要元素2.用例的粒度用例的粒度指的是用例所包含的系统服务或功能单元的多少。用例的粒度越大,用例包含的功能越多,反之则包含的功能越少。如果用例的粒度很小,得到的用例数就会太多。反之,如果用例的粒度很大,那么得到的用例数就会很少。如果用例数目过多会造成用例模型过大和引入设计困难大大提高。如果用例数目过少会造成用例的粒度太大,不便于进一步的充分分析。用例的重要元素2.用例的粒度84用例的重要元素比如:网站后台管理系统中的会员信息维护用例,管理员需要进行添加会员信息、修改会员信息、删除会员信息等操作。我们还可以根据具体的操作把它抽象成3个用例,它展示的系统需求和单个用例是完全一样的。用例的重要元素比如:网站后台管理系统中的会员信息维护用例,管85用例的重要元素3.用例规约对于每一个用例,我们还需要有详细的描述信息,以便让别人对于整个系统有一个更加详细的了解,这些信息包含在用例规约之中。每一个用例的用例规约都应该包含以下内容:(1)简要说明:对用例作用和目的的简要描述。(2)事件流:事件流包括基本流和备选流。基本流描述的是用例的基本流程,是指用例“正常”运行时的场景。(3)用例场景:同一个用例在实际执行的时候会有很多不同的情况发生,称之为用例场景,也可以说用例场景就是用例的实例。(4)特殊需求:特殊需求指的是一个用例的非功能性需求和设计约束。特殊需求通常是非功能性需求,包括可靠性、性能、可用性和可扩展性等。例如法律或法规方面的需求、应用程序标准和所构建系统的质量属性等。(5)前置条件:执行用例之前系统必须所处的状态。例如,前置条件是要求用户有访问的权限或是要求某个用例必须已经执行完。(6)后置条件:用例执行完毕后系统可能处于的一组状态。例如,要求在某个用例执行完后,必须执行另一个用例。用例的重要元素3.用例规约86用例之间的关系1.包含包含关系指用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分。在UML中,包含关系是通过带箭头的虚线段加<<include>>字样来表示,箭头由基础用例(Base)指向被包含用例(Inclusion)。用例之间的关系1.包含87用例之间的关系包含关系代表着基础用例会用到被包含用例,具体的讲就是将被包含用例的事件流插入到基础用例的事件流中。需要注意的是,包含关系是UML1.3中的表述,在UML1.1中,同等语义的关系被表述为使用(uses)。用例之间的关系包含关系代表着基础用例会用到被包含用例,具体的88用例之间的关系在处理包含关系时,具体的做法就是把几个用例的公共部分单独的抽象出来成为一个新的用例。主要有两种情况需要用到包含关系:第一,多个用例用到同一段的行为,则可以把这段共同的行为单独抽象成为一个用例,然后让其他用例来包含这一用例。第二,某一个用例的功能过多、事件流过于复杂时,我们也可以把某一段事件流抽象成为一个被包含的用例,以达到简化描述的目的。用例之间的关系在处理包含关系时,具体的做法就是把几个用例的公89用例之间的关系2.扩展在一定条件下,把新的行为加入到已有的用例中,获得的新用例叫做扩展用例(Extension),原有的用例叫做基础用例(Base),从扩展用例到基础用例的关系就是扩展关系。一个基础用例可以拥有一个或者多个扩展用例,这些扩展用例可以一起使用。用例之间的关系2.扩展90用例之间的关系3.泛化用例的泛化指的是一个父用例可以被特化形成多个子用例,而父用例和子用例之间的关系就是泛化关系。在用例的泛化关系中,子用例继承了父用例所有的结构、行为和关系,子用例是父用例的一种特殊形式。子用例还可以添加、覆盖、改变继承的行为。在UML中,用例的泛化关系通过一个三角箭头从子用例指向父用例来表示。用例之间的关系3.泛化91用例之间的关系泛化的示例:银行存款有两种方式,一种是银行柜台存款,一种是ATM机存款。在这里,银行柜台存款和ATM机存款都是存款的一种特殊方式,因此“存款”为父用例,“银行柜台存款”和“ATM机存款”为子用例。用例之间的关系泛化的示例:银行存款有两种方式,一种是银行柜台92使用Rose创建用例的步骤说明需求分析“学生信息管理系统”部分功能性需求包括以下内容:(1)系统管理员登录后可以对班级的基本信息进行增加、删除、修改、查询等操作。学校领导登录后可以对班级基本信息进行查询操作。(2)教师登录后可以对学生的考试成绩进行录入、删除、修改、查询等操作。学生登录后可以对考试成绩进行查询操作。(3)学生登录后可以了解所有选修课程的具体信息,可以根据自己的需要选择不同课程。系统管理员登录后可以增加、修改、查询、删除选修课程。(4)系统管理员可以对账号进行创建、设置、查看、删除等操作。

使用Rose创建用例的步骤说明需求分析93使用Rose创建用例的步骤说明2.识别参与者对于一个学校来说,最重要的就是教育学生成才,所以我们首先要考虑到的参与者就是学生。要给学生上课,必然就需要教师。教师负责教育学生、并且在日常管理中可以查询学生的基本信息、查询学生的考试成绩。作为一个学校,除了教师和学生,还有不可或缺的就是校领导。为了便于校领导掌握学校的基本情况,加强对学校的管理导.不管什么系统,基本都会有比较专业的人员来负责管理系统,本系统也不例外。系统管理员除了负责维护系统的日常运行,还要进行录入学生基本信息、维护选课信息等工作。使用Rose创建用例的步骤说明2.识别参与者94使用Rose创建用例的步骤说明3.构建用例模型系统管理员直接参与的用例为登录、找回密码、查看班级基本信息、删除班级基本信息、修改班级基本信息和录入班级基本信息。校领导直接参与用例登录、找回密码和查看班级基本信息。当登录过程中发生忘记密码的情况,就需要使用找回密码的功能来找回密码,而在正常情况下用不到找回密码这个功能所以用例找回密码”和用例登录之间是扩展关系。

使用Rose创建用例的步骤说明3.构建用例模型系统管理员直95使用Rose创建用例的步骤说明教师参与用例录入成绩、修改成绩、保存成绩、查询成绩、删除成绩和登录。学生参与用例登录和查询成绩。因为修改成绩和录入成绩的时候都要保存成绩,所以将保存成绩抽象出来作为单独的一个用例。用例录入成绩、修改成绩和用例保存成绩之间是包含关系,用例找回密码和用例登录之间是扩展关系。使用Rose创建用例的步骤说明教师参与用例录入成绩、修改成绩96使用Rose创建用例的步骤说明学生作为参与者直接参与用例查看课程信息、按课程编号查看、按课程名查看、选择课程、删除已选课程、登录和找回密码。系统管理员参与用例登录、找回密码和“维护课程信息”。其中查看课程信息有两种方式,一种是按照课程名查看,另一种是按照课程编号查看。所以查看课程信息是父用例,而按照课程名查看和按照课程编号查看是子用例,他们之间的关系是泛化关系。用例找回密码和用例登录之间是扩展关系。使用Rose创建用例的步骤说明学生作为参与者直接参与用例查看97使用Rose创建用例的步骤说明系统管理员参与用例创建新账号、设置账号、设置账号基本信息、设置账号权限、查看账号和删除账号。在设置帐号时,主要分为设置账号的基本信息和设置账号的权限,为了便于修改和维护,将这两个功能分别抽象为两个用例。所以用例设置账号基本信息、设置账号权限和用例设置账号之间是包含关系。使用Rose创建用例的步骤说明系统管理员参与用例创建新账号、98练习题网络的普及带给了人们更多的学习途径,随之用来管理远程网络教学的“远程网络教学系统”也诞生了。“远程网络教学系统”的功能需求包括:(1)学生登录网站后,可以浏览课件、查找课件、下载课件、观看教学视频。(2)教师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得。(3)系统管理员负责对网站页面的维护,审核不法课件和不法教学信息,批准用户注册。练习题网络的普及带给了人们更多的学习途径,随之用来管理远程网99练习题(1)学生需要登录“远程网络教学系统”后才能正常使用该系统所有功能。如果忘记密码,可以通过“找回密码”功能找回密码。登录后学生可以浏览课件、查找课件、下载课件、观看教学视频,请画出学生参与者的用例图。练习题(1)学生需要登录“远程网络教学系统”后才能正常使用该100练习题(2)教师登录“远程网络教学系统”后可以上传课件、上传教学视频课件、发布教学心得、修改教学心得。如果忘记密码,可以通过“找回密码”功能找回密码。请画出教师参与者的用例图。练习题(2)教师登录“远程网络教学系统”后可以上传课件、上传101软件需求工程(5)

——第5章需求建模方法与技术

PPT:sdnu_cs_2010@Passord:123456软件需求工程(5)

——第5章需求建模方法与技术102需求建模需求建模主要是根据待开发软件系统的需求利用某种建模方法建立该系统的逻辑模型,以帮助软件开发人员检测软件需求的一致性、完全性、二义性和错误等。当前系统模型化目标系统物理模型具体化物理模型抽象化逻辑模型实例化逻辑模型做什么导出理解需求表达需求需求建模需求建模主要是根据待开发软件系统的需求利用某种建模方103逻辑模型VS物理模型逻辑模型给出的是软件要达到的功能和要处理信息之间的关系,而不是实现的细节。物理模型给出的是处理功能和信息结构的实际表现形式,这往往是由设备本身决定的。逻辑模型VS物理模型104需求建模方法的共同特点提供描述手段规定描述模型的手段,包括要记录什么内容及用什么符号来表达等。自然语言、图形符号语言和形式语言等。提供基本步骤规定基本实施步骤,确定每一步的目的,要产生什么样的结果,每步中要注意哪些概念,以及完成该步的工作需要掌握哪些必要的信息和哪些辅助性的工作等。需求建模方法的共同特点提供描述手段105模型的定义根据目的对事物进行的抽象描述。根据实物、设计图或设想,按比例生成或按其他特征制成的同实物相似的物体。把一个数学结构作为某个形式语言的解释时,称为模型。为了理解事物而对事物作出的一种抽象,是对事物的一种无二义性的书面描述。模型的定义根据目的对事物进行的抽象描述。106模型的分类描述性模型能真实和较完整地反映客观世界。规约性模型能用于创造新事物的规约。探测性模型是过渡性的,经常被修改而非最终决定的模型。模型的分类描述性模型107模型概念的差异在数学和逻辑学中,满足理论的客观世界中的对象集合称为模型。例如,利用图论描述网络结构。在软件工程中,对客观世界的问题领域进行抽象,并用某种描述方法表示的结果称为模型。模型概念的差异在数学和逻辑学中,满足理论的客观世界中的对象集108结构化的需求建模方法结构化的分析方法是一种传统的需求建模方法。20世纪70年代,SA方法由美国Yourdon公司和密歇根大学在开发ISDOS工具系统时提出。SA方法主要适用于数据处理,特别是大型管理信息系统的需求分析。SA方法主要用于分析系统的功能,是一种直接根据数据流划分功能层次的分析方法。结构化的需求建模方法结构化的分析方法是一种传统的需求建模方法109软件需求的分类目标需求:表示组织或客户高层次的目标;(描述了组织为什么要开发一个系统)业务需求:描述用户的目标,或用户要求系统必须完成的任务;功能需求:规定开发人员必须在产品中实现的软件功能;性能需求:实际的软件系统功能应达到的技术指标;约束与限制:软件开发人员在设计和实现软件系统时的限制。软件需求的分类目标需求:表示组织或客户高层次的目标;(描述了110SA方法的基本特点SA是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速,自然和方便。表达问题时尽可能使用图形符号的方式;设计数据流图时只考虑系统必须完成的基本功能,不需要考虑如何具体地实现这些功能。SA方法的基本特点111控制流图为了将SA方法用于分析实时控制系统的需求,在数据流图中加入控制成分,产生控制流图。使SA方法既能表示数据转换,又能表示控制状态的变化。控制流图为了将SA方法用于分析实时控制系统的需求,在数据流图112SA方法的基本思想SA方法的基本思想是按照由抽象到具体、逐层分解的方法,确定软件系统内部的数据流、变换的关系,并用数据流图表示。SA方法总的指导思想自顶向下、逐步求精。它的基本原则是功能的分解与抽象。SA方法的基本思想SA方法的基本思想是按照由抽象到具体、逐层113分解:对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解成若干小问题,然后分别解决(如右图)。结构化分析方法的基本思想是“分解”和“抽象”。抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容,这种用最本质的属性表示一个系统的方法就是“抽象”。1.11.21.3x2132.12.22.33.13.2分解:对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,114SA方法的描述手段SA方法的描述手段由三个部分组成:

◆一套分层的数据流图

◆一本词典

◆其他补充材料SA方法的描述手段SA方法的描述手段由三个部分组成:115数据流图的简例STP1P2xyzF加工(P1,P2)数据流(x,y,z)文件(F)数据流的终点(T)数据流的源点(S)数据流图的简例STP1P2xyzF加工(P1,P2)数据流(116DFD图的例子顾客出版社验证订单汇总订单订单出版社订单图书目录文件顾客档案待处理订单文件正确订单一批订单出版社档案文件订货存根文件DFD图的例子顾客出版社验证汇总订单出版社图书目录文件顾客档117数据流图数据流图(DataFlowDiagram,DFD)是描述系统中数据流程的图形工具,它标识了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换为逻辑输出所需的加工处理。数据存储数据源点或终点加工加工名数据流数据流名文件名实体名带标识的有向弧圆或椭圆横线加箭头方框一、数据流图的图符四种基本图形符号:文件名文件名数据流图数据流图(DataFlowDiagram,DFD118数据流数据流是由一组数据项组成的数据,通常由带标识的有向弧表示。数据流可以由单个数据项组成,也可以由一组数据项组成。数据流之间没有任何联系,并且无需标识它们之间的流动次序。每个数据流要有一个合适的名字。在数据流的命名中,不能使用缺乏具体含义的词。例如“信息”、“数据”等。数据流数据流是由一组数据项组成的数据,通常由带标识的有向弧表119数据流分类成绩P取考生成绩分类成绩P考生成绩不能把控制流作为数据流数据流分类成绩P取考生成绩分类成绩P考生成绩不能把控120加工(变换)对数据进行的操作或变换称为加工。加工通常用圆圈或椭圆等表示。各加工与数据流或文件相连接。加工名应该反映出该加工的含义。加工(变换)对数据进行的操作或变换称为加工。121文件文件是存放数据的逻辑单位。文件名文件名文件名表示加工写文件表示加工读文件表示加工读写文件注:文件的命名最好与文件中存放的内容相对应文件文件是存放数据的逻辑单位。文件名文件名文件名表示加工写文122源点和终点源点和终点用于表示数据的来源和最终去向。通常用方框表示。源点和终点主要代表软件系统外的实体。源点和终点源点和终点用于表示数据的来源和最终去向。123DFD实例学员操作员培训中心管理信息系统学员和操作员操作命令电子邮件、信函或询问要求等

入学通知书、收据、回答和响应信息等DFD实例学员操作员培训中心学员和操作员操作命令电子邮件、信124学员收集信息分类事务处理注销复审单据处理学费处理报名处理查询学员电子邮件信函事务信息注销请求学费收费报名请求查询请求产生收费单注册单课程收费单收据注销收费单入学通知书收据注销通知单课程学生学收集分类处理复审处理处理处理学员电子邮件信函事务信息125图书预定系统(顶层DFD图)注意:标注各加工框及数据流名称。顾客出版社验证订单汇总订单订单出版社订单图书目录文件顾客档案待处理订单文件正确订单一批订单出版社档案文件订货存根文件画图步骤:1、确定外部实体及输入、输出数据流。2、确定分解顶层的加工。3、确定使用的文件。4、用数据流将各部分连接起来,形成数据封闭。图书预定系统(顶层DFD图)注意:标注各加工框及数据流名称。126分层的DFD

“先全局后局部,先整体后细节,先抽象后具体”通常可将这种分层的DFD图,分为顶层、中间层、底层。具体步骤:

1。先确定系统范围,画出顶层的DFD图。2。逐层分解顶层DFD图,获得若干中间层DFD图。3。画出底层的DFD图。

顶层图说明了系统的边界,即系统的输入和输出数据流,顶层图只有一张。底层图由一些不能再分解的加工组成,这些加工都已足够简单,称为基本加工。在顶层和底层之间的是中间层。中间层的数据流图描述了某个加工的分解,而它的组成部分又要进一步分解。画各层DFD图时,“由外向内”。分层的DFD“先全局后局部,先整体后细节,先抽象后具127X1321.11.21.41.32.12.21.1.11.1.22.1.32.1.22.1.12.2.22.2.32.2.1顶层中间层底层先全局后局部,先整体后细节,先抽象后具体.0图1图2图1.1图2.1图2.2图分层DFD图X13128画分层DFD图应注意的问题(1)应区别于流程图(2)DFD图的完整性问题(数据守恒和数据封闭原则)所谓数据守恒是指加工的输入输出数据流是否匹配,即每一个加工既有输入数据流又有输出数据流。或者说一个加工至少有一个输入数据流,一个输出数据流。

数据封闭是对整个系统而言。ABC画分层DFD图应注意的问题(1)应区别于流程图ABC129(3)DFD的一致性问题(父图与子图的平衡问题)

父图中某个加工的输入输出数据流应该同相应的子图的输入输出相同(相对应),分层数据流图的这种特点称为子图与父图“平衡”。(3)DFD的一致性问题(父图与子图的平衡问题)130父图与子图平衡14.123456abcdefghi4.24.34.44.5dghf父图与子图平衡14.123456abcdefgh131父图与子图平衡123cfebad3.13.23.3cedg父图与子图平衡123cfebadcedg1324)在分层DFD中文件的表示在抽象层中未使用到的文件可以不表示出来,在子图中用到的文件则表示在该子图中。在抽象层中表示出的文件,则应该在相应的某(些)子图中表示出来。4)在分层DFD中文件的表示133(5)分解层级的深度逐层分解的目的是要把复杂的加工分解成比较简单和易于理解的基本加工。

(5)分解层级的深度134分解遵循的一些原则分解最好不超过7或8层,尽量减少分解层次;分解因根据问题的逻辑特性进行,不能硬性分解;每个加工分解为子加工后,子图中的子加工数不易太多,通常为7~10个;上层可分解快些,下层

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论