论文部分内容阅读
在过去的十余年中,设计模式在软件工程领域得到广泛的应用和研究,但主要是应用于正向工程和软件生命周期的设计阶段.本文则将把该技术应用于逆向工程和再工程.设计模式是微体系结构(Micro-Architecture),相对类和对象来说,它是更高级别的构建模块(类或对象的组合).从这个角度看,识别现有系统中的设计模式实例有助于更准确地理解现有系统的设计意图,并改善其可维护性.在重构领域,已有的文献大多侧重于基本的重构操作.在系统再工程过程中需要大量地应用重构操作,但目前仍然缺乏系统的方法来组织这些重构操作.正如《设计模式》一书中所说的,模式为重构提供了目标.本文认为,模式作为微体系结构(Micro-Architecture),实际上也为系统化地组织重构操作提供了手段.结合再工程生命周期,本文提出一种覆盖再工程生命周期多个阶段的基于设计模式的面向对象系统再工程方法(DPBOOSR).具体如下l模型捕获.通过识别现有系统中存在的设计模式实例,可以帮助我们更加准确地理解现有系统的设计意图.L问题发现.通过计算系统的面向对象设计度量,找出超出合理度量值区间的区域,从而定位违反灵活性和质量准则的设计缺陷.L问题解决.可以结合重构操作对度量值的影响,对重构操作进行选择.另外,通过选择适当的设计模式作为较高层次的目标软件结构,可以对重构操作进行系统的组织.L重组.基于现有工具中提供的重构操作构建复合重构操作(如设计模式重构),从而进一步提高重构的效率,降低差错率.实验结果表明,本文提出的基于设计模式的面向对象系统再工程(DPBOOSR)方法对面向对象系统再工程的多个阶段均提供了有效支持.在未来的工作中,将把该方法应用于更多的面向对象系统再工程项目以进一步检验与改进.