24小时论文定制热线

热门毕设:土木工程工程造价桥梁工程计算机javaasp机械机械手夹具单片机工厂供电采矿工程
您当前的位置:论文定制 > 毕业设计论文 >
快速导航
毕业论文定制
关于我们
我们是一家专业提供高质量代做毕业设计的网站。2002年成立至今为众多客户提供大量毕业设计、论文定制等服务,赢得众多客户好评,因为专注,所以专业。写作老师大部分由全国211/958等高校的博士及硕士生设计,执笔,目前已为5000余位客户解决了论文写作的难题。 秉承以用户为中心,为用户创造价值的理念,我站拥有无缝对接的售后服务体系,代做毕业设计完成后有专业的老师进行一对一修改与完善,对有答辩需求的同学进行一对一的辅导,为你顺利毕业保驾护航
代做毕业设计
常见问题

基于Object-Z的业务逻辑Java代码自动生成器设计与实现

添加时间:2021/11/20 来源:未知 作者:乐枫
研究人员尝试引入各种方法到软件开发和自动化技术中,包括面向对象方法、结构化方法、原型方法等。其中Object-Z语言作为面向对象的形式化描述方法,可以通过构造操作组件和状态封装来支持对大型软件开发系统的语法以及语义的描述。
以下为本篇论文正文:

  摘要

  如今软件开发在互联网时代被广范使用,其应用场景日益丰富多样,其规模和复杂度也随着日益增长,以致软件开发的效率和质量出现了瓶颈,甚至引发了"软件危机"问题。为了解决。上述问题,研究人员尝试引入各种方法到软件开发和自动化技术中,包括面向对象方法、结构化方法、原型方法等。其中Object-Z语言作为面向对象的形式化描述方法,可以通过构造操作组件和状态封装来支持对大型软件开发系统的语法以及语义的描述。

  但是目前对Object-Z语言的研究成果十分有限,研究人员只是用Object-Z语言描述简单场景的语义,生成C、Java、 Python 等编程语言,鲜有应用于大型软件系统开发和自动化生成工作中的典型案例,尤其是对于具有语义信息的软件业务逻辑的自动化生成而言,在理论和工程实践中都缺乏可供参考的实际指导性研究。

  因此本文首先提出了基于Object-Z语言的SSM框架中通用业务逻辑语义的形式化描述方法,其中包括数学运算、逻辑运算、判断语句、循环语句等。其次,设计并实现了描述文件的解析器,以验证语义描述文件的正确性以及语义描述的完整性。第三,设计了业务逻辑Java代码自动生成系统,提出了从基于Object-Z语言的通用业务逻辑语义描述文件到SSM ( Spring+SpringMVC+MyBatis)框架中业务层实现函数的映射规则,实现了对应的SSM框架中典型业务的Java代码自动生成,并进行了测试和验证工作。测试结果表明,由实现的生成器可以完整、准确地自动生成目标Java 代码。本文的研究成果在理论上提升了业务逻辑的语义描述能力,提升了代码生成的自动化程度,有效减少人工的重复性劳动强度,提高了软件开发效率。

  关键词:Object-Z 语言Java 代码自动化生成软件开发

  ABSTRACT

  Nowadays, software development is widely used in the Internet era,  and its application scenarios are becoming increasingly rich and varied, as  well as its scale and complexity are also increasing. As a result, the  efficiency and quality of software development has become a bottleneck,  and even causes the problem of "software crisis". In order to solve the  above problems, researchers try to introduce various methods into software  development and automation technology, including object-oriented  method, structured method, prototype method and so on. ObjectZ  languagc, as an object-oriented formal description method, can support the  description of syntax and semantics of large-scale software development  system by constructing operation components and state encapsulation.

  But, the research of Object-Z language is very limited, the researchers  just use simple language to describe the scene Object-Z semanties, generate  programming languages such as C, Java, Python, rarely applied in large  software system development and typical cases in the work of the  automatic generation, especially for automatic generation sofware  business logic with semantic information, lack of reference in theory and  engineering practice of actual instruetional research.

  Therefore, this thesis first proposes a formal description method of  general business logic semantics in the SSM(Spring + Spring MVC +  Mybatis) framework based on the Object-Z language, including  mathematical operations, logical operations, judgment statements, and  circular statements, etc. Second, the parser of description files are designed  and implemented to verify the correctness of semantic description files and  the completeness of semantic descriptions. Third, the automatic generation  system of business logic Java code is designed, and the mapping rules from  the semantic description file of general business logic based on the Object-  Z language to the implementation function of business layer in SSM  ftamework are put forward, and the automatic generation of typical  business Java code in the corresponding SSM framework is implemented, and the testing and verification work are carried out. The test results show  that the implemented generator can automatically generate the target Java  code completely and accurately. The research results of this thesis  theoretically improve the semantic description capability of business logic,  enbance the degree of automation of codegeneration, effectively reduce  manual repetitive labor intensity, and improve the efficiency of softwaredevelopment.

  KEY WORDS Object-Z Language Java Code Automatic GenerationSoftware Development

