《UML面向对象建模基础》

合集下载

《UML面向对象建模基础》课程标准

《UML面向对象建模基础》课程标准

《UML面向对象建模基础》课程标准《UML面向对象建模基础》课程标准课程名称:《UML面向对象建模基础》适用专业:软件开发与项目管理学时标准:48教学条件要求(1)校内实训室:➢保证软开专业学生上课时每人配备一台计算机,能提供每天每人4小时以上的上机时间。

➢机房组成局域网,每台计算机最低配置:Windows XP/2003以上操作系统、CPU:1.7G以上、内存:512M以上、磁盘空间40G以上。

配备教学和实践所需软件。

➢多媒体教室➢专业教师应有独立使用的一台微机,或者提供笔记本,方便备课和教学。

(2)校外实训基地:为将本课程建设成为“工学结合”的优质核心课程,已经与多家省内外知名软件企业如TCS、塔塔信息技术、中软、创智软件建立了校企合作关系,开辟了长期稳定的校外实训基地,为学生提供了顶岗实习、体验实际开发环境的机会。

一.总论1.课程性质与作用本课程是软件开发与项目管理专业软件开发工程师课程方向的一门专业基础课程,适用于三年制软件开发与项目管理专业。

通过对本课程的学习,不仅有助于学生理解面向对象的软件开发技术,同时为后续课程的学习打下坚实的基础。

更重要的是为学生构筑软件建模这一核心职业技能,为毕业后的就业尤其是应用软件开发类职业岗位的就业增加机会。

2.课程设计理念与思路设计理念:✓根据本行业特点,注重专业素质教育✓倡导项目驱动,强调动手实践✓整体目标明确,教学组合灵活✓以学生为主体,树立榜样作用✓着眼就业岗位需求,开发有效课程资源设计思路:该课程标准设计的主要思路是遵照课程目标,将课程分解为三大主要模块,即讲练结合模块、独立实践模块和项目实训模块。

该设计遵循了学生学习的循序渐进规律和稳扎稳打,具有“讲”、“学”、“做”三位一体的特点,以学生为主体,以就业岗位为导向,以项目任务驱动教学,以培养学生具有高专业素养和实践动手能力强的综合素质能力为最终目标。

二.课程目标1.素质培养目标●培养学生良好的团队协作能力●培养学生科学严谨的软件分析设计风格●培养学生良好的沟通能力2.专业知识培养目标●了解软件建模技术在软件技术中的地位和作用●加深面向对象软件技术的理解●掌握需求建模、软件架构建模和应用建模的方法和技巧●培养学生阅读软件模型和设计软件的能力3.专业技能培养目标●了解运用建模语言设计软件的基本过程和技巧●掌握各种建模技术和掌握UML建模语言●具备阅读和绘制软件模型的能力●熟练掌握流行的建模工具的操作三.内容标准1.课程内容选择依据按照职业要求和岗位特点解构出教学的知识点、素质点、能力点,根据这些点落实教学内容,选取任务导向、项目导向、行为导向、过程导向、问题导向等解构方案,力求教学内容的具体、典型、有效。

UML面向对象分析、建模与设计课件第五章 类图

UML面向对象分析、建模与设计课件第五章 类图
即可变、只增与冻结。
类——操作
操作是一个可以由类的对象请求以影响其行为的服务的实现,也即 是对一个对象所做的事情的抽象,并且由这个类的所有对象共享。
操作是类的行为特征或动态特征。 操作的语法格式为:
可见性OPT 操作名 ⌊(参数列表)⌋OPT ⌊:返回类型⌋OPT ⌊{特性}⌋OPT
操作名:操作的标识符。在描述操作时,操作名是必须的,其他部 分可选。
Student
+monitor 1
1..*
自关联
类图中的关系——关联关系
关联名称:放在关联路径的旁边,但远离关联端。 角色:放在靠近关联端的部分,表示该关联端连接的类在这一关联
关系中担任的角色。角色名上也可使用可见性修饰符号。 多重性:放在靠近关联端的部分,表示在关联关系中源端的一个对
象可以与目标类的多少个对象之间有关联。 导航性:一个布尔值,用来说明运行时刻是否可能穿越一个关联。 限定符:是二元关联上的属性组成的列表的插槽,其中的属性值用
/WorksForCompany
Department * +department 1 WorksForDepartment
* Person
类图中的关系——泛化关系
泛化关系定义为一个较普通的元素与一个较特殊的元素之间的类元 关系。其中描述一般的元素称为父,描述特殊的元素称为子。
通过泛化对应的继承机制使子类共享父类的属性和操作,小了模型 的规模,同时也防止了模型的更新所导致的定义不一致的意外。
法了,此时称之为N元关联。
类图中的关系——关联关系
class Logical View
ClassA
AssociationName
+rolename 0..*

