Runtime reconfiguration is a fundamental requirement of many telecommunication applications which also has been addressed by management standards like CMIP, 3GPP TS 32.602, and NETCONF. Two basic commands considered by these standards are CREATE and DELETE which operate on managed objects inside an application. The available configuration management technologies, like JMX, OSGi, and Fractal, do not support the CREATE and DELETE reconfiguration commands of the telecommunication standards. In this paper, we introduce a novel technology, called RSCM, for development of runtime reconfigurable applications complying with the telecommunication standards. The RSCM subagent takes the responsibility of loading the application from the configuration file, executing the runtime reconfiguration commands (including CREATE and DELETE), enforcing validity of the configuration state, and updating the configuration file according to the latest reconfiguration commands. We exploit the modular and object oriented features of the XML technology for storing the configuration state of a program in a configuration file. The software development process is tailored such that the design of XML schemas of managed classes is performed parallel to the design of software classes. In addition, a novel programming approach based on indirect referencing is proposed which allows safe and almost immediate deletion of managed objects at runtime. This indirect referencing mechanism affects the implementation of associations in class diagrams and prevents methods of a class to use the “this” pointer freely. The RSCM technology has been successfully used in several commercial telecommunication applications; including an SMS service center, an SMS gateway, and an SMS hub.
Read full abstract