收藏 分享(赏)

3.6+UML静态建模技术简介.ppt

上传人:dreamzhangning 文档编号:4397514 上传时间:2018-12-27 格式:PPT 页数:30 大小:194KB
下载 相关 举报
3.6+UML静态建模技术简介.ppt_第1页
第1页 / 共30页
3.6+UML静态建模技术简介.ppt_第2页
第2页 / 共30页
3.6+UML静态建模技术简介.ppt_第3页
第3页 / 共30页
3.6+UML静态建模技术简介.ppt_第4页
第4页 / 共30页
3.6+UML静态建模技术简介.ppt_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、UML的静态建模技术简介,制作: 施珺,1. UML概述,UML(Unified Modeling Language,统一建模语言)是一种可以应用于任何软件开发过程的标记法和语义语言,主要是由Rational Software公司的三位巨匠Booch、Rumbaugh和Jacobson于1995年正式合作创建的。UML使用了9种模型图用来对面向对象的软件系统进行建模。,UML可分为两个主要构件结构图和行为图。结构图包括类图、对象图、组件图和部署图;行为图包括用例图、活动图、序列图、协作图和状态图。,2. UML建模工具推荐,1)Rational Software公司推出的第一个功能完备的UML

2、软件包:Rational Rose,它可以使代码反向转化为模型、改变模型以及可以对代码进行更新来反应模型的变化,具备完整的对象管理功能,通过类和图的存储库,在一个图中对一个类的修改可以轻松地使所有包含该类的图都得到相应的更新。 2)Microsoft公司推出的Visio,功能与Rational Rose类似。,3. UML的静态建模机制,任何建模语言都以静态建模机制为基础,标准建模语言UML也不例外。UML的静态建模机制包括: 用例图(Use case diagram) 类图(Class diagram) 对象图(Object diagram ) 包(Package) 组件图(Componen

3、t diagram) 部署图(Deployment diagram),3.1 用例图,3.1.1 用例图的概念用例图是使用UML设计新系统的起点,说明谁要使用系统以及他们使用该系统可以做什么,描述的是外部执行者所理解的系统功能。 在UML中,一个用例模型由若干个用例图描述, 用例图的主要元素是用例和执行者。 用例图用于需求分析阶段,使用用例图可以对测试、普通流程和异常处理流程等功能进行建模。,3.1.2 用例图的标记符组件用例图包括4个基本组件:系统、参与者、用例、关系 系统:为用户执行某类功能的一个或多个软件构件。 参与者:用来表示使用系统的对象,即系统用户,可以是一个人或者另一个系统。标记

4、符号为:,参与者角色名,teacher,参与者的角色名应该用他们使用系统时的工作头衔,要避免起一个实际的人名。,用例: 是用户希望系统具备的动作,即系统功能。用一个里面带有名称的椭圆表示:,用例名称,record grades,用例名称可以是带有数字、字母和除保留符号(:冒号)以外的任何符号的任意字符串。要尽量使用主动语态动词和可以描述系统上执行的功能的名词。,关系:由一条连接参与者和用例的线来表示。,用例,参与者,如果多个参与者与用例之间有同一关系,可以泛化名称,以一个参与者取代重复的参与者,学生成绩管理系统,3.1.3 用例图示例,record grades,Create report c

5、ards,view grades,distribute report cards,teacher,student,Printing administrator,3.1.4 泛化技术,泛化是一种用于表示UML中项目的继承的技术,泛化可以应用于参与者和用例来表示其子项从父项继承功能。,Cook Spaghetti,cooker,Cook Chinese,Cook Lasagna,Cook Pasta,Cook dinner,mother cooker,father cooker,3.1.5 包含和扩展关系,包含和扩展是在两个用例紧密相关时,关联用例的两种方法。当一个用例要一直用另一个用例时就为包含

6、关系,当一个用例可能使用另一个用例时就为扩展关系。包含关系标记符和扩展关系标记符如下:,包含用例,被包含用例,include,扩展用例,被扩展用例,extand,record grades,Update grades,teacher,Notify guardians Extension points: Failing grade is saved,save grades,include,include,extand,用例图的包含与扩展关系示例,3.1.6 如何建立用例图模型,(1)找出系统中的参与者和用例以“记录成绩”系统为例,业务需求如下: 系统可以供教师使用来为学生记录成绩 系统需要根据需

