基于uml建模的设计与分析概要

上传人:今*** 文档编号:109984166 上传时间:2019-10-28 格式:PPT 页数:43 大小:1.95MB
返回 下载 相关 举报
基于uml建模的设计与分析概要_第1页
第1页 / 共43页
基于uml建模的设计与分析概要_第2页
第2页 / 共43页
基于uml建模的设计与分析概要_第3页
第3页 / 共43页
基于uml建模的设计与分析概要_第4页
第4页 / 共43页
基于uml建模的设计与分析概要_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《基于uml建模的设计与分析概要》由会员分享,可在线阅读,更多相关《基于uml建模的设计与分析概要(43页珍藏版)》请在金锄头文库上搜索。

1、基于UML的 系统分析与设计,软件学院,2,1 统一建模语言UML概述 1.1 UML及其优点 什么是UML ( Unify Modeling Language ) ? UML 是一种通用的、统一的的建模语言,是一种用图形方式描绘面向对象软件系统结构的有效方法。 UML的优点 (1)UML是一种定义良好,易于表达,功能强大且普遍实用的标准建模语言。 (2)UML是综合了面向对象领域的几种优秀方法的特点和长处而提出的,是一种国际标准的建模语言,适合于面向对象分析与设计的建模描述。 (3) UML是软件业界的第一个统一的建模语言,并得到工业界 的广泛支持。,3,1.2 UML的模型视图 用UML描

2、述的系统模型一般是由几种视图组成的。UML主要提供了9种视图:用例图、类图、对象图、组件图、配置图、序列图、协作图、状态图和活动图,如下图所示。,4,1.3 用例图 (1)用例图定义 用例图是从用户使用系统的角度描述系统功能的图形表达方法。 一个用例(Use Case) 是用于描述系统的一项功能需求或系统提供给用户的一项服务。 (2)用例图举例 右边为自动售货机系统的用例图。图中的方框代表系统,椭圆代表用例(售货、供货和取货款是自动售货机系统的典型用例),小人形(线条人)代表行为者,它们之间的连线表示关系。,5,1.4 类图 (1)类图的定义 类图是表达构成系统的类及其相互联系的图示。类图是面

3、向对象设计的核心,建立状态图、协作图和其他图的基础。 (2)类图的描绘方法 (1)使用名词/动词分析法来寻找构成系统的类,描绘这些类; (2)建立类与类之间的联系,包括关联、聚合/组合、泛化/特化、依赖等。,6,7,1.5 对象图 (1) 对象图的定义 对象图(Object Diagram)表示一组对象和它们之间的联系。对象图实质上是类图的实例,也称实例图(Instance Diagram) 。对象图的表示方法与类图的表示方法大体相同。 对象图是系统在某个特定时刻的具体状态。 (2) 对象图举例,8,1.6 序列图 (1) 序列图的定义 序列图用来描述一组对象间的交互关系,它表示为完成某项操作

4、所需的参与对象和这些对象之间传递消息的时间顺序。 (2)序列图举例,9,1.7 状态图 (1)状态图(StatechartDiagram)的定义 状态图描述系统运行过程中某类对象可能出现的状态,以及在不同状态间的跳转和触发这些跳转的外部事件。状态图侧重于描述对象在其生命周期中的动态行为。 (2) 状态图的组成 UML状态图的图形元素包括:初始状态、转移、 (中间)状态、判定、同步和终止状态。,10,1.8 活动图 (1)活动图的定义 活动图(activity diagram)用于描述系统业务流程或工作流程。 活动图由一系列的动作状态构成,动作的状态控制可以从一个状态转向另一个与之相邻的状态。

