UML统一建模语言

UML统一建模语言

ID:45591029

大小:230.50 KB

页数:34页

时间:2019-11-15

UML统一建模语言_第1页
UML统一建模语言_第2页
UML统一建模语言_第3页
UML统一建模语言_第4页
UML统一建模语言_第5页
资源描述:

《UML统一建模语言》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、UML统一建模语言中国科学院研究生院武磊背景OO建模语言的发展始于20世纪70年代中和80年代末。从1989年到1994年,其数量由不到10种猛增加到50余种。但使用OO方法的用户却很难找到一种完全满意的语言。90年代中期,出现了一批较好的方法。其中令人关注的有Booch1993(适用于工业设计和构造);Rumbaugh的OMT-2(特别适用于以数据为中心的信息系统的分析和描述中的应用);Jacobson的OOSE,即use-case方法(支持商业工程和需求分析)。它们都是完整的方法,但各有其特色。UML开始于1994年10月。先由RationalSo

2、ftware公司的G.Booch和J.Rumbaugh将Booch和OMT(这两种方法被公认为是世界OO方法的先驱)统一起来,并于1995年10月推出了UM(UnifiedMethod)草案0.8版;1995年秋,Jacobson参加,把OOSE也合并进来,这才称为UML。UML是什么 (UnifiedModelingLanguage)是一种语言-用来获取某一主题的知识和表达关于该主题的知识,以便进行交流应用于建模和系统-理解(了解)一个主题(系统)基于面向对象规范是一种通用的、广泛适用的、得到工具支持和工业标准化的革命性的建模语言UML不是什么UML

3、不是一种可视化的程序设计语音,而是一种可视化的建模语言UML不是一种工具或库规范,而是一种建模语言规范UML不是一种过程,而是用于支持过程UML的目标易用、表达能力强、简单、可扩展具备扩展和特化机制-无须修改核心概念即可进行扩展独立于实现(程序设计语言)独立于过程(开发)解决反复出现的体系结构复杂的问题-通过组件技术UML图类图classdiagram对象图objectdiagram用例图usecasediagram序列图sequencediagram协作图collaborationdiagram状态图statechartdiagram活动图activ

4、itydiagram组件图componentdiagram部署图deploymentdiagram类图classdiagram描述系统的静态结构,而不是运行方式类(class)-attributesandmethods类图classdiagram关联(association)publicclassPerson{...privateOrganizationemployer;...}类图classdiagram多重性类图classdiagram聚合(aggregation)与组合(composition)不同之处在于,在组合关系中,Part的对象任何时候只

5、能从属于一个Whole对象类图classdiagram继承第一个类是代表某种支付方式的Payment抽象类,另外两个类分别扩展Payment类,描述两种不同的支付方式对象图objectdiagram对象图描述系统在某个特定时间的静态结构。对象模型描述一种特定的情况,而类模型则描述所有可能的情况。对象(object),代表特定的实体,是类的实例链接(link),代表对象之间的特定关系,是关联的实例对象图objectdiagram王平:学生姓名:王平学号:020106英语:书书名:英语价格:26.5数学:书书名:数学价格:21.8序列图sequencedi

6、agram要达到某个特定的目标,必然要执行一系列的方法调用。UML序列图的典型用途就是显示出方法调用过程。类角色(classrole),代表对象在交互中的角色生命线(lifeline),代表对象在一段时期内存在激活期(activation),代表对象执行一项操作的时期消息(message),代表对象间的通信序列图sequencediagram序列图sequencediagram/**属于Sale类:*从lineItem的单项金额计算交易总金额*@return交易总额*/publicdoublecalcTotal(){total=0.0;Iterator

7、i=lineItems.iterator();while(i.hasNext())total+=((LineItem)i.next()).calcTotal();returntotal;}/**属于LineItem类:计算当前项目的交易金额*@return交易金额*/publicdoublecalcTotal(){total=product.calcTotal(this);returntotal;}/**属于Product类:计算指定数量的产品价值多少@return金额*/publicdoublecalcTotal(LineItemli){return

8、amount*li.getQuantity();}协作图collaborationdiagra

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。