面向对象基础-UML培训课件

面向对象基础-UML培训课件

UML2.0完全建立在 UML1.x基础之上,大 多数的UML1.x模型在 UML2.0中都可用。但 UML2.0在结构建模方 面有一系列重大的改进, 包括结构类、精确的接 口和端口、拓展性、交 互片断和操作符以及基 于时间建模能力的增强。
95.10以前 95.10(0.8) 96.10(0.9) 97.01(1.0) 97.09(1.1) 99.06(1.3) 2004.03(2.0)
《部署操作手册》 《系统维护报告》
UML基础-2 UML描述图
结构 行为 建模 建模 图图
UML基础-3 UML在开发各阶段运用
部署图 复合结构图
运行维 护
需求分 析
UML
用例图 交互概览图
包图
交互概览图 类图 对象图
软件设
活动图 时间图 状态机图
计 顺序图 部署图
组件图 通信图
复合结构图
用例图 组件图
九十年代中期,混乱的情 况出现逆转。
从1994年10月开始, Booch 和Rumbaugh将他 们两个学派的理论统一起来, 并于1995年10月发布了第一 个公开版本,称之为统一方法 UM 0.8(Un itied Method)。 1995年秋,Jacobson也加 盟到这一工作中来。
1996年,一些机构将UML 作为其商业策略已日趋明显。 UML的开发者得到了来自公众 的正面反应,并倡议成立了 UML成员协会,以完善、加强 和促进UML的定义工作。
http://www.microsoft.c 试用
om/downloads/en/deta
ils.aspx?FamilyID=06a3
2b1c-80e9-41df-ba0c-
79d56cb823f7

K_状态图

K_状态图

状态、状态表示法及状态机
• •
状态是指在对象生命周期中满足某些条件、 状态是指在对象生命周期中满足某些条件、执行某些活 动或等待某些事件的一个条件和状况 一个状态通常包括名称、进入 退出活动 内部转换、 退出活动、 一个状态通常包括名称、进入/退出活动、内部转换、 子状态和延迟事件等五个部分组成

状态图
《UML面向对象建模基础》 UML面向对象建模基础 面向对象建模基础》
知识图谱
Agenda
• • • • •
状态和状态机 如何阅读状态机图 如何绘制状态机图 状态机图应用说明 本章小结
Agenda
• • • • •
状态和状态机 如何阅读状态机图 如何绘制状态机图 状态机图应用说明 本章小结
阅读最简单的状态图

最为核心的元素无外乎是两个: 最为核心的元素无外乎是两个:一个是用圆角矩形表示 的状态(初态和终态例外);另一个则是在状态之间的、 );另一个则是在状态之间的 的状态(初态和终态例外);另一个则是在状态之间的、 包含一些文字描述的有向箭头线, 包含一些文字描述的有向箭头线,这些箭头线称为转换

使用复合状态
Agenda
• • • • •
状态和状态机 如何阅读状态机图 如何绘制状态机图 状态机图应用说明 本章小结
状态机应用说明
• • •
对对象生命周期建模:主要描述对象能够响应的事件、 对对象生命周期建模:主要描述对象能够响应的事件、 对这些事件的响以及过去对当前行为的影响 对反应型对象建模:这个对象可能处于的稳定状态、 对反应型对象建模:这个对象可能处于的稳定状态、从 一个状态到另一个状态之间的转换所需的触发事件, 一个状态到另一个状态之间的转换所需的触发事件,以 及每个状态改变时发生的动作 状态机图既可以用来表示一个业务领域的知识, 状态机图既可以用来表示一个业务领域的知识,也可以 用来描述设计阶段对象的状态变迁