5、活动图还可以表示条件判断、分支决策、动作状态的并行执行、消息的规范说明等内容。,11,(2)活动图的组成 活动图的基本元素包括:活动状态、动作流、泳道、对象流,另外还包括初始状态、终止状态、判定、 分叉、合并等元素。,12,1.9 协作图 (1)协作图的定义 用来描述实现某些服务所涉及的对象及其相互之间的关系(包括消息通信)的图示就称为协作图(Collaboration)。协作图可用来描绘业务流程。 (2)协作图举例,13,1.10 组件图 (1) 组件图的定义 组件是提供了一组接口的物理实现模块,它可以是软件开发过程中的产物,如源码、二进制码和可执行码等。它们是类、接口等逻辑模型的物理实现。

6、接口是为外部提供可调用函数原型的程序模块。 组件图表示构成系统的组件及其相互之间的联系。它是描述系统的软件结构的模型。,14,(2) 组件图的组成 组件图由组件、接口和组件之间的联系构成。 a)组件由一个左边嵌两个小矩形的大矩形表示,大矩形中填写组件的名字。 b)接口由一个空心圆表示。 c)组件之间的依赖是指一个组件的模型元素需要使用另一个组件的模型元素。依赖用一个虚箭线表示,箭线从客户组件指向供应者组件。,15,1.11 配置图 (1)配置图定义 配置图就是用于表示构成分布式系统的节点集 和节点之间的联系的图示,它可以表示系统中 软件和硬件的物理架构。,16,17,2 基于UML的面向对象系

7、统开发方法,像一般的系统开发方法一样,基于UML的面向对象系统开发方法也可以分为如下步骤: (1)需求分析(用例分析) 建立用例模型来描述用户需求; (2)系统分析将用例模型转化为由类图和对象图组成 的分析模型; (3)系统设计 a)用编程语言或接近编程语言的语言来更精确地描述类图和对象图,以便于后面能将类图和对象图映射到编码实现的系统。 b)在详细设计阶段要对每个用例进行动态建模,包括建立序列图、协作图等,以描述如何通过类图中的对象协作实现用例中的功能。随着动态建模的深入,会发现前面建立的类往往存在缺陷或不够完整,需要对分析中得到的类图进行不断的修正和调整。 (4)系统实现用源代码、脚本语言

8、、二进制代码、可 执行子程序或组件实现系统。,18,3 UML的应用举例1图书管理系统的建模 下面以一个图书管理系统的建模为例,介绍使用UML进行建模的基本过程。整个系统的分析以及设计过程按照软件开发的一般流程进行,包括如下步骤: 需求分析 系统分析 系统设计 系统实现,19,3.1 需求分析 3.1.1 图书管理系统功能概述 图书管理主要是借书、还书以及其他一些附 带操作(例如,超期罚款、催还图书等)的处 理。一个简单的图书管理系统应提供如下功能: 借书处理:完成读者借书的流程处理。 还书处理:完成读者还书的流程处理。 信息查询:包括图书信息查询和读者借阅情况查询。 图书管理:包括输入新书记

9、录和删除旧书记录。,20,3.1.2 系统主要业务流程分析 与系统功能相对应,系统主要有四个流程:借书流程、还书流程、资料查询、图书资源管理。各流程的主要过程描述如下: 借书流程:读者借阅所需的图书,借出后图书的借阅标志为false(已被借出),借书记录中增加一个实例。 还书流程:读者归还所借的图书,还书后图书的借阅标志为true(可被外借),借书记录中删除一个实例。,21,信息查询:读者和工作人员可以进行图书信息查询,输入图书的编号或书名,从图书对象列表中查找相应的实例。 图书管理:首先由工作人员在“录入新书资料”和“删除旧书资料”两个选项中选择。若是“录入新书资料”,则由工作人员输入新书资

