中软培训UML基础.pptx
《中软培训UML基础.pptx》由会员分享,可在线阅读,更多相关《中软培训UML基础.pptx(121页珍藏版)》请在咨信网上搜索。
1、什么是什么是UMLUML是UnifiedModelingLanguage的首字母缩写,中文通常称为统一建模语言。UML是一个通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档文档。UML描述了一个系统的静态结构静态结构和动态行动态行为为。UML是不是程序设计语言?UML发展简史发展简史GradyBooch是面向对象方法最早的倡导者之一,1984便在著作中提出了面向对象的基本问题。JamesRumbaugh提出了面向对象的建模技术即OMT引入了各种独立于程序设计语言的表示符号。IvarJacobson于1994年提出了面向对象软件工程的方法,即OOSE。1994年
2、10月,同在Rational公司的Booch与Rumbaugh开始致力于统一各种建模语言。1995年秋,Jacobson也加盟到这项工作中。1996年6月发布了UML0.9。1997年11月,OMG采纳UML1.1作为面向对象技术的标准建模语言。UML概念域概念域 静态结构静态结构静态结构静态结构确定有关应用、内部特性及其相互关系的关键概念。动态行为动态行为动态行为动态行为有两种方式对行为建模:一种是根据一个对象与外界发生关系的生命历史;另一种是一系列相关对象之间当它们相互作用实现行为时的通信方式。实现构造实现构造实现构造实现构造UML除了可以用于逻辑分析外,还可以用于实现,如构件图。模型组织
3、模型组织模型组织模型组织将模型组织成便于理解的层次结构,主要是指包。扩展机制扩展机制扩展机制扩展机制如构造型等。模型基本概念模型基本概念模型是用某种工具对同类或其他工具的表达方式模型从某一个建模观点出发,抓住事物最重要的方面而简化或忽略其他方面模型包含语义语义语义语义和表示法表示法表示法表示法,可以采取图形和文字等多种不同形式。语义方面用一套逻辑组件表达应用系统的含义,如类、关联、状态、用例和消息。表示方式元素携带了模型的可视化表达方式,即语义是用一种可被人直接理解的方式来表达的。UML视图视图一、静态视图一、静态视图静态视图静态视图静态视图对应用领域中的概念以及与系统实现有关的内部概念建模。
4、静态视图主要是由类类及类间相互关系类间相互关系构成,这些相互关系包括:关联、泛化和各种依赖关系,如使用和实现关系。事实上,在静态视图中,建模元素被称为类元类元,类元是类的泛化,包含其他类似类的元素。类元类元类的表示方法类的表示方法类用实线边框的矩形来表示,矩形用两条水平线分为三栏。上面一栏包含类的名称类的名称类的名称类的名称以及其他适用于整个类的特性。中间一栏包含属性表属性表属性表属性表。下面一栏包含操作表操作表操作表操作表。中间和下面栏在类符号中可隐藏。类的表示方法类的表示方法属性:可见性可见性可见性可见性 名称名称名称名称:类型类型类型类型=缺省值约束特性缺省值约束特性缺省值约束特性缺省值
5、约束特性方法:可见性可见性可见性可见性 名称名称名称名称(参数表参数表参数表参数表):):返回类型返回类型返回类型返回类型 约束特性约束特性约束特性约束特性类元关系类元关系类元之间的关系有关联、泛化、流及各种形式的依赖关系,包括实现关系和使用关系关联关系关联关系association关联关联关系描述了给定类的单独对象之间语义上的连接。二元关联二元关联是有着两个关联端点的关联,它是最常见的一种关联,用一个连接两个类符号的实线路径表示。N元关系元关系有n个端点,使用一个大菱形表示。association聚集与组合聚集与组合 聚集(聚集(聚集(聚集(aggregationaggregation)表示
6、部分与整体关系的关联,它用端点带有空菱形的线段表示,空菱形与聚集类相连接。组合(组合(组合(组合(compositioncomposition)是更强形式的关联,整体有管理部分的特有的职责,它用一个实菱形物附在组成端表示。关联类关联类如果一个关联既是类又是关联,即它是一个关联类,那么这个关联可以有它自己的属性限定符限定符如果一个关联的属性在一组相关对象中是唯一的,那么它是一个限定符限定符是用来在关联中从一组相关对象中标识出独特对象的值关联端点关联端点关联端点关联端点关联端点关联端点泛化泛化Generalization泛化反映的是一个较广泛元素和一个较特殊元素之间的类元关系实现实现realiza
7、tion实现关系将一种模型元素(如类)与另一种模型元素(如接口)连接起来,其中接口只是行为的说明而不是结构或者实现。泛化关系将在同一语义层上的元素连接起来(如,在同一抽象层),并且通常在同一模型内。实现关系将在不同语义层内的元素连接起来(如,一个分析类和一个设计类;一个接口与一个类),并且通常建立在不同的模型内。实现关系实现关系实现关系用一条带封闭空箭头的虚线来表示可以用带关键字interface的矩形表示,或用圆圈表示抽象类抽象类抽象类是不可被实例化的类,即它可以没有直接实例。抽象类或抽象操作的名字用斜体表示。关键字abstract可以放置在位于名称下面或后面的特性表中,如Accountab
8、stract。抽象类与具体类之间是泛化关系还是实现关系?依赖关系依赖关系依赖关系(dependency)是表示一个或几个模型中两个元素间关系的语句依赖关系用两个模型元素之间的虚线箭头表示。箭尾处的模型元素(客户)依赖于箭头处的模型元素(提供者)。箭头上可带有表示依赖关系种类的关键字,还可以有名称。依赖关系种类依赖关系种类对象图对象图对象是类的实例,链是关联的实例。对象图是对系统的一个快照何时使用何时使用不要试图在项目的初始阶段使用所有的符号。在项目的不同阶段应当使用不同的观点来画类图。不要为每个事件都画一个模型,应该把精力放在关键的领域。二、用例视图二、用例视图用例视图用例视图用例视图将系统划
9、分成对参与者参与者有用的需求,而交互功能部分被称作用例用例(UseCase)。本质上,用例是用户与计算机之间为达到某个目的的一次典型交互作用。用例描述了用户提出的可见需求,可大可小,并且一定对应一个具体的用户目标。参与者参与者参与者是与系统、子系统或类发生交互作用的外部用户、进程或其他系统的理想化概念。作为外部用户与系统发生交互作用,这是参与者的特征一个实际用户可能对应系统的多个参与者。不同的用户也可以只对应于一个参与者,从而代表同一参与者的不同实例。参与者可以是人、另一个计算机系统或一些可运行的进程。在图中,参与者用一个名字写在下面的小人表示。用例图用例图用例用例用例是一个连贯的功能性单元,
10、由一个用消息顺序表示的类元(系统、子系统或类)提供,这些消息与被系统执行的动作在系统和一个或多个外部用户(表现为参与者)间交换。用例的目标是要定义类元(包括一个子系统或整个系统)的一个行为,但并不显示类元的内部结构。用例是一个描述符,可以用一种非正式的文本描述。用例关系用例关系扩展关系扩展关系扩展是指扩展用例与基用例之间的关系,说明如何将扩展用例定义的行为插入基用例定义的行为序列。扩展关系有一系列扩展点名称,它们必须在基用例中出现。名称的数目必须与扩展用例中的片断数目相一致。用例的扩展点可以列在名为extensionpoints的分栏内。当用例实例的执行到达第一个扩展点引用的位置时,条件决定是
11、否执行扩展用例。扩展关系扩展关系泛化关系泛化关系一个用例(子用例)和另一个用例(父用例)之间的类元关系,描述了子用例与其他具有相同父用例的用例共享的特性。包含关系包含关系包含关系将基用例和包含用例连接在一起。关系中的包含用例不是能够独立实现的类元,而是显式地描述了插入执行基用例的用例实例中的附加行为序列。包含位置是被包含用例执行的位置。包含只执行一次,通过引用包含的基用例行为序列中的循环可以达到多次包含的效果。用例关系用例关系区别区别用例获取用例获取用例是获取需求、规划和控制项目迭代过程的基本工具。用例获取是项目初始阶段首先要做的工作,但大量的用例是在项目细化过程中产生的。获取用例首先要找出系
12、统的执行者,一旦获取了系统的执行者,就可以对每个执行者提出一些问题,然后从执行者对这些问题的答案中获取用例获取执行者获取执行者谁使用系统的主要功能(主要使用者)谁需要系统支持他们的日常工作?谁来维护、管理系统使其能正常工作(辅助使用者)?系统需要控制哪些硬件?系统需要与其他哪些系统交互?对系统产生的结果感兴趣的是哪些人或哪些事件?获取用例获取用例执行者要求系统提供哪些功能?执行者需要读、产生、删除、修改或存储系统中的信息有哪些类型?必须提醒执行者的系统事件有哪些?执行者必须提醒系统事件有哪些?怎样把这些事件表示成用例中的功能?三、状态机视图状态机视图状态机视图状态机视图通过对类对象的生存周期建
13、立模型来描述对象随时间变化的动态行为。一个状态机由两类元素组成:1、状态(state)2、转换(transition)状态机的运作是靠事件驱动的。状态要素状态要素 状态名称状态名称状态名称状态名称 子状态子状态子状态子状态:如果一个状态机具有嵌套的子结构,则它被称为组成状态。组成状态或者是互斥的子状态构成的网络(即依次活动的子状态),或者是并发子状态的集合(即并发活动的子状态)。没有子结构的状态(除去可能的内部动作)是一个简单状态。入口动作入口动作入口动作入口动作:系统进入这个状态时要做的行为,每个状态至多有一个入口动作,语法为entry/action-sequence,入口动作可以是一个序列
14、 出口动作出口动作出口动作出口动作:系统退出这个状态时要做的行为,每个状态至多有一个出口动作,语法为exit/action sequence,出口动作可以是一个序列 起始状态和终止状态:起始状态和终止状态:起始状态和终止状态:起始状态和终止状态:都是伪状态,不具备状态的以上属性,只是表明状态机的开始与终结。状态表示状态表示状态用圆角矩形表示,可能有一个或者多个可选分栏。名称分栏嵌套状态:显示组成状态本身的由附属嵌套的状态构成的状态图。内部转换分栏:表示内部活动或者动作列表,是在对象处于状态中时接收到事件而做出响应执行的,结果不改变状态。入口和出口动作也位于此栏,不能有参量或者监护条件。内部转换
15、内部转换状态种类状态种类顺序组成状态顺序组成状态并发组成状态并发组成状态结合状态结合状态结合状态可以有一个或多个进入段和一个或多个输出段。它不能有内部活动、子机器,或者具有触发器事件的输出转换。它是构建转换用的哑状态,因而不能处于“活动”的状态。结合状态可以构建源自多个片断的转换。结合状态链中只有第一个段可以有触发器事件,但每个段都可以有监护条件。其后续段必须无触发。有效的监护条件是所有单个监护条件的结合体。除非所有条件被满足,否则转换不会开始。换而言之,状态机不会停留在结合状态。历史状态历史状态历史状态是一种伪状态,说明内部组成状态在退出之后仍然记得它之前的活动子状态。转向历史状态的一个转换
16、将使前一个活动子状态再次成为活动的,并执行相应的入口动作和出口动作。浅历史状态保存并激活与历史状态在同一个嵌套层次上的状态。深历史状态记忆组成状态中更深的嵌套层次的状态。浅历史状态用带有H的小圆圈表示,深历史状态用带有H*的圆圈表示。历史状态历史状态转换转换转换表示在一个对象的生命历史中所有的状态之间可能有的路径以及在状态变化时发生的动作。转换包括源状态源状态源状态源状态、事件触发器事件触发器事件触发器事件触发器、监护条件监护条件监护条件监护条件、动作动作动作动作和目标状态目标状态目标状态目标状态,有的可以省略。转换用从一个状态(源状态)指向另一个状态(目标状态)的实线箭头表示,其上标有转换字
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 培训 UML 基础
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。