论文部分内容阅读
近年来,随着计算机网络技术的发展,许多软件系统开始在Internet上部署和运行。同时这些系统运行的复杂性和规模也在逐渐增加,呈现出很多新的形态和特点。如何在Internet这样一个动态、开放的网络环境中共享和集成网络信息,开发大型的软件系统,是计算机软件技术必须应对的一项挑战。因此,国内外的专家学者提出了网构软件(Internetware)的思想和概念,并在网构软件的形式化理论、软件模型、平台框架和开发方法方面开展了大量研究工作。 网构软件是开放、动态及难控的网络大环境中一种抽象的分布式软件。它由两部分组成,包括一组具有主体化特征的软件实体和支持这些软件实体进行交互的连接器。网构软件具有自主性、协同性、反应性、演化性和多态性等特征。网构软件研究的一个核心难点是在开放、动态、难控的网络环境中,如何使软件系统在不中断运行的情况下,实现软件系统的动态演化。目前,关于网构软件的动态演化方面的研究已经成为人们关注的焦点。网构软件系统内部各类软件实体、系统配置以及实体之间交互十分复杂,这决定了其动态演化研究应从宏观层面入手。软件体系结构即从全局角度来考虑组成系统的构件以及构件之间的交互。因此,本文提出了一种基于体系结构的网构软件动态演化模型,研究工作主要涉及以下几个方面: 1、为了反映软件系统动态演化的过程,设计了基于Petri网的体系结构模型。该模型包含两个视图:静态视图和动态视图。静态视图用于描述软件系统的静态结构,它沿用了传统的体系结构描述方法,包括构件和连接器等基本部件。动态视图则建立在静态视图的基础上,在静态视图的网结构加上标识,由此形成的网系统描述了体系结构的动态行为。 2、体系结构的变化方面,利用Petri网的结构变化来反映构件的演化。并通过动态演化建模展示了网构软件体系结构本身的动态变化。 3、在为动态演化的实施提供的支持机制方面,本文在网构软件动态演化模型中引入了行为管程这类特殊的服务。本文从管理、监控、实施三个方面的职能入手,讨论了行为管程在网构软件动态演化模型中所起的支撑作用。 最后,通过仿真实验验证了动态演化模型的可行性、有效性。