使用UML进行面向对象分析和建模.

使用UML进行面向对象分析和建模.
使用UML进行面向 对象分析和建模
OBJECT-ORIENTED ANALYSIS AND MODELING USING THE UML
第6章 Chapter 6
本章内容
6.1 面向对象建模方法概述 6.2 面向对象建模的基本概念 6.3 统一建模语言UML 6.4 使用用例建模系统需求 6.5 对象分析建模过程
Rambaugh方法(OMT方法)
主要分为分析、设计和实现三个阶段。 分析阶段:确定对象模型、动态模型和功能模型 设计阶段:系统设计和对象设计 实现阶段的细节和具体的实现环境有关 OMT方法突出的特点是在分析阶段,它可以较为 全面地描述系统的静态结构,所以0MT方法适合 于数据密集型的信息系统的开发.2 面向对象建模的基本概念 6.3 统一建模语言UML 6.4 使用用例建模系统需求 6.5 对象分析建模过程
6.2 面向对象的基本概念
基本概念与特点 – 对象(Object) – 消息(Message) – 类(Class) – 实例(Instance) – 继承(Inheritance) – 封装(Encapsulation) – 多态(Polymorphism)
面向对象的世界观
把客观世界从概念上看成是一个由相互配合而 协作的对象所组成的系统
面向对象=对象+分类+继承+通信 一个实例——椅子
一个面向对象的实例——椅子
类:家具
价格 尺寸 重量 位置 颜色
买 卖 移动
对象:桌子
价格 尺寸 重量 位置 颜色
买 卖 移动
对象:椅子
价格 尺寸 重量 位置 颜色
6.2面向对象的基本概念
实例(Instance)
属于某类的具体对象就是该类的实例。一个类 的不同实例必定具有: 相同的操作(或行为)的集合 相同的信息结构或属性定义,但可以有不同

《UML面向对象建模基础》需求建模基础与实例

《UML面向对象建模基础》需求建模基础与实例
有5个与需求相关:
• 不完整的需求; • 没有用户的介入; • 不实际的客户期望; • 需求和规范的变理; • 提供了不再需要的
软件需求曾经让我们如此狼狈
需求的定义
需求层次
内容
业务需求 反映组织机构或客户对系统、产品高层次的目标要求。通常问题定义就是业务需求
用户需求
描述用户使用产品必须要完成什么任务,怎么完成,通常是在问题定义的基础上 进用户访谈、调查,对用户使用的场景进行整理,从而建立从用户角度的需求
需求建模基础与实例
《UML面向对象建模基础》
知识图谱
Agenda
• 什么是需求 • 如何使用UML对需求建模 • 需求建模实例 • 本章小结
Agenda
• 什么是需求 • 如何使用UML对需求建模 • 需求建模实例 • 本章小结
需求—导致项目失败的罪魁祸首
• 根据Standish Group对23000个项目进行的研究结果表明,28%的项目彻
FEAT09.开发人员可以随时记录自己的时间,提供“开始 计时”、“暂停计时”、“停止计时”,在停止时,填入 任务编号(在线则选择)、工作关键字(以逗号分隔的多 个),自动生成开始时间、暂停时间、停止时间、总时长 、有效时长(总时长-中断时长) FEAT11.时间记录程序会自动连接服务器,完成时间日志 上传的工作,未能连接服务器,则在本机暂存时间日志
将不断的精化和修正
• 可借助Robustness分析来推导出交互模型 • 交互模型中一般只包含概念模型中的实体对象和分析模型中的边界对象,
其目标只是帮助分析人员理清整个事件流,而控制对象、设计类的引入都 将在后续阶段进行
• 并非一定要为用例模型中的所有用例构建交互模型,关键在于“是否需要” • 可借助状态图表示一些对象状态的变迁及用户界面设计,还可以借助活动

UML面向对象建模基础课程标准

UML面向对象建模基础课程标准

