您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 互联网软件开发与应用02
UML建模语言介绍第2章UML建模语言目录2.1UML概述2.2通用模型元素2.3UML模型描述图UML建模语言2.1UML概述UML(UnifiedModelingLanguage)产生于90年代中期,是软件界第一个统一的建模语言,该方法结合了Booch,OMT,和OOSE方法的优点,统一了符号体系,并从其它的方法和工程实践中吸收了许多经过实际检验的概念和技术。UML语言是面向对象技术领域占主导地位的统一建模语言。什么是模型?为什么要建模?模型是一个系统的完整的抽象。人们对某个领域特定问题的求解及解决方案,对它们的理解和认识都蕴涵在模型中。通常,开发一个计算机系统是为了解决某个领域特定问题,问题的求解过程,就是从领域问题到计算机系统的映射。领域问题概念模型分析、抽取系统需求解决方案分析、设计提取UML作为一种可视化的建模语言,提供了丰富的基于面向对象概念的模型元素及其图形表示元素。2.1.1UML是什么1、为什么出现UML?在互联网开发的过程中,沟通特别重要,包括项目组之间,项目组与客户之间,沟通的过程中,如果出现某项需求描述不够明确而引起开发人员的误解时,编制出来的程序就不是用户想要的,为了保障沟通的有效性,必须在项目中引入一种标准的标书方式来描述项目中的各种元素和活动。(1)统一标准UML统一了Booch、OMT和OOSE等方法中的基本概念,已成为OMG的正式标准,提供了标准的面向对象的模型元素的定义和表示。(2)面向对象UML还吸取了面向对象技术领域中其他流派的长处。UML符号表示考虑了各种方法的图形表示,删掉了大量易引起混乱的、多余的和极少使用的符号,也添加了一些新符号。(3)可视化、表示能力强系统的逻辑模型或实现模型都能用UML模型清晰的表示,可用于复杂软件系统的建模。(4)独立于过程UML是系统建模语言,独立于开发过程。(5)易掌握、易用由于UML的概念明确,建模表示法简洁明了,图形结构清晰,易于掌握使用。2、UML的特点2.1.2UML的用途说明1、以面向对象图的方式来描述任何类型的系统UML的目标是以面向对象图的方式来描述任何类型的系统,不仅可以建立软件系统的模型,而且可以用于非软件领域的系统。UML可以对任何具有静态结构和动态结构的系统进行建模。2、适用于系统开发的不同阶段(1)系统分析与设计(2)编程(3)测试2.1.3UML的发展历史变革九十年代中,面向对象方法已经成为软件分析和设计方法的主流。1994年10月JimRumbaugh和GradyBooch共同合作把他们的OMT和Booch方法统一起来,到1995年成为“统一方法”(UnifiedMethod)版本0.8。随后,IvarJacobson加入,并采用他的用例(Usercase)思想,到1996年,成为“统一建模语言”版本0.9。1997年1月,UML版本1.0被提交给OMG组织,作为软件建模语言标准的候选。其后的半年多时间里,一些重要的软件开发商和系统集成商都成为“UML伙伴”,如IBM,Mircrosoft,HP等.1997年11月7日被正式采纳作为业界标准。UML建模型语言的描述方式以标准的图形表示为主。UML模型图由元素、关系和图构成。元素是UML模型中最基本的构成元素,是具有代表性的成分的抽象;关系把元素紧密的联系在一起;图是元素和关系的可视化表示。UML是一种标准化的图形建模语言,它是面向对象分析与设计的一种标准表示。2.1.4UML的图形表示UML语言定义了五种类型,10种不同的图,把它们有机的结合起来就可以描述系统的所有视图。用例图(Usecasediagram)从用户角度描述系统功能,并指出各功能的操作者。静态图(Staticdiagram),表示系统的静态结构。包括类图、对象图、包图。行为图(Behaviordiagram),描述系统的动态模型和组成对象间的交互关系。包括状态图、活动图。交互图(Interactivediagram),描述对象间的交互关系。包括序列图、合作图。实现图(Implementationdiagram)用于描述系统的物理实现。包括构件图、部署图。图(Diagrams)图有时也将十种图划分为静态模型图和动态模型图两类。静态模型图(Staticdiagram),描述的是系统的与时间不相关的属性与行为,包括类图、对象图、包图、构件图、部署图。动态模型图(Dynamicdiagram),描述系统随时间变化的行为。包括用例图、状态图、活动图、序列图和合作图。图(Diagrams)图2.2通用模型元素模型元素是UML构造系统模型的各种元素,是UML构建模型的基本单位。模型元素与模型元素之间的连接关系也是模型元素。分为以下两类:1、基元素是已由UML定义的模型元素。如:类、结点、构件、注释、关联、依赖和泛化等。2、构造型元素在基元素的基础上构造的新的模型元素,是由基元素增加了新的定义而构成的,如扩展基元素的语义(不能扩展语法结构),也允许用户自定义。构造型用括在双尖括号《》中的字符串表示。目前UML提供了40多个预定义的构造型元素。如使用《Use》、扩展《Extend》。2.2.1基元素和构造型元素图2.1可以在图中使用的概念统称为模型元素。模型元素在图中用其相应的视图元素(符号)表示,图3.2给出了常用的元素符号:类、对象、结点、包和组件等。属性用例包结点组件类操作对象属性操作接口注释构件模型元素关联:实际上是一种结构关系,主要是两个元素之间的相互联结结构,表示整体与部分的关系。泛化:表示一般与特殊的关系,即“一般”元素是“特殊”关系的泛化。依赖:表示一个元素以某种方式依赖于另一种元素。图2.2关联依赖泛化模型元素与模型元素之间的连接关系也是模型元素,常见的关系有关联(association)、依赖(dependency)和泛化(generalization。这些关系的图示符号如图2.2所示。2.2.2关系2.2.3约束UML中提供了一种简便、统一和一致的约束(constraint),是各种模型元素的一种语义条件或限制。一条约束只能应用于同一类的元素。约束的表示通常一个约束由一对花括号括起来{约束内容},花括号中为约束内容(图2.3)。如果一条约束涉及同一种类的多个元素,则要用虚线把所有受约束的元素框起来,并把该约束显示在旁边(如或约束)。图2.30..*1..*{ordered}保险合同个人有两个元素A和B,若B元素是A元素的详细描述,则称B,A元素之间的关系为B元素细化A元素。细化与类的抽象层次有密切的关系,在构造模型时要经过逐步细化,逐步求精的过程。如图2.4所示,类B是类A细化的结果。2.2.4细化AB图2.42.2.5注释注释用于对UML语言的元素或实体进行说明,解释和描述。如图2.5,通常用自然语言进行注释。这是一个类人员图2.52.3UML模型描述图1992年由Jacobson提出了Usecase的概念及可视化的表示方法—Usecase图,受到了IT界的欢迎,被广泛应用到了面向对象的系统分析中。用例驱动的系统分析与设计方法已成为面向对象的系统分析与设计方法的主流。用例模型由Jacobson在开发AXE系统中首先使用,并加入由他所倡导的OOSE和Objectory方法中。用例方法引起了面向对象领域的极大关注。自1994年IvarJacobson的著作出版后,面向对象领域已广泛接纳了用例这一概念,并认为它是第二代面向对象技术的标志。1、用例图的含义用例是系统中的一个功能单元,是从用户的角度对系统行为的描述,是从用户角度描述系统功能。通过对典型用例的分析,使开发者能够有效地了解用户的需求。2.3.1用例图2、用例图的表示用例图由用例、参与者和关联线共同组成。用例由一个椭圆表示,一个用例是用户与计算机之间的一次典型交互作用。参与者由直立人形图标表示,但参与者可以是人,也可以是一个外界系统。系统边界用一个矩形表示,用例属于系统内部,装入矩形内。参与者是系统外部实体,放在矩形外面。3、用例图的使用2.3.1用例图图2.6自动售货系统供货买饮料取货款客户供货人收银员2.3.2类图1、类图的含义一个类是一类或者一组具有类似属性和共同行为的事物。类图由系统中使用类以及它们之间关系组成,描述系统中类的静态结构、不仅定义系统中的类,而且表示类之间关系。2、类图的表示类在类图上使用包含三个区域的矩形来描述,最上面的区域是类名,中间区域是类的属性,最下面的区域是类的操作(或者说方法)。2.3.2类图3、类图的使用属性和方法都有可见性,表示该属性或方法对类外元素是否可以见,常用的可见性有公有、私有、受保护,分别用“+”、“-”和“#”。属性:类型类名操作类名图2.7类图5.5.1状态图1、状态图的含义状态图(StateDiagram)用来描述一个特定对象的所有可能的状态及其引起状态转移的事件。一个状态图包括一系列的状态以及状态之间的转移。2、状态图的表示状态图常用的模型元素有:状态、转换、初态和终态。2.3.3状态图初态—状态图的起始点,一个状态图只能有一个初态,用一个黑点表示。终态—是状态图的终点。而终态则可以有多个,用黑点外加一个圆表示。状态—用一个圆角四边形表示。转移—带箭头的连线可以表示,箭头指向目标状态。状态的变迁通常是由事件触发,此时应该在转移上表明事件,未标表示自动触发转移。活动图(ActivityDiagram)描述的是一组顺序的或并发的活动。活动图的应用非常广泛,它既可用来描述操作(类的方法)的行为,也可以描述用例和对象内部的工作过程,并可用于表示并行过程。活动图是由状态图变化而来的,它们各自用于不同的目的。活动图描述了系统中各种活动的执行的顺序。刻化一个方法中所要进行的各项活动的执行流程。活动图中一个活动结束后将立即进入下一个活动(在状态图中状态的变迁可能需要事件的触发)。2.3.4活动图5.5.3活动图1、活动图含义2、活动图的表示5.5.3活动图构成活动图的模型元素有:活动、起点、终点、转移、对象、信号、泳道等。(1)活动是构成活动图的核心元素,是具有内部动作的状态,由隐含的事件触发活动的转移。活动的解释依赖于作图的目的和抽象层次,在概念层描述中,活动表示要完成的一些任务;在说明层和实现层中,活动表示类中的方法。活动用圆角框表示,标注活动名。活动名[条件1][条件2]图2.8活动(2)活动图的模型元素活动还有其它的图符:初态、终态、判断、同步。初态终态[条件1][条件2]判断同步线图2.9活动(3)转移转移描述活动之间的关系,描述由于隐含事件引起的活动变迁,即转移可以连接各活动及特殊活动(初态、终态、判断、同步线)。转移用带箭头的直线表示,可标注执行该转移的条件,无标注表示顺序执行。5.5.2活动图活动图的模型元素:图2.10泳道(4)泳道泳道进一步描述完成活动的对象,并聚合一组活动。活动图是另一种描述交互的方式,描述采取何种动作,做什么(对象状态改变),何时发生(动作序列),以及在何处发生(泳道)。泳道也是一种分组机制。顾客售货库房●请求服务支付取货提货开订单供货活动图11、活动图中只有一个起点一个终点,表示方式和状态图一样,泳道被用来组合活动,通常根据活动的功能来组合。具体说泳道有如下目的:直接显示动作在哪一个对象中执行,或显示的是一项组织工作的哪部分。泳道用纵向矩形来表示,如图5.60。DisplayerSamplerSampler.Run(channel,frequency)更新显示初始化测量5.5.2活动图3、活动图的使用图2.11泳道2、活动图中可发送和接收信号,发送符号对应于与转移联系在一起的发送短句。接收符号也同转移联系在一起。转移又分两种:发送信号的转移和接收信号的转移。发送和接收信号可以和消息的的发送对象和接收对象联系在一起,如图5.61。aPrinter:PrinterPrint(file)Print(file)打印创建PS文件在屏幕上的报文框中显示“打印”删除报文框图2.12CustomerWindow.PrintAllCustomers()5.5.2活动图顺序
本文标题:互联网软件开发与应用02
链接地址:https://www.777doc.com/doc-3807879 .html