{"title":"Online Software Maintenance for Mission-Critical Systems","authors":"J. Stanek, S. Kothari, T. Nguyen, C. Cruz-Neira","doi":"10.1109/ICSM.2006.44","DOIUrl":null,"url":null,"abstract":"Online software maintenance (OSM) is performed while an application is running. It requires transforming the runtime state of the application to go along with updates of its software. The goal is to perform maintenance of mission-critical systems while they continue to run. This research presents dynamically evolvable C++ classes as a way to enable OSM. The associated implementation mechanism is called the OSM framework. We provide a high-level view of the OSM framework and then describe different types of object-oriented design transformations that are supported. The accompanying state transformations are described to evolve the live objects along with the software. We have implemented a prototype of the OSM framework; it works with the g++ and the Microsoft C++ compilers. Performance results are presented to assess the memory and processing overheads of the OSM framework. The proposed approach advances the state of the art in two ways: (a) it extends the notion of dynamic evolvability by including fission and fusion and other object-oriented design transformations, and (b) it provides a novel OSM framework that takes advantage of C++ templates","PeriodicalId":436673,"journal":{"name":"2006 22nd IEEE International Conference on Software Maintenance","volume":"16 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2006-09-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2006 22nd IEEE International Conference on Software Maintenance","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSM.2006.44","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 9
Abstract
Online software maintenance (OSM) is performed while an application is running. It requires transforming the runtime state of the application to go along with updates of its software. The goal is to perform maintenance of mission-critical systems while they continue to run. This research presents dynamically evolvable C++ classes as a way to enable OSM. The associated implementation mechanism is called the OSM framework. We provide a high-level view of the OSM framework and then describe different types of object-oriented design transformations that are supported. The accompanying state transformations are described to evolve the live objects along with the software. We have implemented a prototype of the OSM framework; it works with the g++ and the Microsoft C++ compilers. Performance results are presented to assess the memory and processing overheads of the OSM framework. The proposed approach advances the state of the art in two ways: (a) it extends the notion of dynamic evolvability by including fission and fusion and other object-oriented design transformations, and (b) it provides a novel OSM framework that takes advantage of C++ templates