CN105787198B - 一种从UML活动图到Event-B模型的转换方法 - Google Patents
一种从UML活动图到Event-B模型的转换方法 Download PDFInfo
- Publication number
- CN105787198B CN105787198B CN201610153720.0A CN201610153720A CN105787198B CN 105787198 B CN105787198 B CN 105787198B CN 201610153720 A CN201610153720 A CN 201610153720A CN 105787198 B CN105787198 B CN 105787198B
- Authority
- CN
- China
- Prior art keywords
- activity
- event
- sequence
- uml
- decision
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明是一种从UML活动图到Event‑B模型的转换方法,属于计算机软件工程领域。确定UML活动图的模型元素:发起活动的对象、基本活动和活动流;建立对象集合和活动集合,建立不变式以保证每个活动只属于一个对象,将活动的前置条件和后置条件在event的触发条件guards和动作actions中分别声明,对活动流进行映射,包括顺序流、分叉与汇合、分支与合并三种活动流。本发明方法将UML活动图转换为Event‑B模型,通过Event‑B的建模平台对转换后的模型进行形式化验证,可发现UML模型中存在的问题,同时针对作为形式化语言Event‑B不便于建模的问题,实现了利用UML活动图辅助其建模的方法。
Description
技术领域
本发明涉及计算机软件工程领域,涉及将UML模型转换为形式化模型的技术,具体涉及一种从UML活动图到Event-B模型的转换方法。
背景技术
UML即统一建模语言,是一个支持模型化和软件系统开发的图形化语言,UML模型实际已经成为建模领域的标准,具有更强的通性和更广泛的工具支持。但UML是一种半形式化语言,没有精确的语意,不同的人理解UML模型容易引起歧义。另外,无法对UML模型进行形式化验证,从而保证模型的正确性。
为了解决这些问题,目前已有很多工作研究如何将UML模型转换为形式化模型。在参考文献[1]中,研究人员选用高阶逻辑形式化规范语言PVS对UML的状态图进行了形式化工作。PVS具有很强描述能力,并且有相应的模型验证工具支持,克服了UML模型缺乏形式化描述和模型验证工具的不足。参考文献[2]提出了一种由UML的状态图自动转化成Petri网的模型转化技术,以支持进行安全性的分析和验证。在参考文献[3]中,研究小组则系统地研究了利用UML转换到Z语言的方法。利用UML建模,构建了系统的类图和状态图,同时,该研究小组开发了相应的支持工具,支持将系统状态表转换成Z语言,以支持后续的形式化分析。此外,参考文献[4]研究了将UML模型中的类图和活动图转化到动态故障树(DynamicFault Trees,DFT)的方法。文中利用UML的类图对系统进行了建模,然后利用设计开发的剖析器和合成算法完成了对UML扩展模型的转换。参考文献[5]中对UML视图向B语言进行转换的机制进行了系统的研究,总结了目前已有的UML中如类图,状态图,顺序图等到B语言的转换方法,并在此基础上进行了提出了改进思路。最后以某一免疫系统(Immune System)为实例,进行了类图和状态图的UML建模,并向B语言进行模型转换,采用模型仿真工具对生成的B语言模型进行了仿真。
参考文献[1]~[5]如下:
[1].赖明志,尤晋元.从UML状态图到PVS规范的自动转换,验证[J].电子学报,2002,30(12A):2122-2125.
[2].Hei X,Chang L,Ma W,et al.Automatic transformation from UMLstatechart to Petri nets for safety analysis and verification[C]//Quality,Reliability,Risk,Maintenance,and Safety Engineering(ICQR2MSE),2011International Conference on.IEEE,2011:948-951.
[3].Hawkins R,Toyn I,Bate I.An approach to designing safety criticalsystems using the unified modelling language[J].TUM,2003:3.
[4].Pai G J,Dugan J B.Automatic synthesis of dynamic fault trees fromUML system models[C]//Software Reliability Engineering,2002.ISSRE2003.Proceedings.13th International Symposium on.IEEE,2002:243-254.
[5].孟静,邹盛荣.基于统一过程的UML_B系统转换技术的研究[D].扬州大学,2008.
尽管国内外学者针对UML到形式化模型转换方法上进行了大量的研究,但仍存在一些问题:
1)目前常见的各种模型转化方法虽然都具备各自的优点,但也存在着明显的不足,比如B语言和Z语言的语义较为复杂,难以理解;Z语言缺乏相应的模型分析工具支持;Petri在面对复杂模型时会出现状态空间爆炸问题等;
2)目前开展的许多研究只针对UML视图中的一种图或两种图提供了相应的模型转化方法和安全性分析方法,缺乏对UML视图更加系统全面的研究。
Event-B是一种支持系统级建模和分析的形式化方法。系统级的建模即指Event-B能够完成同时包含系统软件、硬件和外部交互的建模,而形式化的特点意味着Event-B拥有严格的数学逻辑基础和精确的语义,是一种无歧义的语言。Event-B由传统的B语言发展而来,因此与B语言拥有共同的语法基础—一阶谓词逻辑和集合论。而相比于B语言用一个个抽象机来描述系统,Event-B在建模过程中引入了“事件”的概念,用来更加清晰的描述系统和外部的交互过程,并克服了B语言在处理并发行为时的不足。Event-B目前的建模环境是基于Eclipse集成开发环境开发的Rodin建模平台,同时,在该平台下集成了多种模型检测和验证工具,如ProB[7]工具提供了对Event-B模型进行检验的功能,可以检验模型中是否存在死锁等性质;AnimB[7]工具提供了动态演示功能,可以对Event-B模型进行动态演示,观察模型中各个事件发生的顺序,直观的了解建模系统的行为。
Event-B模型中包括两个基本的组成部分,分别是Context和Machine。Context用于表征模型的静态属性,包括在模型中定义的集合、定理、公理和常量等。其中,在集合里可以进行新的数据类型的声明,并设定唯一的标识符。相对的,Machine则用于表征系统的动态行为,包括变量、不变式和事件。变量用于描述在系统运行过程可以发生改变的属性,而不变式则是对变量的行为进行声明和约束。在模型中,一般用v来表示变量的集合,用I(v)形式化表示不变式的集合,用E表示事件。在Machine中,变量的值会随着事件的发生而发生变化,但是变量始终要满足相应不变式的约束。一个事件是由触发条件(Guards)和动作(Actions)组成,触发条件表示事件发生的必要条件,动作描述当事件发生时,变量集合发生的变化。Context和Machine之间存在着调用与被调用的关系,Machine中的事件和变量会调用相应Context中的静态量,如集合,常量等。
发明内容
本发明的目的是提供一种将UML活动图转换为Event-B模型的方法,从而通过Event-B的建模平台Rodin对转换后的模型进行形式化验证,发现UML模型中存在的问题。
本发明提供的从UML活动图到Event-B模型的转换方法,实现步骤包括:
步骤1,确定UML活动图的模型元素,包括发起活动的对象、基本活动和活动流。
步骤2,在Event-B模型中对UML活动图中参与活动的对象进行声明。
对UML活动图中参与活动的所有对象建立对象集合OBJ_SETS,对象集合中元素为对象名称,将对象名称作为常量进行声明。
步骤3,在Event-B模型中对UML活动图中的基本活动进行映射。
(3.1)对UML活动图中的所有活动名称,建立活动集合ACTIVITY_SETS,活动集合中元素为活动名称,将活动名称作为常量进行声明;
(3.2)定义对象变量obj,表示当前活动所处的泳道,声明对象变量obj∈OBJ_SETS;
(3.3)定义活动变量activity,表示当前进行的活动,声明活动变量activity∈ACTIVITY_SETS;
(3.4)在Event-B模型的Machine里建立不变式,保证每个活动只属于一个相应的对象;
(3.5)将UML活动图中的活动的前置条件在Event-B模型中的event的触发条件guards中进行声明,将UML活动图中的后置条件在动作actions中进行声明。
步骤4,在Event-B模型中对UML活动图中的活动流进行映射;UML活动图中的活动流包括有顺序流、分叉与汇合、分支与合并。
(4.1)顺序流的映射规则是:声明控制变量sequence,利用控制变量sequence驱动活动按照顺序流顺序执行,具体是:当活动进入初始状态时,将sequence置为1;对于顺序执行的第i个活动,在活动的触发条件中增加sequence的值为i的条件,i为正整数,当活动中的动作执行完成后,追加sequence的值自增1的动作。
(4.2)分叉与汇合的映射规则是:声明用于描述并行动作的动作变量和对象变量,声明两个控制变量sequence和sequence_2。
使用控制变量sequence和sequence_2在Event-B模型实现并发的逻辑为:
a.当活动流将要进入分叉时,在将要进入分叉的上一个活动中追加动作,将sequence_2置为1;
b.对于分叉中的一支,继续用sequence作为触发条件,控制活动的顺序执行;对于分叉中的另一支,用sequence_2作为触发条件,控制活动的顺序执行;
c.在活动流即将汇合时,在汇合后的下一个活动中用两个控制变量sequence和sequence_2同时作为触发条件,表示进入该活动的条件是分叉中的并发事件都已执行完毕。
(4.3)分支与合并,分为下面两种情况:
(4.3.1)当活动执行完毕后,将进入一个分支判断,根据判断结果的不同,进入不同的活动;该情况的映射规则为:声明判定条件变量decision∈BOOL,当判定条件为真时,decision=True,当判定条件为假时,decision=False;将判定条件对应的decision的取值加入对应要进入的活动的触发条件中;
(4.3.2)当活动1执行完毕后,将进入一个分支判断,如果判断条件为真,继续执行活动2,如果判断条件为假,则返回活动1重新执行,直到判断条件为真后才离开活动1;该情况的映射规则为:按照(4.3.1)中声明判定条件变量decision,当判定条件为真时,decision=True,当判定条件为假时,decision=False;增加辅助事件Loop_Branch,其中的动作为将控制变量sequence的值减1,在事件的触发条件中加入decision=False,通过辅助事件Loop_Branch使活动流在判定条件为假时自动回到活动1中重新执行。
本发明的优点和积极效果在于:本发明提供的从UML活动图到Event-B模型的转换方法,实现了将UML活动图转换到Event-B模型,从而可以利用Event-B模型对UML模型进行形式化验证,发现UML模型中存在的问题。针对作为形式化语言的Event-B不便于建模的问题,本发明实现了利用UML活动图辅助其建模的方法。
附图说明
图1是本发明的从UML活动图到Event-B模型的转换方法的整体流程示意图;
图2是典型的顺序流的示意图;
图3是典型的分叉与汇合活动流的示意图;
图4是第一种类型的分支与合并活动流的示意图;
图5是第二种类型的分支与合并活动流的示意图。
具体实施方式
下面将结合附图和实施例对本发明作进一步的详细说明。
活动图是UML建模语言中一种常用视图,用于对系统的动态行为进行建模。活动图描述了系统中活动的顺序,展现了从一个活动到另一个活动的控制流。一个活动图中包含的基本元素有:活动的对象,动作状态,活动的控制流。其中活动的对象表示活动的发起者,即该活动是由系统中的哪个对象进行的。活动的对象明确地位于活动图中的“泳道”,并且每个活动只能明确地属于某一条泳道。动作状态是指不可中断的瞬时动作。活动的控制流是指动作状态的执行顺序。
本发明提供的从UML活动图到Event-B模型的转换方法,包括实现步骤1~步骤4。
步骤1,确定UML活动图的模型元素。
要将UML活动图转化为Event-B模型,首先需要分析UML活动图中具有的模型元素,确定需要进行转化的元素。根据分析,活动图中基本的模型元素如表1所示。
表1 UML活动图中基本的模型元素
而后,根据表中的模型元素,将其分别转换到Event-B模型中。其中,考虑到活动图中的活动流(控制流)的形式很多,活动之间存在着顺序执行、并发执行、判断分支、循环等各种基本活动流的组合,因此需要对每种基本活动流分别考虑映射规则。
步骤2,在Event-B模型中对UML活动图中参与活动的对象进行声明。
建立一个对象集合表示UML活动图中参与活动的所有对象,将对象名称作为常量进行声明,并且将对象名称作为对象集合里的元素。Event-B的声明形式如下:
该例中,Obj1、Obj2、Obj3均为对象名称,放入集合OBJ_SETS中。
步骤3,在Event-B模型中对UML活动图中的基本活动进行映射。
将UML活动图中的基本活动映射到Event-B模型中包括步骤3.1~步骤3.5。
(3.1)对UML活动图中的所有活动名称,建立活动集合ACTIVITY_SETS,把图中所有出现的活动名称作为常量进行声明,并且作为将活动名称作为集合里的元素。Event-B的声明形式如下:
其中,Actvity1、Actvity2、Actvity3均为活动名称,放入集合ACTIVITY_SETS中。
(3.2)定义对象变量obj,表示当前活动所处的泳道(活动的执行对象);同时,声明对象变量obj∈OBJ_SETS,表示对象变量的值只能取自对象集合。
(3.3)定义活动变量activity,表示当前进行的活动;同时声明活动变量activity∈ACTIVITY_SETS,表示活动变量的值只能取自活动集合。
(3.4)活动图中不允许活动跨泳道。为了对此进行约束,可以通过在Event-B的Machine里建立不变式,保证每个活动只属于一个相应的对象。例如,假设活动图中活动1和活动2是由对象1发起的,活动3和活动4是由对象2发起的,则相应的不变式如下:
inv1:
inv2:
(3.5)用Pre-condition表示此活动的前置条件,在相应事件的触发条件guards中声明;用Post-condition表示此活动的后置条件,在事件的动作actions中声明。
综上,一个基本活动的Event-B模型如下:
上面示例中,act1、act2表示两个行为,obj表示对象变量,activity表示活动变量。
步骤4,在Event-B模型中对UML活动图中的活动流进行映射。
由于UML活动图中活动流的形式很多,因此下面根据活动流的基本形式,分别说明转换规则。
(4.1)顺序流。一个典型的顺序流如图2所示。
为了表达这种活动之间依次顺序发生的关系,本发明考虑添加一个辅助变量来控制活动的发生顺序。该变量并不对应UML活动图中的任何图形元素,而是用来驱动活动按照预定次序依次发生。定义该辅助变量为控制变量sequence,声明sequence∈N1,将其作为活动发生的触发条件,同时约束活动发生的顺序。N1表示表示正整数集合。
控制变量sequence的赋值逻辑为:当活动进入初始状态时,将sequence变量置为1;进入活动1的触发条件中追加一条:sequence=1;当活动1执行完成后,在活动1的动作中追加一条:sequence=sequence+1,表示离开本活动准备进入下一活动;而活动2的触发条件中追加一条sequence=2,表示可以进入本活动,以此类推,驱动活动按照顺序流顺序发生。按此逻辑,图2对应的Event-B模型表示如下:
该示例中,定义活动1—Actvity1和活动2—Actvity2中,前置条件中加入sequence值,在动作中追加sequence的值自增1。
(4.2)分叉与汇合。分叉与汇合也是活动流的一种,它是UML活动图中用来表达并发的方法。一个典型分叉与汇合如图3所示。
由于在此类活动流中会存在活动并发执行的情况,如果只使用原来的一个动作变量activity已经无法表达并发执行的两个动作。因此,考虑追加新的动作变量activity_2,新的对象变量obj_2,以及新的控制变量sequence_2,来描述正在进行的并发活动。同时用不变式声明对象变量obj_2∈OBJ_SETS,action_2∈ACTIVITY_SETS,sequence_2∈N1,初始化为1。
利用控制变量sequence和sequence_2在Event-B模型实现并发的基本逻辑为:
a.当活动流将要进入分叉(并发)时,在将要进入分叉的上一个活动中追加一个Action,将sequence_2置为1;
b.对于分叉中的一支,继续用控制变量sequence作为触发条件,控制活动的顺序执行;对于分叉中的另一支sequence_2作为触发条件进行控制;
c.在活动流即将汇合(离开并发)时,在汇合后的下一个活动中用两个控制变量sequence和sequence_2同时作为触发条件,表示进入该活动的条件是分叉中的并发事件都已执行完毕。
根据上述设计逻辑,图3所对应的Event-B模型为:
如上所示,示例中,存在控制变量sequence和sequence_2,活动2和活动3并发执行,则在活动1中增加将sequence_2置为1的动作。在一个分支中,继续使用控制变量sequence进行顺序控制。sequence和sequence_2控制活动顺序执行的赋值逻辑都是按照(4.1)中的原则设置的。
(4.3)分支与合并。分支与合并即活动图中的判断流,根据具体情况的不同,分支与合并又可以细分为三种类型。下面分别给出这三种类型的活动流和向Event-B模型转换的规则。
(4.3.1)第一种类型的分支与合并活动流的基本结构如图4所示,当活动1执行完毕后,将进入一个分支判断,根据判断结果的不同,会进入不同的活动。如果分支判断条件为真,则继续执行活动3;如果分支判断条件为假,则继续执行活动2。
针对这种分支与合并活动流,考虑可以将判断条件加入活动2和活动3的触发条件中,实现这种活动流向Event-B模型的映射。因此,追加一个判定条件变量decision∈BOOL,BOOL为布尔值。当判定条件为真时,decision=True;当判定条件为假时,decision=False。图4对应的Event-B模型为:
通过判定条件变量decision来控制判断逻辑的执行。
(4.3.2)第二种类型的分支与合并活动流的基本结构如图5所示,这种类型的活动流可以看作是一种循环。当活动1执行完毕后,将进入一个分支判断,根据判断结果的不同,会进入不同的活动。如果分支判断条件为真,则继续执行活动2;如果分支判断条件为假,则返回活动1重新执行,直到分支判断条件为真后才离开活动1。
对于这种类型的活动流,考虑加入一个辅助事件“Loop_Branch”,该辅助事件同样也不对应于活动图中的任何图形元素,它的作用是当分支判断条件为假时,将辅助变量置为sequence:=sequence-1,使活动流能够自动回到活动1中重新执行。图5对应的Event-B模型如下:
除了利用(4.3.1)的判定条件变量decision外,还额外定义辅助事件“Loop_Branch”,当decision=False时,将sequence的值减1。
综上,上述转换方法将UML活动图中的模型元素和基本的活动流类型全部映射到了Event-B模型中。按照上述的映射规则,可以将UML活动图转换为相应的Event-B模型。
Claims (1)
1.一种从UML活动图到Event-B模型的转换方法,其特征在于,实现步骤如下:
步骤1,确定UML活动图的模型元素,包括发起活动的对象、基本活动和活动流;
步骤2,在Event-B模型中对UML活动图中参与活动的对象进行声明;
对UML活动图中参与活动的所有对象建立对象集合OBJ_SETS,对象集合中元素为对象名称,将对象名称作为常量进行声明;
步骤3,在Event-B模型中对UML活动图中的基本活动进行映射;
(3.1)对UML活动图中的所有活动名称,建立活动集合ACTIVITY_SETS,活动集合中元素为活动名称,将活动名称作为常量进行声明;
(3.2)定义对象变量obj,表示当前活动所处的泳道,声明对象变量obj∈OBJ_SETS;
(3.3)定义活动变量activity,表示当前进行的活动,声明活动变量activity∈ACTIVITY_SETS;
(3.4)在Event-B模型的Machine里建立不变式,保证每个活动只属于一个相应的对象;
(3.5)将UML活动图中的活动的前置条件在Event-B模型中的事件event的触发条件guards中进行声明,将UML活动图中的后置条件在动作actions中进行声明;
步骤4,在Event-B模型中对UML活动图中的活动流进行映射;UML活动图中的活动流包括有顺序流、分叉与汇合、分支与合并;
(4.1)顺序流的映射规则是:声明控制变量sequence,利用控制变量sequence驱动活动按照顺序流顺序执行,具体是:当活动进入初始状态时,将sequence置为1;对于顺序执行的第i个活动,在活动的触发条件中增加sequence的值为i的条件,i为正整数,当活动中的动作执行完成后,追加sequence的值自增1的动作;
(4.2)分叉与汇合的映射规则是:声明用于描述并行动作的动作变量和对象变量,声明两个控制变量sequence和sequence_2;
使用控制变量sequence和sequence_2在Event-B模型实现并发的逻辑为:
a.当活动流将要进入分叉时,在将要进入分叉的上一个活动中追加动作,将sequence_2置为1;
b.对于分叉中的一支,继续用sequence作为触发条件,控制活动的顺序执行;对于分叉中的另一支,用sequence_2作为触发条件,控制活动的顺序执行;
c.在活动流即将汇合时,在汇合后的下一个活动中用两个控制变量sequence和sequence_2同时作为触发条件,表示进入该活动的条件是分叉中的并发事件都已执行完毕;
(4.3)分支与合并,分为下面两种情况:
(4.3.1)当活动执行完毕后,将进入一个分支判断,根据判断结果的不同,进入不同的活动;该情况的映射规则为:声明判定条件变量decision∈BOOL,当判定条件为真时,decision=True,当判定条件为假时,decision=False;将判定条件对应的decision的取值加入对应要进入的活动的触发条件中;
(4.3.2)当活动1执行完毕后,将进入一个分支判断,如果判断条件为真,继续执行活动2,如果判断条件为假,则返回活动1重新执行,直到判断条件为真后才离开活动1;该情况的映射规则为:按照(4.3.1)中声明判定条件变量decision,当判定条件为真时,decision=True,当判定条件为假时,decision=False;增加辅助事件Loop_Branch,其中的动作为将控制变量sequence的值减1,在事件event的触发条件中加入decision=False,通过辅助事件Loop_Branch使活动流在判定条件为假时自动回到活动1中重新执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610153720.0A CN105787198B (zh) | 2016-03-17 | 2016-03-17 | 一种从UML活动图到Event-B模型的转换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610153720.0A CN105787198B (zh) | 2016-03-17 | 2016-03-17 | 一种从UML活动图到Event-B模型的转换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105787198A CN105787198A (zh) | 2016-07-20 |
CN105787198B true CN105787198B (zh) | 2018-11-02 |
Family
ID=56393939
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610153720.0A Expired - Fee Related CN105787198B (zh) | 2016-03-17 | 2016-03-17 | 一种从UML活动图到Event-B模型的转换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105787198B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109799969A (zh) * | 2018-12-28 | 2019-05-24 | 中国人民解放军火箭军工程大学 | 复杂软件系统UML建模及向Event-B模型转换的工具和方法 |
CN111338966B (zh) * | 2020-03-05 | 2023-09-19 | 中国银行股份有限公司 | 数据源表的大数据加工检测方法及装置 |
CN112947370B (zh) * | 2021-02-03 | 2022-04-22 | 华侨大学 | 一种蒸汽锅炉系统的安全分析方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101295246A (zh) * | 2008-05-28 | 2008-10-29 | 浙江大学 | 一种从UML模型转换至SmartC模型的转换方法 |
US8510706B1 (en) * | 2009-09-04 | 2013-08-13 | The Mathworks, Inc. | Generating comments for code generated from a model |
CN104375842A (zh) * | 2014-12-05 | 2015-02-25 | 中国人民解放军理工大学 | 一种自适应软件uml建模及其形式化验证方法 |
-
2016
- 2016-03-17 CN CN201610153720.0A patent/CN105787198B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101295246A (zh) * | 2008-05-28 | 2008-10-29 | 浙江大学 | 一种从UML模型转换至SmartC模型的转换方法 |
US8510706B1 (en) * | 2009-09-04 | 2013-08-13 | The Mathworks, Inc. | Generating comments for code generated from a model |
CN104375842A (zh) * | 2014-12-05 | 2015-02-25 | 中国人民解放军理工大学 | 一种自适应软件uml建模及其形式化验证方法 |
Non-Patent Citations (2)
Title |
---|
A Transformation Method from UML Statechart to Petri Nets;Mian Wang et al;《2012 IEEE International Conference on Computer Science and Automation Engineering (CSAE)》;20120527;第75-77页 * |
一种基于UML 状态图的面向对象类级测试模型;张庆等;《计算机工程》;20051130;第31卷(第5期);第89-92页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105787198A (zh) | 2016-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Harel | Biting the silver bullet: Toward a brighter future for system development | |
Thompson et al. | Specification-based prototyping for embedded systems | |
CN104050087B (zh) | 一种基于uml模型的软件架构正确性验证方法 | |
Klammer et al. | A journey from manual testing to automated test generation in an industry project | |
CN105787198B (zh) | 一种从UML活动图到Event-B模型的转换方法 | |
Teixeira et al. | Supervisory control of DES with extended finite-state machines and variable abstraction | |
Remenska et al. | Using model checking to analyze the system behavior of the LHC production grid | |
Li et al. | Recursive modeling of stateflow as input/output-extended automaton | |
CN101727326A (zh) | 一种图形用户界面的实现方法 | |
CN109460214B (zh) | 基于idef建模的航天器软件结构化方法 | |
Wen et al. | “Integrare”, a collaborative environment for behavior-oriented design | |
Gupta et al. | Test driven software development technique for software engineering | |
Guangyan et al. | System fault behavior model considering the effects of structural factors and method of its description | |
Wehrmeister et al. | Framework to simulate the behavior of embedded real-time systems specified in UML models | |
Rui et al. | Translating software requirement from natural language to automaton | |
Hite et al. | SymPLe: Complexity-Aware Design for Safety Critical I&C Systems | |
Sarker | JMVC: A Java Framework for Rapidly Developing Desktop Application Software Based on MVC | |
Long et al. | A new test modeling language for interactive applications based on task trees | |
Madani et al. | Automatically testing interactive multimodal systems using task trees and fusion models | |
Dewasurendra et al. | Development of an elevator prototype for multi-disciplinary research in complex reactive systems | |
Hou et al. | Software interface failure modes and effect analysis based on UML | |
Junior et al. | A model-driven approach to develop and manage cyber-physical systems | |
Croll et al. | Use of statecharts in the modelling of dynamic behaviour in the ATLAS DAQ prototype-1 | |
Augusto et al. | Development of a new graphical interface for the LABIHS simulator using LABVIEW | |
Richter et al. | Interdisciplinary and model-based development of user interfaces for production plants |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181102 Termination date: 20200317 |