10、料,将新书添加为图书对象列表的新实例。若是“删除旧书资料”,则查找需要删除的图书,将其从图书对象列表中删除。,22,3.1.3 系统功能模块分析,满足上述需求的系统应该相应地包括以下几个功能模块: 基本业务处理模块:主要用于实现图书管理员对读者借书和还书的处理。 信息查询模块:主要用于实现读者对图书信息和自身借阅信息的查询。 系统维护模块:主要用于实现系统管理员对读者信息、图书管理员信息、图书信息、和数据库的管理。,23,3.1.4 建立用例模型 根据功能需求构造用例模型,主要任务是识别系统中的所有参与者,并对每个参与者找出其用例,建立用例模型。 系统主要的参与者为“读者”、“图书管理员”和“

11、系统管理员”。各个参与者的用例图如下。,24,(1)读者用例图,25,(2)图书管理员用例图,26,(3)系统管理员用例图,27,3.1.5 详述用例,在设别了参与者和主要用例并创建了用例图之后,如果有必要,还可以按顺序详述每个用例,包括用例如何开始、结束以及如何与参与者进行交互。,28,29,30,3.2 系统分析 在定义系统需求后,下一步就是确定构成系统的对象类。系统中对象类的识别可以使用名词/动词分析法来进行,即文本中的名词和名词短语暗示类或类的属性,动词和动词短语暗示职责或者类的操作。 通过用例图的分析可知,在图书管理系统中可以确定的主要对象类包括 “读者”,“图书”、“图书管理人员”

12、和系统管理员。其中“读者”和“图书”通过借阅关系可以构成一个新类“借阅记录”。,31,另外,分析用例图可知,用例“身份验证”和“图书资料查询”是对象类“读者”和“工作人员”共同拥有的,并且用例“身份验证”是除用例“图书资料查询”之外其余用例执行的前提,因此可以将“身份验证”与“图书资料查询”定义为接口类中的操作(接口类是不含属性且操作函数没有具体实现的抽象类,接口类通过一个实现联系获得其它对象类的支持,这些对象类实现接口类中定义的全部操作)。其余用例则抽象为与该用例交互的参与者所属对象类的操作。,32,因此,最后可获得的对象类图为:,33,除了定义上述用于系统数据信息存储管理和业务逻辑 控制的

13、类之外,在用图形用户界面开发系统时,我们还可以定义一些相应的用户界面类: (1)MainWindow类MainWindow是图书管理员与系统交互的主界面,系统的主界面具有菜单,当用户选择不同的菜单项时,MainWindow对象调用相应的方法完成功能操作。 (2)BorrowDialog类BorrowDialog是进行借书操作时需要的对话框。 (3)ReturnDialog类ReturnDialog是进行还书操作时需要的对话框。 (4)QueryDialog类QueryDialog是查询某借阅者的借阅信息或图书库存信息的对话框。 (5)MaintenanceWindow类MaintenanceW

14、indow是系统管理员对系统进行维护的主界面。它也提供菜单项.,34,35,3.3 系统设计,系统设计的主要工作是用例实现设计。即对每个用例进行动态建模,包括建立序列图、协作图等,描述如何通过类对象的协作来实现用例中的功能。随着动态建模的深入,会发现原来建立的类存在缺陷或不够完整,需要对分析中得到的类图进行不断的修正和调整。所以,还应该通过动态建模来修正和完善类图。,36,3.3.1 用例动态模型设计,37,38,3.3.2 类图设计,进一步扩充和细化分析阶段定义的类,包括定义新的类来处理用户的需求。 随着动态建模的深入,也会发现原来建立的类存在缺陷或不够完整,需要对分析中得到的类图进行不断的修正和调整。所以,还应该通过动态建模来修正和完善类图。,39,40,3.3.3 物理架构设计 物理架构设计就是用UML图形描述系统软件和硬件的大致结构,包括画出组件图和配置图。 (1)组件图:图书管理系统的组件图如下所示,其中包含“借/还书处理”、“信息查询”、“图书资源管理”和“身份验证”等组件。,41,(2)配置图 图书管理系统是一个基于网络和数据库的应用系统,可以采用B/S结构,系统配置图下图所示.,42,Visio 的用法,43,

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

当前位置:首页 > 高等教育 > 大学课件

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