《UML面向对象建模基础》课程标准课程名称:《UML面向对象建模基础》适用专业:软件开发与项目管理学时标准:48教学条件要求(1)校内实训室:➢保证软开专业学生上课时每人配备一台计算机,能提供每天每人4小时以上的上机时间。

➢机房组成局域网,每台计算机最低配置:Windows XP/2003以上操作系统、CPU:1.7G以上、内存:512M以上、磁盘空间40G以上。

配备教学和实践所需软件。

➢多媒体教室➢专业教师应有独立使用的一台微机,或者提供笔记本,方便备课和教学。

(2)校外实训基地:为将本课程建设成为“工学结合”的优质核心课程,已经与多家省内外知名软件企业如TCS、塔塔信息技术、中软、创智软件建立了校企合作关系,开辟了长期稳定的校外实训基地,为学生提供了顶岗实习、体验实际开发环境的机会。

一.总论1.课程性质与作用本课程是软件开发与项目管理专业软件开发工程师课程方向的一门专业基础课程,适用于三年制软件开发与项目管理专业。

通过对本课程的学习,不仅有助于学生理解面向对象的软件开发技术,同时为后续课程的学习打下坚实的基础。

更重要的是为学生构筑软件建模这一核心职业技能,为毕业后的就业尤其是应用软件开发类职业岗位的就业增加机会。

2.课程设计理念与思路设计理念:✓根据本行业特点,注重专业素质教育✓倡导项目驱动,强调动手实践✓整体目标明确,教学组合灵活✓以学生为主体,树立榜样作用✓着眼就业岗位需求,开发有效课程资源设计思路:该课程标准设计的主要思路是遵照课程目标,将课程分解为三大主要模块,即讲练结合模块、独立实践模块和项目实训模块。

该设计遵循了学生学习的循序渐进规律和稳扎稳打,具有“讲”、“学”、“做”三位一体的特点,以学生为主体,以就业岗位为导向,以项目任务驱动教学,以培养学生具有高专业素养和实践动手能力强的综合素质能力为最终目标。

二.课程目标1.素质培养目标●培养学生良好的团队协作能力●培养学生科学严谨的软件分析设计风格●培养学生良好的沟通能力2.专业知识培养目标●了解软件建模技术在软件技术中的地位和作用●加深面向对象软件技术的理解●掌握需求建模、软件架构建模和应用建模的方法和技巧●培养学生阅读软件模型和设计软件的能力3.专业技能培养目标●了解运用建模语言设计软件的基本过程和技巧●掌握各种建模技术和掌握UML建模语言●具备阅读和绘制软件模型的能力●熟练掌握流行的建模工具的操作三.内容标准1.课程内容选择依据按照职业要求和岗位特点解构出教学的知识点、素质点、能力点,根据这些点落实教学内容,选取任务导向、项目导向、行为导向、过程导向、问题导向等解构方案,力求教学内容的具体、典型、有效。

3_面向对象技术基础-统一建模方法(UML)

3_面向对象技术基础-统一建模方法(UML)

在演变过程中UML提出了一些新的概念。
对象入门 - 14
北航软件所 李虎
UML的发展历程
1994.10,Booch 和 Rumbaugh 将 Booch93和 OMT-2 统一,1995.10.发布 UM0.8。 1995年秋,经过 Booch 等三人的努力,1996.6 和1996.10发布UML0.9和UML0.91。 1996年成立UML成员协会,有700多公司支持UML,占领OO市场的 85%。 1997.1发布UML1.0,1997.9发布UML1.1。 1997.11 OMG采纳 UML1.1作为OO技 术的标准建模语言。 此后,UML的维护工作由Cris Kobryn领导的OMG 版本修改小组RTF ( Revision Task Force)负责.
对象入门 - 11
北航软件所 李虎
为什么有必要统一建模语言
面对众多的建模语言,用户没有能力区别不同语言之间的差别。 在众多的建模语言中,实际上各有千秋,需要取长补短,日臻完善。 虽然不同的建模语言大多相同,但仍存在某些细微的差别,这极大地 妨碍了用户之间的交流。
对象入门 - 12
北航软件所 李虎
Some References of Interest
Bruce Powel Douglass, Ph.D. Chief Evangelist,I-Logix, Inc. ,,bpd@
对象入门 - 20
北航软件所 刘超
2. UML的模型图
• 两类、九种模型图
对象入门 - 8
北航软件所 李虎
UML是一种建模语言
建模方法 = 建模语言 + 建模过程 + 工具。 建模语言定义了用于表示设计的符号(通常是图形符号); 建模过程描述进行设计所需要遵循的步骤。

