228,277 research outputs found

    Components and Aspects Composition Planning for Ubiquitous Adaptive Services

    Get PDF
    International audienceIn ubiquitous environments, resources limitations and fluctuations combined with device mobility requires the dynamic adaptation of mobile applications. This paper reports on an extension of the MUSIC adaptation middleware to support aspect-oriented programming in order to handle cross-cutting adaptations. Basically, this extension specifies an architectural model for defining applications as a composition of aspects and components. The dynamic adaptation of an application in a given context is realised by selecting the appropriate component and aspect implementations using utility functions as a mean of optimising the overall QoS. Our approach and middleware are implemented and tested on top of OSGi framework

    Dynamic Deployment and Monitoring of Security Policies

    Get PDF
    INTER-TRUST is a framework for the specification, negotiation, deployment and dynamic adaptation of interoperable security policies, in the context of pervasive systems where devices are constantly exchanging critical information through the network. The dynamic adaptation of the security policies at runtime is addressed using Aspect- Oriented Programming (AOP) that allows enforcing security requirements by dynamically weaving security aspects into the applications. However, a mechanism to guarantee the correct adaptation of the functionality that enforces the changing security policies is needed. In this paper, we present an approach with monitoring and detection techniques in order to maintain the correlation between the security policies and the associated functionality deployed using AOP, allowing the INTERTRUST framework automatically reacts when needed.European Union INTER-TRUST FP7-317731Ministerio de Economía y Competitividad TIN2012-34840Junta de Andalucía FamiWare P09-TIC-5231Junta de Andalucía MAGIC P12-TIC181

    Web-GIS models: accomplishing modularity with aspects

    Get PDF
    Spatial concerns of Web geographical information systems (Web-GIS) are inherently crosscutting and volatile: crosscutting because they affect multiple functionalities of Web-GIS systems, and volatile because their status may change often. If these concerns are not modularized properly, the quality of Web-GIS services, particularly with regard to adaptation and evolution, can be severely compromised. This paper uses aspect-orientation to model crosscutting and volatile spatial concerns. By modeling both types of concerns, crosscutting and volatile, as candidate aspects, one can use dynamic weaving to add or remove them from a system at runtime. The aspect-oriented approach proposed starts with the identification and specification of crosscutting concerns and follows by composing these using modeling aspects using a transformation approach, an aspect-oriented modeling technique. The conflicts that can emerge due to the composition order are also taken into consideration. Finally, this paper proposes a set of reusable GIS crosscutting concerns, documenting them in a concern catalogue.Laboratorio de Investigación y Formación en Informática Avanzad

    Aspects of Assembly and Cascaded Aspects of Assembly: Logical and Temporal Properties

    Full text link
    Highly dynamic computing environments, like ubiquitous and pervasive computing environments, require frequent adaptation of applications. This has to be done in a timely fashion, and the adaptation process must be as fast as possible and mastered. Moreover the adaptation process has to ensure a consistent result when finished whereas adaptations to be implemented cannot be anticipated at design time. In this paper we present our mechanism for self-adaptation based on the aspect oriented programming paradigm called Aspect of Assembly (AAs). Using AAs: (1) the adaptations process is fast and its duration is mastered; (2) adaptations' entities are independent of each other thanks to the weaver logical merging mechanism; and (3) the high variability of the software infrastructure can be managed using a mono or multi-cycle weaving approach.Comment: 14 pages, published in International Journal of Computer Science, Volume 8, issue 4, Jul 2011, ISSN 1694-081

    Modeling adaptation with a tuple-based coordination language

    Get PDF
    In recent years, it has been argued that systems and applications, in order to deal with their increasing complexity, should be able to adapt their behavior according to new requirements or environment conditions. In this paper, we present a preliminary investigation aiming at studying how coordination languages and formal methods can contribute to a better understanding, implementation and usage of the mechanisms and techniques for adaptation currently proposed in the literature. Our study relies on the formal coordination language Klaim as a common framework for modeling some adaptation techniques, namely the MAPE-K loop, aspect- and context-oriented programming

    Modeling Adaptation with Klaim

    Get PDF
    In recent years, it has been argued that systems and applications, in order to deal with their increasing complexity, should be able to adapt their behavior according to new requirements or environment conditions. In this paper, we present an investigation aiming at studying how coordination languages and formal methods can contribute to a better understanding, implementation and use of the mechanisms and techniques for adaptation currently proposed in the literature. Our study relies on the formal coordination language Klaim as a common framework for modeling some well-known adaptation techniques: the IBM MAPE-K loop, the Accord component-based framework for architectural adaptation, and the aspect- and context-oriented programming paradigms. We illustrate our approach through a simple example concerning a data repository equipped with an automated cache mechanism

    Open Programming Language Interpreters

    Get PDF
    Context: This paper presents the concept of open programming language interpreters and the implementation of a framework-level metaobject protocol (MOP) to support them. Inquiry: We address the problem of dynamic interpreter adaptation to tailor the interpreter's behavior on the task to be solved and to introduce new features to fulfill unforeseen requirements. Many languages provide a MOP that to some degree supports reflection. However, MOPs are typically language-specific, their reflective functionality is often restricted, and the adaptation and application logic are often mixed which hardens the understanding and maintenance of the source code. Our system overcomes these limitations. Approach: We designed and implemented a system to support open programming language interpreters. The prototype implementation is integrated in the Neverlang framework. The system exposes the structure, behavior and the runtime state of any Neverlang-based interpreter with the ability to modify it. Knowledge: Our system provides a complete control over interpreter's structure, behavior and its runtime state. The approach is applicable to every Neverlang-based interpreter. Adaptation code can potentially be reused across different language implementations. Grounding: Having a prototype implementation we focused on feasibility evaluation. The paper shows that our approach well addresses problems commonly found in the research literature. We have a demonstrative video and examples that illustrate our approach on dynamic software adaptation, aspect-oriented programming, debugging and context-aware interpreters. Importance: To our knowledge, our paper presents the first reflective approach targeting a general framework for language development. Our system provides full reflective support for free to any Neverlang-based interpreter. We are not aware of any prior application of open implementations to programming language interpreters in the sense defined in this paper. Rather than substituting other approaches, we believe our system can be used as a complementary technique in situations where other approaches present serious limitations
    corecore