开放分布式环境下自适应软件的研究已引起学术界、工业界的广泛关注.但分布在网络上的软件实体是由不同的组织独立开发并部署的,它们代表各自的粗织(或所有者)自主地采取行动,在构造分布式环境下的自适应系统时,不能再将构成单元视为被动的受管对象,而应将其建模为具有主动行为能力的计算实体,并在这一层面设计和封装系统的自适应逻辑.然而,在现阶段对于自主计算实体的研究中,大多缺乏对于自适应策略的动态加载和动态演化的支持.提出了一种支持策略动态加载的自主构件模型,使得自主构件能够在运行时习得新的自适应策略和行为,实现了一种基于质量运行时动态评估的自主构件的自适应机制,使得自主构件能够自行评估自适应策略的优劣并选择最佳的策略加以适应,在保证自身目标得以实现的同时,提高了服务质量.另外,还详细描述了自主构件的实现方案及其运行支撑,通过实验展示了自主构件基于质量动态评估的自适应过程以及自适应策略的动态加载过程.
Self-Adaptive software in open and distributed environments (especially the Internet) has been widely researched in academia and industry. However, software entities scattered on the Internet are independently developed and deployed by different organizations, and they autonomously take actions on behalf of their owners. They can no longer be considered passive and manageable. In the construction of self-adaptive software systems in open and distributed environments, constituent elements should be modeled and designed as autonomous computing entities, and the adaptive logic of systems should be encapsulated into constituent elements. Existing researches on autonomous computing entities are still insufficient in self-adaptive policies' in online customization and dynamic evolution. Therefore, this paper proposes an autonomous component model, which supports self-adaptive policies' in online customizing, by which components can gain new policies or behavior modes at runtime. Meanwhile, this paper implements a self-adaptive mechanism based on dynamic quality evaluation, by which components can evaluate the policies and select the best policy to improve their qualities of service at runtime. Finally, the paper provides some implementation details of the proposal and an experiment, which demonstrates the process of self-adaptation based on dynamic quality evaluation and the process of online policy customization.