您好,欢迎访问三七文档
第3章可视化建模实践APracticeofVisualModelingwithUML-2-Review:AnOverviewofObjectTechnologyandVisualModeling对象技术与可视化建模基础对象技术基础对象与类面向对象的基本原则泛化和多态面向对象的术语清单可视化建模的基本原则UML基础过程与可视化建模-3-WhatIstheUML?TheUMLisalanguageforVisualizingSpecifyingConstructingDocumentingtheartifactsofasoftware-intensivesystemUnifiedModelingLanguage(统一建模语言)是对象管理组织(OMG)制定的一个通用的、可视化的建模语言标准,可以用来可视化(visualize)、描述(specify)、构造(construct)和文档化(document)软件密集型系统的各种工件(artifacts,又译制品)-4-UML诞生公众反馈OOPSLA95UnifiedMethod0.8工业化标准化统一化分散的各部分Booch93OMT-21996.6和1996.10UML0.9&0.911997.9公布UML1.11997.1公布UML1.0合作伙伴意见1997.11.17UML1.1被OMG接纳为标准Booch91OMT-1其他方法OOSE-5-UML发展现状目前通用的是UML1.x版主要UML1.3、UML1.42003年3月正式发布UML1.5UML2.02003年6月OMG采纳了UML2.0的Superstructure的提案正式文本尚未发布MDA…-6-UML结构UMLStructure构造块buildingblocks公共机制commonmechanisms构架architecture基本UML建模元素、关系和图达到特定目标的公共UML方法系统架构的UML视图-7-构造块构造块buildingblocks物件things关系relationships图diagrams建模元素本身把物件联系在一起,关系说明两个或多个物件时如何语义相关的UML模型的视图,它们展现物件的集合,“讲述关于软件系统的故事”,是我们可视化系统将做什么(分析级图)或者系统如何做(设计级图)的方法-8-物件物件things结构物件行为物件分组物件注解物件UML模型中的名词,如类、接口、协作、用例、活动类、组件、节点UML模型的动词,如交互、状态机包,它用于把语义上相关的建模元素分组为内聚的单元注解,它附加到模型以捕获特殊信息,同黄色便笺很相像-9-关系关系relationships关联association依赖dependency泛化generalization实现realization描述对象之间的一组链接物件的改变引起依赖物件的语义改变一个元素是另一个元素的特化,而且它可以取代更一般的元素类元之间的关系,一个类元说明一份契约,另一个类元保证实现该契约-10-图图diagrams类图classdiagrams对象图objectdiagrams构件图componentdiagrams部署图deploymentdiagrams用例图usecasediagrams顺序图sequence`diagrams协作图collaborationdiagrams状态图statechartdiagrams活动图activitydiagrams静态模型(系统结构)动态模型(系统行为)-11-公共机制公共机制commonmechanisms规格说明specifications修饰adornments公共分类commondivisions扩展机制extensibilitymechanisms-12-规格说明UML模型至少具有两种维度:图形维度:允许使用图和图标可视化模型文本维度:由各种建模元素的规格说明所组成规格说明模型元素的特征和语义的文本描述—模型的“肉”形成了承载模型的语义背板(semanticbackplane),赋予模型意义,各种图仅仅是该背板的视图或者可视化投影deathbydiagram—由于图形而死亡-13-修饰修饰:图中建模元素上暴露的信息项以表现某个要点任何UML图仅是模型的视图,因此,只有在修饰增强了图的整体清晰性和可读性或者突出模型的某些重要特征时,你才应该表示那些修饰Window+size:Area#visibility:Boolean-xptr:XWindow+create:void+hide:void-attachXWindow:voidWindow-14-公共分类公共分类描述认识世界的特殊方法类元(Classifier)和实例类元:一类事物的抽象概念;如bankaccount参与者、类、类元角色、组件、数据类型、接口、节点、信号、子系统、用例实例:一类事物的特定实例;如mybankaccount接口(interface)和实现接口:说明事物行为的契约(做什么)实现:事物是如何工作的特殊细节(如何做)-15-扩展机制约束:允许对模型元素添加新的规则构造型(stereotypes):基于已有的建模元素引入新的建模元素ThemeansbywhichtoextendtheUMLStereotypesconveykeypropertiestothemodelreaderAnumberofstereotypesarepackagedalongwiththeUMLCandefineyourownstereotypes标记值:允许为模型元素添加新的特性,是带有相关值得关键字-16-架构ArchitectureTheorganizationalstructureofasystem,includingitsdecompositionintoparts,theirconnectivity,interactionmechanisms,andtheguidingprinciplesthatinformthedesignofasystem构架是一个系统的组织结构,包括系统分解成的各个部分、它们的连接性、交互机制和通知系统设计的向导规则IEEE:在其环境中系统的高级概念-17-4+1视图-1-18-4+1视图-2UseCaseViewEnd-user:Functionality这些视图由用例视图所统一,它描述项目干系人(stakeholder)的需求;所有其他视图都是从用例视图派生而来,该视图把系统的基本需求捕获为用例并提供构造其他视图的基础LogicalViewAnalysts/Designers:Structure系统功能和词汇;描述问题域的词汇,作为类和对象的集合。重点是展示对象和类是如何组成系统、实现所需系统行为的-19-4+1视图-3ProcessViewSystemintegrators:Performance,Scalability,Throughput系统性能、可伸缩性和吞吐量;建模在我们系统中的可执行线程和进程作为活动类。其实,它是逻辑视图面向进程的变体,包含所有相同的制品ImplementationViewProgrammers:SoftwareManagement系统组装和配置管理;对组成基于系统的物理代码的文件和组件进行建模。它同样展示出组件之间的依赖,展示一组组件的配置管理以定义系统的版本DeploymentViewSystemengineering:SystemTopology,Delivery,Installation,Communication系统的拓扑结构、分布、移交和安装;建模把组件物理地部署到一组物理的、可计算节点上,如计算机和外设上。它允许你建模横跨分布式系统节点上的组件的分布-20-总结:UML结构UML构造块公共机制架构物件关系图规格说明修饰公共分类扩展机制用例视图逻辑视图进程视图实现视图部署视图结构物件行为物件分组物件注解物件关联依赖泛化实现类图顺序图对象图协作图构件图状态图部署图活动图用例图-21-UML9种图类图:类以及类之间的相互关系对象图:对象以及对象之间相互关系构件图:构件及其相互依赖关系部署图:构件在各节点上的部署顺序图:强调时间顺序的交互图协作图:强调对象协作的交互图状态图:类所经历的各种状态活动图:对工作流建模用例图:需求捕获,测试依据结构行为用例图静态图实现图交互图行为图-22-UML建模工具IBMRationalRose2003BorlandTogether7.0MicrosoftVisio2003SybasePowerDesigner10……“非程序员杂志”第26到30期UML工具一览,列出了约129个UML开发工具-23-用例与用例图场景:是用来描述用户和系统之间交互的顺序的步骤Ascenarioisasequenceofstepsdescribinganinteractionbetweenauserandasystem用例:是为了达到某一用户目标而组合在一起的一组场景Ausecase,then,isasetofscenariostiedtogetherbyacommonusergoal.用例图:用来显示在系统(或其它实体)内的用例与系统参与者之间的关系Ausecasediagramshowstherelationshipamongusecaseswithinasystemorothersemanticentityandtheiractors主要使用场合:需求获取、定义、分析-24-用例图元语includeextend参与者用例系统边界关联扩展包含泛化注释体注释连接-25-示例03-02:网上销售系统用例图FindProductsCancelOrderUpdateProductDeleteProductFromCatalogShopKeeperBrowseCDsBrowseBooksFindCDsFindBooksBrowseProductsLogOnCustomerUpdateCustomerCreateNewCustomerDisplayBasketDisplayOrdersCheckOutCustomerextendincludeinclude-26-静态图:类图、对象图、包图类图:是软件的蓝图,详细描述了系统内各个对象的相关的类,以及这些类之间的静态关系Aclassdiagramisasoftwareblueprint-Detailsthetypesofobjectswithinasystem-Describesthestaticrelationshipsbetweenclasses对象图:表示在某一时刻类的对象静态结构和行为Anobjectdiagramrepresentsaconcretesituationatagiventime,itexpressboththestaticstructure(foundinclassdiagrams)andbehavior主要使用场合:系统分析、设计、代码生成-27-类图元语-1类第一栏是类名,第二栏是类的属性,第三栏是类的操作包包表示一个类图的集合对象对象是类的一个实例关联关联用于表示类的对象之间的关系,其特殊形式有组成关联和聚集关联聚集关联聚集关联用于表示类的对象之间的关系是整体与部分的关系组成关联组成关联用于表示类的对象之间的关系是整体拥有各部分且部分与整体共存亡Package-28-类图元语-2链接链接用于表示对象之间的关联关系的一个实例泛化关系泛化关系(继承关系)定义类和包之间的一般元素和特殊元素之间的分类关系依赖关系有两个类或包X、Y,修改X的定义引起对Y的定义的修改,则称Y依赖于X注释体注释体用于对UML实体进行文字描述注释连接注释连接将注释体与要描述的实体相连-29-示例03-01-
本文标题:uml03
链接地址:https://www.777doc.com/doc-4627743 .html