sheldon_blogs

Bouml快速使用指南

一、Bouml简介

  Android 系统中有大量Java、C++代码,继承以及依赖关系非常复杂,Bouml可以用c++、Java、Idl、Php和Python建模及生成代码,反之也可通过uml工具更好的对源码进行阅读和分析

  BOUML是一个可扩展的编程工具,而名为plug-out的外部工具可以用c++或Java编写。UML工具有很多,其中BOUML是一个免费的UML 2工具箱(较新版本也收费了,本文基于较旧的4.23版本使用说明)。

 

二、安装&使用

  1.下载并安装: 百度云链接:https://pan.baidu.com/s/19aKfz8bUseits-VmvMdGEA   提取码:bz88

 

  2.类图制作:

    (1)双击打开Bouml,初次打开会有如下界面进行环境设置:

      

 

     (2)新建工程:

      

      

 

    (3)设置语言类型:

      

 

    (4)通过反转c++代码建立模型:

      

    选择对应目录,点击OK:

      

    代码模块可能由多个目录组成,则需要将各个相关目录添加完整之后,最后点cancel结束,即可生成反转关系:

        -》  

      

    (5)新建类图:

      -》   -》 

        

      (6)开始建立关系

       

          

           

     (7)设置显示完整成员定义信息

        -》  

     设置完后就可以看到详细的参数信息:

      

    (8)拖入其他类显示完整的依赖关系,并保存成图片:

      

     转成图片保存:

       

     查看图片:

      

     免费版本有一些bug,比如有的情况无法自动建立依赖关系,需要手动添加:

      

 

   3.时序图制作:(工程的创建可参考类图制作部分操作)

    (1)首先New class view,然后New sequence diagram:

      -》 -》

 

     对如下Ext7.java进行时序图分析:  

abstract class Father {
    private int money;    

    public int getMoney() {return money; }
    public void setMoney(int money) {this.money = money; }

    public abstract void study();
}

interface A {
    public static final int i = 10;
    public abstract int getNum();
}

interface B {
    public static String name = "InterfaceB";
    public abstract String getName();
}

class Son extends Father implements A,B{
    public int getNum() {return i;}
    public String getName() {return name;}
    public void study() {System.out.println("I am study"); }
    
}

public class Ext7 {

    public static void print () {
        
    }

    public static void main (String args[]) {  //main函数属于Ext7类
        Son son = new Son();           //里面创建了一个son对象
        System.out.println(son.getName());
        son.study();                //调用了son的study方法

        print();
    }
}

    (2)拖入Ext7、Son类:

      

 

    (3)添加调用流程(开始执行main函数)

        -》  -》

        -》  

    (4)接着添加对Son对象的创建和study方法调用:

      

     (5)添加颜色及注释(nativeInit是临时创建的类用于示例):

      -》

      

      -》

 

 

 

  本文主要介绍Bouml的初步使用方法,更加熟练的使用技巧以以及对图表的解析,还请查阅其他资料进一步学习。

  (1)深入浅出UML类图 :http://www.uml.org.cn/oobject/201211231.asp)。

  (2)官方文档(含教学视频):https://www.bouml.fr/documentation.html

 

   -end-

posted on 2019-03-25 17:31  sheldon_blogs  阅读(4693)  评论(0编辑  收藏  举报

导航