已阅读5页,还剩79页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
UML建模语言及工具,-2-,学习目标,掌握UML运用UML进行简单的面向对象分析使用UML工具(IBMRationalRose2003/EnterpriseArchitect),-3-,预备知识,掌握某种面向对象程序设计语言(例如Java、C+等)。希望同学们已经初步掌握面向对象的一些基本常识。,-4-,参考书,UML和OOAD快速入门(初级)大象-ThinkinginUML(中高级)其它UML和模式应用面向对象分析与设计导论UML软件建模教程Rational.Rose从入门到精通,-5-,考核方式,考试课程结束后安排考试平时成绩(出勤+作业等),-6-,Why?,需要理由吗?我们从事软件行业面向对象是最主流的软件开发思想UML是最主流的建模语言,UML+面向对象,OOAD,系统定义、分析、设计、实现,对于今天的软件开发者来说,UML是他们的面包和黄油,What?,1-学习基本的软件建模理论2-学习基本的UML语言3-利用UML语言进行面向对象的系统建模,Agenda,第一章软件建模与UML概述第二章UML可视化建模实践第三章用例建模第四章用例分析技术,学习线路图,第二章,第三章,第四章,第一章软件建模与UML概述,本章目录,1.1软件模型1.1.1模型1.1.2软件模型1.2软件建模1.3关于UML1.4一个UML建模的例子,1.1.1模型,什么是模型模型的概念模型的作用什么是建模,-13-,建筑模型,什么是模型?,-14-,规划模型,什么是模型?,什么是模型?,设计模型,模型的概念,模型是对现实系统的简化或模拟,是对现实系统本质特征的一种简化、直观、类比和抽象的描述。,模型的作用,帮助理解模型可以帮助人们对复杂问题进行深入理解。方便交流模型可以方便人们讨论和交流。优选方案通过模型帮助人们从多个方案中挑选出优选的方案。缩短开发周期通过建模形象化系统开发内容和开发过程,提高开发效率,缩短开发周期。,什么是建模?,建模就是认识现实世界,客观世界,主观世界,认识世界,改造世界,世界是什么样的呢?,建模的重要性,PaperAirplane,FighterJet,LessImportant,MoreImportant,1.1.2软件模型,软件建模的必要性软件模型的概念软件模型在软件开发中的作用软件模型的内容,软件建模的必要性,智能性,软件是人智力劳动的产物,具有极高的智能特性。,无形性,软件没有物理实体的物理形态,而是智能、逻辑和算法的描述。,抽象性,软件具有高度抽象性。,复杂性,软件开发是高度复杂性工作,软件的规模越来越大,功能越来越复杂,服务领域越来越广泛。,结论:软件的开发和生产必须借助于模型,来反映和描述软件中间的开发过程和开发状态。,软件的特性,软件模型的概念,软件模型通过一定的形式和方法用来描述软件的模型。软件建模建立软件模型的过程被称为软件建模。,软件建模的好处:1系统可视化2系统结构/行为明确化3系统模板化4决策文档化,用户需求,软件模型在软件开发中的作用,1软件模型是软件的中间形态,2软件模型是人员交流的媒介,软件模型在软件开发中的作用,-25-,软件模型的内容,描述软件向用户所能够提供的外在特性,包括软件的目标、功能、性能等。,软件模型的内容,立足于系统的抽象逻辑建模.,软件模型的内容,软件设计方案的规范化描述。包括软件的架构、详细设计、界面设计、数据库设计等模型。,软件模型的内容,测试软件的方案描述.,第一章软件建模与UML概述,1.1软件模型1.2软件建模1.2.1软件建模要素1.2.2软件建模方法1.2.3软件建模过程1.2.4软件建模工具1.3关于UML1.4一个UML建模的例子,1.2.1软件建模要素,建模过程,建模方法,建模语言,建模工具,面向对象的建模方法,支持UML的建模工具,UML,1.2.2软件建模方法,软件建模方法一览面向对象的软件建模方法和特点对象在三个世界中的含义和关系软件领域中的对象,软件方法学的发展历程,面向对象是软件方法学的返朴归真:面向用户,尽可能模拟人类习惯的思维方式。,使描述问题的问题空间与解决问题的解空间在结构上尽可能一致。,尽可能接近人类认识世界解决问题的方法与过程。,面向对象的软件建模,含义:在软件开发中,采用与人的思维方式相一致的,直接面向客观事物,面向所要解决的需求问题,并用一套对象、类、继承、消息等机制开发软件的系统化软件建模方法。特点:对象是软件建模的重心;包括需求、设计、实现等多种模型;,与人的思维方式相一致?,PUSHEBXMOVEBX,EDXMOVEDX,EAXSHREDX,16DIVBX,AHare.Run;ALion.Catch(AHare);ALion.Kill(AHare);AHare.Dead;ALion.Eat;ALion.Happy;,在计算机中模拟现实世界的事和物,对象在三个世界中的含义和关系,汽车,灯泡,农村,汽车,客观世界:(客观事物),主观世界:(概念),软件世界:(对象),灯泡,农村,-37-,软件空间,主观空间,事物,概念,对象,软件领域中的对象,软件系统中的一个具有确定语法规则的软件单元;,/定义一个Tree类ClassTreepublicStringvariety;/品种publicStringroot;/根publicStringleaf;/叶子publicTree(StringV,Stringr,StringL)/构造函数this.variety=V;this.root=r;inti=1;foreach(StringsinL)Leafi=s;i+;,publicclassProgramStaticvoidMain(stringargs)Treet1=newTree();/创建一个对象,1.2.3软件建模过程,软件过程软件建模过程RUP(RationalUnifiedProcess),软件过程,指软件生存周期中一系列相关活动按照确定的次序演进变化的进程。软件过程的发展20世纪80年代之前,不重视软件过程;20世纪90年代开始重视,产生ISO软件过程标准;1998年Rational提出RUP并成为OMG标准;21世纪软件过程成为软件工程一个分支。,软件建模过程,是指根据软件开发的需要,进行业务建模、需求建模、分析建模、设计建模和测试建模的过程。,统一过程模型,统一过程模型-RationalUnifiedProcess-RUP是由Rational公司开发的一种软件过程。RUP认为,软件开发是:一个叠代过程(Iterativeandincremental)由UseCase驱动的(Usecasedriven)以构架设计为中心的(Architecture-centric),RUP的软件开发生命周期,1.2.4软件建模工具,RationalRose2003EnterpriseArchitectStarUMLMicrosoftVisio,常见的几种UML建模工具,RationalRose2003:,美国Raitonal公司推出,是一个强大的UML建模工具,但从2003版之后,并入IBM整体开发平台,称之为IBMrationalsoftwarearchitect。,EnterpriseArchitect:,澳大利亚Sparx公司推出,是目前最强大的UML建模工具,被业界广泛接受。,StarUML:,开源建模软件,被广泛使用。,MicrosoftVisio:,第一章软件建模与UML概述,1.1软件模型1.2软件建模1.3关于UML1.3.1UML的含义1.3.2UML的发展历史1.3.3UML的本质1.4一个UML建模的例子,1.3.1UML的含义,UML:UnifiedModelingLanguage统一建模语言,UnifiedModelingLanguage(统一建模语言)是对象管理组织(OMG)制定的一个通用的、可视化的建模语言标准,可以用来可视化(visualize)、描述(specify)、构造(construct)和文档化(document)软件密集型系统的各种工件(artifacts,又译制品),-51-,1.3.2UML的发展历史,面向对象建模语言产生于1970年代中期1990年代初,建模语言数量达到50多种众多语言各有千秋,缺乏通用性语言之间的细小差别妨碍了用户的交流1990年代中期,三位主要的OO建模大师:Booch,Rumbaugh,Jacobson开始致力于建立统一建模语言的工作,-52-,RumbaughBoochJacobson,UML的创建人:,OMT方法Booch方法OOSE方法,UML,-53-,1.3.3UML的本质,UML和程序设计语言的关系UML和软件过程的关系建模、OO(ObjectOriented)与UMLUML的是与非,-55-,一个比喻:,Java、C+等程序设计语言用来编码实现一个软件系统。UML用于对一个软件系统建立模型。,UML和程序设计语言的关系,-56-,软件过程规定软件开发的阶段、步骤和工作。UML是语言,用来描述软件模型。,UML和软件过程的关系,ALanguageIsNotEnoughtoBuildaSystem,-57-,建模、OO(ObjectOriented)与UML,建模是目的OO是一种建模理论UML是一种体现OO的建模语言,是将OO理论转化为实践的工具,UML的是与非,TheUMLisnotaprocessormethodologyobject-orientedanalysisanddesignGuidelines(指导、准则)fordesignMuchmoreimportant:Skillindesigningwithobjects.,第一章软件建模与UML概述,1.1软件模型1.2软件建模1.3关于UML1.4一个UML建模的例子1.4.1问题分析1.4.2用对象观点认识事物1.4.3基于UML的分析,-60-,本节目的,通过简单通俗的事例来演绎对象建模的基本概念开阔视野,轻松树立面向对象的观点掌握用面向对象方法分析问题的要领为学习对象建模方法热身,-61-,1.4.1问题分析,昨天我的一个朋友结婚了,-62-,问题分析-1,A.这里面有什么东东?月老,小伙,姑娘,恋人,玫瑰花B.每个东东看上去是什么样的?月老,看上去有些年纪了,挺热心的小伙,看上去很强壮,很诚实的姑娘,看上去好漂亮,还很温柔恋人,看上去很亲密,当然就结婚了玫瑰花,火红火红的,难怪姑娘动情了,-63-,问题分析-2,C.每个东东能做点什么用?月老:牵线搭桥,介绍认识小伙:追求献花,表达爱意姑娘:仰慕倾情,以身相许恋人:拍拖,结婚玫瑰花:传情示爱,-64-,问题分析-3,D.这些东东都呆在什么地方?月老:婚介所,交友网站小伙:软件园,住唐家姑娘:人民医院,住新香洲恋人:情侣路,电影院,玫瑰花:花店里,小伙手中,姑娘手中,-65-,问题分析-4,E.这些东东之间有什么关系?,-66-,问题分析-5,F.这些东东是怎么成事的?月老牵线搭桥,介绍小伙和姑娘认识姑娘和小伙一见钟情,成为一对恋人一对恋人开始拍拖小伙追求献花,表达对姑娘的爱意姑娘收到999火红玫瑰小伙真心求婚,姑娘以身相许一对恋人终于走入婚姻殿堂,-67-,1.4.2用对象观点认识事物,-68-,对象观点,A.这里面有什么东东?类与对象B.每个东东看上去是什么样的?类的属性C.每个东东能做点什么用?类的方法D.这些东东都呆在什么地方?类的行为、状态、部署E.这些东东之间有什么关系?类间的关联F.这些东东是怎么成事的?类间的交互,-69-,我的一个朋友结婚了-A,A.这里面有什么东东?ObjectClass我本剧与我无关我的朋友小伙我朋友的妻子姑娘月老恋人玫瑰,A,-70-,我的一个朋友结婚了-B,B.每个东东看上去是什么样的?每个事物看上去都有自己的属性,在每个属性上都有一个特征值小伙:体格,特征值:强壮姑娘:性情,特征值:温柔月老:年纪,特征值:较大恋人:关系,特征值:亲密玫瑰:颜色,特征值:火红,D,A,C,B,E,F,-71-,我的一个朋友结婚了-C,C.每个东东能做点什么用?每个事物都具备某种能力小伙:追求、送花、娶亲姑娘:爱慕、相许、出嫁月老:牵线搭桥玫瑰:示爱,D,A,C,B,E,F,-72-,我的一个朋友结婚了-D,D.这些东东都呆在什么地方?每个事物都会有它合理的或者必须的空间位置和逻辑位置。尤其当这些位置对事物的行为造成重要影响的时候,表明他们的位置极其重要本剧列出的位置对故事主要情节没有太大的影响,系统中不予考虑,D,A,C,B,E,F,-73-,我的一个朋友结婚了-E,E.这些东东之间有什么关系?事物之间的关系非常多,面向对象的观点一般分为主要的三类:整体-部分关系(组合和聚合),甲是乙的一个组成部分:如恋人和小伙,恋人和姑娘的关系抽象-具体关系(泛化),甲是乙的一个特例:如人和小伙,人和月老,人和姑娘的关系合作关系(关联),甲会对乙做点什么:如月老和小伙、姑娘,小伙和玫瑰,小伙和姑娘的关系,D,A,C,B,E,F,-74-,我的一个朋友结婚了-F,F.这些东东是怎么成事的?每个事物都会尽量利用伙伴的能力整体事物的能力依靠部分事物的能力抽象事物的属性和能力就是具体事物的属性和能力;此外,具体
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学生国旗下励志演讲稿合集
- 建筑工程项目进度控制方法及案例分享
- 2025年湖南省岳阳市汩罗市事业单位安置定向招聘退役军士考试18人招聘笔试备考题库及答案详解(历年真题)
- 中医药大学药理学实验手册
- 中学政治责任主题教学设计
- 制造业代工合同风险防范指南
- 中小微企业融资申请与风险分析
- 新生儿护理制度与流程指导
- 医患关系正面案例集
- 主题酒店市场投资分析与运营策划
- 冰雪节旅游设计开发方案
- 2025年秋季学期三年级上册语文期中质量检测试卷含答案
- 华为ICT大赛2025-2026中国区(实践赛)基础软件赛道校赛理论考试题库500题(含答案)
- 医学眼眶淋巴瘤专题知识宣讲
- 2025年茶艺师职业技能考试试题含答案
- 游泳池恒温施工方案范本
- 犬猫牙科基础知识培训课件
- 新版中国食物成分表
- 团员发展纪实簿
- 弱电系统投标技术(设计方案)
- GA 1517-2018 金银珠宝营业场所安全防范要求
评论
0/150
提交评论