UML第3章面向对象建模

UML第3章面向对象建模

0..1 聚集,单向追踪性
全部类名称
0..1
0..*
0..* 混合聚集,双向追踪性
部分类名称1
部分类名称2
图3-11
(4)有条件的聚集,如图3-12所示。
关联名称
类1
限定者
类2
图3-12
(5)一般化/特殊化,如图3-13所示。
超类
抽象类 操作
子类
子类2 操作
图3-13
(6)限制,如图3-14所示。
• Martin/Odell(马丁与奥地)面向对象方法论, 强调系统从分析至设计阶段,都由对象结构模 型与对象行为模型所构成。
小结
• 本章主要为读者论述了面向对象建模的相关技 术。包括建模的目的以及采用抽象的方法。并 然后详细论述了统一建模语言(UML)。并且 介绍了三种主流的模型,分别是对象模型、动 态模型、功能模型,以及三种模型之间的关系。 另外,本章还介绍了许多面向对象建模的方法 论。
* 人员
* 金融机构
所有人 *
财产 * 房屋
金融机构
本金 比率 到期
信贷银行
*{有次序的}
银行
图3-8
3)类图类型
(1)关联类,如图3-9所示。
关联名称
类1
类2
关联类名称 属性 操作
图3-9
(2)关联,如图3-10所示。
关联名称
类1
限定词
类2
图3-10
(3)聚集、追踪性和个体数目,如图3-11所示。
信号 图3-34
(10)收到信号,如图3-35所示。
信号
图3-35
2)活动图例 活动图:磁盘,如图3-36所示。
磁盘已满 印表文件
磁盘未满

《UML面向对象建模基础》

《UML面向对象建模基础》

为什么使用UML建模,可以建立什么模型
• •
UML是一种统一的、标准化的建模语言 UML是一种应用面很广泛的建模语言
模型的用途 对业务过程、工作流、组织的建模 对捕获的需求进行整理和分析的工具,辅助开发人员与用户进行沟通 包含高层设计(架构模型)和详细设计模型,用于统一开发人员、沟 通设计信息 设计数据库的结构、表结构以及与应用系统的交互 用来理清软件的组成、部署方案,为安装与维护人员的工作提供指导
最后,本章还指出了UML初学者容易走入的认识误区, 帮助读者更好的认识UML,为UML的学习指出正确的 方向
UML概述
《UML面向对象建模基础》
知识图谱
Agenda
• • • •
什么是UML 什么是模型
常见的UML认识误区
本章小结
Agenda
• • • •
什么是UML 什么是模型
常见的UML认识误区
本章小结
UML发展历程
UML的特性与发展现状
• • •
UML是一种Language(语言) UML是一种Modeling(建模)Language
谁应该建模


• •
业务建模:以领域专家为主,需求分析人员是主力,系统分析员、 架构师可参与
需求模型:以需求分析人员为主,系统分析员是主力,领域专家提 供指导,架构师和资深开发人员参与
设计模型:高层设计模型以架构师为主,系统分析员从需求方面提 供支持,资深开发人员从技术实现方面提供支持。详细设计模型则 以资深开发人员为主,架构师提供指导。 实现模型:以资深开发人员(设计人员)为主,架构师提供总体指 导。
模型的种类 业务模型 需求模型 设计模型 数据库模型 实现模型
草图与蓝图

UML第3章 面向对象建模PPT课件

UML第3章 面向对象建模PPT课件

