Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069076
Dongsun Kim, S. Park
Recently, software systems face dynamically changing environments, and the users of the systems provide changing requirements at run-time. Self-management is emerging to deal with these problems. One of the key issues to achieve self-management is planning for selecting appropriate structure or behavior of self-managed software systems. There are two types of planning in self-management: off-line and on-line planning. Recent discussion has focused on off-line planning which provides static relationships between environmental changes and software configurations. In on-line planning, a software system can autonomously derive mappings between environmental changes and software configurations by learning its dynamic environment and using its prior experience. In this paper, we propose a reinforcement learning-based approach to on-line planning in architecture-based self-management. This approach enables a software system to improve its behavior by learning the results of its behavior and by dynamically changing its plans based on the learning in the presence of environmental changes. The paper presents a case study to illustrate the approach and its result shows that reinforcement learning-based on-line planning is effective for architecture-based self-management.
{"title":"Reinforcement learning-based dynamic adaptation planning method for architecture-based self-managed software","authors":"Dongsun Kim, S. Park","doi":"10.1109/SEAMS.2009.5069076","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069076","url":null,"abstract":"Recently, software systems face dynamically changing environments, and the users of the systems provide changing requirements at run-time. Self-management is emerging to deal with these problems. One of the key issues to achieve self-management is planning for selecting appropriate structure or behavior of self-managed software systems. There are two types of planning in self-management: off-line and on-line planning. Recent discussion has focused on off-line planning which provides static relationships between environmental changes and software configurations. In on-line planning, a software system can autonomously derive mappings between environmental changes and software configurations by learning its dynamic environment and using its prior experience. In this paper, we propose a reinforcement learning-based approach to on-line planning in architecture-based self-management. This approach enables a software system to improve its behavior by learning the results of its behavior and by dynamically changing its plans based on the learning in the presence of environmental changes. The paper presents a case study to illustrate the approach and its result shows that reinforcement learning-based on-line planning is effective for architecture-based self-management.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"70 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121400372","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069077
Carlos Eduardo da Silva, R. Lemos
The self-adaptation of a software system is a complex process that depends on the system requirements, its operational state and environment, which may change during the system operational lifetime. Hence, the process for coordinating the self-adaptation should also be adaptable to changes that may occur during run-time. As a means for coordinating the self-adaptation process of software systems, the proposed approach employs workflows that are dynamically generated for dealing with the variability associated with the self-adaptation process. In this context, our aim is to define and develop techniques for automatically generate workflows for coordinating the self-adaptation of software systems. For demonstrating the feasibility of the proposed approach, architectural reconfiguration of software systems is used as an example, whereby the reconfiguration is managed by workflows that are dynamically generated depending on the availability of resources.
{"title":"Using dynamic workflows for coordinating self-adaptation of software systems","authors":"Carlos Eduardo da Silva, R. Lemos","doi":"10.1109/SEAMS.2009.5069077","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069077","url":null,"abstract":"The self-adaptation of a software system is a complex process that depends on the system requirements, its operational state and environment, which may change during the system operational lifetime. Hence, the process for coordinating the self-adaptation should also be adaptable to changes that may occur during run-time. As a means for coordinating the self-adaptation process of software systems, the proposed approach employs workflows that are dynamically generated for dealing with the variability associated with the self-adaptation process. In this context, our aim is to define and develop techniques for automatically generate workflows for coordinating the self-adaptation of software systems. For demonstrating the feasibility of the proposed approach, architectural reconfiguration of software systems is used as an example, whereby the reconfiguration is managed by workflows that are dynamically generated depending on the availability of resources.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124204059","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069084
Supporting self-management behaviour by means of component-based architectural solutions has been the focus of many current research projects. In such a context, handling unanticipated changes with no impacts in application-specific software artefacts is a challenging problem. In this paper, we present a component-based solution for the specification and execution of self-management behaviour that decouples application-specific from autonomic-specific software artefacts (non-intrusive approach) and supports unanticipated changes in distributed heterogeneous environments. We describe the designed components for environment monitoring, adaptation policies specification, and changes redeployment and present a reference implementation built on top of CIAO middleware - a Lightweight CORBA Component Model implementation that supports dynamic reconfiguration of components and connectors. We also present two evaluation experiments, which provide self-optimization and self-healing behaviour in a distributed industrial supervision and control system.
{"title":"A non-intrusive component-based approach for deploying unanticipated self-management behaviour","authors":"","doi":"10.1109/SEAMS.2009.5069084","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069084","url":null,"abstract":"Supporting self-management behaviour by means of component-based architectural solutions has been the focus of many current research projects. In such a context, handling unanticipated changes with no impacts in application-specific software artefacts is a challenging problem. In this paper, we present a component-based solution for the specification and execution of self-management behaviour that decouples application-specific from autonomic-specific software artefacts (non-intrusive approach) and supports unanticipated changes in distributed heterogeneous environments. We describe the designed components for environment monitoring, adaptation policies specification, and changes redeployment and present a reference implementation built on top of CIAO middleware - a Lightweight CORBA Component Model implementation that supports dynamic reconfiguration of components and connectors. We also present two evaluation experiments, which provide self-optimization and self-healing behaviour in a distributed industrial supervision and control system.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"76 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114229116","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069071
J. Cámara, C. Canal, Gwen Salaün
Self-adaptive software systems are those able to manage changing operating conditions dynamically and autonomously. Currently, most proposals in this field rely on an explicit representation of the constituent elements and goals of the system. This approach is suitable for systems where constituent elements are well known at design time. However, in systems where new elements may dynamically enter or leave the execution environment, it is not possible to obtain a predefined description of the system's architecture nor a complete specification of its goals. Paradigmatic examples of such systems can be found in ubiquitous computing, or dynamic web service discovery and composition, where new adaptability problems arise, such as the (dis)connection of unforeseen elements to an already running system, or ensuring properties of the composition among services, which cannot be addressed at static verification time since the state space of the system is not closed anymore. In this paper, we present our approach for the composition and resolution of interface mismatch among services in ubiquitous computing environments, dynamically reconfiguring the system as new services are integrated or disconnected.
{"title":"Behavioural self-adaptation of services in ubiquitous computing environments","authors":"J. Cámara, C. Canal, Gwen Salaün","doi":"10.1109/SEAMS.2009.5069071","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069071","url":null,"abstract":"Self-adaptive software systems are those able to manage changing operating conditions dynamically and autonomously. Currently, most proposals in this field rely on an explicit representation of the constituent elements and goals of the system. This approach is suitable for systems where constituent elements are well known at design time. However, in systems where new elements may dynamically enter or leave the execution environment, it is not possible to obtain a predefined description of the system's architecture nor a complete specification of its goals. Paradigmatic examples of such systems can be found in ubiquitous computing, or dynamic web service discovery and composition, where new adaptability problems arise, such as the (dis)connection of unforeseen elements to an already running system, or ensuring properties of the composition among services, which cannot be addressed at static verification time since the state space of the system is not closed anymore. In this paper, we present our approach for the composition and resolution of interface mismatch among services in ubiquitous computing environments, dynamically reconfiguring the system as new services are integrated or disconnected.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131273995","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069078
Florian Nafz, F. Ortmeier, H. Seebach, Jan-Philipp Steghöfer, W. Reif
An Organic Computing system has the ability to autonomously (re-)organize and adapt itself. Such a system exhibits so called self-x properties (e.g. self-healing) and is therefore more dependable as e.g. some failures can be compensated. Furthermore, it is easier to maintain as it automatically configures itself and more convenient to use because of its automatic adaptation to new situations. Design and construction of Organic Computing systems are, however, challenging tasks. The Organic Design Pattern (ODP) is a design guideline to aid engineers in these tasks. This paper introduces a generic software framework that allows for easy implementation of ODP-based Organic Computing Systems. The communication and service infrastructure of the multi-agent system Jadex is leveraged to provide interaction facilities and services to the application. The concepts of ODP are provided as generic, extensible elements that can be augmented with domain-specific behavior. The dynamic behavior of an ODP system is implemented and a generic observer/controller facility is provided. A real-world case study shows the applicability of the proposed approach and the handling of the software.
{"title":"A generic software framework for role-based Organic Computing systems","authors":"Florian Nafz, F. Ortmeier, H. Seebach, Jan-Philipp Steghöfer, W. Reif","doi":"10.1109/SEAMS.2009.5069078","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069078","url":null,"abstract":"An Organic Computing system has the ability to autonomously (re-)organize and adapt itself. Such a system exhibits so called self-x properties (e.g. self-healing) and is therefore more dependable as e.g. some failures can be compensated. Furthermore, it is easier to maintain as it automatically configures itself and more convenient to use because of its automatic adaptation to new situations. Design and construction of Organic Computing systems are, however, challenging tasks. The Organic Design Pattern (ODP) is a design guideline to aid engineers in these tasks. This paper introduces a generic software framework that allows for easy implementation of ODP-based Organic Computing Systems. The communication and service infrastructure of the multi-agent system Jadex is leveraged to provide interaction facilities and services to the application. The concepts of ODP are provided as generic, extensible elements that can be augmented with domain-specific behavior. The dynamic behavior of an ODP system is implemented and a generic observer/controller facility is provided. A real-world case study shows the applicability of the proposed approach and the handling of the software.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"243 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122870780","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069072
J. Andersson, R. Lemos, S. Malek, Danny Weyns
Self-adaptability has been proposed as an effective approach to automate the complexity associated with the management of modern-day software systems. While over the past decade we have witnessed significant progress in the manner in which such systems are designed, constructed, and deployed, there is still a lack of consensus among the engineers on some of the fundamental underlying concepts. In this paper, we attempt to alleviate this issue by exploring the crucial role of computational reflection in the context of self-adaptive software systems. We show that computational reflection forms the foundation of a self-adaptive system, and an understanding of its properties is a prerequisite to intelligent and predictable construction of such systems. Examining several systems in light of computational reflection has helped us to identify a number of key challenges, which we report on and propose as avenues of future research.
{"title":"Reflecting on self-adaptive software systems","authors":"J. Andersson, R. Lemos, S. Malek, Danny Weyns","doi":"10.1109/SEAMS.2009.5069072","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069072","url":null,"abstract":"Self-adaptability has been proposed as an effective approach to automate the complexity associated with the management of modern-day software systems. While over the past decade we have witnessed significant progress in the manner in which such systems are designed, constructed, and deployed, there is still a lack of consensus among the engineers on some of the fundamental underlying concepts. In this paper, we attempt to alleviate this issue by exploring the crucial role of computational reflection in the context of self-adaptive software systems. We show that computational reflection forms the foundation of a self-adaptive system, and an understanding of its properties is a prerequisite to intelligent and predictable construction of such systems. Examining several systems in light of computational reflection has helped us to identify a number of key challenges, which we report on and propose as avenues of future research.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129830907","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069070
K. S. M. Chan, J. Bishop
The Web service paradigm allows applications to interact electronically with one another over the Internet. Standards and languages, such as BPEL and OWL-S provide a platform with which Web services can be integrated. Moreover, various AI planning techniques have also been adapted to integrate services. However, the autonomous and distributed nature of an integrated service presents unique challenges to the reliability of the composed Web services. Resilience of the process execution can be achieved through self-healing, that is, the capability to detect failures autonomously and to recover from them. This paper presents the design of a self-healing composition cycle for Web services that can be used to evaluate self-healing techniques in Web service composition. Having a full understanding of the interaction between different modules in a self-healing cycle provides the designer of a composition with the knowledge necessary to build more effective self-healing systems with minimum runtime overhead.
{"title":"The design of a self-healing composition cycle for Web services","authors":"K. S. M. Chan, J. Bishop","doi":"10.1109/SEAMS.2009.5069070","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069070","url":null,"abstract":"The Web service paradigm allows applications to interact electronically with one another over the Internet. Standards and languages, such as BPEL and OWL-S provide a platform with which Web services can be integrated. Moreover, various AI planning techniques have also been adapted to integrate services. However, the autonomous and distributed nature of an integrated service presents unique challenges to the reliability of the composed Web services. Resilience of the process execution can be achieved through self-healing, that is, the capability to detect failures autonomously and to recover from them. This paper presents the design of a self-healing composition cycle for Web services that can be used to evaluate self-healing techniques in Web service composition. Having a full understanding of the interaction between different modules in a self-healing cycle provides the designer of a composition with the knowledge necessary to build more effective self-healing systems with minimum runtime overhead.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116207465","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069074
R. Asadollahi, M. Salehie, L. Tahvildari
Realizing self-managing systems poses several development and operational challenges. Reusable software frameworks assist in addressing these challenges by utilizing appropriate patterns, and also providing essential runtime services for self-managing systems. This paper presents the StarMX framework, designed for building self-managing Java-based applications. It is a generic framework based on standards and well-established principles, and supports common tasks in the development of such systems. StarMX facilitates creating the management closed loop using various mechanisms such as action policies. The framework architecture and its utilization process, along with an example of its application are presented in this paper. Moreover, quality attributes and autonomic characteristics of the proposed framework are discussed.
{"title":"StarMX: A framework for developing self-managing Java-based systems","authors":"R. Asadollahi, M. Salehie, L. Tahvildari","doi":"10.1109/SEAMS.2009.5069074","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069074","url":null,"abstract":"Realizing self-managing systems poses several development and operational challenges. Reusable software frameworks assist in addressing these challenges by utilizing appropriate patterns, and also providing essential runtime services for self-managing systems. This paper presents the StarMX framework, designed for building self-managing Java-based applications. It is a generic framework based on standards and well-established principles, and supports common tasks in the development of such systems. StarMX facilitates creating the management closed loop using various mechanisms such as action policies. The framework architecture and its utilization process, along with an example of its application are presented in this paper. Moreover, quality attributes and autonomic characteristics of the proposed framework are discussed.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124003494","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069082
S. Cheng, D. Garlan, B. Schmerl
Rainbow is a framework for engineering a system with run-time, self-adaptive capabilities to monitor, detect, decide, and act on opportunities for system improvement. We applied Rainbow to a system, Znn.com, and evaluated its effectiveness to self-adapt on three levels: its effectiveness to maintain quality attribute in the face of changing conditions, run-time overheads of adaptation, and the engineering effort to use it to add self-adaptive capabilities to Znn.com. We make Znn.com and the associated evaluation tools available to the community so that other researchers can use it to evaluate their own systems and the community can compare different systems. In this paper, we report on our evaluation experience, reflect on some principles for benchmarking self-adaptive systems, and discuss the suitability of our evaluation tools for this purpose.
{"title":"Evaluating the effectiveness of the Rainbow self-adaptive system","authors":"S. Cheng, D. Garlan, B. Schmerl","doi":"10.1109/SEAMS.2009.5069082","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069082","url":null,"abstract":"Rainbow is a framework for engineering a system with run-time, self-adaptive capabilities to monitor, detect, decide, and act on opportunities for system improvement. We applied Rainbow to a system, Znn.com, and evaluated its effectiveness to self-adapt on three levels: its effectiveness to maintain quality attribute in the face of changing conditions, run-time overheads of adaptation, and the engineering effort to use it to add self-adaptive capabilities to Znn.com. We make Znn.com and the associated evaluation tools available to the community so that other researchers can use it to evaluate their own systems and the community can compare different systems. In this paper, we report on our evaluation experience, reflect on some principles for benchmarking self-adaptive systems, and discuss the suitability of our evaluation tools for this purpose.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123505646","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2009-05-18DOI: 10.1109/SEAMS.2009.5069083
George T. Edwards, Joshua Garcia, H. Tajalli, D. Popescu, N. Medvidović, G. Sukhatme, Brad Petrus
We describe an architecture-centric design and implementation approach for building self-adapting and self-managing robotics systems. The basis of our approach is the concept of meta-level components, which facilitate adaptation and management of application-level components. Our approach applies two key enhancements to the traditional usage of meta-level components: (1) we utilize three distinct, specialized meta-level components for the three fundamental activities of a robotics system: sensing, computation, and control, and (2) we allow meta-level components to themselves be monitored, managed and adapted by other (higher layer) meta-level components. In this way, our approach flexibly supports adaptive layered architectures of arbitrary depth, the specification of arbitrary system adaptation policies, and the provision of intelligent facilities for constructing adaptation plans on-the-fly. We showcase our approach using a team of autonomous mobile robots that engage in a leader-follower scenario and experience a wide variety of failures, activating distinct recovery mechanisms.
{"title":"Architecture-driven self-adaptation and self-management in robotics systems","authors":"George T. Edwards, Joshua Garcia, H. Tajalli, D. Popescu, N. Medvidović, G. Sukhatme, Brad Petrus","doi":"10.1109/SEAMS.2009.5069083","DOIUrl":"https://doi.org/10.1109/SEAMS.2009.5069083","url":null,"abstract":"We describe an architecture-centric design and implementation approach for building self-adapting and self-managing robotics systems. The basis of our approach is the concept of meta-level components, which facilitate adaptation and management of application-level components. Our approach applies two key enhancements to the traditional usage of meta-level components: (1) we utilize three distinct, specialized meta-level components for the three fundamental activities of a robotics system: sensing, computation, and control, and (2) we allow meta-level components to themselves be monitored, managed and adapted by other (higher layer) meta-level components. In this way, our approach flexibly supports adaptive layered architectures of arbitrary depth, the specification of arbitrary system adaptation policies, and the provision of intelligent facilities for constructing adaptation plans on-the-fly. We showcase our approach using a team of autonomous mobile robots that engage in a leader-follower scenario and experience a wide variety of failures, activating distinct recovery mechanisms.","PeriodicalId":356454,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128575436","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}