当前位置:问答库>论文摘要

题目:基于UML的设计模型与代码一致性保证技术的研究与实现

关键词:模型驱动开发;代码生成;模型追踪;UML;C++

  摘要


    软件开发是一项自顶向下,逐步精化的过程。软件开发的生命周期大致分为分析、设计与实现三个阶段,其中分析阶段主要完成系统的需求分析,产生系统的需求数据,设计阶段主要完成系统的总体设计,产生系统的设计数据,实现阶段为系统的编码与测试。

    如果系统实现与设计严重偏离,那么软件设计将失去参考价值,影响项目开发人员对软件设计和实现的理解,给软件的检测和维护造成困难。因此,需要建立软件实现与设计的追踪关系,尽可能的保证二者之间的一致性。

但是,由于软件开发的不同阶段,软件结构所处抽象层次的不同、所关注的特征和角度的差异等,使得软件结构在设计与实现之间存在差异。设计模型只是代表了系统的大概框架,而实现过程中往往增加细节特征,或将设计中的某些关系加以细化,导致了他们所描述信息的详细程度不同。此外,软件的演化,包括需求的变化、设计方案的调整、代码的修改等,也会使设计模型与代码之间出现显著差异。因此难以直接保证设计模型和代码的一致性。

    由于上述原因,本文从正向和逆向两个角度,研究避免设计模型与代码出现差异的方法。“正向”表示从设计模型到代码的过程,在这个过程中,将已有的设计模型,包括类图和顺序图,转换为代码框架,开发人员在所生成的程序框架的基础上进一步细化代码,形成最终交付的程序,从而使得代码符合前期的设计模型。然而,在代码细化的过程中可能会修改原有框架,这时将代码逆向追踪到设计模型,这里“逆向”表示从代码到设计模型的过程,在这个过程中,对细化后的代码进行分析和提取,将分析结果与设计模型进行对比,识别其中出现差异的部分,供开发人员提供参考和确认,进而采取措施来保证代码和设计模型的一致性。

    基于上述思想,本文设计并实现了设计模型与代码一致性辅助支持工具,该工具包括设计模型到代码的转换,以及代码与设计模型的追踪两个功能模块,并将该工具集成到基于模型的软件开发平台中。该工具是一个Eclipse插件,提供了设计模型可视化的展示、转换规则的实现、代码分析、一致性检查等功能,最后,通过图书管理系统的案例,检验平台工具的可用性。