《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是一种建模语言
建模方法 = 建模语言 + 建模过程 + 工具。 建模语言定义了用于表示设计的符号(通常是图形符号); 建模过程描述进行设计所需要遵循的步骤。
  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
相关文档
最新文档