第三章 类图
UML概述
UML建模基础——UML概述东软人才实训中心3 Sept. 2008©Neusoft Confidential课程结构1第五章:状态图和活动图2第三章:类图1第四章:交互图1第二章:用例图1第一章:UML 概述、Rose 简介课时(H )内容培训目标•能够使用Rose工具画UML类图•能够看懂用UML表示的设计第一章:UML 概述、Rose 简介学时:1学时教学方法:讲授ppt +上机练习目标:本章旨在向学员简要介绍UML建模的重要性、UML的概念模型,通过本课的学习,学员应该掌握如下知识:1)了解UML的概念模型2)简要介绍UML的“4+1view ”3)了解Rose工具UML概述•什么是UML?–UML: 统一建模语言Unified Modeling Language–UML是由Rational公司三位世界级面向对象技术专家Grady Booch,Ivar Jacobson和Jim Rumbaugh提出的。
–UML是一种标准的图形化建模语言,它是面向对象分析与设计的一种标准表示。
•什么是UML?–不是一种可视化编程语言,而是一种可视化建模语言–不是工具或知识库的规格说明,而是建模语言的规格说明,是一种表示的标准–不是过程,也不是方法,但是允许任何一种过程和方法使用它•什么是模型?–模型就是真实世界的简化–为我们提供一个系统的原型•为什么要建模?–为了更好的理解我们将要或正在开发的系统–是把复杂的系统变成小的系统,采用“各个击破”的原则逐一解决–因为我们通常无法理解一个复杂系统的全部–模型能为我们做什么?•帮助我们对系统进行可视化•允许我们详细说明系统的结构或行为•给出一个指导我们构造系统的模板•对我们做出的决策进行文档化业务流程计算机系统可视化建模可视化建模就是用标准的图形表示法来建模“建模获取系统的关键部分”UML•什么是可视化建模?可视化建模的作用•可视化建模获取业务流程–用例(use case)分析是一种从用户的角度获取业务流程的技术–使用相同的语言,不至于产生歧义–用例分析能让分析师在构建系统之前理解要构建什么可视化建模的作用(续)•可视化建模是一个交流工具–使用相同的语言,不至于产生歧义业务领域计算机领域Logical ViewPhysical View User InterfaceBusiness Logic Database Java JSPC++ JavaSQL•管理复杂性–把3000多个类放在一张图中不好–可视化建模的“包”(package)•把元素模型化成有意义的组合•为不同的人提供不同级别的抽象–软件构架(architecture)•促进复用(reuse)–复用是软件的“圣杯”–不止是复用代码,而是复用建立原始工件时需要的所有分析、设计、实现、测试、文档化–可以有一个类复用、多个类(或一个组件)的复用、应用模式等复用方式–可视化建模让你从复用的角度看,如果想复用工件,什么是可用的UML的概念模型•UML的概念模型–UML建模的三个主要元素•构造块:事物、关系、图•规则:命名、范围、可见性、完整性、执行•公共机制:规范说明、通用划分、扩展机制•UML元素–构造块–事物•对模型中最具有代表性的成分的抽象–关系•把事物结合在一起–图•聚集了相关的事物•UML元素–构造块–事物–结构事物:通常是UML模型的静态部分,描述概念或物理元素•类•接口•用例:通常代表一个需求•协作:表示一个用例的实现•主动类:至少拥有一个进程或线程的类•组件:系统中物理的、可替代的部件,如源代码文件•节点:运行时存在的物理元素,如一个设备•UML元素–构造块–事物(续)–行为事物:是UML模型的动态部分,是模型中的动词•交互(interaction):可描述一个对象群体的行为或单个操作的行为•状态机(state machine):可描述单个类或一组类之间协作的行为–分组事物:是UML中的组织部分•包(package)–注释事物:是UML中的注释部分•注解(note)•UML元素–构造块–关系–关系•依赖(dependency):一个事物发生变化会影响到另一个事物。
UML面向对象设计与分析 课后习题答案
读卡机 插入IC卡
显示屏
输入设备
接爱IC卡
客户管理
显示输入密码请求
查询密码
输入密码
传送密码
显示服务类型请求 输入取款请求
显示可选的取款金额请求 输入取款金额
查询服务类型 传递取款请求
查询取款金额
传送金额
出钞 取钞
点钞机
事务管理
消息1 确认密码合法
2.为下面打印文件时的工作流建模通信图: 用户通过计算机指定要打印的文件。 打印服务器根据打印机是否空闲,操作打印机打印文件。 如果打印机空闲,则打印机打印文件; 如果打印机忙,则将打印消息存放在队列中等待。 该系统共有四个对象 Computer、PrintServer、Printer 和 Queue。
credit card
+Verify()
0..*
n
sale
+Update()
check n
+verify()
0..*
inventory
+Load()
1
n +Save()
+Update()
第 4 章 活动图
2.运用本书前面介绍有关活动图的相关知识,根据图 4-33 的图书馆管理系统还书用例建模 该用例的活动图。综合运用所学到的标记符,包括活动、转移、控制点、泳道、分叉和汇合
其中,后两个类是 Instructor 类的子类。 (5)建立“一名教师助理可以协助一名教师和一名教授,一名教师只能有一名教师助
理,一名教授可以有 5 名教师助理”的模型。创建 TeacherAssistant 类,并使其与 Teacher 类和 Professor 类都建立关联。
(6)将 TeacherAssistant 类建模为 Graduate 类的派生类。
UML-03-类图-对象图-包图
类 接口 协作 依赖、泛化和关联关系
类图可以包含注解和约束; 类图还可以有包或子系统,二者都用于把 模型元素聚集成更大的组件。
类(Class)
A class is the descriptor for a set of objects with similar structure, behavior, and relationships.
课堂练习-网上书店系统
通过Internet接受订单 一个顾客可以拥有一个帐号,系统维护顾客最多达 1000000个的帐号 对所有的帐号提供密码保护 能够搜索标准的图书目录 提供多种搜索图书目录的方法,包括按作者搜索、按书名 搜索、按ISBN搜索、按关键字搜索 本系统采取货到付款的方式 根据顾客的定购量确定书价折扣 顾客可以发表图书评论 装货站工作人员负责根据订单装货 收货站工作人员确保商品数量同订单相符
类图的三个层次的例子
概念层
说明层
实现层
建立类图的一般步骤
1. 研究分析问题领域 2. 发现对象与类,明确它们的含义和责任,确定属 性。 3. 发现类之间的关系。把类之间的关系用关联、泛 化、聚集、组合、依赖等关系表达出来。 4. 设计类与关系。调整和细化已得到的类和类之间 的关系,解决诸如命名冲突、功能重复等问题。 5. 绘制类图并编制相应的说明。
对象图与类图
对象图的模型元素有对象和链(link)。对象是类 的实例;对象之间的链是类之间的关联的实例。 对象与类的图形表示相似,UML中对象图与类图 具有相同的表示形式。
对象图实质上是类图的实例。
对象图常用于表示复杂的类图的一个实例。 对象图的使用相当有限,主要用于表达数据结构 的示例,以及了解系统在某个特定时刻的具体情 况。
UML复习题选填简答整理
第一章UML入门填空:1、如果把众多事物进行归纳和分类,那么所依据的面向对象的特性是抽象。
2、面向对象中的表示层用于提供给用户使用和显示的界面。
3、UML中的元元模型层位于结构最上层,是组成UML最基本的元素,代表要定义的所有事物。
4、在UML2.0中用来表示类、组件、协作等模型元素内部结构的是组合结构图。
5、UML中的实现关系使用一条空心三角作为箭头的虚线作为其图形表示。
选择:1、下列不属于对象特性的是。
A、对象都是唯一的B、一滴水是一个对象C、一个对象肯定属于某个类别D对象必须是可见的2、如果要解决系统做什么应该使用。
A、面向对象的分析B、面向对象的设计C、面向对象的编程D、面向对象的开发3、面向对象中的描述了系统内部对象及其关系的静态结构。
A、对象模型B、状态模型C、交互模型D、类模型4、UML中的用于描述系统的实现模块以及它们之间的依赖关系。
A、组件视图B、用例视图C、逻辑视图D、部署视图5、下列不属于UML2.0中图的是。
A、协作图B、包图C、交互图D、组合结构图6、下列UML事物中表示协作的是。
A、B、C、D、InterfaceName简答题:1、简要说明UML中视图与图的关系。
答:UML的视图都是由一个或多个图组成的,图就是系统架构在某个侧面的表示,所有的图一起组成了系统的完整视图。
第二章用例图填空题:1、用例图标准关系有扩展、泛化关系、关联关系和包含关系。
2、用例图的组成有关系、系统、参与者和用例。
3、在UML中,用例用一个圆形来表示。
4、泛化关系使用一条实线和一个三角箭头来链接用例。
选择题:1、下列说法正确的是。
A.用例间的关系是后期开发需要的,对用例图没有影响。
B.扩展关系可以是用例间的,也可以是参与者间的。
C.泛化关系可以是用例间的,也可以是参与者间的。
D.包含关系表示为虚线箭头。
2、下列符号中表示扩展的是。
A. B. C. <<extends>>D. <<extends>>简答题:1、用例描述主要包括哪些方面?答:用例描述一般包括有:名称、标识符(可选)、参与者(可选)、状态(可选)、频率、前置条件、后置条件、假设(可选)、基本操作流程、可选操作流程、修改历史记录(可选)2、泛化描述了什么?答:泛化描述的是子用例与父用例的关系,子用例是父用例的特化,它除了可以具有父用例的特性外,还可以有自己的另外特性。
第三章 类图
3.1 类图的概念
图3-1电子商务网站的对象模型
3.1 类图的概念
2、类图的作用 类图常用来描述业务或软件系统的组成、结构和关系。
3、类图的组成元素 类 接口 协作 关系 注释 约束 包
3.2 UML中的类
1、类的表示 (1)类的定义
类是具有相似结构、行为和关系的一组对象的描述 符。 (2)类的表示
关于聚合与组合
2、泛化-Generalization
表示两个类元间“一般”与“特殊”的关系。 对应面向对象编程语言中类与类之间的继承关系。 “is a kind of”关系,XX是一种XX
Athlete
SwimmerBiblioteka Golfer3、实现-Realization
表达一种说明元素与实现元素之间的关系; 类和接口之间的关系是实现关系,表示类实现接口提供的
3.2 UML中的类
(7)类的约束 约束指定了类所要满足的一个或多个规则。 在UML中,约
束是用花括号括起来的自由文本。
Washing Machine
Brand name Model name Serial number Capacity Add clothes( ) Add detergent( ) Remove clothes( )
表示客户与提供者之间用不同的方法表现同一个概念, 通常一个概念更抽象,一个概念更具体。包括:
① 跟踪<<trace>>--声明不同模型中的元素之间存在一些 连接但不如映射精确。
② 精化<<refine>>--声明具有两个不同语义层次上的元 素之间的映射。
③ 派生<<derive>>--声明一个实例可以从另一个实例导 出。
第3章 类图
3.1类图的概念
• (3)模型化一个逻辑数据库模式 • 我们常用类图设计数据库的蓝图。在很多领域,我们想把 持久性数据保存到关系数据库或面向对象的数据库中。我 们可以用类图为这些数据库模式建立模型。 • 3.类图的组成元素 • 类图中的元素有类、接口、协作、关系、注释、约束、包。 关系把类、协作、接口连接在一起构成一个图。注释的作 用是对某些类和接口进行注释,约束的作用是对某些类和 接口进行约束。
3.2 UML中的类
• (2) 对于操作,也经常会提供可见性修饰,只是通常应该声明为public, 否则它难以向其他类提供服务。 • (3) 操作在表示时可以只写出操作名,也可以将操作拥有的参数也写 出来,即写成员方法的完整签名。 • 属性和操作名之前可附加的可见性修饰符: 加号(+)表示public;减 号(-)表示private;#号表示protected;省略这些修饰符表示具有 package(包)级别的可见性。 如果属性或操作名具有下划线,则说 明它是静态的。 • 4.职责 • 职责指类承担的责任和义务。在矩形框中最后一栏中写明类的职责。 如图3-3所示。
• 4.导航性
• 导航性描述了源对象通过链接访问目标对象。箭头表明了导航的方向 性,即,只有源对象才能访问目标对象,反之,目标对象不能访问源 对象。如图3-19所示。
图3-19导航性
3.4 阅读类图
• 下面我们以电子商务网站为例,说明如何阅读类图. • 3.4.1 电子商务网站业务 • 1.电子商务网站 • 假设住在厦门的张三要给住在绍兴的朋友李四送一个生日蛋糕,由于 它们之间的距离太远,不可能亲自买一个送过去。但解决这个问题并 不难,张三登录到一个电子商务网站购买一个,并通过该网站将其送 给李四。而这个电子商务网站实际上就是通过绍兴的蛋糕店来完成这 个任务的。因此,在整个传递过程中,各个实体之间的关联关系如图 3-21所示。
宿舍管理系统(uml)
第一章宿舍管理系统的概述............................................... 错误!未定义书签。
1.1 宿舍管理系统总的概述.......................................... 错误!未定义书签。
1.2 管理员管理模块系统概述........................................ 错误!未定义书签。
1.2.1、安全管理子系统........................................... 错误!未定义书签。
1.2.2、寝室管理子系统........................................... 错误!未定义书签。
1.2.3、班级管理子系统........................................... 错误!未定义书签。
1.2.4、用户管理子系统........................................... 错误!未定义书签。
1.2.5、查询功能子系统........................................... 错误!未定义书签。
1.2.6、留言板管理子系统......................................... 错误!未定义书签。
1.3 学生管理模块系统概述.......................................... 错误!未定义书签。
1.3.1、安全管理子系统........................................... 错误!未定义书签。
1.3.2、寝室内部管理子系统....................................... 错误!未定义书签。
1.3.3、留言板管理子系统......................................... 错误!未定义书签。
8第三章UML
1)事物
结构事物、行为事物、分组事物、注释事物 (1)结构事物 结构事物是UML模型中的名词,它们通常是模型 中的静态部分,描述客观世界的概念或物理元素。 UML模型中共有七种结构事物: 类 接口 协作 用况 主动类 构件 节点
类(class)
是对一组具有相同属性、相同操作、相同关系和 相同语义的对象的描述(抽象)。一个类实现了一个 或多个接口。 在图形上,用矩形表示一个类,矩形内部标有类 的名称、属性和操作。
Window origin size …… open() close() move() ……
接口(interface)
接口是描述一个类或构件的一个服务的操作集。 因此,接口描述元素的外部可见行为。
接口描述了一组操作的规格,而不是操作的实现。
接口很少单独存在,而是通常依附于实现接口的类 或构件。 图形上,用一个带有名称的圆表示接口:
面向对象系统分析的主要任务和目的。 几种常用的面向对象系统分析方法。
3.5 常用的面向对象分析、设计方法简介
八十年代中后期,OOA和OOD成为一个研究热点, 先后出现了不少研究成果和实用方法:
OMT方法 OOSE方法 VMT方法
UML
3.5.4 UML简介
1. UML简史
系统名
用况1
<<extend>>
用况2
<<include>> 用况3
(4)顺序图
一种行为图,描述一个交互(事物之间的交互), 强调消息的时间排序。
(5)协作图
一种行为图,描述一个交互,强调发送消息和接 收消息的对象间的结构关系和结构组织。
(6)状态图
静态建模
第三章静态建模3.1 静态建模简述静态视图包括类图、对象图和包图。
其中类图描述系统中的静态结构。
它不仅定义系统中的类,表示类之间的关系,如关联、依赖、聚合等, 还包括类的内部结构(类的属性和操作)。
类图描述的是一种静态关系,在系统的整个生命周期都是有效的。
通过分析用例和问题哉,就可以得到相关的类,然后再把逻辑上相关的类封装成包。
这样可以很好体现出系统的分层结构,使人们对系统层次关系一目了然。
对象图是类图的实例,几乎有与类图完全相同的标识。
它们的不同点在于对象图显示类图的多个对象实例,而不是实际的类。
一个对象是类图的一个实例。
由于对象存在生命周期,因此对象图只能在系统某一时间存在。
包由包或类构成,表示包与包之间的关系。
包图用于描述系统的分层关系。
3.1.1 类图和对象图中的重要概念一个系统的类模型可以由多张类图描述:一个类可以出现在几张类图中。
类的图形符号表示分为长式和短式。
对象图是类图的一个实例,它描述了类图中类的特定实例以及某一时刻这些实例之间的特定连接。
类和对象都由名称、属性和方法(操作)组成。
区别如下:表 3.1 类与对象的比较类对象名称类名是一个有意义的标识符对象名加下划线,对象名后面可以接冒号和类名属性定义属性的类型和属性名与类的属性名相同,但是有具体值与类中的方法定义相同方法定义方法(操作)——返回类型、操作名、传递参数。
类图中除了能定义类自身的属性、方法等,更重要的是能表示类与类之间的关系。
包括关联、聚集、继承、依赖、细化等。
关联是类之间的语义联系,代表类的对象(实例)之间的一组连接(链)。
在UML中常常把关联定义成类,称为关联类。
关联的每个链都是这个关联类的实例。
关联类也有属性、操作并与其它的类关联。
聚集是一种特殊的二元关联,它指出类间的“整体-部分”关系。
聚集是关联的特例,它可以有重数、角色、限制符号等。
对于几种关联的比较,见下表。
表3.2 类图中的几种关联关系的比较特征正常关联共享聚集组合聚集UML标记实线加空心菱形加黑色菱形拥有关系无弱强多重性任意任意必为1传递性无有有传递方向无整体到部分整体到部分设计样式在软件开发项目的系统设计中,总有一些只包含少数几个对象的设计模块在设计图中反复出现在各种更大更复杂的系统设计中,我们把这些模块称为“设计样式”。
UML-用例图
部署图
活动图
UML与设计模式
2012年4月
2/60
UML图的作用
UML 可以用于:
使用用例(use cases)和参与者(actors) 描述系统的边界和它的主要功能。 使用交互图(顺序图、协作图)具体描述用 例的实现。 使用类图表示系统的静态结构。 使用状态转换图模型化对象的行为。 使用构件图和部署图展现系统的物理实现体 系结构。 使用衍型(stereotypes)扩展建模能力。
2012年4月
UML与设计模式
27/60
括添加、修改、删除馆藏图书信息 g) MaintainBookInfo:维护流通图书信息,包括 添加、修改、删除流通图书信息 h) Login:登录
识别参与者与用例之间的关系(场景)
a) Borrower执行BorrowBook、ReturnBook、 ReserveTitle、CancelReservation等用例。 b) Borrower是通过Librarian完成上述用例的工 作。则Borrower与Librarian存在依赖关系。 c) Librarian还与MaintainBorrowerInfo、MaintainTitleInfo、 MaintainBookInfo交互。
<<include>>
下订单
检索客户信息
2012年4月
UML与设计模式
7/60
扩展关系(extend)
扩展用例是在原用例的基础上增加新的步骤序 列形成的。 原用例被称为基用例(base use case)。扩展 只能发生在基用例的序列中的某个具体制定点 上,这个点叫做扩展点(extension points)。
课程设计类图
课程设计类图一、教学目标本课程的教学目标是使学生掌握数学基础知识,提高运算能力和逻辑思维能力。
具体来说,知识目标包括:掌握分数、小数、整数的四则运算规则;理解平面几何中三角形、四边形的性质。
技能目标则要求学生能够熟练进行数学计算,解决简单的几何问题。
情感态度价值观目标则是培养学生的团队合作意识,让他们在学习过程中体验到数学的乐趣,提高对数学学科的兴趣。
二、教学内容教学内容将根据课程目标进行选择和。
主要内容包括:分数、小数、整数的四则运算;平面几何中三角形、四边形的性质。
教材的章节安排如下:第一章:分数、小数的四则运算;第二章:整数的四则运算;第三章:三角形、四边形的性质。
三、教学方法为了激发学生的学习兴趣和主动性,将采用多种教学方法。
包括讲授法、讨论法、案例分析法和实验法等。
例如,在讲解分数、小数的四则运算时,可以通过实际案例让学生理解运算规则;在讲解三角形、四边形的性质时,可以学生进行实验,让他们亲身体验几何图形的特性。
四、教学资源教学资源包括教材、参考书、多媒体资料和实验设备等。
教材将作为学生学习的主要依据,参考书则可以为学生提供更多的学习资料。
多媒体资料可以帮助学生更直观地理解数学概念,实验设备则可以支持学生进行实践活动,提高他们的操作能力。
五、教学评估本课程的评估方式包括平时表现、作业和考试等。
平时表现主要评估学生的课堂参与度、提问和团队合作表现,占总评的30%。
作业包括课后练习和项目作业,占总评的20%。
考试包括期中和期末考试,占总评的50%。
评估方式将客观、公正地全面反映学生的学习成果。
六、教学安排教学进度将按照教材的章节进行安排,确保在有限的时间内完成教学任务。
教学时间将合理安排,每周安排2节课,每节课45分钟。
教学地点将在教室进行,同时也可以利用多媒体教室进行教学。
七、差异化教学根据学生的不同学习风格、兴趣和能力水平,将设计差异化的教学活动和评估方式。
例如,对于学习风格偏向实践操作的学生,可以增加实验和实践活动;对于学习风格偏向理论学习的学生,可以提供更多的阅读材料和思考题。
第三章用例图
方法2:每个use case 画一个交互图。
32
Create, Retrieve, Update, Delete 类型用例的处理:
– 采用CRUD四个用例还是一个用例? – 从用户需求的角度考虑而不是从数据 处理的角度考虑。
第3章 用例图
东北大学信息科学与工程学院
E-Mail: yanglei@
杨雷
1/336
学习目标
1、掌握用例模型包括内容 2、熟练掌握用例图 3、熟练掌握用例图中的关系 4、掌握用例描述 5、掌握用例图建模技术
2
主要内容 3.1 用例模型概述 3.2 用例图 3.3 用例图中的关系
– 可观测:用例止于系统边界 – 结果值:用例是目标向导的 – 系统执行:结果值是由系统生成的 – 由参与者观测:业务语言,用户观点 – 一组用例实例:用例的粒度
22
可观测
描述交互,而不是内在的系统活动
23
用例是目标导向的
系统的存在是因为:参与者有一些需要使用它 来满足的目标。用例是用来描述系统的目标
10
Use Case的定义
在一个workshop(专题讨论会)上,14位主要的 OO专家对Use Case有14个定义。 定义1:use case是对一个活动者(actor)使用 系统的一项功能时所进行的交互过程的一个文 字描述序列 (见[2])。 定义2:用例是系统、子系统或类和外部的参与 者(actor)交互的动作序列的说明,包括可选的 动作序列和会出现异常的动作序列. (见[3])
ቤተ መጻሕፍቲ ባይዱ12
用例基本思想
问题的提出:在系统尚未存在时,如何描绘用户需 要一个什么样的系统?如何规范地定义用户需求? 考虑问题的思路:把系统看作一个黑箱,看它对外 部的客观世界发挥什么作用,描述它外部可见的行 为。
第三章 静态模型(新)
该例的Java实现 interface Callback{ Void callback(int p); }
Class Client implements Callback{ Public void callback(int p){ …… } }
Class testIface{ Public static void main(String args[ ]) { Callback c=new Client( ); c. callback(42); } }
(3)约束:类与类之间发生关联时,须遵守的规则: {ordered, readonly}
(4)限定词:在一对多或多对多的关联中,可使用限 定词把一对多或多对多的关联转化为一对一的关联。
(5)关联类:记录关联的性质。
(6)链:关联的实例。
(7)导航性: a)单向关联
b)双向关联:可相互访问。
第三章 静态模型
3.1 类图 3.2 包图 3.3 对象——关系映射
3.1 类图
一、类图中类的表示
类名
属性
方法
二、对象的表示
三、类之间的关系 (一)关联:两个类的对象之间的相互依赖、相互作用 的关系。
重数的表示方法: 0..1 0..*或* 1+或1..* 1..15
3
(2)关联的角色:参与关联的对象所扮演的角色(即起 的作用)
(二)聚集:类与类之间整体与部分的关系。
(1)一般聚集
例1
例2
(2)共享聚集
共享聚集通过多重性表示,若整体方的重数不是1,则该 聚集是共享聚集。
(3)组合聚集:更强的聚集关系,每个部分只能属于一 个整体,没有整体,部分也没有存在的价值。
例1
例2
课程设计类图总结
课程设计类图总结一、教学目标本课程的教学目标是使学生掌握第三章“物质结构”的核心概念,包括原子结构、元素周期律、化学键等。
知识目标要求学生能够准确地描述原子的电子排布、写出常见元素的电子式和结构式,并理解元素周期律的实质。
技能目标则侧重于学生的实验操作能力和问题解决能力,通过实验演示和习题训练,使学生能够熟练运用物质结构知识解释化学现象。
情感态度价值观目标则在于培养学生对化学科学的兴趣,以及科学探究的精神。
二、教学内容教学内容将围绕第三章“物质结构”展开,具体包括以下几个部分:1.原子结构:原子的电子排布、原子核外电子的跃迁;2.元素周期律:周期表的结构、元素周期律的规律;3.化学键:离子键、共价键、金属键的特点和形成。
三、教学方法为了提高教学效果,将采用多种教学方法相结合的方式进行授课。
如:1.讲授法:用于讲解原子结构、元素周期律和化学键的基本概念;2.讨论法:通过小组讨论,让学生探讨元素周期律的发现过程,提高其思考和表达能力;3.案例分析法:分析具体化学反应中化学键的形成和断裂,加深学生对化学键概念的理解;4.实验法:安排实验课,让学生通过实际操作观察化学反应中物质结构的变化。
四、教学资源为了支持教学内容和教学方法的实施,将准备以下教学资源:1.教材:《化学原理》第三章;2.参考书:选取几篇关于物质结构的研究论文,供有兴趣深入了解的学生参考;3.多媒体资料:制作PPT课件,生动展示原子结构、元素周期律和化学键的相关知识;4.实验设备:提供实验室设施,让学生进行实验操作,观察物质结构的变化。
五、教学评估本课程的教学评估将采用多元化评价方式,全面客观地评价学生的学习成果。
评估内容包括:1.平时表现:通过课堂提问、讨论发言等记录学生的参与程度;2.作业:布置适量的练习题,评估学生对知识点的理解和应用能力;3.考试:设置期中和期末考试,全面测试学生对章节知识的掌握程度。
评估方式将坚持客观、公正的原则,力求全面反映学生的学习成果。
UML简介
第二种是接口(一个接口描述了类或组件的对外的可见的动作。
一个接口可以实现类或组件的全部动中被画成一个圆和它的名字。
图interaction和状态机是UML 模型中最基本的两个动态事物元素,它们通常和其他的结构元素、主要的类、对象接在一起。
1.1.3 分组事物分组事物是UML 模型中组织的部分,可以把它们看成是个盒子,模型可以在其中被分解。
总共只有一种分组事称为包(package)。
包是一种将有组织的元素分组的机制。
结构事物、动作事物甚至其他的分组事物都有可能放在一个包中。
与组件在于运行时)不同的是包纯粹是一种概念上的东西,只存在于开发阶段。
在UML 中用如下图表示包:图1-10 包1.1.4 注释事物注释事物是UML模型的解释部分。
UML中用如下图表示:图1-11 注释1.1.5 UML中的关系UML中有四种关系:1. 依赖(Dependencies)(图1-12 依赖)2. 关联(Association )(图 1-13 关联)3. 一般化(generalization )(图1-14 一般化) 4. 实现(realuzation)(图 1-15 实现)1.1.6 UML 中的图1、类图(class diagram )2、对象图(class diagram )3、Use case diagram4、Sequence diagram5、Collaboration diagram6、Statechart diagram7、Activity diagram8、Compomnent diagram9、Deployment diagram关于这些图的详细介绍将在今后的章节中讲解。
联系本文作者:21newtimes@ 如果本文某些术语翻译得不正确,敬请大家指教。
关于UML的东西我也是最近才接触,本文如有还请原谅。
第二章 Hello World记得在学习C 语言的时候,教科书上的第一个程序就是叫Hello world ,一个在屏幕上简单地打印出“Hello world子。
3类图
1
Tire
1 Engine
3.5 类之间的关系(续)
•
组成(composite) – 是强聚合 – 表示聚合中的每一个部分只能属于一个整体 – 组合确实只是一种特殊的关联,用整体端有实心菱形箭 头的简单关联修饰它。
3.5 类之间的关系(续)
• 泛化(generalization) – 表示“一般/特殊”关系。“is-a-kind-of” – 也就是继承关系 – 带空心箭头的实线表示,箭头指向父元素。
3.1 类(续)
属性 – 静态属性 – 派生属性 • 属性、操作的隐藏与显示
•
3.1 类(续)
•
分类 – 边界类(Boundary class) • 接口与系统外部某些事物的媒介 – 控制类(Control Class) • 负责协调用例的行为 – 实体类(Entity Class) • 封装了数据以及数据相关的操作
3.5 类之间的关系(续)
•
关联类(Association Class ) – 两个类之间的关联是通过某个类完成的 – 把关联类画成一个类符号,并把它用一条虚线连接到相 应的关联上。 – 分别建立Student,Course类, Grade类 – 建立Student与Course的关联 – 将Grade 用Association Class连接到该关联
3.7 类图
类图 – 表示一系列类、接口和它们的关系 – 表示系统的静态视图,在Logical View中 • 用例实现的类图又叫VOPC(View Of Participated Classes) – VOPC类图表示用例实现的参与类以及这些类之间的关系 – 确保跨越子系统的用例实现的一致性 • 类图的元素 – 类 – 关系
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关于聚合与组合
2、泛化-Generalization
表示两个类元间“一般”与“特殊”的关系。 对应面向对象编程语言中类与类之间的继承关系。 “is a kind of”关系,XX是一种XX
Athlete
Swimmer
Golfer
3、实现-Realization
表达一种说明元素与实现元素之间的关系; 类和接口之间的关系是实现关系,表示类实现接口提供的
如果一个烟鬼嗜烟如命,用类图可以这样表示:
关于依赖
假设你正在设计一个能显示公司全体成员的制表系统, 公司的员工可以填写这个系统中的电子表格。员工要选 择菜单来填写表格。在你的设计中,有一个Syetem( 系统)类和一个Form(表格)类。System类的众多操 作中有一个displayForm(f:Form),系统所要显示的 表格取决于用户选择的表格。
3.2 UML中的类
(1)抽象类
在UML中,抽象类和抽象方法的表示是将其名 字用斜体表示。
3.2 UML中的类
(2)接口
接口是一种类似于抽象类的机制,是一个没有 具体实现的类。
接口可以实现多态; 在UML中接口有两种表示方法:
图标表示法
Collection 《Interface》
构造符号表示法
有连接关系时,类之间的连接叫做关联。
队员和球队之间的关联,可以用短语“队员为篮球队效 力”来刻画,图形表示为:
Player
plays on
Team
关联
关联有名称、角色、多重性和导航性等语法。
Class1
association name
rolename1 multiplicity1
rolename2 multiplicity2
在UML2.0中,主动类的表示方法为:在类的两边加上 垂直线。
3.2 UML中的类
(5)嵌套类
将一个类的定义放在另一个类定义的内部,这就是嵌 套类。
在UML中,可以采用一个锚图标来表示这种关系
3.3 类图中的关系
按照关系的性质分为4种: 关联
1、包含 2、泛化 3、依赖 4、实现
关联
association 关联是模型元素间的一种语义联系,当类之间在概念上
Class2
关联
(1)关联名
描述关联的作用; 通常使用动词或动词短语;
关联
(2)角色
关联两端的类可以某种角色参与关联; 通常使用名词或名词短语;
关联
(3)多重性
某个类有多少个对象可以和另一个类的单个 对象关联;
关于多重性
老公
1
老公
1..n
夫妻关系 夫妻关系
老婆
1
老婆
1
关联
(3)多重性
3.2 UML中的类
(4)类的属性 属性描述了类的静态特征; 属性名的第一个字母小写; 属性的定义格式
[可见性] 属性名 [:类型] [ ‘[’多重性[次序]‘]’] [=初始值] [{特性}]
说明:可见性包括+、-、#、~ 例:#visibility:Boolean=false
colors:Color[3] points: Point[2..* ordered] name:String[0..1]
) )
关联
(4)导航性 用箭头显示导航性; 描述源对象通过链接访问目标对象; A类有一个成员变量保存的是B类的一个引用,也就 是说由A类可以找到B类,可以画成下图所示
请假条
请假者
关联
(5)关联的约束
关联可加上一些约束,以加强关联的含义;
关联
(5)关联的约束
一个BankTeller为顾客服务,但是服务的顺序要按 照顾客排队的次序进行。在模型中可以通过在 Customer类附近加上一个花括号括起来的 “ordered(有序)”来说明这个规则,也就是指明 约束。
{capacity=16 or 18 or 20 lb}
3.2 UML中的类
2、类的种类 (1)抽象类 当某些类有一些共性的方法或属性时,可以定义一个
抽象类来抽取这些共性,然后将包含这些共性方法和 属性的具体类作为该抽象类的继承; 抽象类是一种不能直接实例化的类,不能用抽象类创 建对象; 抽象类可以实现多态;
表示客户与提供者之间用不同的方法表现同一个概念, 通常一个概念更抽象,一个概念更具体。包括:
① 跟踪<<trace>>--声明不同模型中的元素之间存在一些 连接但不如映射精确。
② 精化<<refine>>--声明具有两个不同语义层次上的元 素之间的映射。
③ 派生<<derive>>--声明一个实例可以从另一个实例导 出。
第三章 类图
3.1 类图的概念 3.2 UML中的类 3.3 类图中的关系 3.4 阅读类图 3.5 如何建立类图 3.6 Rose2003类图操作
3.1 类图的概念
1、类图
类图是描述类、协作(类或对象间的协作)、接口及其关 系的图。
类图是逻辑视图的重要组成部分,用于对系统的静态结 构建模,涉及到具体的实现细节。 在系统分析阶段,类图主要用于显示角色和提供系统 行为的实体的职责; 在系统设计阶段,类图主要用于捕捉组成系统体系结 构的类结构; 在系统编码阶段,根据类图中的类及它们之间的关系 实现系统的功能。
Window
1
1
1..n
Menu
1..n
Button
员工
0..n
“弱”包含表示如果部门没有了,员工也可以继续存在 ;
“强”包含表示如果部门没有了,员工也不再存在。
在做软件需求时,往往会将所有的包含关系画成“弱” 包含,后面发现某些关系可以表示为“强”包含是,才 转为实心菱形。
3.2 UML中的类
(5)类的操作 操作名的命名规范习惯采用和属性名相同的命名规则。 类的操作的定义格式
[可见性] 操作名 [(参数列表)] [:返回类型] [{特性}] 例: +hide():Boolean
#create() -attachXWindow(xwin:XwindowPtr)
3.2 UML中的类
聚合 组合
聚合-Aggregation
类之间的一种整体与部分的关系
体现了一种层次结构,整体类位于部分类的上层,多 个部分类处于并列的层次
University
1
Department
1..n
组合-Composition
是一种特殊形式的聚合(强聚合),聚合中的每个部 分只能属于一个整体;
表示类之间整体和部分的关系。 整体与部分具有相同的生存期。
3.2 UML中的类
(3)关联类
当两个类之间具有多对多的关系,并且有些属性不 属于关联两端任何一个类;
关联类通过一条虚线和对应的关联连接;
3.2 UML中的类
(4)主动类
主动类的实例称为主动对象,一个主动对象拥有一个 控制线程并且能够发起控制活动;具有独立的控制期。
从某种意义上说,它就是一个线程。
② 调用<<call>>--声明一个类调用其他类的操作的方 法。
③ 参数<<parameter>>--声明一个操作和它的参数之 间的关系。
④ 发送<<send>>--声明信号发送者和信号接收者之间 的关系。
⑤ 实例化<<instantiate>>--声明用一个类的方法创建 了另一个类的实例。
(2) 抽象依赖
不要因为你能1对多个男朋友(或女朋友)就很开心, 这是一种很不好的关系,强烈建议你将1对多的关系变 为1对1,而且说不定有朝一日你会被别人1对多
题目1:
如果你还没有另一半,你的另一半是作为“虚拟情人” 存在的,你可以画成这样
(6)类的职责 职责指类承担的责任和义务。
在矩形框中最后一栏中写明类的 职责。
Washing Machine
Brand name Model name Serial number Capacity Add clothes( ) Add detergent( ) Remove clothes( ) Take dirty clothes as input and produce clean clothes as output
3.1 类图的概念
图3-1电子商务网站的对象模型
3.1 类图的概念
2、类图的作用 类图常用来描述业务或软件系统的组成、结构和关系。
3、类图的组成元素 类 接口 协作 关系 注释 约束 包
3.2 UML中的类
1、类的表示 (1)类的定义
类是具有相似结构、行为和关系的一组对象的描述 符。 (2)类的表示
操作 显示一个类引用另一个类
4、依赖-Dependency
软件开发中,往往会设计一些公用类,供别的类调用, 如果这些公用类出问题了,那调用这些公用类的类都会 因此而出问题。
两个元素之间的一种关系,其中一个元素(提供者)的变 化将影响另一个元素(客体),或向它提供所需信息
显示一个类引用另一个类 你很爱你老婆,没有你老婆你活不下去,可以这样表 示
在UML中,常用的关联的多重性表示格式如下:
0..1
0或1
1
1
0..*(0..n)
0或多个
*
0或多个
1..* (1..n)
1或多个
8
8
5,7..10
5或7~10
多当
重类
AB
性 是 ,
和 类
就 说 明 类
之 间 是 一
对 类
对 零 或
是一
可(
选
的
(
BA
one-to-zero or one