论文摘要
为了克服自然语言和程序设计语言描述规格说明产生的缺陷,人们提出了一种新的软件开发范型,其基本思想是对系统建立一个数学模型,研究和提供一种基于数学的或形式语义学的规格说明语言,用这种语言严格的描述所开发的软件功能,并由自动程序设计的加工模型来得到可执行的代码。在软件开发系统开发过程中,系统需求分析和规格说明非常重要。该阶段形成的过程说明文档既是软件开发人员和用户之间的规约,又是软件开发的起点。本课题以Z规格说明的自动求精为目的,提出了用STL中的不同容器表示Z规格说明数据类型的思想。结合C++语言的模板、重载技术和STL模板库对数据结构和通用算法的强大支持功能,提供了相应的函数模板。以Z规格说明中的序列和包为研究对象,利用C++及STL技术设计了序列和包各种操作的求精规则(这里采用STL中的deque容器表示Z规格说明中的序列,map容器表示Z规格说明中的包),并产生目标程序,即把Z规格说明转换为C++代码。主要工作是设计了Z规格说明的自动扫描器、解释器,定义了Z规格说明中的关键字和符号表,给出了对应规则,实现了序列和包的自动求精;给出了Z规格说明的正确性验证方式,提供了错误处理的手段,并举例说明规格说明的写法以及实现。最后提供了程序的实验结果。Z规格说明可以贯穿软件开发的整个过程,而在软件开发过程中都会先应用于需求分析阶段,本课题讨论的也就是这个阶段。由于求精过程不采用手工操作,避免了人工的误操作或演算错误导致的求精前后不一致,保证了系统的一致性和完整性。加快了程序软件开发的自动化和智能化的进程。
论文目录
摘要Abstract1 绪论1.1 课题研究背景1.1.1 形式化方法1.1.2 Z规格说明1.2 国内外研究现状1.3 课题意义1.3.1 采用 Z规格说明的必要性1.3.2 自动求精的可行性分析2 Z规格说明的预处理2.1 扫描器2.1.1 字符表2.1.2 单词表2.1.3 公理描述2.1.4 对表达式的处理2.2 解释器2.2.1 解释器的设计思想2.2.2 解释器的实现过程3 自动求精3.1 求精的概念3.2 STL简介3.2.1 概述3.2.2 容器(containers)3.2.3 算法(algorithms)3.2.4 迭代器(iterators)3.2.5 其他组件3.3 求精的方法3.4 求精过程3.4.1 语法制导3.4.2 数据求精3.4.3 操作求精3.5 求精的难点分析4 序列和包的自动求精4.1 Z规格说明的数据结构4.2 数据的初步求精4.3 翻译过程和函数4.3.1 变量声明4.3.2 声明子程序4.3.3 子程序调用4.3.4 中间代码的生成4.3.5 代码的优化4.4 序列操作的求精4.5 包的操作求精4.6 程序执行结果5 错误处理5.1 Z规格说明的正确性验证5.1.1 Z规格说明的完整性5.1.2 Z规格说明的一致性5.1.3 Z规格说明类型检查5.2 中间文档的错误处理5.2.1 错误类型5.2.2 错误恢复5.2.3 错误定位6 实例6.1 序列的实例6.2 包的求精实例7 结论参考文献在学研究成果致谢
相关论文文献
标签:规格说明论文; 序列论文; 自动求精论文;