323 research outputs found

    A graph-based aspect interference detection approach for UML-based aspect-oriented models

    Get PDF
    Aspect Oriented Modeling (AOM) techniques facilitate separate modeling of concerns and allow for a more flexible composition of these than traditional modeling technique. While this improves the understandability of each submodel, in order to reason about the behavior of the composed system and to detect conflicts among submodels, automated tool support is required. Current techniques for conflict detection among aspects generally have at least one of the following weaknesses. They require to manually model the abstract semantics for each system; or they derive the system semantics from code assuming one specific aspect-oriented language. Defining an extra semantics model for verification bears the risk of inconsistencies between the actual and the verified design; verifying only at implementation level hinders fixng errors in earlier phases. We propose a technique for fully automatic detection of conflicts between aspects at the model level; more specifically, our approach works on UML models with an extension for modeling pointcuts and advice. As back-end we use a graph-based model checker, for which we have defined an operational semantics of UML diagrams, pointcuts and advice. In order to simulate the system, we automatically derive a graph model from the diagrams. The result is another graph, which represents all possible program executions, and which can be verified against a declarative specification of invariants.\ud To demonstrate our approach, we discuss a UML-based AOM model of the "Crisis Management System" and a possible design and evolution scenario. The complexity of the system makes con°icts among composed aspects hard to detect: already in the case of two simulated aspects, the state space contains 623 di®erent states and 9 different execution paths. Nevertheless, in case the right pruning methods are used, the state-space only grows linearly with the number of aspects; therefore, the automatic analysis scales

    Metamodel for Tracing Concerns across the Life Cycle

    Get PDF
    Several aspect-oriented approaches have been proposed to specify aspects at different phases in the software life cycle. Aspects can appear within a phase, be refined or mapped to other aspects in later phases, or even disappear.\ud Tracing aspects is necessary to support understandability and maintainability of software systems. Although several approaches have been introduced to address traceability of aspects, two important limitations can be observed. First, tracing is not yet tackled for the entire life cycle. Second, the traceability model that is applied usually refers to elements of specific aspect languages, thereby limiting the reusability of the adopted traceability model.We propose the concern traceability metamodel (CTM) that enables traceability of concerns throughout the life cycle, and which is independent from the aspect languages that are used. CTM can be enhanced to provide additional properties for tracing, and be instantiated to define\ud customized traceability models with respect to the required aspect languages. We have implemented CTM in the tool M-Trace, that uses XML-based representations of the models and XQuery queries to represent tracing information. CTM and M-Trace are illustrated for a Concurrent Versioning System to trace aspects from the requirements level to architecture design level and the implementation

    Traceability approach for conflict dissolution in handling requirements crosscutting

    Get PDF
    Requirements crosscutting in software development and maintenance has gradually become an important issue in software engineering. There are growing needs of traceability support to achieve some possible understanding in requirements crosscutting throughout phases in software lifecycle. It is aimed to manage practical process in addressing requirements crosscutting at various phases in order to comply with industrial standard. However, due to its distinct nature, many recent works are focusing on identification, modularization, composition and conflict dissolution of requirements crosscutting which are mostly saturated at requirements level. These works fail to practically specify crosscutting properties for functional and nonfunctional requirements at requirements, analysis and design phases. Therefore, this situation leads to inability to provide sufficient support for software engineers to manage requirements crosscutting across the remaining development phases. This thesis proposes a new approach called the Identification, Modularization, Design Composition Rules and Conflict Dissolutions (IM-DeCRuD) that provides a special traceability to facilitate better understanding and reasoning for engineering tasks towards requirements crosscutting during software development and evolution. This study also promotes a simple but significant way to support pragmatic changes of crosscutting properties at requirements, analysis and design phases for medium sizes of software development and maintenance projects. A tool was developed based on the proposed approach to support four main perspectives namely requirements specification definition, requirements specification modification, requirements prioritization setting and graphics visualizing representation. Software design components are generated using Generic Modeling Environment (GME) with Java language interpreter to incorporate all these features. The proposed IM-DeCRuD was applied to an industrial strength case study of medium-scaled system called myPolicy. The tool was evaluated and the results were verified by some experts for validation and opinion. The feedbacks were then gathered and analyzed using DESMET qualitative method. The outcomes show that the IM-DeCRuD is applicable to address some tedious job of engineering process in handling crosscutting properties at requirements, analysis and design phases for system development and evolution

    Distributed security in closed distributed systems

    Get PDF

    Moral decision making in network enabled operations

    Get PDF

    Aspect-based approach to modeling access control policies, An

    Get PDF
    Department Head: L. Darrell Whitley.2007 Spring.Includes bibliographical references (pages 119-126).Access control policies determine how sensitive information and computing resources are to be protected. Enforcing these policies in a system design typically results in access control features that crosscut the dominant structure of the design (that is, features that are spread across and intertwined with other features in the design). The spreading and intertwining of access control features make it difficult to understand, analyze, and change them and thus complicate the task of ensuring that an evolving design continues to enforce access control policies. Researchers have advocated the use of aspect-oriented modeling (AOM) techniques for addressing the problem of evolving crosscutting features. This dissertation proposes an approach to modeling and analyzing crosscutting access control features. The approach utilizes AOM techniques to isolate crosscutting access control features as patterns described by aspect models. Incorporating an access control feature into a design involves embedding instantiated forms of the access control pattern into the design model. When composing instantiated access control patterns with a design model, one needs to ensure that the resulting composed model enforces access control policies. The approach includes a technique to verify that specified policies are enforced in the composed model. The approach is illustrated using two well-known access control models: the Role- Based Access Control (RBAC) model and the Bell-LaPadula (BLP) model. Features that enforce RBAC and BLP models are described by aspect models. We show how the aspect models can be composed to create a new hybrid access control aspect model. We also show how one can verify that composition of a base (primary) design model and an aspect model that enforces specified policies produces a composed model in which the policies are still enforced

    Model-Driven Development of Aspect-Oriented Software Architectures

    Full text link
    The work presented in this thesis of master is an approach that takes advantage of the Model-Driven Development approach for developing aspect-oriented software architectures. A complete MDD support for the PRISMA approach is defined by providing code generation, verification and reusability properties.Pérez Benedí, J. (2007). Model-Driven Development of Aspect-Oriented Software Architectures. http://hdl.handle.net/10251/12451Archivo delegad

    AspectJ vs. MEDIATOR: análisis y comparación del tratamiento de conflictos entre aspectos

    Get PDF
    La ocurrencia de conflictos entre aspectos es una consecuencia de la descomposición de los sistemas en el desarrollo orientado a aspectos. Dicho fenómeno es independiente a las herramientas y requiere un especial tratamiento ya que la activación de ciertos conflictos puede provocar comportamientos no deseados, inconsistentes e imprecisión en la ejecución del software. Pero el tratamiento de conflicto es una tarea compleja y crítica si las herramientas de programación no disponen de soporte adecuado. En este trabajo se comparan dos herramientas POA: AspectJ y MEDIATOR en cuanto al tiempo de implementación y mantenimiento teniendo en cuenta el tratamiento de conflictos.The occurrence of conflicts among aspects is a consequence of the decomposition of the systems in the aspect-oriented development. This phenomenon is independent of the tools and it requires a special treatment since the activation of certain conflicts can cause non-wanted and unstable behaviors of the software execution. But the conflict treatment is a complex and critic task when the programming tools do not provide appropriate support. In this work two AOP tools are compared: AspectJ and MEDIATOR, bearing in mind the treatment of conflicts.Workshop de Ingeniería de Software y Bases de Datos (WISBD)Red de Universidades con Carreras en Informática (RedUNCI

    Conflictos entre aspectos en etapas del desarrollo de software

    Get PDF
    La ausencia de métodos, estrategias y mecanismos automáticos y flexibles para la detección y resolución de conflictos entre aspectos puede tener consecuencias graves en la ejecución del software. Ante la presencia de determinadas situaciones conflictivas el comportamiento del software se puede tornar impredecible, indeseado e incierto. La construcción y desarrollo de soluciones que superen estas deficiencias resulta una tarea importante para el desarrollo orientado a aspectos [1]. El presente artículo describe el tópico de estudio, los trabajos relacionados al tema y las acciones a realizar a través del proyecto de investigación Conflictos entre Aspectos.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Conflictos entre aspectos en etapas del desarrollo de software

    Get PDF
    La ausencia de métodos, estrategias y mecanismos automáticos y flexibles para la detección y resolución de conflictos entre aspectos puede tener consecuencias graves en la ejecución del software. Ante la presencia de determinadas situaciones conflictivas el comportamiento del software se puede tornar impredecible, indeseado e incierto. La construcción y desarrollo de soluciones que superen estas deficiencias resulta una tarea importante para el desarrollo orientado a aspectos [1]. El presente artículo describe el tópico de estudio, los trabajos relacionados al tema y las acciones a realizar a través del proyecto de investigación Conflictos entre Aspectos.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI
    corecore