* 人员
* 金融机构
所有人 *
财产 * 房屋
金融机构
本金 比率 到期
信贷银行
*{有次序的}
银行
图3-8
3)类图类型
(1)关联类,如图3-9所示。
关联名称
类1
类2
关联类名称 属性 操作
图3-9
(2)关联,如图3-10所示。
关联名称
类1
限定词
类2
图3-10
(3)聚集、追踪性和个体数目,如图3-11所示。
节点
状态
组件
接口
封装
图3-3
批注
• 关系图标如图3-4所示
从属
继承
关联
聚集
图3-4
• 类图 1)类与关联 2)类图:静态的结构 3)类图类型
1)类与关联 (1)类 (2)个体数目 (3)角色姓名关联
(1)类图如图3-5所示
类名称(Class Name) 属性
属性:数据类型 属性:数据类型=初值
操作 操作(参数列):结果类型
图3-5
(2)体数目如图3-6所示
Class A
关联
1..*
0..*
Class B
图3-6
(3)角色姓名关联如图3-7所示
Class A
关联 角色姓名B
角色姓名A
Class B
图3-7
2)类的静态结构
图3-8的类图是静态的呈现。静态结构的图标像 在帮系统照一张相片,照到的东西就是在那一 个单纯时刻同步发生的事件。
• UML的范围包括: (1)开发产品标准化 (2)开发的详细流程尚未标准化 (3)使用横跨整个开发生命周期
3.2.3 系统观点
• 使用实例观点(Use Case View) • 逻辑观点(Logical View) • 实作观点(Implementation View) • 处理观点(Process View) • 配置观点(Deployment View)

UML面向对象建模基础答案(徐峰、陈暄-中国水利水电出版社)

UML面向对象建模基础答案(徐峰、陈暄-中国水利水电出版社)
6. UML是一种方法论吗?并简要说明理由。
UML不是方法论。它仅仅是一种描述模型的标准语言,虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。
7. 请简要说明UML和面向软件开发之间的关系。
UML和面向对象软件开发之间有很强的关联关系,甚至可以说是面向对象软件开发催生了UML。但是由于在UML的标准化和发展过程,有机地吸纳了业务建模、工作流建模、数据库建模等领域的标准规范,形成了一个适用性很强的标准。
4. 请说明蓝图和草图的区别,并简单描述其适用的场景。
蓝图一般是指采用CASE工具绘制的、正式的、规范的UML模型;而草图则通常是指手工绘制的、规范度较低的在纸张的UML模型。
对于局部的、重要性不高的、共享范围较小的UML模型,直接将草图扫描到电脑存档即可;对于全局的、重要性高的、高度共享的,在草图的基础上用CASE工具绘制成为正式的蓝图,并将其纳入统一的模型管理中
8. 标记值的作用是什么?它的表示法和约束的表示法有什么异同?在UML模型中如何区分它们?
标记值是用来为事物添加新特性的。约束的表示法和标记值法类似,都是使用花括号括起来的串来表示,不过它是不能够放在元素中的,而是放在相关的元素附近。
9. 构造型的作用是什么?如果我们采用一个自定义的图标来表示它,那么可能遇到的主要问题是什么?
UML面向对象建模基础(徐峰、陈暄)
第1章 UML概述
1. 请指出UML的三个主要的特性。
1)UML是一种语言
2)UML是用来建模的
3)UML是统一的标准
2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。
1)电路图:电子产品设计、生产、维修

《UML面向对象建模基础》课后答案

《UML面向对象建模基础》课后答案

第1章UML概述1. 请指出UML的三个主要的特性。

1)UML是一种语言2)UML是用来建模的3)UML是统一的标准2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。

1)电路图:电子产品设计、生产、维修2)园区沙盘:直观、立体化地展示园区的景观、布局3)地图:导航、指路等3. 请简要说明建模的意义和建模的原则。

建议能够帮助我们按照实际情况或按我们需要的样式对系统进行可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系统构造的模板;对我们所做出的决策进行文档化在建模时应遵循以下原则:选择要创建什么模型对如何动手解决问题和如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度级别上表示;最好的模型是与现实相联系的;单个模型是不充分的。

对每个重要的系统最好用一组几乎独立的模型去处理4. 请说明蓝图和草图的区别,并简单描述其适用的场景。

