Font Size: a A A

Research On Proactive Self-adaptive Software Architecture

Posted on:2010-07-26Degree:DoctorType:Dissertation
Country:ChinaCandidate:H WangFull Text:PDF
GTID:1118360302458541Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
The changeability of software surviving environment paves the way for strengthening architecture-based self adaptation. Diversity and complexity determines the uncertainty of self-adaptation. The unanticipated self-adaptation calls for revisiting current Reactive Self-adaptive (RSA) model. The traditional RSA method puts itself to some extent that the adaptation process can only be preplanned and defined to a limited space. Ideal systems can predict user request in recent future and adjust the behaviors of the system to survive under the new surviving environment. The uncertainty of surviving environment, the unanticipated and complex applications urgently require self-adaptation to be proactive, i.e., Proactive Self-adaptation (PSA). Compared to RSA model, PSA could anticipate recent future and adjust the behaviors of the system under consideration to be adaptive to the new situations over time. Sound adaptation policies can be determined by combining observation from system administrators and the cognitive powers of PSA. Therefore, applications can implement the proactive autonomic management and reduce manual operation. Self-adaptive systems are predictive and smart using proactive self-adaptive software architecture by inspecting source of uncertainty. Moreover, confliction resolution is beneficial to generate consistent actions.There are three very important and significant problems in the research on self-adaptive SA (Software Architecture): 1) analysis of software surviving environment, 2) research on proactive self-adaptation, and 3) constraints of performing self-adaptive actions. It is urgent importance to make research on above problems. We should resolve them from both theoretic and practical views. The dissertation aims at variability of software surviving environment. We provide a proactive self-adaptive SA model—Lizard, focusing on resolution of modeling uncertainty of surviving environment, prediction of behavior of systems and issue of non-conflict policies. Accordingly, the dissertation provides theoretic and real basis for proactive self-adaptive SA. The main contents and contributions of our work are as follows. First, we model the uncertainty ontology of surviving environment of software. The specification of proactive self-adaptive SA is provided by Chemical Abstract Machine (CHAM), called as ChamPSA. We model the uncertainty in ChamPSA by frame-based ontology. It is convenient for architectural simulation, reasoning and analysis. Formal derivation of self-adaptation based on SA is presented.Second, we provide the method of PSA based on HMM (Hidden Markov Model). The behavior of system is regarded as stochastic process. The method focuses on characterizing of statistical property of target system. We employ the mathematic characteristic of HMM to achieve proactive self-adaptation at runtime by means of modeling the behavior of user requests and the runtime context. The predictability of system is strengthened by proactive self-adaptation. The approach is novel as it leverages standard software architecture models, and quantifies behaviors of the system in terms of relevant architectural elements.Third, we build the ECA-based self-adaptive language model—Humble. Considering the extended ECA rule as the semantic basis for defining policy, the policies of self-adaptive SA have machine-understandable semantic. This can significantly promote policy-oriented self-management and collaborative work. There is confliction among multiple factors resulting in variability of runtime system. Using the extended ECA rule ontology, policies have favorable semantic and are helpful to resolve these confliction. The core of the method is to weaving the driving factors of surviving environment into policies, which govern the evolution of SA.Last, we implement the PSA framework—Lizard, which is a proactive self-adaptive method based on SA. We base the research on multiple objects of self-adaptation by inspecting the source of uncertainty. Lizard can learn from history behavior of system under consideration, then generate proactive self-adaptive actions, realizing target of PSA. Humble language helps for SA evolution to resolve conflict in multiple self-adaptation.This dissertation was supported in part by 863 National High Technology Program (No.2007AA01Z187), and in part by Fok Ying Tung Education Foundation (No.94030).
Keywords/Search Tags:Software architecture, proactive self-adaptation, uncertainty, policy weaving, hidden markov model
PDF Full Text Request
Related items