




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
统一建模语言UML,主讲:王定成 联系方式: 手机E-mail:,课程安排,总学时数: 共34学时(2学分) 其中: 讲课24学时 实验10学时(5次) 实验时间安排:,考核方式,上课:表现、考勤 上机:表现、考勤 作业和实验报告:质量、次数 期末:课程论文,教材: 李虎、赵龙刚译,UML基础、案例与应用人民邮电出版社,2004.8。 主要参考书: 邱仲潘等译(wendy著), UML with Rational Rose从入门到精通,电子工业出版社,2000年。 (美)刘润东,UML对象设计与编程 ,北京希望电子出版社 ,2001。,上机环境,Rational Rose 其他: 1、Visio 2、Visual UML 3、Together,References-1,UML Distilled Martin Fowler UML最佳入门书籍,几本有影响的参考书:,Martin Fowler: “统一建模语言(UML)的发明者Grady Booch本人,都不一定比Martin Fowler更会用UML” 官方文献和经典著作: 一方面是严谨、准确,但又高度抽象化甚至形式化; 另一方面则是生动、直观,不求面面俱到,但能让人很快就对概念大厦的全貌一目了然 从1986年在故乡英国拿到电子工程学位,先后参与开发建模软件Ptech,成为独立开发顾问,参与国家保健服务系统的开发,再移居美国,加入著名的克莱斯勒C3项目,到成为软件顾问公司ThoughtWorks的首席科学家。,Applying UML and Patterns - An Introduction to Object-Oriented Analysis and Design UML和模式应用-面向对象分析与设计导论 THE BEST Object Orientated Analysis and Design tutorial book (A) 在 OOA/D、迭代式开发和 UML 方面是全球最畅销的书籍之一,已被翻译成多种语言并在业界和院校中被广泛使用,References2,Enterprise Java with UML(马波 李雄锋译,机械工业出版社,2003) 介绍各种UML软件模型,加深对面向对象分析与设计的理解 结合Java语言,灵活使用UML 通过一个案例(考勤卡系统),贯穿全书: 从用户需求到最终实现 从各种UML图表到完成最后Java代码,References-3,Web Resources /uml/index.jsp /uml/ / / / / / ,References-4,11,第1章 UML与面向对象,UML(统一建模语言,Unified Modeling Language)软件和系统开发的标准建模语言,它主要以图形的方式对系统进行分析、设计。 在任何大规模的系统设计都是相当困难的。出现几个问题: 1、我们 如何与客户沟通 ,了解客户对系统的需求? 2、如何在开发人员之间共享设计,以确保各个部分能够无缝地协作? 在开发复杂的系统时,如 果缺乏相应的帮助工具,则很容易曲解或遗忘许多细节,这就是为什么使用UML的原因。,12,1.1.1 理解面向对象开发,面向对象(Objec-Oriented,OO)不仅是一些具体的软件开发技术与策略,而且是一整套关于如何看待软件系统与现实世界的关系,用什么观点来研究问题并进行求解,以及如何进行系统构造的软件方法学。 概括地说,面向对象方法的基本思想包括两个主要方面。一方面是从现实世界中客观存在的事务出发来构造软件系统,另一方面在系统的构造中尽可能地运用人类的自然思维方式。,1.1 面向对象开发,1.1.2 面向对象的主要概念,1对象: 对象(Object)从一般意义上来讲,它是现实世界中一个实际存在的事物,它可以是看得见摸得着的东西,如汽车;也可以是日常生活中一个抽象的概念,如课程。 对象具有自己的状态特性和动作。,13,1.1.3 OO开发的优点,面向对象的方法最初用于计算机模拟和图形用户界面,但更常用在信息系统开发上,究其原因是OO开发具有的优点。其优点主要体现在两方面:自然性和重用性。,14,1.2 OO开发中三层设计,面向对象的开发中,通常把OO系统中相互联系的所有对象分成三类:问题域类、GUI类和数据访问类,这就要求开发人员在设计和建造系统时分清这三类。,15,1.3 UML简介,统一建模语言(UML)仅仅是一种语言,不是一种系统设计的方法,而是系统建模的标准。UML经历了多年的研究、发展并不断完善,成为现在诸多领域内建模的首选标准。开发人员主要使用UML来构造各种模型,以便描述系统需求和设计。,16,1.3.1 为什么对系统建模,问题:开发人员如何与用户进行沟通以了解系统的需求?开发人员之间如何沟通以确定各个部分能够无缝地协作?这就是为什么需要为系统建模。 在系统设计中采用模型化设计的重要原因之一是管理系统设计的复杂性。模型化可以帮助用户从高层理解系统,使用户专注于系统设计的重要部分,收集关键信息,而不需要关心一些无关重要的部分。,17,1.3.2 UML的发展,在20世纪80年代,尝试不同方法进行面向对象的分析与设计。其中有少数方法开始在一起关键项目中发挥作用,包括Booch方法、OMT方法、RDD方法、OBA方法和Objectory方法。 20世纪90年代中期,出现了第二代面向对象方法,包括Booch94、OMT等。面向对象方法已经成为软件分析和设计方法的主流,这些方法所做的最重要的尝试是在程序设计与计算机科学之间寻求合理平衡,来进行复杂软件的开发。 UML是Grady Booch、James Rumbaugh和Ivar Jacobson智慧的结晶。他们被人们称为“三个好朋友”。,18,三人曾分别创立自己的建模语言,在1995年前后,决定停止竞争,取三种建模语言的精华,将之融为一体,为软件开发师、架构师和分析师提供一个更方便的工具。他们还加盟到Rational Software Corporation(Rational)公司。这家公司开发工具和软件,以支持基于统一建模语言的软件设计。 许多公司感到UML能够适应公司的战略目标,因此成立了一个UML联盟。联盟的成员包括DEC、Hewlett-Packard、Intellicorp、Microsoft、OracIe、Rational和其他些公司。 1997年,应“对象管理组织”(OMG) (Object Management Group )向外界征求标准建模语言的建议,联盟制订了UML 1.0版并提交给OMG。 UML成为软件工业界事实上的标准,并且仍在不断发展。OMG正式批准UML 2.0版(2009.6)。,UML包括了一些可以相互组合图表的图形元素。由于UML是一种语言,所以UML具有组合这些元素的语法规则。,1.3.3 UML的构成,UML提供这些图的目的是用多个视图来展示一个系统,这组视图被称为一个模型(model)。 一个系统的UML模型有点像一个建筑物按照比例缩小并经艺术家粉饰后的建筑模型。 在这里要注意的重要一点是一个UML模型只描述了一个系统要做什么,它并没告诉我们系统是如何被实施的。,在科学和工程技术领域中模型是一个很有用途的概念。 在最通常的意义下,当你建立了一个模型后,你其实就在运用你已经了解的很多知识来帮助你理解暂时还不知道的很多东西。 在某些领域中,一个模型可能是一组数学方程式;而在另一些领域中,一个模型可能是计算机仿真程序。 模型可能有许多种类型。 就我们的目的而言,一个模型是一组UML图,为了理解和开发一个系统,我们可以检查、获取和修改这些图。,模型、视图,1.3.4 “统一”的意义,UML的含义为统一建模语言,“统一”在UML中的含义: 在以往出现的方法和表示法方面 UML合并了许多面向对象方法中被普遍接受的概念,对每一种概念UML都给出了清晰的定义、表示法和有关术语。使用UML可以对已有的各种方法建立的模型进行描述,并比原来的方法描述得更好。 在软件开发的生命期方面 UML对于开发的要求具有无缝性,开发过程中的不同阶段可以采用相同的一套概念和表示法,在同一个模型中它们可以混合使用,而不必去转换概念和表示法。这种无缝性对迭代的增量式软件开发至关重要。,24,1.4 使用UML建模,UML可用于任何面向对象系统开发建模,不仅可以为使用UML进行软件建模,同样可以使用UML对其他非计算机领域系统进行建模,UML常进行以下应用: 信息系统(Information System):向用户提供信息的存储、检索和提交,处理存放在关系或对象数据库中大量具有复杂关系的数据。 技术系统(Technical System) 处理和控制技术设备,如电信设备、军事系统或工业过程。 嵌入式系统(Embedded Real-Time System) 它以软件的形式来嵌入到硬件设备中从而来控制硬件设备的运行,通常在手机、家电或汽车等设备上的系统。,25,1.5 实例,昨天我的一个朋友结婚了,问题分析-1,A. 这里面有什么东东? 月老,小伙,姑娘,恋人,玫瑰花 B. 每个东东看上去是什么样的? 月老,看上去有些年纪了,挺热心的 小伙,看上去很强壮,很诚实的 姑娘,看上去好漂亮,还很温柔 恋人,看上去很黏糊,当然就结婚了 玫瑰花,火红火红的,难怪姑娘动情了,问题分析-2,C. 每个东东能做点什么? 月老:牵线搭桥,介绍认识 小伙:追求献花,表达爱意 姑娘:仰慕倾情,以身相许 恋人:拍拖,结婚 玫瑰花:令姑娘头晕,传情示爱,问题分析-3,D. 这些东东都呆在什么地方? 月老:婚介所,交友网站 小伙:软件园,住盘城 姑娘:鼓楼医院,住新街口 恋人:情侣路,电影院, 玫瑰花:花店里,小伙手中,姑娘手中,问题分析-4,E. 这些东东之间有什么关系?,问题分析-5,F. 这些东东是怎么成事的? 月老牵线搭桥,介绍小伙和姑娘认识 姑娘和小伙一见钟情,成为一对恋人 一对恋人开始拍拖 小伙追求献花,表达对姑娘的爱意 姑娘收到999火红玫瑰,激动得头晕目眩 小伙真心求婚,姑娘以身相许 一对恋人终于走入婚姻殿堂,上升到面向对象 用面向对象观点观看事物,用对象观点认识事物,A.这里面有什么东东? 类与对象 B.每个东东看上去是什么样的? 类的属性 C.每个东东能做点什么? 类的方法 D.这些东东都呆在什么地方? 类的行为、状态、部署 E.这些东东之间有什么关系? 类间的关联 F.这些东东是怎么成事的? 类间的交互,我的一个朋友结婚了-A,A.这里面有什么东东? Object Class 我 本剧与我无关 我的朋友 小伙 我朋友的妻子 姑娘 月老 恋人 玫瑰 ,我的一个朋友结婚了-B,B.每个东东看上去是什么样的? 每个事物看上去都有自己的属性,在每个属性上都有一个特征值 小伙:体格,特征值:强壮 姑娘:性情,特征值:温柔 月老:年纪,特征值:较大 恋人:关系,特征值:黏糊 玫瑰花:颜色,特征值:火红,我的一个朋友结婚了-C,C.每个东东能做点什么? 每个事物都具备某种能力 小伙:追求、送花、娶亲 姑娘:爱慕、相许、出嫁 月老:牵线搭桥 玫瑰:示爱,我的一个朋友结婚了-D,D.这些东东都呆在什么地方? 每个事物都会有它合理的或者必须的空间位置和逻辑位置。尤其当这些位置对事物的行为造成重要影响的时候,表明他们的位置极其重要。 本剧列出的位置对故事主要情节没有太大的影响,系统中不予考虑。,我的一个朋友结婚了-E,E.这些东东之间有什么关系? 事物之间的关系非常多,面向对象的观点一般分为主要的三类: 整体-部分关系(组成和聚合),甲是乙的一个组成部分:如恋人和小伙,恋人和姑娘的关系 抽象-具体关系(泛化),甲是乙的一个特例:如人和小伙,人和月老,人和姑娘的关系
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 旋挖钻灌注桩悬臂桩施工技术及防治措施
- 三年级上册数学差异化教学计划
- 重症痛风的护理
- 5G通信基带处理器创新创业项目商业计划书
- 玉米肥料创新创业项目商业计划书
- 蛋液提取创新创业项目商业计划书
- 险评估咨询公司流程制度(规则)
- 执行金融公司结算制度
- 幼儿园大班体格锻炼社交融合计划
- 施工环保应急处置计划
- 2025贵州省专业技术人员继续教育公需科目考试题库(2025公需课课程)
- 静脉炎的预防及处理-李媛
- GB/T 33365-2016钢筋混凝土用钢筋焊接网试验方法
- GA/T 1393-2017信息安全技术主机安全加固系统安全技术要求
- GA 304-2012塑料管道阻火圈
- 螺旋藻片的10大销售话术(附4个联合用药方案)
- 2023年燕山大学辅导员招聘考试笔试题库及答案解析
- 老年肌肉衰减综合征(肌少症)课件
- 食堂从业人员健康情况晨检记录表
- 冷却系统橡胶软管设计基础规范
- 地源热泵埋管冬夏季换热平衡计算
评论
0/150
提交评论