VDM-JML转换方法的研究及其在软件开发过程中的应用

来源 :华东师范大学 | 被引量 : 0次 | 上传用户:king4978
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在软件工程中,自然语言描述需求说明文档的做法应用广泛,典型的如使用UML建模工具。但是,自然语言的多义性、上下文有关性、非系统性等特点致使其在描述复杂系统时可能引起语法二义性和系统的不一致性。为了保证软件产品的可靠性,形式化方法应运而生。形式化方法采用形式规约语言精确地描述软件规约说明,建立精确的、无二义性的语义,以数学的精确性保证了系统结构的合理性、正确性和良好的可维护性。VDM是形式化的抽象模型方法中最具代表性的一种。它是一种功能构造性规格说明技术,它的核心元素是其标准化规范语言VDM-SL。数学的精确性使它能够有效地保证系统的设计和开发,因而广泛应用于工业界的形式化系统开发。JML是一种基于Java高级语言的形式的行为接口规范语言,它用来规范Java的模块的行为和具体设计。JML的思想来自于Eiffel语言的契约式设计思想。目前基于JML的验证、调试和测试等支撑工具已经比较成熟。本文分析了VDM-SL和JML这两种抽象层次不同的规范语言,提出了从VDM-SL语言到JML语言在常量、变量以及约束上的转换策略。针对VDM-SL语言语法子集的BNF范式提出了VDM-SL规范到JML约束的转换的设计方案,本文具体地分别描述了基本数据类型、集合操作、用户自定义类型、状态、类型约束、函数和运算等有意义的VDM结构到JML的映射机制。同时,文章给出了基于上述VDM-JML映射机制的工具JML-SL to JML的实现框架。它是一个基于Eclipse平台的插件,用来辅助用户把VDM约束按照已定义好的VDM-JML转换机制映射到相应的带有JML规范注释的Java程序。相应的Java的模块在后续的开发中由开发人员进行实现。程序验证方面,本文利用了JML的测试工具间接地验证了VDM-SL的规范。VDM-JML的转换的策略使得上层设计对下层开发的指导机制更加完善,因而构造了一个贯穿于整个软件生命周期的软件开发方法。通过需求、架构、设计、开发、测试等开发步骤的螺旋迭代,系统的软件原型得以逐步求精,从而使得软件的实现更加契合系统的设计思路。由此,VDM-JML的转换对于改善软件开发的流程、实现顺畅的软件生命周期具有相当重要的意义。
其他文献
当前我国的人工智能技术进入快速发展的阶段,其中音频和语音作为智能设备与外界和人类进行交互的重要接口而受到来自于政府、产业界与学术界的广泛关注。国务院提出了人工智能
非真实感绘制(Non-Photorealistic Rendering,NPR)从20世纪90年代中期开始逐渐成为计算机图形学的一个研究热点,是计算机技术和绘画艺术相结合的一个研究领域,指的是利用计算机
随着数字电视的快速发展以及一系列先进的音视频压缩标准的引入,基于多媒体技术的业务迅速走入人们的生活,如IPTV,网络电视等。因此,人们对音频和视频播放效果的关注程度也在
随着Internet和多媒体技术的飞速发展,实时传送视、音频媒体文件的技术成为了热点,同时用户也对视频传输和图像质量有了更高的要求。新一代的视频标准AVS即“数字音视频编解
近年来,随着群体智能[1][2]算法在数据处理分析问题上表现出来的巨大潜力,大批的研究人员投身于其中进行研究。但是这类的群体智能算法往往存在着调节参数过多,所得解不是最
根据锦州电厂动态成本核算与分析系统设计需求,结合发电企业内部信息系统工作协同以及业务集成度亟待改进的现状,本文研究了面向服务架构(SOA)在发电企业应用方案,提出了基于
传统的考试方式需要使用大量的人力物力来印刷、运输试题,效率低、费用高。随着互联网的蓬勃发展,利用计算机网络实现高效、低成本和形式多样的网络考试已成为现代教育的一种
计算密集、耗时长是现代天文数值模拟的主要特点。提高模拟计算的性能,减少计算资源的消耗,在精度和性能之间取得一个最佳的平衡点,一直是天文数值模拟软件设计的关键目标。同时
随着多媒体技术和网络技术的飞速发展和广泛应用,数字多媒体产品的存储、处理和传输变得越来越方便和快捷,多媒体的真实性认证和版权保护问题显得越来越重要。然而,因为多媒
传统的搜索引擎将网页和链接作为处理单位,对于用户的查询,按照网页与查询的重要程度排序返回给用户,但随着互联网中大量重复网页和作弊链接的存在,使得利用网页排序算法返回