Java代码自动生成器

  目录

  第一章绪论

  1.1研究背景及意义

  伴随着计算机技术和互联网的迅速发展,软件开发被人们应用到生产生活的各个场景中,来处理各种问题,发挥着不可替代的作用。软件开发会在社会生产活动中扮演任劳任怨的"工人",24小时地服务于生产工作,从而提高人们在生产劳动的工作效率,解放一定的劳动力, 并提高社会生产力。软件开发也会在人们的生活中丰富大众娛乐活动方式扩展大众获取外界信息和与他人实时联系的渠道叫。因此在21世纪计算机技术发展的浪潮中,软件开发的发展与研究仍具有非常重要的意义。同时,软件开发被人们不断地应用到更加复杂场景处理更加困难难题的过程中,软件开发技术的规模和复杂度在不断提高,但其效率在不时下降。失误率也不时上开。软件开发技术的发展与进步-直受到瓶颈的约束,产生了被大众逐渐熟知的"软件危机",即如何在提高软件开发复杂度前提下提高软件开发的效率和可靠性,网时又保证其软件质量。这也越来越成为软件工程领域的一个核心问题中。

  为了解决上述软件开发存在的问题,研究人员提出-系列方法提高软件开发的效率和质量,其中包括面向对象方法、结构化方法。鳳型方法等。在经历多年发展,其中作为面向对象方法,UMLP (Unifed Modeling Language, 统一建模语言)类图因其简单、统一的特点,而且能表达软件开发中动态和静态消息,已逐渐成为软件工程领域的标准建模语言回。虽然面向对象、可视化建模、强大的表达能力等优点使UML建模被广泛应用到软件开发中,但是UML建模也存在固有的弊端,比如无法从语法上建立状态图与顺序图的关系问。无法从语法上建立活动图与顺序图在流程描述中的关系,协作图和顺序图中与消息相伴的参数不。

  能与类图建立关系等。此外,UML是一-种半正式语言四,其语法部分采用正式规范,语义部分采用非正式规范,因此UML建模容易在不同的开发人员之间产生二义性m,从面衍生如增加开发成本等其他问题。

  为了解决UML建模存在的问题,研究人员引入具有严格数理理论的形式化方法。形式化方法凭借自身数理理论能简祜、准确地描述软件开发中系统的类、属性、状态和操作等,因而能准确无误地描述软件开发的概念、本质和证明规范,能够在不同的软件开发活动之间平滑过度,并且能在软件开发前需求说明阶段能够通过自身推理发现与需求说明不--致的问题。因此研究人员结合形式化方法和UML建模,有效解决UML描述语义的模糊性和不一-致性。 随着大量软件开发经验的积累,结合UML软件建模和形式化方法已经成为软件开发领域中至关重要的技术。其中Z问语言就是是一门发展较为成熟、应用较为广泛的形式化描述语言,用来UML软件建模间。目前研究人员已使用Z语言擂述UML系列图响、UML CASE图1.文献[10]用形 式化语言Z定义UML序列图的严格语义,井给出抽象句法、合式规则以及应满足的一致性約束。文献[12] 将可视化建模语盲UML和形式化方法z集成而得到一种新的求精方法来寻求出一种在软件体系结构求精过程中UML到Z映射与转换机制,该文献研究结果说明:UML与Z结合可以得到一种新的求精方法,这种求精方法不仅能够在一定程度 上提高软件的一致性和可靠性,而且可以在实际应用中推广使用。

  同样作为形式化描述语言,Ojct-2IW 语言是Z语言面向对象的拓展4.Z语言本身就是形式化规范语言凹,因引入严格的数学理论和推理,能够发现与规则不一致的错误,井解决使其符合软件开发的功能要求心。虽然Z语言具有简单、易组合和实用的优点,但是它不是而向对象描述语法和语义的,存在一些不可忽视的问题,比如对大型软件开发系统描述能力不够,对于影响某- -状志模式的所有操作模式的识别能力有限等。面Object-Z 语言通过构遗操作组建和状态封装来支持对大型软件开发系统语法以及语义的措述叨。

  1.2研究现状

  形式化方法通过引用严格的数学模型和符号系统简单、明确地描述和验证软件系统开发当中的需求设计、系统规范、软件系统结构设计等特性。形式化方法自十九世纪四十年代起,计算机科学家们大力推展形式化方法的发展和完善,至今已有十二位学者因研究形式化方法的成果获得图灵奖。形式化方法可以分为五类叫:一是基于模型的方法呵,如Z、VDM2 (Vienna Development Method,维也纳开发方法)。该方法描述了软件开发的状态和状态操作等,但是不能描述并发状态;二是代数方法,如CLEAR语言、OBJ语言。该方法通过不同状态操作的关联关系形式化描述操作语义,但不描述软件开发的状态:三是过程代数方法,如ccs ( Caleulus of Communicate on Systems, 通信系统演算)。CSP(Communication SequentialProcess通信顺序过程)。该该类方法对并发操作显示建模,通过操作间可允许观察的通讯。上的限制(约束)来表示行为;四是基于逻辑方法,如时志逻辑。该类方法通过逻辑描述软件系统开发的特性:五是基于网络的方法。如Petri网、谓词变换网。该类方法根据网络中的数据流显式地给出系统的并发模型。

  目前国内外形式化方法的主要研究内容主要有两个方面: -是基于形式语言和形式语义学的形式化描述方法。通过引用具有严格逻辑的形式语言和精确的形式语义学,形式化描述方法可以简单、准确地描述软件系统开发中业务功能语义,这是在软件开发中使用形式化方法是否规范的依据。上述的基于模型的形式化方法和基于代数即属于形式化描述方法。另一研究内容是基于形式化描述方法的形式化验证方法。该方法与形式化指述方法密切关联。它就是来验证目前已有的软件系统是否符合形式描述语言描述的规范以及满足软件系统设计需求等。传统的形式化验证方法就是测试和验证,通过实际实验的方法对系统方法检查错误。目前国内外研究人员仍旧使用形式化方法描述和验证软件系统开发。参考文献[21]

  基于形式化语言z描述互联网登录系统的主要操作模式,并通过形式化验证方法确认互联网登录系统是否已满足用户主要需求。参考文献([2]基于形式化语言VMD来优化预报船舶运动姿态学习机。实验结果表明基于VDM和APSO(Adapation Parti cle Swarm Optimization,自适应粒子群优化算法)组合的预测模型具有更高的准确度。参考文献[23]说明了形式化方法在列车运行控制系统的应用。为了能说明列车运行控制系统中四种与系统安全相关特性(实时性、混成性、分布性、反应性),该文献采用了这四种特性相关的形式化方法,其实验结果表明形式化方法在措述系统具有一定的优势和不足。

  Obiect-Z作为- -种面向对 象的形式化语言,它继承了Z语言优良的规范模式又凭借面向对象的特性更加适合描述大型软件系统开发中业务功能语义,不过目前Object-Z 语言的研究与应用只活跃在社区范围内,其国内外的研究成果十分有限。参考文献[1]为Oyject-Z中的核心建模概念提供了精确的描述性语义,并为UML类构造提供了形式化描述。在给出正式描述的情况下,它还在元级别提供了两种语言之间的正式语文映射,这使Object Z语言与UML两者之间的翻译更加系统化。UML模型的任何验证都可以使用为Object-Z提供的推理技术在其对应的ObjctZ规范上进行。通过这种方法,该文献不仅为UML提供了精确的语义基础,而且为推理UML模型提供了可靠的机制。参考文献[13]介绍了使用面向对象的正式规范语言Object-Z 精确描述软件或系统的技术。该文献还介绍了许多不同的案例研究,以说明面向对象的形式规范的技术和语言,并说明形式规范在形式验证和实现中的关键作用。参考文献[24]是国外较新有关Objet-:Z 研究的发表论文,该论文主要是阐述ObjectZ语言的语法规则以及对应Python代码的映射规则。参考文献[1]是国内较新的有关ObjetZ语言研究成果。该文献说明了Objea-Z语言的语法规则和使用方法,然后基于Objec-Z语言描述了软件开发系统中的业务功能语义,该文以银行系统信用卡功能为案例说明,最后设计Objct-Z语言到Python语言的映射规则,实现基于Objc-Z语言的Python代码自动化生成。该文献为本文提供了设计思路,帮助指导本文如何用Object-Z语言描述和验证大型系统业务功能语义,以及如何映射成如C. Java、 Python 等编程语言,最终实现目标代码自动化生成技术。

  代码自动化生成就是根据用户对软件系统开发任务霜求建立的模型而自动生成目标端程代码哟。代码自动化生成的工作流程是用户根据软件开发的任务需求建模,代码自动生成应用或者工具会根据内部规定好的映射规则,自动从输入模型中提取所需参数井自动生成目标代码叫。自二十世紀诞生起,代码自动化生成技术受到了软件开发人员和计算机学者们的追捧而得意迅速发展,到目前该技术已经成熟和完善,已有较多的研究成果被公开发表。代码自动化生成技术可以分为五类:基于模型生成、基于模版生成、基于对象关系映射生成、基于文档注释生成以及动态代理技术,其中最为常见的技术当属基于模型设计和基于模版设计。参考文献(27提出了基于UML2x版本序列图的代码自动化生成技术,通过UML2.x版本序列图中XML元数据相互交互表示方法,该文献构建-个序列整合圈的模型,来封装代码自动生成相关信息,最后实验表明该文献提出的代码生成技术可以生成控制器类代码文件的48%代码行。参考文献[28]介绍了基于使用规则和框架知识表示技术(ECG-RF) 的专家代码生成器开发。其中,该文献介绍的ECG-RF系统是一-种无源代码生成器。可以在固定结构的软件中执行自动代码生成的任务。为了开发ECG-RF系统,将基于規则的系统的人工智能(AI)和框架知识表示技术应用于代码生成任务。ECG-RF使用从ECG-RF知识库中检索到的代码块填充某个固定结构程序的预定义框架。填充操作由ECG-RF的推理引擎完成,并通过图形用户界面(GUI) 从用户收集的信息中进行指导。最终实验结果表明ECG-RF设计概念是合理可靠的。参考文献[29]提出基于UML活动團以及活动图与序列图之间的关联关系设计自动生成类定义、方法定义、控制流的算法,解决了统-一建模语言(UML)模型因模型没有某些实现细节、单个UMI模型不足以完成完整代码生成。或者某些模型元素可能无法直按转换为源代码等原因而无法全自动翻译成完整源代码的问题。

  对于现阶段的研究状况而言,0Object-Z 语言作为面向对象的形式化语言,能够描述业务功能语义的内容过于单一且无实用价值。而且研究人员只是将基于Objec-Z语言描述语义文件映射成编程语言代码,而不是映射成具有较高使用价值的SSM (Spring、SpringMVC. Mybatis) 框架各层代码。代码自动化生成技术虽已成熟,但目前生成的目标代码大多是框架代码,更加无法根据基于Object-Z语言描述语义文件来自动生成SSM框架各层代码。针对以上研究现状的不足,本文将设计与实现基于Objc-Z语言的业务逻辑Java 代码自动生成器。它能够基于Objct-Z这- 面向对象的形式化语言,形式化描述和验证SSM框架项目中业务层实现函数的功能语义,同时能够根据输入的描述语义文件自动生成描述该业务功能语义的语法树。通过对可视化语法树的检查和验证,再实时修改描述语义文件,已确保输入文件不存在语法错误问题和语文遗漏问题。本文也将基于ANTLR工具设计一种基于Objct-Z语言描述语义文件到业务层实现函数Java代码的映射规则,并设计出可由Objec-Z语言文件自动生成SSM框架业务层实现函数Java代码的自动化生成技术。

  1.3研究内容

  1.3.1研究内容

  根据上节介绍的形式化方法。ObjeclZ语言以及代码自动化生成技术的研究现状,本文将设计与实现基于Ofject-Z这-"形式化描述语言的通用业务逻辑Java代码自动生成器。本文的研究内容主要分为四部分:第一部分 是基于Objct-Z语言的通用业务功能语义形式化描述方法:第二部分是从基于Object-Z 语言的通用业务逻辑语义描述文件到SSM框架中Service 层业务实现函数Java代码的映射规则:第三部分是基于Objct-Z 语言的通用业务逻辑Java 代码自动生成器的设计与实现:第四部分是业务逻辑Java代码自动生成器的测试与验证。下面将概括性说明这四部分主要研究内容:

  (1)基于Objec.Z语言的通用业务功能语文形式化描述方法

  ObjectZ语言作为Z语言面向对象的扩展,继承了Z语育的规范和优点,并凭借面向对象的特性,来通过对类的操作修改对象状态。但是目前对Object-Z语言的研究成果十分有限,只是简单利用OjectZ语盲形式化描述简单场景语义并转换成C. Java. Python 等端程语言,无法使用于大型复杂的软件系统开发。

  本文提出基于Object-Z 语言形式化描述和验证SSM框架中Service 层通用业务功能语义。其研究内容主要分为两块:

  a)基于Object-Z语言对通用业务中语法内容的描述该部分描述的通用业务中语法内容包括通用业务中的对象、方法、状态、属性等。基于Objet-Z 语言,本文以class和genclass两个语法单元描述业务逻辑中对象,其中这两个语法单元都可以嵌入ObjectZ语言其他的语法单元和init.

  state等模块,来描述业务逻辑中对象的状态、成员变量、初始化条件等。class 和genclass两者语法单元可以在底部直接形式化描述某系统通用业务功能语义,或者通过嵌入op语法单元形式化描述。

  b)基于Objct-Z语音对通用业务中功能语义的描述该部分描述的通用业务中语文内容主要包括数学运算、集合运算,逻辑运算。

  判断语句、循环语句等。基于Objct-Z语言,本文将排列组合各个已描述好业务对象、方法。状态、属性的语法单元和模块,以此能完整地描述通用业务功能语义。

  (2)从基于ObjectZ语言的通用业务逻辑语义擂述

  文件到SSM框架中Service层业务实现函数Java代码的映射规则作为面向对象的形式化语言,Object-Z 没有普及到大型软件系统代码开发工作的原因在于,目前没有标准的规范定义描述业务功能语义的Objct-Z 语言文件到SSM框架中业务函数Java代码的映射规则。为了设计与实现基于Objct-Z语言的业务逻辑Java 代码自动生成器,本文设计了Object-Z 语言到SSM框架中Service层业务实现函数Java 代码的映射规则。其中包括: Objcct-Z 语言clas/geclass语法单元被映射成业务实现函数,该单元中state模块内容披映射成业务实现函数中成员变量的声明与定义, init 语法单元内容被映射成业务实现函数中成员变量的初始化操作,op语法单元内容被映射成业务实现函数中实现后台业务功能的方法。

  (3)基于Objct-Z语言的通用业务逻辑Java代码自动生成器的设计与实现

  在有上述两个理论依据作为支撑后,本文将设计与实现语法树自动生成系统和通用业务逻辑Java代码自动生成系统,并组合成通用业务逻辑Java代码自动生成器。其中,本文设计的语法树自动生成系统包含三个功能模块:系統检查功能模块、系统分析功能模块、系统生成功能模块,分别负责检查输入文件语法的正确性和语义的完整性。分析输入文件描述通用的业务对象和业务功能语义、根据分析结果自动生成可视化的语法树。语法树自动生成系统的输入文件也是业务逻辑Java代码自动生成系统的输入文件,后者会依据本文设计并定义好的映射规则,自动生成目标Java代码。

  (4)业务逻辑Java代码自动生成器的测试与验证在设计与实现

  完业务逻辑Java 代码自动生成器后,本文将基于Object-Z语言编写描述虚拟网项目的增添虚拟网功能语义和删除虚拟网功能语义的输入文件,输入到语法树自动生成系统和业务逻辑Java代码自动生成系统中,观察生成语法树是否能完整描述业务功能语义,再观察生成的业务逻辑Java代码是否为目标代码。以测试和验证业务逻辑Java代码自动生成器。

  1.3.2关键技术

  本文的研究目标就是利用bjec-Z语言这一- 较成熟的形式化描述语言,对通用业务逻辑语义进行描述,使得开发人员在不接触SSM框架、Java 编程语言的情况下,简捷、高效地对SSM框架业务层实现函数逻辑语义进行操作,以便提高软件开发的速度和效率。通过基于Object-Z 语言对通用业务逻辑语义的措述,业务逻辑Java代码自动生成器自动生成通用业务实现函数Java代码,其中包括实现函数继承父类关系。实现函数输入变量和返回值类型、实现函数中私有变量和公共变量的申明和赋值、实现函数中数学运算、逻辑运算和判读表达式等。开发人员可以直接使用或者修改自动化生成的实现函數Java代码,作为SSM框架业务层实现函数,满足软件开发的需求。因此软件开发人员不需要再花费大量的时间、精力投入到SSM框架实现函数的学习和开发,只需要基于已经定义好的映射规则和Object-Z语言,简介准确地描述通用业务逻辑语义,然后输入到业务還辑Java代码自动生成器中,得到生成的SSM框架业务层实现函数Java代码。

  本文最终给用户提供的是可以直接使用或者修改的SSM框架业务层实现函数Java代码,以便直接提供给软件开发或者进行后续开发。开发者也可以在本课题项目。上继续研究开发,依照本课题提出的代码自动化方法继续扩展描述通用业务逻辑语义的内容和其映射到SSM框架业务层实现函数代码的映射规则,并完成实现函数Java代码的自动化生成。本课题拟提出的关键技术有:

  (1)基于Object-Z语言的通用业务逻辑语义的形式化描述

  通过对通用业务逻辑语义抽象,基于Oljc-Z语言设计和定义各个模块形式化描述通用业务逻辑语文中的类、方法、状态、操作等。用户根据自己的需求,可以直接调用已定好的Objec-Z语言模块,也可以修改或者重新定文已有的0ObjectZ语言模块来弥补描述逻辑语义信息的缺陷,之后组合排列各个模块来描述通用业务逻辑语义。形式化方法为通用业务相关功能的抽象表达提供了一种规范,要求能够根据该规范精准、简短的表达常用的数据功能。应该具有语义一-致性。既描述语句具有确定的意义,不能具有二义性,不能产生矛盾。

  (2)通用业务逻辑语义到SSM框架业务层实现

  函数代码的映射规则本课题可以对通用业务逻辑语义形式化描述,但是生成目标输出SSM框架业务层实现函数Java代码需要依赖于通用业务功能语义描述到SSM框架业务层实现函数Java代码的映射规则。本课题已对通用业务逻辑进行抽象化描述,井基于BNP范式定义其映射到SSM框架业务层实现函數Java代码的映射规则。

  开发人员可以直接调用本课题定义的映射规则,完成部分通用业务逻辑函数代码到自动化生成。同时,开发入员可以根据自身开发需求,直接修改或者重新定义已有的映射规则,弥补现有映射规则描述的缺陷
  (3)业务逻辑实现函数Java代码自动化生成技术
  以Objec-Z语言描述语义文件作为业务逻辑实现函数Java自动生成器的输入,利用Otjectz语音编辑器检查寓意描述文件的语法规范等生成语法树,并在现有工具等基础上生成带有逻辑语义的SSM框架业务层实现函数Java代码。

  1.4研究生期间工作

  在近三年的研究生期间,本人学习了计算机技术相关基础课程,选修了團论、Java语言等课程,自学形式语言与自动机、形式化语育、UML等知识,并积极参与了实验室承接的开发项目,主要工作包括:

  (1)基于SSM框架的虛拟网业务編排系统的后台业务功能开发

  虚损网不同于传统物理网络,其网络规模可以动态伸缩,并支持网络功能的按需配置和定制。虚报网络管理模型由虛拟网络、传统网絡运维E理和成拟网的扩展管理城三个部分组成。实验室承接对基础设施和网络功能的管理任务。在虛拟网项目中,本人承担了虚拟网项目后台业务功能开发任务,与前端开发人员联调满足项目设计需求,与负责后台底层物理设备人员联调,将后台虚拟网功部署到底层交换机组成的物理网络中,实现对虛拟网网络创建和管理功能。经过一年多的项目开发历程中,本人熟练掌握SSM概架的使用和研究,积累了不少的项目开发经验,并提高了编程能力

  (2)从Objcct-Z语言到业务逻辑Java代码的生成器设计与实现

  为了能形式化描述虚拟网项目后台业务应用功能,本人翻阋大量资料查询形式化描述大型软件系统开发业务功能语义的方法,了解到如VDM、B. Z等形式化描述语盲。通过研究资料对比,本人选择Object-Z语官作为描述和验证虚拟网后台业务功能语义的形式化语言。在此过程中,我还用形式化方法和z. Objct-Z形式化语言描述并验证了虚拟网项目UML类图和序列图中的语义信息。因此。

  本人在本文研究开始之前,已经阅读大量文献和Object-Z 语言的书籍,熟悉Objec-Z语言的语法规则和使用规则,也从Objcct-Z语言社区中获得Object-Z 语言编辑器和其他工具,因此较为熟练地编辑Object-Z语言文件,井能生成可视化语法树。不过社区提供的编辑器并不适用于編写描述SSM框架后台业务功能语义的Objct-Z语言文件,甚至不能生成可视化语法树。因此后面本文设计实现了语法树自动生成器,来弥补Object-Z语音编辑器的缺失。

  1.5论文组织结构

  本文总共分为七章,各章节的具体内容组织如下:

  第一章,绪论,首先介绍了本文的研究背景及意义,分析了当前形式化描述语言,包括Objec-Z语言以及代码自动生成技术的研究现状。并对本课题的研究内容作了整体性阐述,最后介绍本人在研究生期间的工作内容。

  第二章,背景知识与相关技术,这一章主要介绍 了本文研究中涉及到的相关方法、技术以及本文设计与测试过程中涉及的框架方法,其中包括UML、形式化方法、Objct-Z 语言、SSM榧架和代码自动化生成技术,并在该章各个小节里较详细介绍了上述方法、技术以及bject-Z谱言的概念、组成部分、研究内容、发展状况等。

  第三章。基于Object-.Z 语盲通用业务功能语义形式化描述方法。本章将Objec-Z语言的通用业务功能语义形式化描述方法的工作步骤分为两步,第-步是基于Objct-Z语言语法单元形式化描述通用业务的语法内容,包括通用业务中对象、方法,属性等。第二步是排列组合上述描述的语法单元,来形式化描述通用业务功能语义。本章最后以俄罗斯方块游戏为案例进行说明。

  第四章,业务逻辑Java代码自动生成器映射规则定义。结合第三章对bject-Z语言语法分析内容,本章先对目标文件分析,提取业务逻辑Java代码自动生成过程的所需映射参数,然后介绍Objcct-Z 语言语法分析树到业务逻辑Java代码的映射过程,再以简单句法制导翻译式五元组形式化推导和定义映射规则,最后基于BNF范式定义从Object-Z语言语法分析树映射到业务逻辑Java 代码的映射规则。即业务逻辑Java代码自动生成器映射过程中依赖的映射规则。

  第五章,业务逻辑Java代码自动生成器的设计与实现。本章是基于第三章和第四章提出的理论,利用ANTLR工具设计与实现业务逻辑Java代码自动生成器。首先。本章以第三章提出的理论为依据,设计与实现了代码自动生成器中语法树自动生成模块,该模块可以检查基于Objct-Z 语盲描述语义的输入文件,确认输入文件不存在语法错误以及语义描述不完善等问题。然后基于第四章提出的映射规则,设计与实现了代码自动生成器中代码自动生成模块,该模块将无误的输入文件自动转换成业务逻辑Java代码。通过语法树自动生成模块与代码自动生成模块的组合,本章完成对业务逻辑Java代码自动生成器的设计与实现。

  第六章,业务逻辑Java代码自动生成器的测试与验证。本章将在业务逻辑Java代码自动生成器上端写描述虚拟网项目后台业务中添加虚报网功能语文和删除虚拟网功能语义的输入文件,然后输入到代码自动生成器中,观察生成的可视化语法树是否存在语法错误、语义未被完整准确地描述等问题,再观察生成的业务逻辑Java代码是否为目标代码,经过上述步骤本章完成测试与验证。

  第七章,总结与展望。本章对以上几章研究内容和工程开发进行总结和展望,.

  并且指出了本文设计的业务逻辑Java代码自动生成器存在的不足之处和后续进一步改善的地方。

  第二章背景知识与相关技术

  2.1 UML简介

  2.1.1 UML概述

  2.1.2 UML基本组成

  2.1.3 UML缺陷

  2.2形式化方法介绍

  2.2.1形式化方法的基本概念

  2.2.2形式化的规范方法分类和验证方法

  2.2.3形式化方法的问题和发展

  2.3 ObjctZ语盲

  2.3.1 Z语言

  2.3.2面向对象的z语盲

  2.3.3 Z语言与Object-Z语言的比较

  2.4 SSM框架

  2.4.1 Spring框架

  2.4.2 Spring MVC框架

  2.4.3 Mybatis框架

  2.4.4 SSM框架的开发流程

  2.5代码自动化生成技术

  2.6本章总结

  第三章基于Object-Z的通用业务功能语义形式化描述方法

  3.1基于Object-Z语言对通用业务语法描述

  3.1.1基于Objct-Z语言对通用业务对象描述

  3.1.2基于Objc-Z语言对通用业务方法描述

  3.1.3基于Ofjct-Z语言对通用业务类初始化描述

  3.2基于ObjectZ语言对通用业务功能语义的描述

  3.2.1基于数学模型和符号系统描述通用业务语义

  3.2.2基于排列组合语法单元描述通用业务功能语义

  33案例说明

  3.4本章总结

  第四章业务逻辑Java代码自动生成器映射规则的定义

  4.1目标文件分析

  4.1.1 Service层业务实现函数的關定格式

  4.1.2 Service层业务实现函数的通用逻辑

  4.2 ObjectZ语言语法分析树到业务逻辑Java代码的映射过程

  4.3映射规则形式化定义

  4.4映射规则BNF范式定义

  4.4.1基于BNF范式定义输入模型

  4.4.2基于BNF范式定义输出模型

  4.4.3输入模型到输出模型的映射规则的BNF范式定义

  4.5本章总结

  第五章业务逻辑Java代码自动生成器的设计与实现

  5.1 输入文件分析

  5.2 ObjectZ语法解析模块的设计与实现

  5.3 业务逻辑Java代码生成模块的设计与实现

  5.3.1通用业务中函数的映射输出

  53.2通用业务中方法的映射输出

  5.3.3通用业务中变量的映射输出

  5.3.4通用业务中变量初始化条件的映射输出

  5.3.5通用业务中基础语义的映射

  5.4本章总结

  第六章业务逻辑Java代码自动生成器的测试与验证

  6.1基于Objct-Z语言编写描述语义文件

  6.2语法树自动生成系统的测试与验证

  6.3业务逻辑Java代码自动生成系统的测试与验证

  6.4业务逻辑Java代码自动生成器性能测试

  6.5本章总结

  第七章总结及展望

  7.1本文工作总结

  本文设计并实现了基于Objec-Z形式化描述语言的SSM框架中业务逻辑Java代码自动生成器。其中,本文研究Object-Z语言的语法规则,结合所需生成的SSM框架通用业务功能语义。设计和编写了Objca_Z语言的各个语法单元模板,通过排列组合的方式形式化描述SSM框架中通用业务功能语义,以此完成描述语义语法树自动生成系统。本文再根据生成的描述语义语法树,结合所需生成的SSM框架通用业务逻辑Java代码,设计和实现了SSM框架通用业务逻辑Java代码自动生成系统。使用人员可以根据自身业务需求,基子Objc-Z语言编写描述SSM框架中通用业务功能语义文件,也可以直接使用或者修改本文提出的对SSM框架中通用业务语义描述的语法单元模板,然后在语法树自动生成系统上编译生成语法树文件,业务逻辑Java代码自动生成器会编译语法树文件自动生成业务逻辑Java代码。使用人员将无需花费大量时间成本编写通用业务逻辑Java代码,只需编写简易的Oject-Z语言文件,通过业务逻辑Java代码自动生成器直接获得所需的业务逻辑Java代码。本文的主要内容如下:

  (1)提出基于Object-Z语言对通用业务逻辑语义的描述

  基于Object-Z 这- -面向对象的形式化描述语言,本文根据通用业务需求设计了Object-Z语言中各个语法单元模版,来形式化描述通用业务的类、方法、成员变量等,再组合排列已定义好的Object-Z语言语法单元,来形式化描述ssM框架中通用业务功能语义。

  (2)设计了形式化描述语义文件到SSM框架通用业务逻辑

  Java代码的映射规则基于BNF范式,本文定义描述语义语法树作为输入模型,定义目标SSM框架通用业务逻辑Java代码作为输出模型,井设计和实现了形式化描述语义语法树文件映射成SSM框架通用业务逻辑Java代码的映射规则(3)设计和实现SSM框架通用业务逻辑Java代码自动生成器本文设计了描述语义语法树自动生成系统和SSM框架通用业务逻辑Java代码自动生成系统,并组合成通用业务逻辑Java代码自动生成器。使用人员只需编写基于Objc-Z语言形式化描述语义文件,利用本文提出的通用业务逻辑Java代码自动生成器,直接得到SSM框架中通用业务逻辑Java代码。本文提出的Object-Z语言语法单元模板形式化描述了虚报网项目SSM框架中某些业务功能语义,再输入到SSM框架通用业务逻辑Java代码自动生成器中,最终获取到目语义,再输入到ssm框架通用业务逻辑框架通用业务逻辑代码自动生成器中,最终获取到目 标Java代码,完成对SSM框架通用业务逻辑Java代码自动生成器的验证标Java代码,完成对SSM框架通用业务逻辑Java代码自动生成器的验证。

  本文创新点主要包括两点:

  (1)基于0Objec-Z语言的SSM框架通用业务功能语义的形式化描述

  基于0 Objec-Z语言的ssm框架通用业务功能语义的形式化描述目前对于Obiect-Z 语言这一形式化描述语言的研究成果十分有限,已发表目前对于Obiect-Z 语言这一形式化描述语言的研究成果十分有限,已发表 的成果也只是使用Objec-Z语言形式化描述简单功能语义。本文提出基于Object的成果也只是使用objec-Z语言形式化描述简单功能语义。本文提出基于对象 Z语言形式话描迷SSM框架中通用业务功能语义,将扩大Objcct-Z这一面向对Z语言形式话描迷ssm框架中通用业务功能语义,将扩大Objcct-Z这一面向对 象的形式化语言的使用范围。开发人员后续可以直接使用或者修改本文提出的语象的形式化语言的使用范围。开发人员后续可以直接使用或者修改本文提出的语 法单元模板,通过排列组合语法单元的方式来形式化擂述SSM框架中通用业务法单元模板,通过排列组合语法单元的方式来形式化擂述ssm框架中通用业务 功能语义功能语义。

  (2)通用业务功能语义描述到SSM框架中业务层实现函数Java代码的映射

  (通用业务功能语义描述到ssm框架中业务层实现函数框架中业务层实现函数代码的映射 规则规则 目前研究现状是设计和定义Object-Z语言到C. Java、 Python等编程语言的目前研究现状是设计和定义Object-Z语言到C. Java、 Python等编程语言的 映射规则,实现编程代码的非自动化生成。现有研究工作定文的映射规则是无法映射规则,实现编程代码的非自动化生成。现有研究工作定文的映射规则是无法 满足通用业务逻辑语义描述到SSM框架业务层实现函数代码自动化生成的需求。

  满足通用业务逻辑语义描述到ssm框架业务层实现函数代码自动化生成的需求。 因此本课题在现有研究内容基础上,拟设计和定义通用业务逻辑语义到SSM框因此本课题在现有研究内容基础上,拟设计和定义通用业务逻辑语义到ssm框 架业务层实现函数代码的映射规则,结合现有工具完成SSM框架业务层实现函架业务层实现函数代码的映射规则,结合现有工具完成ssm框架业务层实现函 数代码的自动化生成。本课题设计和定义的规则,将会帮助Object-Z语言描述更数代码的自动化生成。本课题设计和定义的规则,将会帮助Object-Z语言描述更 加复杂业务逻辑语义,井且会自动化生成SSM框架业务层实现函数代码。本课加复杂业务逻辑语义,井且会自动化生成ssm框架业务层实现函数代码。本课 题对通用业务业务逻辑语义到SSM框架业务层实现函数代码映射规则的研究也题对通用业务业务逻辑语义到ssm框架业务层实现函数代码映射规则的研究也 会帮助Web应用的开发,具有很高的创新性和实用性。

  会帮助应用的开发,具有很高的创新性和实用性。

  7.2未来工作展望

  本文提出并实现了通用业务逻辑Java 代码自动生成器,使用人员根据自身本文提出并实现了通用业务逻辑代码自动生成器,使用人员根据自身 需求可以直接使用或者修改本文提出的Object-Z 语言各类语法单元模版,作为需求可以直接使用或者修改本文提出的Object-Z 语言各类语法单元模版,作为 业务逻辑Java代码自动生成器的输入,最终生成SSM框架中通用业务逻辑Java业务逻辑代码自动生成器的输入,最终生成SSM框架中通用业务逻辑Java 代码。使用人员也可以修改通用业务功能语义描述到SSM框架中业务层实现函代码。使用人员也可以修改通用业务功能语义描述到ssm框架中业务层实现函 数Java代码的映射规则,继续开发和完善。 本文尚还有-些需要进一步研究完数代码的映射规则,继续开发和完善。本文尚还有-些需要进一步研究完 善的地方:

  (1)本文提出的ObjectZ语言语法单元模板只是简单形式化描述某大型系统

  (1)本文提出的objectz语言语法单元模板只是简单形式化描述某大型系统 开发中部分业务逻辑语义。虽能够使用但具有- -定的局限性。在后续的研究中。

  开发中部分业务逻辑语义。虽能够使用但具有--定的局限性。在后续的研究中。 本人将丰富对通用业务语法和语义描述的Ojet-Z语言语法单元模板。

  本人将丰富对通用业务语法和语义描述的Ojet-Z语言语法单元模板。

  (2)本文提出的通用业务功能语义描述到SSM框架中业务层实现函数Java

  (2)本文提出的通用业务功能语义描述到SSM框架中业务层实现函数Java 代码的映射规则也是具有不小的局限性。面对大型软件系统开发及其复杂多样的业务需求,业务逻辑Java代码自动生成器无法满足使用人员的需求。本人会在后续的工作丰富通用业务功能语义描述到SSM框架中业务层实现函数Java代码的映射规则,使得用户人员可以输入基于Object-Z 语言编写的描述复杂业务逻辑语义文件,最终获得目标代码文件。

  (3)本文设计与实现的业务逻辑

  Java自动生成器可以生成语法树让使用人员检查编写的描述语义文件,但是无法自动检查生成的Service 层业务实现函数Java代码的正确性和可实用性。使用人员只能手动检查生成代码判断是否存在问题。参考本文第六章提出的测试和验证工作,使用人员在部署生成代码到SSM框架Service 层时,还需要添加一- 些配置和声明等。这让使用人员在实用生成业务实现函数Javg代码时花费更多的时间和精力。无疑降低业务逻辑Java代码自动生成器的实用性和简便性。

  致谢

(如您需要查看本篇毕业设计全文,请您联系客服索取)

相关内容
相关标签:Java毕业设计
好优论文定制中心主要为您提供代做毕业设计及各专业毕业论文写作辅导服务。 网站地图
所有论文、资料均源于网上的共享资源以及一些期刊杂志,所有论文仅免费供网友间相互学习交流之用,请特别注意勿做其他非法用途。
如有侵犯您的版权或其他有损您利益的行为,请联系指出,论文定制中心会立即进行改正或删除有关内容!