Every software in the universe requires maintenance and management during its life cycle. The manual management of software is costly and sometimes error-prone. The other solution is autonomic computing that induces self-management capabilities, ''self-*services'', in software systems with the help of autonomic managers. The design quality of a self-management capability affects the computing infrastructure regarding processing load, the memory requirement, data channel demand and performance of perturbation restore. It is critical to assess the design quality of a self-management capability to determine its effect over the computing infrastructure when it gets invoke against some anomaly or perturbation. Moreover, there are two possible host environments for an autonomic manager to offer a self-management capability as a self-* service: the local environment and the cloud environment. A criterion is needed to decide which environment is more suitable and cost-effective to run the service. However, the literature lacks in the assessment of the design quality metrics on self-management capabilities and the suitability and cost-effectiveness of the execution environment. In this work, we have proposed a suite of design quality metrics to determine the design quality of self-management capabilities. We validate the proposed metrics with a stock trade & forecasting system that was designed as an autonomic computing system with selfmanagement capabilities. The proposed metrics were applied to define functions that identify the suitable and cost-effective execution environment for the self-* service. The results proved that these metrics are useful in determining the design quality, suitability, and cost-effectiveness of a self-* capability for an autonomic computing system. The proposed metrics can be used to compare differently designed autonomic solutions for complexity, efficiency, performance, understandability, and maintainability.INDEX TERMS Autonomic computing, design quality metrics, self-management capabilities, self-* service, stock trade forecasting.
Abstract:Autonomic computing embeds self-management features in software systems using external feedback control loops, i.e., autonomic managers. In existing models of autonomic computing, adaptive behaviors are defined at the design time, autonomic managers are statically configured, and the running system has a fixed set of self-* capabilities. An autonomic computing design should accommodate autonomic capability growth by allowing the dynamic configuration of self-* services, but this causes security and integrity issues. A secure, scalable and elastic autonomic computing system (SSE-ACS) paradigm is proposed to address the runtime inclusion of autonomic managers, ensuring secure communication between autonomic managers and managed resources. Applying the SSE-ACS concept, a layered approach for the dynamic adaptation of self-* services is presented with an online 'Autonomic_Cloud' working as the middleware between Autonomic Managers (offering the self-* services) and Autonomic Computing System (requiring the self-* services). A stock trading and forecasting system is used for simulation purposes. The security impact of the SSE-ACS paradigm is verified by testing possible attack cases over the autonomic computing system with single and multiple autonomic managers running on the same and different machines. The common vulnerability scoring system (CVSS metric) shows a decrease in the vulnerability severity score from high (8.8) for existing ACS to low (3.9) for SSE-ACS. Autonomic managers are introduced into the system at runtime from the Autonomic_Cloud to test the scalability and elasticity. With elastic AMs, the system optimizes the Central Processing Unit (CPU) share resulting in an improved execution time for business logic. For computing systems requiring the continuous support of self-management services, the proposed system achieves a significant improvement in security, scalability, elasticity, autonomic efficiency, and issue resolving time, compared to the state-of-the-art approaches.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.