论文部分内容阅读
随着越来越多的成功软件系统成为了遗产系统(1egacy system),软件演化的重要性和普及性越来越强。软件演化已成为软件生存周期中最重要的形态之一,进入了软件的各个领域,成为了今天软件工程研究的热点领域。软件演化时,应当具有什么样的过程呢?或者说,什么样的软件过程才能有效支持软件的演化呢?软件演化的过程表现出了明显不同于传统软件过程的特征。因此,对支持软件演化的软件过程(简称软件演化过程)进行研究摆在了我们面前。
本文以国家自然科学基金项目:“软件演化过程研究”已有的研究成果为基础,根据李彤教授设计的支持演化的过程描述语言EPDL,设计并实现了支持这种语言的编译器。由于EPDL的最终目标是要使软件开发者在直观上得到一些具体的指导和建议的流程,所以编译EPDL的目标是将EPDL的源代码转换成一些特定的数据结构(一些对象),并通过相应的解释程序来将这些特定的数据结构转化成一些图形化的界面。
由于EPDL是一种描述性语言,同时也具有许多面向对象的特征,但EPDL和一般的高级语言在机制上还是有很大区别的。所以,在编译器的设计与实现上就和传统的编译方法有很多的不同。在编译器的实现中采用了目前流行的java技术,大大地提高了开发效率,同时也为编译器的开发注入了一些新的思想。可以说是对以后类似编译器的开发提供了一些有益地借鉴。