Identifying Failure Causes in Java Programs: An Application of Change Impact Analysis
IEEE Transactions on Software Engineering
Dynamic code evolution for Java
Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java
Run-time phenomena in dynamic software updating: causes and effects
Proceedings of the 12th International Workshop on Principles of Software Evolution and the 7th annual ERCIM Workshop on Software Evolution
Unrestricted and safe dynamic code evolution for Java
Science of Computer Programming
Hi-index | 0.00 |
For some software systems with high availabilityrequirements, it is not acceptable to have the system shutdown when a new version of it is to be deployed. Analternative is to use unanticipated runtime softwareevolution, which means making changes to the softwaresystem while it is executing. We propose a classificationof unanticipated runtime software changes. Ourclassification consists of a code change aspect, a statechange aspect and an activity aspect. The purpose of theclassification is to get a greater understanding of thenature of such changes, and to facilitate an abstract viewof them. We also present results from a case study, wherehistorical changes to an existing software system havebeen categorized according to the classification. The datafrom the case study gives an indication that the JavaPlatform Debugger Architecture, a standard mechanismin Java virtual machines, is a viable technical foundationfor runtime software evolution systems.