论文部分内容阅读
为了应对Internet平台下开放、动态、难控等特点对应用的开发、部署、运行、维护带来的挑战,网构软件(Internetware)的概念应运而生,它是一种柔性可演化、连续反应式、多目标适应的新的软件体系形态,主体化的软件实体之间通过按需协同的机制,形成一种与当前的信息Web相类似的软件Web。网构软件的一个重要特征就是:它应能感知内/外部环境的动态变化,并随着这种变化按照功能指标、性能指标或可靠性指标等进行静态的调整和动态的演化,以使系统具有尽可能高的用户满意度。也就是说网构软件不是按照明确的需求自顶向下开发而成的,它会随着环境的变化,不断发展不断演化。为了使网构软件在宏观上表现出自适应、自演化的行为,必须从软件系统的情境描述、环境感知、内部决策和协同演化等几个方面展开研究。目前的研究多是从已感知到环境的变化出发,研究软件实体如何动态调整自身的行为,而对于Internet情境应如何表达、情境变化应如何感知没有系统的研究和实用化的成果。本文将Internet情境定义为网构软件中服务实体所处内外部环境的一种抽象。本文针对Internet环境下网构软件中服务实体构成的协同关系,研究了网构软件中服务实体之间根据彼此供需情况进行协同交互,从而完成应用的全过程。本文用语义化方法来定义Internet情境,对网构软件实体所处环境进行抽象,不仅包括静态的信息还包括动态的运行时信息以及其他的一些非功能性需求,不仅包括实体外部环境的信息还包括实体内部的信息。在显式的、语义化的Internet情境定义下,本文以情境感知为核心来支持服务实体的自适应、自演化行为,给出了一种基于本体的网构软件情境感知的体系架构,并描述了在这一体系架构下网构软件的按需聚合和动态演化的模型与机制,以实现服务实体根据情境的变化动态调整自身的行为以及整个网构软件中服务实体的协同关系。基于该架构与模型,本文提出了实现该架构的、运行在服务实体端的情境感知支撑环境,详细介绍了支撑环境中各个组件的作用与实现思路,并且给出了基于OSGi平台的支撑环境参考实现,继而利用该参考实现对一应用案例进行实现,检验得出该参考实现能够达到该架构下网构软件服务实体感知情境和动态演化的预期效果。