UML模型到B抽象机的转换和实现

来源 :计算机时代 | 被引量 : 0次 | 上传用户:leefenbo
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:统一建模语言UML广泛用于面向对象技术的建模,B方法主要是用抽象机来描述软件系统的规格说明。文章针对软件开发中经常用到的UML模型,提出了基于B语言的UML形式化方法:通过将UML模型转化为B抽象机,实现了UML模型的形式化。实例分析表明,转换是可行的。
  关键词:UML;形式化方法;抽象机;B方法
  
  0 引言
  
  形式化方法以严密的数学为基础,可以对系统进行严格、精确的规范,并可以对系统性质进行正确性验证,最大限度地保证所开发系统性能的正确和可靠,因此在与安全有关的系统开发中越来越受重视。UML是一种面向对象的可视化的标准建模语言,它的特点是直观,强调从整体上把握系统的结构和行为特性;但UML的许多概念基于非形式化语义,对模型的描述不精确,不便用工具对其所描述的需求进行验证。显然,UML与形式化方法是互补的,二者的结合将对高可信软件工程产生重要影响,因此成为近年来的研究热点。
  B方法是一种基于自动定理证明的形式化方法,支持软件开发的全过程,它有完整的工具支持:B-Toolkit和Atelier-B,已经在高可信软件实践中得到成功应用,因此将UML与B方法集成被认为是很有前途的。
  根据UML和B方法的特点,本文针对一个电梯系统构建UML模型,由于UML本身不能提供对模型的精确性证明,此时再用B方法对安全性要求高的模型建立抽象机规范,进行精确性证明,从而保证模型的正确性,实现UML的形式化。此时还可对建立的抽象机规范进一步实施精化,建立更接近实现的模型。
  
  1 UML建模和B方法介绍
  
  UML定义了9种不同的图。9种图分为两类,一类是静态图,包括用例图、类图、对象图、组件图和配置图;另一类是动态图,包括序列图、协作图、状态图和活动图。其中用例图、活动图和交互图是UML极具特色的部分。这9种图从不同应用层次和不同角度为软件系统从系统分析、设计直至实现提供了有力支持,使用这些图可以描绘任何复杂的系统。
  B方法是一种面向模型的数学方法,它在软件开发的各个阶段采用统一的AMN(Abstract Machine Notation)符号语言描述系统规约及系统设计,用内嵌的逻辑符号、基本集合符号、关系符号以及数学对象符号来描述系统的静态结构,用广义代换语言GSL描述系统的动态行为。在B方法中,软件系统被模型化为一个由多个相互依存的抽象机所组成的集合,称为B模型。B模型由3种类型的B组件共同表达:抽象机(MA-CHINE),精化(REFINEMENT)和实现(IMPLEMENTATION)。在B方法中,软件开发的过程就是一个对模型规约(抽象机集合)逐步精化直至实现的过程。B抽象机的定义如下:
  
  注:“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文”
