大型的长期运行的系统往往要求软件系统不能停止运行,而软件演化作为软件维护的重要部分是每一个软件系统不可或缺的,这就要求能够实现软件的动态演化。提出了一种基于AOP技术的软件动态演化机制,这种机制分为两种策略:运行时软件的功能更新方法和代码更新方法。根据对软件进行更新依赖的静态分析,按照一定的规则将一个个更新的动作作为一个系统的横切方面动态编织到系统中去,从而实现软件的动态演化。
Large long-running applications often require continuous uptime but also frequent changes to the software. To avoid downtime for software maintenance, applications must be updated at run-time, we propose one strategy of dynamic updating based on the technique of AOP. The mothod divides into two parts: ruction updating and code updating. Depending on the static analysis of application's updating dependency,we can weave the update actions as the crosscutting concerns into the running application, consequently the dynamic evolution of software has been completed.