64 research outputs found

    True and Transparent Distributed Composition of Aspect-Components

    No full text
    Abstract. Next-generation middleware must support complex compositions that involve dependencies between multiple components residing in different contexts and locations in the network. In this paper we present DyMAC, an aspect-oriented middleware platform that offers an aspect-component model to support such complex distributed compositions by means of advanced remote pointcuts, transparent remote advice and distributed instantiation scopes for aspects. The remote pointcuts can evaluate on calls and executions of remote method invocations and can also evaluate on the distributed context. The remote advice can be executed transparently in a remote environment while still respecting the full semantics of existing types of advice, including around advice. The component model unifies aspects and components into one entity with one interaction standard. To our knowledge, DyMAC middleware is the first AO middleware platform that distributes the concepts of aspect-oriented composition completely and transparently.

    A Middleware Layer for Flexible and Cost-Efficient Multi-tenant Applications

    No full text
    Part 7: Security and InteroperabilityInternational audienceApplication-level multi-tenancy is an architectural design principle for Software-as-a-Service applications to enable the hosting of multiple customers (or tenants) by a single application instance. Despite the operational cost and maintenance benefits of application-level multi-tenancy, the current middleware component models for multi-tenant application design are inflexible with respect to providing different software variations to different customers.In this paper we show that this limitation can be solved by a multi-tenancy support layer that combines dependency injection with middleware support for tenant data isolation. Dependency injection enables injecting different software variations on a per tenant basis, while dedicated middleware support facilitates the separation of data and configuration metadata between tenants. We implemented a prototype on top of Google App Engine and we evaluated by means of a case study that the improved flexibility of our approach has little impact on operational costs and upfront application engineering costs

    Joosen: Managing concern interactions in middleware

    No full text
    Abstract. In this paper, we define a conceptual model that describes the relevant information about interactions between concerns that needs to be captured. We have developed a prototype system that, starting from this model, can automatically generate a set of rules that enables software developers to improve their understanding of concerns in middleware and their interactions. This rule-base is the basis for an expert system that can be queried about particular concern interactions and a software engineering tool to support an application development team.

    An Integrated Approach for Software Design Checking Using Design Rationale

    No full text
    Abstract. Design Rationale (DR), the reasons behind decisions made while designing, offers a richer view of both the product and the decision-making process by providing the designers intent behind the decisions. DR is also valuable for checking to ensure that the intent was adhered to throughout the design, as well as pointing out any unresolved (or undocumented) issues that remain open. While there is little doubt of the value of DR, it is typically not captured during design. SEURAT (Software Engineering Using RATionale) is a system we have developed to explore uses of design rationale. It supports both the display of and inferencing over the rationale to point out any unresolved issues or inconsistencies. SEURAT is tightly integrated with a software development environment so that rationale capture and use can become integrated into the software development process. 1
    corecore