7、求创建报告卡 系统需要允许用户浏览记录的成绩 参与者: 教师、学生、管理员 用例有: 记录成绩 更新成绩 生成报告卡 检查报告卡的准确性 分发报告卡 浏览成绩,管理员,教师、学生、管理员,(2)区分用例的优先次序 1) 记录成绩 2) 浏览成绩 3) 更新成绩 4) 生成报告卡 5) 检查报告卡的准确性 6) 分发报告卡(3)细化每个用例 登录 保存成绩 记录成绩 加载成绩 浏览成绩 更新成绩 生成报告卡 分发报告卡,(4)建立用例模型结构 教师可以记录成绩,记录成绩包含保存成绩 教师可以更新成绩,更新成绩包含加载、保存成绩 教师、管理员和学生可以浏览成绩,浏览成绩包含登录 管理员可以生成报告

8、卡 教师可以分发报告卡(5)建立用户界面的原型,record grades,Update grades,teacher,save grades,include,include,logon,Create report cards,view grades,distribute report cards,student,administrator,load grades,include,include,3.2 类图、对象图和包,3.2.1 类图类图(Class Diagram)是由组成系统或者子系统的构造块构成的静态图,描述类和类之间的静态关系,是面向对象方法的核心。类图由类及其关系组成,类包含特性

9、和操作,类可以和其它类之间具有关系。类图是定义其它图的基础,在类图的基础上,可以用状态图、合作图等进一步描述系统其他方面的特性。,3.2.2 类 类是类图的主要成分,类的两个主要组件是特性和操作。可以用4种不同方式的标记符来建模类:,同时显示特性和操作,只显示特性,只显示操作,不显示特性和操作,类中无特性和操作,3.2.3 关系,两个类之间可以通过一条线或者一个关联名称相关,名称后的箭头显示关联的方向。,teacher,student,class,teaches ,takes ,上面表示teacher教授一个class;一个student属于一个class。,多重性,用来表示一个类的多少对象与

10、另一个类的一个对象相关,多重性是一个数值或数值范围。,teacher,student,class,teaches ,takes ,上面表示一个teacher至少教授一个class,也可以教授无限多个class ;一个class只有一个教师;一个student属于4-6个class;一个class 有10-30名学生。,1,1*,1030,46,角色,在类图中使用角色可以帮助读者理解第一个类对于第二个类的作用。,teacher,class,上面表示一个class有一个teacher起导师的作用;一个class有0或一个teacher起助教的作用; 。,1,1*,01,1*,instructor,

11、assistant,3.2.4 对象图,对象是类的实例,对象具有一定的特性值。 对象标记符为:,对象名:类名,MathTeacher:Teacher,3.2.5 为特性提供信息,为特性提供信息包括指定数据类型、赋初始值(默认值)、提供多重性。 +号表示成员是可视的,可由外部相关类访问; - 表示成员是私有的,不能由外部的类访问; #表示受保护的,只对相同系统中的类是可视的。不管在可视还是不可视时,特性和操作之间都没有区别。但是,特性在默认时通常是不可视的,而操作在默认时通常是可视的。,if ( NumberOfGrades=0) thenGPA=Null elseGPA=Sum(Grades)

12、/ (NumberOf(Grades)*25) ,+/ 派生的特性,3.2.6 包,包是一种把类分组为通用类目的方式,包在对象或者类的情况下都通过在类名前追加名和双冒号(: )的形式来表示。 标记符为:,对象 :包 :类,MathTeacher :Grading :Teacher,Teacher,OnlineUser,Administrator,uses, generates, displays,maintains ,contains,1,1*,1*,1,1,1*,3.3 组件图和部署图,3.3.1 组件图(Component diagram) 组件图显示系统实现时的源代码的静态结构,即软件构

13、件之间的依赖关系。 软件构件就是一个实际文件,可以是源代码文件、二进制代码文件和可执行文件等。 组件图可以用来显示编译、链接或执行时构件之间的依赖关系 。组件图用左侧带两个小矩形的大矩形表示;组件之间的依赖关系用虚线箭头表示。,includes,DataAccess,includes,includes,UserInterface,extends,3.3.2 部署图(Deployment diagram),部署图描述系统实现时硬件的物理拓扑结构以及在此结构上执行的软件。 部署图可以显示计算结点(如一台Unix主机、一个PC终端、一台打印机、一个传感器等)的拓扑结构和通信路径、结点上运行的软件构件、软件构件包含的逻辑单元(对象、类)等,即运行时各个包或类在结点中的分布情况 。部署图常用于帮助理解分布式系统。 部署图的主要标记符:节点和通信关联。 通信关联的固化类型名称常用来描述硬件之间的通信方法或协议。如:HTTP、USB,固化名称,HTTP,radio,KONG :WebServer,usb,ClientPC,http,ScanEngine,ProductLookupAddin,pci bus,ProductDB,小结 UML静态建模机制的三条基本原则,熟练掌握基本概念 区分不同抽象层次 在实践中灵活运用,

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

当前位置:首页 > 网络科技 > UML理论/建模

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报