Results 1 - 10
of
21
An integrated self-testing framework for autonomic computing systems
- Journal of Computers
"... Abstract — As the technologies of autonomic computing become more prevalent, it is essential to develop methodologies for testing their dynamic self-management operations. Self-management features in autonomic systems induce structural and behavioral changes to the system during its execution, which ..."
Abstract
-
Cited by 11 (2 self)
- Add to MetaCart
Abstract — As the technologies of autonomic computing become more prevalent, it is essential to develop methodologies for testing their dynamic self-management operations. Self-management features in autonomic systems induce structural and behavioral changes to the system during its execution, which need to be validated to avoid costly system failures. The high level of automation in autonomic systems also means that human errors such as incorrect goal specification could yield potentially disastrous effects on the components being managed; further emphasizing the need for runtime testing. In this paper we propose a self-testing framework for autonomic computing systems to dynamically validate change requests. Our framework extends the current architecture of autonomic systems to include self-testing as an implicit characteristic, regardless of the self-management features being implemented. We validate our framework by creating a prototype of an autonomic system that incorporates the ability to self-test. Index Terms — autonomic computing, testing, validation. I.
Service Clouds: A distributed infrastructure for composing autonomic communication services
- IN PROCEEDINGS OF THE 2ND IEEE INTERNATIONAL SYMPOSIUM ON DEPENDABLE, AUTONOMIC AND SECURE COMPUTING (DASC’06
, 2005
"... This paper describes Service Clouds, a distributed infrastructure designed to facilitate rapid prototyping and deployment of services that enhance communication performance, robustness, and security. The infrastructure combines adaptive middleware functionality with an overlay network substrate in o ..."
Abstract
-
Cited by 10 (4 self)
- Add to MetaCart
(Show Context)
This paper describes Service Clouds, a distributed infrastructure designed to facilitate rapid prototyping and deployment of services that enhance communication performance, robustness, and security. The infrastructure combines adaptive middleware functionality with an overlay network substrate in order to support dynamic instantiation and reconfiguration of services. The Service Clouds architecture includes a collection of lowlevel facilities that can be either invoked directly by applications or used to compose more complex services. After describing the Service Clouds architecture, we present results of two experimental case studies conducted on the PlanetLab Internet testbed, the first to improve throughput of bulk data transfer, and the second to enhance the robustness of multimedia streaming.
Goal-oriented specification of adaptation requirements engineering in adaptive systems
- in: Proceedings of the Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS’06
, 2006
"... Adaptive software is being used increasingly frequently by various users, such as the medical community, software industry, and in response to terror attacks. Therefore, understanding the requirements of an adaptive system is crucial to developing them correctly. Developers need to be able to reason ..."
Abstract
-
Cited by 10 (0 self)
- Add to MetaCart
(Show Context)
Adaptive software is being used increasingly frequently by various users, such as the medical community, software industry, and in response to terror attacks. Therefore, understanding the requirements of an adaptive system is crucial to developing them correctly. Developers need to be able to reason about the requirements of a system’s adaptive behavior. Adaptation semantics are intended to describe how systems behave during adaptation. Previously, Zhang and Cheng formally specified three commonly occurring adaptation semantics in terms of Adapt operator-extended LTL (A-LTL). This paper presents goal-oriented specifications of these three adaptation semantics. These specifications, specified with the KAOS methodology, provide a graphical wrapper to the formal A-LTL specifications of the semantics. The combination of the goal-oriented, graphical KAOS specifications and A-LTL specifications provides the benefits of formal specifications as well as the benefits of an easier to understand, graphical, and more intuitive presentation of adaptive systems requirements. This work also provides a means to incorporate the adaptation semantics into the goaloriented requirements specifications of an adaptive system. Categories and Subject Descriptors: D.2.1 [SOFTWARE ENGINEERING]: Requirements/Specifications goal-driven requirements engineering, formal methods, reliability
WISEKIT: A Distributed Middleware to Support Application-level Adaptation
- in Sensor Networks, The 9th IFIP international conference on Distributed Applications and Interoperable Systems (DAIS'09), LNCS
"... HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte p ..."
Abstract
-
Cited by 8 (4 self)
- Add to MetaCart
(Show Context)
HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et a ̀ la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.
Engineering Reconfigurable Distributed Software Systems: Issues Arising for Pervasive Computing
"... Abstract. This chapter establishes a common base for discussing reconfigurability in distributed software systems in general and in pervasive systems in particular, by introducing a generic reconfiguration cycle. Following this cycle, we discuss in detail three former efforts on reconfigurable perva ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
(Show Context)
Abstract. This chapter establishes a common base for discussing reconfigurability in distributed software systems in general and in pervasive systems in particular, by introducing a generic reconfiguration cycle. Following this cycle, we discuss in detail three former efforts on reconfigurable pervasive systems, and draw conclusions about the capacity of existing approaches to deal with open, dynamic, ad hoc environments. We, then, outline our approach towards uncontrolled reconfiguration targeting environments in which no centralized coordination or prior awareness between services being composed is assumed. Our solution supports awareness of service semantics and related service discovery, configuration change detection and state transfer, interface-aware dynamic adaptation of service orchestrations and conversation-aware checkpointing and recovery. 1
A Reusable Object-Oriented Design to Support Self-Testable Autonomic Software
"... As the enabling technologies of autonomic computing continue to advance, it is imperative for researchers to exchange the details of their proposed techniques for designing, developing, and validating autonomic systems. Many of the software engineering issues related to building dependable autonomic ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
(Show Context)
As the enabling technologies of autonomic computing continue to advance, it is imperative for researchers to exchange the details of their proposed techniques for designing, developing, and validating autonomic systems. Many of the software engineering issues related to building dependable autonomic systems can only be revealed by studying detailed designs and prototype implementations. In this paper we present a reusable object-oriented design for developing self-testable autonomic software. Our design aims to reduce the effort required to develop autonomic systems that are capable of runtime testing. Furthermore, we provide lowlevel implementation details of a case study, Autonomic Job Scheduler (AJS), developed using the proposed design.
Automatically generating adaptive logic to balance non-functional tradeoffs during reconfiguration
- in Proceedings of the 7th International Conference on Autonomic Computing
, 2010
"... Increasingly, high-assurance software systems apply selfreconfiguration in order to satisfy changing functional and non-functional requirements. Most self-reconfiguration approaches identify a target system configuration to provide the desired system behavior, then apply a series of reconfiguration ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
(Show Context)
Increasingly, high-assurance software systems apply selfreconfiguration in order to satisfy changing functional and non-functional requirements. Most self-reconfiguration approaches identify a target system configuration to provide the desired system behavior, then apply a series of reconfiguration instructions to reach the desired target configuration. Collectively, these reconfiguration instructions define an adaptation path. Although multiple satisfying adaptation paths may exist, most self-reconfiguration approaches select adaptation paths based on a single criterion, such as minimizing reconfiguration cost. However, different adaptation paths may represent tradeoffs between reconfiguration costs and other criteria, such as performance and reliability. This paper introduces an evolutionary computationbased approach to automatically evolve adaptation paths that safely transition an executing system from its current configuration to its desired target configuration, while balancing tradeoffs between functional and non-functional requirements. The proposed approach can be applied both at design time to generate suites of adaptation paths, as well as at run time to evolve safe adaptation paths to handle changing system and environmental conditions. We demonstrate the effectiveness of this approach by applying it to the dynamic reconfiguration of a collection of remote data mirrors, with the goal of minimizing reconfiguration costs while maximizing reconfiguration performance and reliability.
Integrating IoT and IoS with a Component-Based approach *
"... There is a growing interest in leveraging Service Oriented Architectures (SOA) in domains such as home automation, automotive, mobile phones or e-Health. With the basic idea (supported in e.g. OSGi) that components provide services, it makes it possible to smoothly integrate the Internet of Things ( ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
(Show Context)
There is a growing interest in leveraging Service Oriented Architectures (SOA) in domains such as home automation, automotive, mobile phones or e-Health. With the basic idea (supported in e.g. OSGi) that components provide services, it makes it possible to smoothly integrate the Internet of Things (IoT) with the Internet of Services (IoS). The paradigm of the IoS indeed offers interesting capabilities in terms of dynamicity and interoperability. However in domains that involve “things ” (e.g. appliances), there is still a strong need for loose coupling and a proper separation between types and instances that are well-known in Component-Based approaches but that typical SOA fail to provide. This paper presents how we can still get the best of both worlds by augmenting SOA with a Component-Based approach. We illustrate our approach with a case study from the domain of home automation. Acknowledgment
Using Models at Runtime to Address Assurance for Self-Adaptive Systems
, 2014
"... A self-adaptive software system modifies its behavior at runtime in response to changes within the system or in its execution environment. The ful-fillment of the system requirements needs to be guaranteed even in the presence of adverse conditions and adaptations. Thus, a key challenge for self-a ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
A self-adaptive software system modifies its behavior at runtime in response to changes within the system or in its execution environment. The ful-fillment of the system requirements needs to be guaranteed even in the presence of adverse conditions and adaptations. Thus, a key challenge for self-adaptive software systems is assurance. Traditionally, confidence in the correctness of a system is gained through a variety of activities and processes performed at de-velopment time, such as design analysis and testing. In the presence of self-adaptation, however, some of the assurance tasks may need to be performed at runtime. This need calls for the development of techniques that enable contin-uous assurance throughout the software life cycle. Fundamental to the develop-