论文部分内容阅读
随着软件技术的发展和硬件性能的极大提高,软件规模日益庞大。为了提高软件开发效率,现代软什工程更多地研究了软件复用的机制,在代码重用的基础上提出了设计重用的概念,并引入了统一建模语言、设计模式、框架等新的软件工程理论与方法。 框架收集了常用于某一特定应用领域的设计决策,是一个系统全部或者部分的可重用设计,通常由一组抽象类和类之间的协作组成。它规定了应用系统的总体结构,定义了类和对象地划分,定义了其关键责任,定义了类和对象如何合作,还定义了控制线索。一个完整的框架可以对一类应用系统的设计起到非常重要的作用。因而,研究框架设计理论、通用化方法、框架表示方法及框架实例化方法等对发展软件复用具有重要的意义。 本研究属于应用基础理论研究,主要研究方法是综合以前框架设计理论和方法,分析它们各自的优劣,利用现存或者部分存在的表示工具,发展并提出新的框架设计理论并进行验证。本论文总共获得以下三个方面的成果: (1)框架的形式化表示方法UML-F 通过扩展和继承统一建模语言的扩展机制:加标签值(性质),约束和版类,提出了{variable}、{Extensible}、{Incompfete}、{Appl-class}、{Static}和{Dynamic}六种基本的标签值和其它较少使用的{Optional}、{For all new methods}重定义扩展并实现了UML的框架表示。特别是变化方法、扩展类和扩展接口三种重要的处理对框架表示和实现具有重要意义。变化方法只是定义了明确的标志,其具体方法在每一个应用实例化过程中发生变化;扩展类是指在框架实例化过程中通过扩展它们的接口来实现:扩展接口是指在框架实例化过程中允许创建具体子类的抽象类和接口来实现。 (2)热点框架理论 钩点(Hook-spot)也称为凝固点,指系统中相对固定不变的部分,即系统核心功能部分;热点(Hot-spot)是指应用系统中灵活变化的部分。框架研究根据实际情况更需要关注热点,需要热点与钩点的有效区分。通过与设计模式的结合和方法应用,提出了热点驱动的框架形成模型:①特殊对象模型的定义:②热点标记;③框架重新设计④框架使用。特别需要注意的是,利用对于热点变化的处理是否需要重新启动或者由最终用户处理引入的热点卡来消去模板钩点模型中的热点联系的方法对于框架中的抽象类、具体类或者继承方式的划分具有非常重要的作用。 (3)框架设计通用化方法 将热点框架理论、UML-F结合起来,形成框架设计的理论和通用化方法。框架设计通用化