CN101957757B - 一种适用于软件可视化过程的图形布局方法 - Google Patents
一种适用于软件可视化过程的图形布局方法 Download PDFInfo
- Publication number
- CN101957757B CN101957757B CN2010105033022A CN201010503302A CN101957757B CN 101957757 B CN101957757 B CN 101957757B CN 2010105033022 A CN2010105033022 A CN 2010105033022A CN 201010503302 A CN201010503302 A CN 201010503302A CN 101957757 B CN101957757 B CN 101957757B
- Authority
- CN
- China
- Prior art keywords
- node
- layer
- frame
- obtains
- upper left
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Abstract
本发明涉及一种适用于软件可视化过程的图形布局方法,属于软件可视化技术领域。首先设定画布的左上角为坐标原点,其次对软件可视化过程中得到的待处理有向图进行深度搜索,根据搜索结果获得每个节点边框的左上角的坐标;此外根据每个节点上已设定好的文本的内容和样式,得到每个节点的边框长宽信息;根据每个节点边框的左上角的坐标及每个节点边框长宽信息即得到边框矩形的中心点坐标。本发明在图中的节点较多时,可尽量减少图中的交叉线;并且充分考虑到与某一个节点相连接的其它多个节点在几何空间上的布局,使这些节点在图中的位置相对集中,使层次化系统结构图的可读性比好。
Description
技术领域
本发明涉及图形布局方法,特别涉及一种适用于软件可视化过程的图形布局方法,属于软件可视化技术领域。
背景技术
软件可视化通常采用软件自动化方式将软件系统的各种属性(包括关键字、类间关系等)或者各种属性的相关统计信息,通过静态或者动态的2D或3D的图形加以概括表示,从而展示软件系统的内部结构,软件的演化信息,和软件的行为特性,实现对源码的自动分析和抽象,产生能反映软件内部结构或者其他度量信息的高度概括的图形表示。通过对软件系统进行可视化可以获得软件的高级抽象,便于快速获得软件设计层次上的理解。
软件可视化的意义在于:①通过对软件进行可视化获得对软件系统设计层次上的抽象,便于系统的维护、巩固、移植和改进,为软件系统尤其是遗产系统的重构、再工程以及设计的恢复提供有力的帮助;②随着开源社区的发展和完善,开源系统尤其是基于Java代码的开源系统种类日臻完善和丰富,且代码量也在飞速增加,但其文档化往往又严重滞后甚至缺乏,所以软件可视化的作用也变的尤为重要。
文献《针对面向对象程序设计语言源代码的软件可视化方法》(国家专利,专利号:201010266831.5)公开了一种针对面向对象程序设计语言源代码的软件可视化方法,其主要步骤为:
步骤一、从源代码中提取关键信息。
关键信息包括:类所在的包、类名、父类、继承方式、类的类型、类的修饰符、类所包含的嵌套类、类属性的类型、类属性的修饰符、类构造函数参数、类方法的名字、类方法的参数、类方法的返回值类型以及类方法的修饰符。
步骤二、获取原始图数据信息。
将步骤一得到的关键信息按照表2所示的图的属性、表3所示的边的属性、表4所示的节点的属性的数据结构进行存储,即可得到一个仅包含节点名称和边名称的原始图数据信息。
表2存储关键信息的数据结构设计表1-图的属性
属性名称 | 数据类型 |
包含的节点的名称 | 文本 |
包含的边名称 | 文本 |
表3存储关键信息的数据结构设计表2-边的属性
属性名称 | 数据类型 |
与其邻接的节点的名称 | 文本 |
优先级 | 正整数 |
表4存储关键信息的数据结构设计表3-节点的属性
属性名称 | 数据类型 |
节点类型 | 正整数 |
节点名称 | 文本 |
节点上文本的内容 | 文本 |
节点所在文件的创建时间 | 正实数 |
步骤三、获取有向图数据信息。
对步骤二得到原始图数据信息,依次使用冗余边的消减原则和存在环路时的消减原则进行处理,得到有向图数据信息。
步骤四、设计图形布局。
在步骤三的基础上,根据图形布局算法设计图形布局。
所述图像布局算法包括但不限于:开源工具VCG(Visualization ofCompiler Graphs)中使用的深度优先布局算法。
所述图像布局算法具体为:
步骤4.1:设定画布的左上角为坐标原点,设定原点垂直向下方向为Y轴(纵轴)的正方向;原点水平向右方向为X轴(横轴)的正方向。
步骤4.2:对步骤三得到的有向图进行深度搜索,得到其最大深度d、层序号i,每层所包含的节点集合Vi、集合Vi所包含的节点的个数numi以及所有节点的各自所在层数deep;其中,d,i均为正整数且1≤i≤d。
步骤4.3:根据步骤4.2得到的结果,获得每个节点边框的左上角的坐标。
①每个节点边框的左上角的纵坐标y的计算方法:
设定H为画布的高度,根据公式1可得到有向图中每一层的高度差h:
h=(H-h1-h2)/(d-1)(1)
其中,h2和h1分别为画布的上、下留白高度;
根据公式2可得到该节点的左上角的纵坐标y:
y=h1+(i-1)×h (2)
②每个节点边框的左上角的横坐标x的计算方法:
第a步:将各层中的节点按照字母表升序排序;
第b步:通过公式3得到同一层中两个相邻节点的距离w,通过公式4得到第s层,第t个节点的横坐标值x,其中,3≤s≤d,1≤t≤nums且s、t均为正整数。
w=(W-x1-x2)/(nums-1+2)(3)
x=x1+t×w (4)
其中,W为画布的宽度,x1,x2分别为第s层左右两边的留白。
步骤4.4:对步骤三得到的有向图中的所有节点,根据每个节点上的文本的内容和样式,得到节点的边框长宽信息。
步骤4.5:根据步骤4.3得到的每个节点边框的左上角的坐标及步骤4.4得到的节点边框长宽信息得到与边框相关的线的开始点和结束点坐标。
步骤五、进行可视化映射。
在步骤四的基础上,根据预先定义的图形表示规则完成可视化数据的映射。图形表示规则包括定义节点颜色、节点形状、节点样式、边的颜色、边的形状、边的样式。
该方法步骤四中使用的图像布局方法的缺点是:①当图中的节点较多时,图中会有很多交叉线(点);②该图像布局方法没有考虑到与某一个节点相连接的其它多个节点在几何空间上的布局,造成这些节点在图中的位置分布分散。上述问题会造成由系统自动生成的层次化系统结构图的可读性比较差,不利于直观的反映系统层次化结构。
发明内容
本发明的目的是为了克服已有技术中存在的不足,提出一种适用于软件可视化过程的图形布局方法。
本发明的目的是通过以下技术方案实现的,具体步骤为:
步骤1:设定画布的左上角为坐标原点,设定原点垂直向下方向为Y轴(纵轴)的正方向;原点水平向右方向为X轴(横轴)的正方向。
步骤2:对软件可视化过程中得到的待处理有向图进行深度搜索,得到其最大深度d、层序号i、每层所包含的节点集合Vi、集合Vi所包含的节点的个数numi以及所有节点各自所在的层数deep;其中,d,i均为正整数且1≤i≤d。
步骤3:根据步骤2得到的结果,计算出每个节点边框的左上角的纵坐标y和横坐标x的值,获得每个节点边框的左上角的坐标。
①每个节点边框的左上角的纵坐标y的计算方法:
设定H为画布的高度,根据公式1可得到有向图中每一层的高度差h:
h=(H-h1-h2)/(d-1)(1)
其中,h1和h2分别为画布的上、下留白高度;
根据公式2可得到该节点的左上角的纵坐标y:
y=h1+(i-1)×h(2)
②每个节点边框的左上角的横坐标x的计算方法:
第a步:将第1层中的节点按照字母表升序排序;
第b步:对第2层中的节点做以下处理:
按照入度从大到小的顺序对第2层中的节点进行排序,当有多于1个的节点的入度相同时,按字母表序排序。排序后的节点用qj表示;其中,1≤j≤num2,qj∈V2,且j为正整数。
由q1节点得到指向该节点的前驱节点集合Vq1和数量zq1(zq1为正整数),将前驱节点集合Vq1中的节点按照出度从小到大在第1层中从第1个位置开始重新排序,节点集合v ∈(V1-Vq1)中受影响的节点的位置依次后置,并将q1排在第二层的第一位。
然后取q2节点,得到指向该节点的前驱节点集合Vq2和数量zq2,如果 则将q2置于第2层的第2位(正向排序,从前向后排)。同时,集合中的节点按照出度从小到大在第一层中从zq1+1处开始从前向后重新排序,集合v∈(V1-(Vq1∪Vq2))中受影响的节点的位置依次后置;否则,即:则将节点q2置于第2层的最后(反向排序,从后向前排),并将集合Vq2中的节点从第1层的最后位置开始从后向前按照出度由小到大重新排序,集合v∈(V1-(Vq1∪Vq2))中受影响的节点的位置依次前置。
以此类推,处理第2层中的其它未处理的节点。
第c步:如果存在第p层(p≥3,且p为正整数),则依次对第p层节点做以下处理,否则直接执行步骤4。
用Nk(k=1、2、.....nump-1;且k为正整数)表示p-1层经排序后的第k个节点,依次得到第p-1层中从第1个到第nump-1个节点中的第k个节点Nk的后继节点集合Vk。如果并且k=1时,则将集合Vk∩Vp中的节点在第p层按照入度从小到大从第1个位置开始进行排序;如果并且k≠1时,则将集合Vk∩Vp中还未排序的节点按照入度从小到大依次排在已排序节点之后;最后,开始处理p-1层中的下一个节点的后继集合。依次循环,直到将p-1层中所有节点的后继节点集合处理完毕则退出循环。
层数p每自增一层,重复执行第c步。
第d步:通过公式(3)得到同一层中两个相邻节点的距离w,通过公式(4)得到第s层,第t个节点的横坐标值x,其中,3≤s≤d,1≤t≤nums且s、t均为正整数。
w=(W-x1-x2)/(nums-1+2)(3)
x=x1+t×w (4)
其中,W为画布的宽度,x1,x2分别为第s层左右两边的留白。
步骤4:此外根据每个节点上已设定好的文本的内容和样式,得到每个节点的边框长宽信息。
步骤5:根据步骤3得到的每个节点边框的左上角的坐标及步骤4得到的节点边框长宽信息即得到边框矩形的中心点坐标。
经过上述操作,由步骤3得到每个边框的左上角坐标,步骤4得到边框的长宽值,步骤5得到节点间连线的开始和结束坐标,即完成了所需的图形布局方法。
本发明的有益效果:
本发明提出的方法与已有方法相比较,具有如下优点:
①当图中的节点较多时,可尽量减少图中的交叉线;
②充分考虑到与某一个节点相连接的其它多个节点在几何空间上的布局,使这些节点在图中的位置相对集中,使层次化系统结构图的可读性比好。
附图说明
图1为本发明具体实施方式中对实施例1中的代码采用已有方法进行处理得到的待处理有向图;
图2为本发明具体实施方式中对实施例1中的代码采用已有方法进行处理得到的布局效果图;
图3为本发明具体实施方式中对实施例1中的代码采用本发明方法进行处理得到的布局效果图;
图4为本发明具体实施方式中对实施例2中的代码采用已有方法进行处理得到的布局效果图;
图5为本发明具体实施方式中对实施例2中的代码采用本发明方法进行处理得到的布局效果图。
具体实施方式
下面结合附图和实施例对本发明技术方案进行详细描述。
实施例1:
源代码如下所示:
源码文件1:carlib.java:
importj ava.io.*;
interface CAR
{
public void start();
public void stop();
}
class SmallCar implements CAR
{
public void start()
{
System.out.println(″smallcar start...″);
}
public void stop()
{
System.out.println(″smallcar stop!″);
}
}
class BigCar implements CAR
{
public void start()
{
System.out.println(″bigcar start...″);
}
public void stop()
{
System.out.println(″bigcar stop!″);
}
}
源码文件2:Linklist.j ava:
public class Linklist {
public Link first;
//链表中数据项的个数
public int size;
public Linklist(){
first=null;
size=0;
}
//在表头插入新的数据
public void insertFirst(CAR value){
Link link=new Link(value);
link.next=first;
first=link;
size++;
}
//判断链表是否为空
public boolean isEmpty(){
return size==0;
}
//删除表头
public Link deleteFirst(){
Link temp=first;
first=first.next;
size--;
temp.data.stop();
return temp ;
}
//输出链表中的所有数据
public void display(){
Link curr=first;
while(curr!=null){
curr.data.start();
curr=curr.next;
}
System.out.println();
}
//返回链表中数据项的个数
public int size(){
return size;
}
//获取从头至尾的第i个数据项
public Link get(int i){
if(i>size()-1||i<0)
try{
throw newIndexOutOfBoundsException();
}catch (Exceptione){
e.printStackTrace();
}
Link curr=first;
for (intn=0;n<size();n++){
if (n==i)
return curr;
else
curr=curr.next;
}
return null;
}
//输出从头至尾的第i个数据项
public void remove(int i){
if (i==0)
deleteFirst();
else if (i==size()-1)
get(i-1).next=null;
else {
get(i-1).next=get(i+1);
}
size--;
}
public class Link {
public CAR data ;
public Link next;
public Link(CAR data){
this.data=data;
}
}
}
源码文件3:Link_list.java
public class Link_list {
public static void main(String[]args){
Linklist ll=new Linklist();
//插入汽车
SmallCar sc=new SmallCar();
ll.insertFirst(sc);
BigCar bc=new BigCar();
ll.insertFirst(bc);
ll.display();
while (!ll.isEmpty()){
ll.deleteFirst();
}
System.out.println(″Ok″);
}
}
针对上述3个Java的源码文件,使用文献《针对面向对象程序设计语言源代码的软件可视化方法》(国家专利,专利号:201010266831.5)提出的方法中的步骤一至步骤三进行处理,得到待处理有向图如图1所示;然后对图1采用文献《针对面向对象程序设计语言源代码的软件可视化方法》提出的方法中的步骤四的方法进行处理得到的布局效果图如图2所示;同时对图1采用本发明提出的方法进行处理,得到的布局效果图如图3所示。
为了进一步说明本发明效果,实施例2为一款基于java的扫雷游戏源码,代码行数为800行左右,采用文献《针对面向对象程序设计语言源代码的软件可视化方法》提出的方法中的步骤四的方法进行处理得到的布局效果图如图4所示;采用本发明提出的方法进行处理,得到的布局效果图如图5所示。
通过对比,可以看到本发明提出的方法减少了图中的交叉线;同时使层次化系统结构图的可读性比好。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,或者对其中部分技术特征进行等同替换,这些改进和替换也应视为本发明的保护范围。
Claims (2)
1.一种适用于软件可视化过程的图形布局方法,其特征在于:
其具体步骤为:
步骤1:设定画布的左上角为坐标原点;
步骤2:对软件可视化过程中得到的待处理有向图进行深度搜索,得到其最大深度d、层序号i、每层所包含的节点集合Vi、集合Vi所包含的节点的个数numi以及所有节点各自所在的层数deep;其中,d,i均为正整数且1≤i≤d;
步骤3:根据步骤2得到的结果,计算出每个节点边框的左上角的纵坐标y和横坐标x的值,获得每个节点边框的左上角的坐标;
①计算出所述每个节点边框的左上角的纵坐标y的值;
②计算出所述每个节点边框的左上角的横坐标x的值,其计算方法如下:
第a步:将第1层中的节点按照字母表升序排序;
第b步:对第2层中的节点做以下处理:
按照入度从大到小的顺序对第2层中的节点进行排序,当有多于1个的节点的入度相同时,按字母表序排序;排序后的节点用qj表示;其中,1≤j≤num2,qj∈V2,且j为正整数;
由q1节点得到指向该节点的前驱节点集合Vq1和数量zq1,zq1为正整数,将前驱节点集合Vq1中的节点按照出度从小到大在第1层中从第1个位置开始重新排序,节点集合v∈(V1-Vq1)中受影响的节点的位置依次后置,并将q1排在第二层的第一位;
然后取q2节点,得到指向该节点的前驱节点集合Vq2和数量zq2,如果 则将q2置于第2层的第2位,即正向排序,从前向后排;同时,集合 中的节点按照出度从小到大在第一层中从zq1+1处开始从前向后重新排序,集合v∈(V1-(Vq1∪Vq2))中受影响的节点的位置依次后置;否则,即: 则 将节点q2置于第2层的最后,即反向排序,从后向前排,并将集合Vq2中的节点从第1层的最后位置开始从后向前按照出度由小到大重新排序,集合v∈(V1-(Vq1∪Vq2))中受影响的节点的位置依次前置;
以此类推,处理第2层中的其它未处理的节点;
第c步:如果存在第p层,p≥3且p为正整数,则依次对第p层节点做以下处理,否则直接执行步骤4;
用Nk表示p-1层经排序后的第k个节点,k=1、2、……nump-1且k为正整数,依次得到第p-1层中从第1个到第nump-1个节点中的第k个节点Nk的后继节点集合Vk;如果 并且k=1时,则将集合Vk∩Vp中的节点在第p层按照入度从小到大从第1个位置开始进行排序;如果 并且k≠1时,则将集合Vk∩Vp中还未排序的节点按照入度从小到大依次排在已排序节点之后;最后,开始处理p-1层中的下一个节点的后继集合;依次循环,直到将p-1层中所有节点的后继节点集合处理完毕则退出循环;
层数p每自增一层,重复执行第c步;
第d步:通过公式3得到同一层中两个相邻节点的距离w,通过公式4得到第s层,第t个节点的横坐标值x,其中,3≤s≤d,1≤t≤nums且s、t均为正整数;
w=(W-x1-x2)/(nums-1+2)(3)
x=x1+t×w (4)
其中,W为画布的宽度,x1,x2分别为第s层左右两边的留白;
步骤4:此外根据每个节点上已设定好的文本的内容和样式,得到每个节点的边框长宽信息;
步骤5:根据步骤3得到的每个节点边框的左上角的坐标及步骤4得到的节点边框长宽信息即得到边框矩形的中心点坐标;
经过上述操作,由步骤3得到每个边框的左上角坐标,步骤4得到边框的长宽值,步骤5得到节点间连线的开始和结束坐标,即完成了所需的图形布局方法。
2.如权利要求1所述的一种适用于软件可视化过程的图形布局方法,其特征在于:每个节点边框的左上角的纵坐标y的值的计算方法为:
设定H为画布的高度,根据公式1可得到有向图中每一层的高度差h:
h=(H-h1-h2)/(d-1)(1)
其中,h1和h2分别为画布的上、下留白高度;
根据公式2可得到该节点的左上角的纵坐标y:
y=h1+(i-1)×h (2) 。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105033022A CN101957757B (zh) | 2010-09-30 | 2010-09-30 | 一种适用于软件可视化过程的图形布局方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105033022A CN101957757B (zh) | 2010-09-30 | 2010-09-30 | 一种适用于软件可视化过程的图形布局方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101957757A CN101957757A (zh) | 2011-01-26 |
CN101957757B true CN101957757B (zh) | 2012-11-14 |
Family
ID=43485101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105033022A Expired - Fee Related CN101957757B (zh) | 2010-09-30 | 2010-09-30 | 一种适用于软件可视化过程的图形布局方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101957757B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI570585B (zh) | 2014-10-02 | 2017-02-11 | 財團法人資訊工業策進會 | 用以視覺化軟體程式之系統及方法 |
CN104461497B (zh) * | 2014-10-30 | 2017-06-27 | 华中科技大学 | 一种无向图或有向有圈图的层次化显示方法 |
CN104741791B (zh) * | 2015-03-21 | 2016-05-04 | 温州大学 | 一种曲面工件表面阵列微结构图形布局方法 |
CN107870911B (zh) * | 2016-09-23 | 2021-06-18 | 腾讯科技(深圳)有限公司 | 一种数据可视化展示方法和设备 |
CN108520049B (zh) * | 2018-03-30 | 2021-12-17 | 新华三大数据技术有限公司 | 关系图绘制方法及装置 |
CN110109662B (zh) * | 2019-03-27 | 2023-06-09 | 浙江工业大学 | 一种面向多模式物联网设备的程序可视化方法 |
CN110515690A (zh) * | 2019-08-29 | 2019-11-29 | 北京明略软件系统有限公司 | 节点布局方法及装置、存储介质、电子装置 |
CN110727834A (zh) * | 2019-09-30 | 2020-01-24 | 北京百度网讯科技有限公司 | 有向无环图的获取方法、装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101013367A (zh) * | 2007-02-02 | 2007-08-08 | 浙江大学 | 一种应用于嵌入式开发平台图形函数的优化实现方法 |
CN101051270A (zh) * | 2007-05-11 | 2007-10-10 | 华为技术有限公司 | 界面布局变换方法及界面显示控制器 |
CN101226469A (zh) * | 2007-01-17 | 2008-07-23 | 华硕电脑股份有限公司 | 可在窗口标题列呈现程序图形界面的方法及电脑系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4112812B2 (ja) * | 2001-03-27 | 2008-07-02 | 株式会社東芝 | パターン評価方法、パターン評価装置およびコンピュータ読み取り可能な記録媒体 |
-
2010
- 2010-09-30 CN CN2010105033022A patent/CN101957757B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226469A (zh) * | 2007-01-17 | 2008-07-23 | 华硕电脑股份有限公司 | 可在窗口标题列呈现程序图形界面的方法及电脑系统 |
CN101013367A (zh) * | 2007-02-02 | 2007-08-08 | 浙江大学 | 一种应用于嵌入式开发平台图形函数的优化实现方法 |
CN101051270A (zh) * | 2007-05-11 | 2007-10-10 | 华为技术有限公司 | 界面布局变换方法及界面显示控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN101957757A (zh) | 2011-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101957757B (zh) | 一种适用于软件可视化过程的图形布局方法 | |
CN102385505B (zh) | 针对面向对象程序设计语言源代码的软件可视化方法 | |
CN102184299B (zh) | 从cad系统到三维校审系统的模型转换方法及系统 | |
Zhang et al. | New techniques for mining frequent patterns in unordered trees | |
US10650559B2 (en) | Methods and systems for simplified graphical depictions of bipartite graphs | |
CN102270137B (zh) | 一种获取体系结构描述语言的方法和一种建模工具 | |
CN101673410A (zh) | 一种基于矢量建筑图纸重建三维模型的方法 | |
CN103744846A (zh) | 一种多维度动态局部知识地图及其构建方法 | |
CN104360859A (zh) | 一种可视化的服务开发方法和系统 | |
CN108228409A (zh) | 一种基于信号流的算法执行顺序生成方法 | |
CN102799960B (zh) | 面向数据模型的并行业务流程异常检测方法 | |
CN108762749A (zh) | 基于代码分析的系统对象图自动生成方法 | |
CN101320487A (zh) | 一种用于火灾模拟的场景预处理方法 | |
CN111125996B (zh) | 一种伪随机激励生成器的基于双向约束树指令集实现方法 | |
CN110489448A (zh) | 基于Hadoop的大数据关联规则的挖掘方法 | |
CN114119894B (zh) | 一种地形曲面创建方法、系统和计算机终端 | |
CN105224597A (zh) | 一种可将数据库中的外键关系生成图像的系统及方法 | |
CN116385787A (zh) | 一种用于ui零碎图层的图层处理方法及装置 | |
Kimelfeld et al. | Maximally joining probabilistic data | |
Malesevic et al. | Tool for automatic layout of business process model represented by UML activity diagram | |
CN110162531B (zh) | 一种分布式并发数据处理任务决策方法 | |
CN108171396A (zh) | 检测和删除Petri网业务流程中结构冗余的方法及装置 | |
CN102779092A (zh) | 引用检查系统和引用检查方法 | |
CN107133281A (zh) | 一种基于分组的全局多查询优化方法 | |
de Castro et al. | CASE tool for object-relational database designs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121114 Termination date: 20140930 |
|
EXPY | Termination of patent right or utility model |