zoukankan      html  css  js  c++  java
  • UML之用例图和类图

    最近用UML设计SL系统,写篇文章吧。

    UML中二中基本的图范畴:结构图和行为图。结构图的目的是显示建模系统的静态结构。它包括类、组件和对象图。行为图显示系统中的对象的动态行为,包括实例图、用例图和序列图。

    一、用例图

    1.定义:展示系统中参与者与用例之间的关系。它是根据需求分析得到的,描述了软件系统全部用户(角色)和全部功能点(业务需求),以及它们之间的关系。

    2、参与者可以是人、组织、进程或者外部系统等任何角色。

       通过竖排用例,隐含表达用例之间的关系。

    3、包含(include)。封装跨越多个用例的相似动作,以实现基用例的服用。比如:常用的“增、删、改、查”可以包含于基用例“维护”中。

        基用例包含子用例。箭头指向子用例,加上《include》标记。

    4、扩展(extend)。基用例上基于扩展点的,可选的,独立的工作。根据条件状态来判断是否执行。比如查询结果的“导出”和“打印”。

       扩展用例指向基用例,用于对基用例进行功能扩展。

    5、泛化(generalization)可以理解为“子用例”和“父用例”之间的关系。子用例继承子父用例,而父用例通常是抽象的。

       “子用例”继承自“父用例”,箭头指向“父用例”。

     

    二、类图

    1、定义:类图展示的系统中的类,类之间的相互关系,类的方法和属性。

       根据用例图,可以基本上设计出系统的类和他们的之间的关系。类图描述的就是类的静态结构。表示出类的静态内容以及它们之间的关系。

     

    2、可见性

    +”:public   #”:protected   -”:private    ~”:package

     

    3、“类图”表示

                   Flight

    flightNumber:Integer      参数名   参数类型

    departureTime:Date       balance:Dollars=0   参数名:参数类型   默认值

    flightDuration:Minutes     

     

    delayFlight(numberOfMinutes : int):Date     方法名(参数名:参数类型):返回值

     

    斜体类名和斜体方法:“继承”用带“箭头或三角形”的实线。

    interface+类名:“实现”用带“箭头或三角形”的虚线表示

     

    4、关联:关联的图形是实线+箭头(没有箭头,则是双向关联)。具有关联关系的类常常被声明为类的引用类型的成员变量。

    双向关联:关联的一方关联对象位于直线的上端,关联数目位于同侧的直线下端,另一方则相反。

    单向关联:一个类中包含另一个类的属性。

    5、聚合:聚合是一种特别类型的关联,用于描述“总体到局部”的关系。在基本的聚合关系中,部分的生命周期独立于整个的生命周期。子系统允许被拆卸和替换。

    6、组合:组合聚合关系是聚合关心的另一种形式,但是子类实例的生命周期依赖于父类实例的生命周期。

    7、依赖的图形表示是虚线+箭头,箭头指向被依赖的类,在程序代码中,具有依赖关系的类常常被声明为成员函数的参数,而不是声明为类的成员变量。

    8、继承关系画成纵向的,关联画成横向的。

     

    资源传送阵

  • 相关阅读:
    并查集
    树状数组及二维树状数组
    maven工程编译成jar包
    The Salt Master has rejected this minion's public key!
    salt-minion dead but pid file exists 正确解决方法
    mysql 查找表的auto_increment和修改
    fastjson --JSONObject 和JSONArray 转换
    git 获取当前版本的commitid
    fastjson 使用笔记
    spring IOC 注解@Resource
  • 原文地址:https://www.cnblogs.com/ssol/p/2163321.html
Copyright © 2011-2022 走看看