Jvolve supports 20 of 22 updates to three open-source programs---Jetty web server, Java Email Server, and Cross FTP server---based on actual releases occurring over a one to two year period.This support is substantially more flexible than prior systems. It relies on bytecode verification to statically type-check updated classes.
Join points as defined by AOP establish locations for code modification in a program. Gross, "Dynamic Updating of Software Systems Based on Aspects," 2006 22nd IEEE International Conference on Software Maintenance(ICSM), Philadelphia, Pennsylvania, 2006, pp.
DSU safe points further restrict the methods that may be on each thread's stack, depending on the update.
Restricted methods include updated methods for code consistency and safety, and user-specified methods for semantic safety.
This dissertation presents the design and implementation of Jvolve, a DSU system for Java.
Jvolve's combination of flexibility, safety, and efficiency is a significant advance over prior approaches.