蓝图一般是指采用CASE工具绘制的、正式的、规范的UML模型;而草图则通常是指手工绘制的、规范度较低的在纸张的UML模型。

对于局部的、重要性不高的、共享范围较小的UML模型,直接将草图扫描到电脑存档即可;对于全局的、重要性高的、高度共享的,在草图的基础上用CASE工具绘制成为正式的蓝图,并将其纳入统一的模型管理中5. 说明UML适用的建模领域,以及其作用和主要的参与人员。

⏹业务建模,用来加强对业务领域的了解,以领域专家为主,需求分析人员是主力,系统分析员、架构师可参与。

⏹需求模型,用来加强需求了解,便于技术决策,以需求分析人员为主,系统分析员是主力,领域专家提供指导,架构师和资深开发人员参与。

⏹设计模型:包括高层设计模型和详细设计模型。

高层设计模型以架构师为主,系统分析员从需求方面提供支持,资深开发人员从技术实现方面提供支持。

详细设计模型则以资深开发人员为主,架构师提供指导。

⏹实现模型:架构师、资深开发人员(设计人员);以资深开发人员(设计人员)为主,架构师提供总体指导。

《UML面向对象分析、建模与设计》教学大纲

《UML面向对象分析、建模与设计》教学大纲

UML面向对象分析、建模与设计课程教学大纲01课程说明课程代码:课程名称:UML面向对象分析、建模与设计/UML object-oriented analysis, modeling and design开课学期:4学分/学时:3/32+16课程类型:必修02课程的性质、目的与任务《UML面向对象分析、建模与设计》是软件工程专业中一门综合性很强的基础课程,主要内容包括软件工程与面向对象方法、UML的定义和背景、UML基础(UML构造块、UML通用机制、UML“4+1”架构、UML建模工具)、UML系统动态建模(用例图、活动图、状态机图、顺序图、通信图)、类图、对象图、包图、组件图、部署图、统一软件开发过程、UML具体实例等。

本课程的目的与任务是使学生通过本课程的学习,从UML的基本概念入手,由浅入深地认识和学习软件工程核心要素,以体系化、工程化的方法思考软件工程过程。

本课程除要求学生掌握UML的图示语法和语义,重点要求学生掌握设计软件的逻辑能力以及对软件内部各种组织结构的表达能力,掌握对事物的抽象能力和建模的基本思想,为更深入地学习和今后的实践打下良好的基础。

03教学内容及教学基本要求1.软件工程与面向对象方法(2学时)了解软件工程的概念和历史,了解软件工程的目标和原则;了解面向对象方法的概念和历史,了解面向对象方法的优点。

2.统一建模语言UML(2学时)了解UML的定义和历史背景;了解UML的目标和应用范围。

3.初识UML(2学时)掌握UML构造块,分别是事物、关系、图;掌握UML的通用机制;了解“4+1”架构;了解常用的UML建模工具。