其他文献
摘 要:现代教育技术在教学中的应用越来越多,多媒体课件在教学中的作用日益明显,制作多媒体课件也就成为教师必须掌握的一门技术。很多教师制作课件都选择单一工具软件(PowerPoint或Authorware),在制作过程中难免存在这样或那样的不足。而把PowerPoint和Authorware结合使用可以达到最佳效果。  关键词:PowerPoint;Authorware;OLE对象;文件打包    
期刊
摘要:旅行商问题(TSP)是遗传算法得以成功应用的典型问题。文章对遗传算法加以改进,提出了新的选择策略和交叉算子,并且引入了兄弟竞争的策略来加快收敛速度和全局搜索能力。把该算法应用在不同类型的TSP问题的求解上,表现出了比传统遗传算法更好的收敛性和计算效率。说明改进算法是有效的。关键词:旅行商问题(TSP);遗传算法(GA);交叉算子;兄弟竞争策略    0 引言    旅行商问题(Traveli
期刊
摘 要:在社会信息化程度不断提高的今天,软件开发者也在不断探索着新的软件开发方法,希望能使软件开发更加简单有效,在这种大前提下,敏捷开发应运而生。敏捷开发指的是一种面临迅速变化的需求去快速开发软件的方法。Rubyon Rails是一种解释型的方便快捷的面向对象脚本语言,利用Ruby语言和Rail相框的强大功能,可以使、Web开发更加轻松自如。在不久的将来,Rails技术会给我们的开发带来更多的进步
期刊
摘 要:介绍了利用VBA在Excel中编写“宏”,生成树状表格的方法。借助于该方法可以提高制作表格的效率。  关键词:VBA Excel;树状表格;控件;插入;合并    0 引言    在实际应用中,我们经常会用到形如图1(表式1和表式2)所示的表格形式。因为这种类型的表格可以被抽象为一种树状结构,所以也称为树状表格山。这种树状形式的表格应用范围很广,它可以是整个表格,也可以是表格中的某些部分(
期刊
摘要:针对无线Ad Hoc网络中三种典型的异步MAC层接入协议:MAcAw、FAMA-NTR和DBTMA,从协议的基本思想、算法描述、协议状态流程等方面进行了探讨。其研究成果可以为进一步探讨无线Ad hoc网络异步MAC层接入协议提供参考。  关键词:Ad Hoc;异步;接入协议;MAC层    0 引言     无线Ad Hoe网络是一种自组织的对等式网络,又称作多跳网络(Multi-hop N
期刊
摘要:结合某电信知识管理系统中权限管理模块的实际需求,对RABC模型进行扩展,设计了针对功能和数据的权限管理模型,使权限管理具有更高的灵活性和实用性。  关键词:基于角色的访问控制;功能权限;数据权限;知识管理    0 引言    为降低客户服务成本,提高运营效率,构建学习型组织,某电信知识管理系统的实现目标是建立信息规范、分类规整、知识流畅通的先进、统一、高效的企业级知识管理体系。此系统具有功
期刊
摘要:二维条码作为一种新的信息存储和传递技术,具有信息容量大、不依赖于数据库和计算机网络、可靠性高、保密防伪性强和易于制作等优点,在各个领域有着广泛的应用前景。文章简要介绍了二雏条码的基本概念及其分类,并以PDF417条码为倒介绍了二维条码的码图结构和编解码过程。最后介绍了二维条码在3G中的应用方案。  关键词:二维条码;PDF417; 手机二维条码;3G    0 引言    条码技术的发明给计
期刊
摘要:数字滤波是数字信号处理的重要环节。数字滤波器可分为FIR和IIR两大类。文章根据FIR滤波器的设计原理.详细介绍了MATLAB环境下FIR数字滤波器的设计方法和操作步骤,并列出了设计实例程序及运行结果。关键词:MATLAB;数字信号处理;数字滤波器;有限脉冲响应    0 引言    数字滤波是数字信号处理的重要环节,是由乘法器、加法器和单位延时器组成的一种运算过程,它对输入的离散信号进行运
期刊
摘要:介绍了虚拟校园漫游系统的设计与开发技术,包括:OpenGL绘图窗口的创建;实体建模;纹理设置和贴图;界面和树的实现;虚拟仿真——利用VC++6.0开发平台,编制程序实现虚拟校园的漫游。该系统可以用于校园三维漫游、校园管理、校园规划等领域。  关键词:虚拟现实;OpenGL;实体建模;虚拟校园    0 引言    虚拟校园作为虚拟技术的一个应用,需运用计算机图形学以及图像处理技术结合三维可视
期刊
摘要:介绍了一种基于C8051F的足球机器人系统的原理及其实现方法。该系统充分利用了C8051F接口丰富、运算速度快的特点,采用PWM方式,实现了对直流电动机的控制,从而使足球机器人小车系统的运动性能、控制精度和抗干扰性都得到了很大的提高。  关键词:足球机器人;C8051F单片机;PWM;无线通信;PID控制    0 引言    机器人足球比赛是继计算机象棋出现后的人工智能发展的第二个里程碑。
期刊