计算机三级数据库技术备考笔记(五)

第五章 UML与数据库应用系统

  • DBAS建模
    • UML是一种定义良好、易于表达、功能强大,通用的可视化建模语言,为软件开发的各阶段提供模型化与可视化支持。
    • UML的定义由语义和表示法两部分组成。语义用自然语言描述,而表示法定义了UML的可视化标准表示符号,这决定了UML是一种可视化的建模语言。
    • 具体来说,UML的语义是定义在一个四层(或四个抽象级)建模概念框架中的,这四层分别是:
      • (1)元元模型(Meta-Meta Model)层,组成了UML的最基本的元素“事物”(Thing),代表要定义的所有事物。
      • (2)元模型(MetaModel)层,组成了UML,的基本元素,包括面向对象和面向组件的概念这一层的每个概念都是元元模型中“事物”概念的实例。
      • (3)模型(Model)层,组成了UML,的模型,这一层中的每个概念都是元模型层中概念的一个实例,这一层的模型通常叫作类模型(Class Model)或类型模型(Type Model)。
      • (4)用户模型(UserModel)层,这层中的所有元素都是UML,模型的实例。这层中的每个概念都是模型层的一个实例(通过分类)也是元模型层的一个实例。这一层的模型通常叫作对象模型(0bieet Model)或实例模型(nstance Model)。
    • 使用UML时要从不同的角度观察和分析系统,因此产生了“视图"的概念。视图是对系统的模型在某方面的投影,注重于系统的某个方面。UML中包括以下五种视图:结构视图、实现视图、行为视图、环境视图和用例视图。
    • UML2.0提供了13种不同的图,分为两类:
      • 一类是结构图,主要用于对系统的静态结构建模,包括类图,、对象图、复合结构图、包图、组件图、部署图;
      • 另一类是行为图,主要用于对系统的动态行为建模,包括用例图、交互图(顺序图、通信图、交互概述图、时间图)、状态图和活动图。
  • DBAS业务流程与需求表达
    • 业务流程与活动图
      • 活动图主要用于描述系统、用例和程序模块中逻辑流程的先后执行次序,并行次序。
      • 起始点:指一连串活动的开始点。在一张活动图中,必须有且只能有一个起始点,用●表示
      • 结束点:指一连串活动的终结点。在一张活动图中,可以有多个结束点,用◉表示
      • 分区:在整个活动表达上,是一个非常重要的概念。可以利用分区来将活动分配给对应的角色
    • 系统需求与用例图
      • 基于业务流程的活动图,可以从中找出相应的用例,即通过将活动图中的每一个活动或活动的参与者当作用例的候选对象,并判断这个活动是角色还是用例,就可以得到用例以及用例模型。
      • 用例模型是把满足用户需求的所有功能表示出来的工具。
      • 用例图由系统、角色和用例三种模型元素以及元素之间的各种关系组成。其中用例用于描述从系统用户的角度来观察,系统应该具有哪些功能,帮助分析人员理解系统的行为;角色是与系统进行交互的外部实体,可以是系统用户也可以是其他系统或者硬件设备;系统是在边界线以内的区域(即用例的活动区域)抽象地表示能够实现的所有基本功能。
        • 1.系统:在用例图中系统用一个长方框来表示,系统的名字写在方框上或方框里面,方框内部还可以包含该系统中用符号表示的用例。
        • 2.角色:角色是与系统交互的人或其他实体。所谓“与系统交互"指的是角色从系统中接收消息,或是向系统提交信息。一个角色可以执行多个用例,反过来,一个用例也可被多个角色使用。角色是类,所以它拥有与类相同的关系描述。在用例图中,用通用化关系来描述角色之间的行为。(通用化关系是指把某些角色的共同行为抽取出来作为通用行为,这些通用行为构成它们的超类(Superclass)。这样,在定义某一具体角色时,仅仅定义其不同的行为。角色之间的通用化关系用带空心三角形(作为箭头)的直线表示,箭头的方向指向超类。如图5.2所示,员工是销售人员和销售部经理等的超类。)
        • 3.用例:用例代表的是一个完整的功能,是所有动作的集合。动作(Action)是系统的一次操作,如与角色通信、进行计算,在系统内进行的工作都可以称作动作。
        • 在UML中,用例用圆形表示,用例位于系统边界的内部。用例与角色之间有连接关系,此关系属于关联( Association),又称作通信关联(Communication Association)。这种关联表明哪种角色能与该用例通信。关联关系是双向的一对一关系,表示不仅角色可以与用例通信,用例也可以与角色通信,表示方法是一条连接角色和用例的带箭头直线
        • 用例之间也存在关系,包括扩展、使用、组合三种。扩展和使用是继承关系,即通用化关系的另一种体现形式。组合则是把相关的用例打成包(Package),当作一个整体看待。
          • (1)扩展关系。如果已有一个用例,在这个用例的基础上加人新的动作形成了另一个用例即后者是通过继承前者的属性并加入新内容而来的,则前者通常称为通用化用例,后者常称为扩展用例。
          • (2)使用关系。一个用例使用另一个用例时,这两个用例之间就构成了使用关系。用例之间的使用关系被图示为具有构造型<<uses>>标志的通用化关系。
  • DBAS系统内部结构的表达
    • 在UML中,用类图(ClassDiagram)来描述系统的静态结构,而用顺序图(Sequenee Diagram)和通信图(Communication Diagram)来表示系统的动态结构。
    • 系统结构与类图

      • 类图主要表达的是问题领域的概念模型,在这个抽象的概念中,除了表达该抽象概念的名称外,另外需要表达该抽象概念的“属性"与“行为”。
      • 类图技术是面向对象方法的核心技术。在面向对象的建模技术中,类、对象和它们之间的关系是最基本的建模元素。
      • 类图展现了一组类、接口和协作以及它们间的关系。系统可以有多个类图,单个类图仅表达了系统的一个方面。
      • 1.属性:属性包括属性的名称、类型和缺省值。UML规定其语法为:
        可见性 名称:类型=缺省值{约束性}
        • (1)可见性。表示该属性对类外的元素是否可见。
        • (2)名称。是一个字符串,表示属性的名称。
        • (3)类型。定义属性的种类。它可以是一个基本数据类型,也可以是用户自定义的类型。
        • (4)缺省值。属性的初始值。
        • (5)约束性。列出该属性所有可能的取值
      • 2.操作:操作描述了类的动态行为,在UML中,操作的语法定义如下:
        可见性 名称(参数表):返回类型表达式{约束性}
        • (1)可见性。“+"表示公有操作,“#"表示受保护的操作,“-"表示私有操作
        • (2)名称。是一个字符串,表示操作的名称。
        • (3)参数表。其语法与属性的参数相同,参数的个数是任意的
        • (4)返回类型表达式。依赖于语言的描述,此项为可选项。
        • (5)约束性。用以描述对此操作的约束
      • 3.关系:类与类之间通常有关联、通用化(继承),依赖和精化四种关系。
        • (1)关联关系。表示两个类之间存在某种语义上的联系。通常情况下关联是双向的,其图示是连接两个类之间的直线;如果类与类之间的关联是单向的,则称为导航关联。
          • 多重性表示参与对象的数目的上下界限制。"*"代表0~∞, “1”是1..1的简写。可以用一个单个数字表示,也可以用范围表示,或者是数字和范围不连续的组合表示。
          • 如果图中没有明确标识关联的重数,就意味着是1。重数标识在表示关联关系的直线某方向上的末端。
          • 聚集(Ageregation)是一种特殊形式的关联它表示类之间的关系是整体与部分的关系。在需求分析中,“包含”“组成”“分为……部分”等经常设计成聚集关系
          • 聚集可以进一步划分成共享聚集(ShareAggregation)和组成(Composition)。部分可以参加多个整体,称为共享聚集。另一种情况是整体拥有各部分,部分与整体共存,如整体不存在了,部分也会消失,称为组成。

        • (2)继承关系。人们将具有共同特性的元案抽象成类别,并通过增加其内涵而进一步分类在面向对象方法中将前者称为一般元素、基类元素或父元素,将后者称为特殊元素或子元素。继承(Generalizalion)定义了一般元素和特殊元素之间的分类关系。在UML中,继承表示为一头为空心三角形的连线。
        • (3)依赖关系。有两个元素X、Y,如果修改元素X的定义可能会引起元素Y的定义的修改,称元素丫依赖于元素X。
        • (4)精化关系。用于表示同一事物的两种描述之间的关系。
    • 系统结构与顺序图

      • 顺序图的目的在于说明对象的协作如何达到系统的目标。
      • 顺序图主要用于描述系统内对象之间的消息发送和接收序列。顺序图有两个坐标轴:纵向表示时间的持续过程,横向表示对象,每一个对象用矩形框表示,纵向的虚线表示对象在序列中的执行情况,称为对象的“生命线”。
      • 浏览顺序图的方法是从上到下查看对象间交换的信息。
    • 系统结构与通信图
      • 通信图是交互图(Interaction Diagram)的一种,也被称为协作图(Collaboration Diagram)。
      • 通信图中包含一组对象,并在图中展示这些对象之间的联系以及对象间发送和接收的消息。在开发过程中设计人员可利用通信图和顺序图来确定对象的角色以及对象所执行的事件。这些事件是确定类的职责和接口的主要的信息来源
      • 顺序图和通信图都描述交互,但是顺序图强调的是时间,而通信图强调的是空间。
  • DBAS系统微观设计的表达
    • 在UML中,对于细节方面的内容可用对象图(0bject Diagram),状态机图(State Machine Diagram)及时间图(Timing Diagram)来表达、分析和描述某个特定状况下的系统运作情况。
    • 微观设计与对象图
      • UML中的对象图被用来描述特定时间点中所有对象在系统中的结构,也可以把对象图当成系统在某一时间点的“快照”,即对象图是根据类图所诞生的实例。
      • 对象图是某一个特定时间点上,系统所存在的所有对象的一个快照。可以被用来解释类图以及验证所设计的类图是否符合实际的状况,也可以帮助程序设计人员理解类图的复杂结构。
    • 微观设计与状态机图

      • 状态图的主要目的在于陈述系统中有关事件或对象的状态转移,若系统设计人员设计了某一个类的状态,而该状态是通过该类的事件或行为来改变的,则可以在该类中绘制一张状态图来陈述该状态的细节设计。
    • 微观设计与时间图

      • 在时间图中,整个矩形框就是一个生命线(Lieline),显示了商品价格在不同时间段的状态变化情况。状态可以用文字在内部进行描述,如原价状态。在矩形框的最下面为时间轴(Timeline Range),在时间轴上可以指定刻度单位,本例中是以天为单位。在矩形框内高低起伏的线代表时间的进行以及状态的转移,称为时间线(Timeline)。状态的转移主要是以事件来驱动,事件也以纯文字来表达,如图中的打折优惠事件。
  • DBAS系统宏观设计的表达
    • 宏观设计是指将设计的焦点放在研究比较大范围中的元素之间的联系,如包、命名空间、子系统等。
    • 宏观设计与包图

      • UML的包图(Package Diagram)可以表达系统中不同的包、命名空间或不同的项目间彼此的关系。在这里,包及命名空间指的是在逻辑层次上的关联性,而项目则是指实体层次的关联性
      • 包(Package)是一种组合机制,把模型元素通过内在的语义连在一起成为一个整体叫作包。包通常用于对模型的组织管理,因此有时又将包称为子系统(Subsystem)。构成包的模型元素称为包的内容。包拥有自己的模型元素,包与包之间不能共用一个相同的模型元素。
      • 与类一样,包也具有可见性,利用可见性控制外部包对包中内容的存取方式。UML中对包定义了四种可见性:私有、保护、公有和实现,缺省的可见性为公有。
    • 宏观设计与交互概述图
      • 交互概述图(Interaction Overview Diagram)主要是利用活动图作为基础,只是其在控制流间连接的UML元素并非活动,而是交互图(包括顺序图、通信图、时间图及交互概述图),因此,交互概述图的主要元素和活动图完全一样,唯一不同的是一个交互框(Frames),用来取代活动图中的活动框。
    • 宏观设计与复合结构图

      • 在UML中,针对这样的系统接口架构,提供了一个全新的复合结构图(Composite StruetureDiagram)来表达这一架构,复合结构图适用于需要进行系统整合的情况,可以利用复合结构图绘制出要开发的系统与外部系统间的关系。由于系统的整合表达的是系统间的沟通接口,因此,这张图非常适合让架构师在初期阶段作为评估系统复杂度的工具。
      • 复合结构图中最主要的元素就是部件(Part),一个部件可以代表某个实体组件,也可以代表-个子系统。部件与部件之间的连接关系主要是装配(Assembly)关系,这种关系要通过接口(Interface)来沟通。
  • DBAS系统实现与部署的表达
    • 为解决未来整体软件应如何部署的问题。有效地把这些成员所需要负责的事聚焦在一个特定的领域或范围中。UML中的组件图(Component Diagram)和部署图(Deployment Diagram)就可以达到这样的目标,可以简化团队管理上的难度。
    • 系统实现与组件图

      • 组件图用来表示系统的静态实现视图,展现了一组组件之间的组织和依赖,用于对源代码可执行的发布、物理数据库等的系统建模。组件是逻辑设计中定义的概念和功能在物理架构中的实现。典型情况下,组件是开发环境中的实现文件。
    • 系统实现与部署图
      • 部署图又叫配置图,描述系统中硬件和软件的物理配置情况和系统体系结构。用结点表示实际的物理设备,并根据它们之间的连接关系,将相应的结点连接起来,并说明其连接方式。在结点里说明分配给该结点运行的可执行构件或对象,从而表明哪些软件单元被分配在哪些结点上运行。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值