4.用例图(2学时)了解用例的概念、设计方法和注意事项理解用例图的组成元素,分别为参与者、用例、用例图中的关系;理解并掌握用例图中的关系,分别为参与者间的泛化关系、参与者与用例的关联关系、用例间的泛化关系、用例间的依赖关系;理解用例描述的概念;掌握用例说明文档的书写;掌握用例图建模,分别为对系统的语境建模和对系统的需求建模;了解用例图的使用环境。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
16
1.7 注释
注释给类添加了更多的信息
WashingMachine
brandName modelName serialNumber
capacity
addClothes() ...
序列号的生成参 考美国政府标准
EV 5-2241
17
1.8 属主范围
属性:属主范围有两种
实例:如果一个属性的属主范围是实例,则该类的每一个对 象都有一个自己的该属性值。
10
Static Parts of Classes
An attribute or operation is made static in UML by underlining it; the accountCounter attribute will be used to keep a running count of the number of objects created from the BlogAccount class
14
1.5 约束
是一个用花括号括起来的自由格式的文本。括号中的 文本指定了该类所要满足的一个的或者多个规则。
WashingMachine
brandName modelName serialNumber
capacity
{capacity=16 or 18 or 20 lb}
addClothes() ...
11
1.3 操作[1]
操作:操作是类能够做的事或是能对类做的事情。一个 类可具有零个到多个操作;操作名必须唯一。
类操作的表示: 可视性 操作名(参数列表):返回列表
参数列表:参数名1:类型=缺省值,参数名2:类型=缺省值,… 返回列表:规定了当该操作完成返回时的返回值的类型。(函数)
格式 返回名字1:类型,返回名字2:类型,… 操作的全部信息称为操作的型构。通常在设计阶段指明操作型构。型 构对程序设计人员非常有用。(注意操作和方法的区别)
WashingMachine
<<id info>> brandName modelName serialNumber
<<machine info>> capacity
<<clothes-related>> addClothes()
addDetergent() removeClothes()
<<machine-related>> turnOn()
ATM系统
读卡机
-卡号 接收卡() 弹出卡钱() -扣钱() -验钱数()
ATM屏幕
提示() 接收输入()
取钱机 -结余 提供兑现() 提供收款()
5
主要内容
1.类的可视化表示 2.类的发现
3.类之间的关系 4.语境
5.接口与实现
6.对象图
7.类的高级概念 8.类图的建立
分类符:如果一个属性的属主范围是分类符,则对于该对象 类本属性只有一个值,该类的每一个对象都持有此唯一的属 性值。要在属性名下加下划线。
操作:也有属主范围区分,含义与属性相同。对象的 构造操作(构造函数)必须带有下划线,表示它的属 主范围是分类符。
18
分类符---共享数据和共享操作
类图表达一组类和它们之间的联系。 描述各个对象类本身的组成,即类的属性、操作和 对对象的约束条件等。 描述系统中对象类之间的各种静态的联系。
类图是一种静态结构图,它描述的是系统的静 态结构,而不是系统的行为。
类之间的静态联系主要类型有:关联、聚合、 复合、继承、依赖等
4
一、对象类图—示例
6
1.1 类名
类名:类名必须唯一,可以是简单名,也可以是路径 名。
如果用英文,则单词首字母 大写,多单词合并写。
学生
WashingMachine
学校::学生
包名在左,类名在右,中间用双冒 号隔开。这种类型的类名叫:路径 名(pathname)。
学校 7
1.2 属性[1]
属性:属性是类的一个特性。一个类可具有零个到多 个属性;属性名必须唯一。
学生
+姓名:string 性别[2]:string -年龄:integer=18


属性名如果用英文,一 般头一个单词的首字母 小写。
WashingMachine
brandName modelName serialNumber
capacity
9
指出下面属性名的含义? + studentName : String = “黎明” # studentBirthDay : Date = 1999-10-21 - price : Real = 12.01 { R / W }
12
1.3 操作[2]
操作表示:
WashingMaching brandName … addClothes()
+addDetergent(D:integer) removeClothes(C:string)
turnOn():boolean 13
1.4 构造
如果属性或操作太多, 可以用构造型来组织 属性或操作列表。
类属性的表示: 可视性 属性名 [多重性]:类型=初始值
可视性:+ — 公共 # — 保护 - — 私有 多重性:说明该属性可取多少值。如:3,4,*,0..* ,...等。
(*表示任意非负整数) 类型:属性值的数据类型。依赖于实现语言。 =初始值:新建对象时该属性的初始值
8
1.2 属性[2]
属性表示:
类图
《UML面向对象建模基础》
知识图谱
对象类图与对象图
UML中的对象类图(Class Diagram)与对象 图(Object Diagram)具有强大的表达能力, 能够有效地对现实世界的业务领域和计算机系 统建立可视化的对象模型。
类图与对象图用来表达对象模型的静态结构。
3
对象类图(类图)
15
1.6 职责
职责用来描述类的属性 和操作能完成的任务。 在图标中,职责在操作 区域下面的区域中说明。
WashingMachine
<<id info>> …
<<machine info>> …
<<clothes-related>> …
<<machine-related>> …
Responsibility: Take dirty clothes as input and produce clean clothes as output
相关文档
最新文档