9 research outputs found

    Aspectual Templates in UML

    Get PDF
    UML Templates allow to capture models whose some of their constituents are parameters. This construct is general enough to be used in many ways, such as generic class representation, Design Pattern modeling, view or aspect-oriented modeling (AOM). In this paper, we concentrate on this last usage and the specific characteristics of so called ''Aspectual Templates". Such templates can be applied to enrich existing models as far as they conform to a required model. Template parameters are exploited here to specify some required model, so that they must be constrained to form a full model structure. After recall of UML templates and their metamodel, we present the specificities of their aspectual interpretation, existing works and identify the issues. Then we show how standard UML templates can be enhanced to capture aspectual ones. For this, a specialization of the UML template metamodel is detailed and OCL constraints are formulated due to this specific interpretation and its proper mechanisms. As a result, this metamodel specialization is fully compatible with the existing one so that aspectual templates are full UML standard ones. Finally, we present an algorithm which constructs the result of the application of an Aspectual Template to a model. This algorithm also works for aspectual template to template application. Presented results were implemented and made available in the EMF (Eclipse Modeling Framework) technology

    Advances in component-oriented programming

    Get PDF
    WCOP 2006 is the eleventh event in a series of highly successful workshops, which took place in conjunction with every ECOOP since 1996. Component oriented programming (COP) has been described as the natural extension of object-oriented programming to the realm of independently extensible systems. Several important approaches have emerged over the recent years, including component technology standards, such as CORBA/CCM, COM/COM+, J2EE/EJB, and .NET, but also the increasing appreciation of software architecture for component-based systems, and the consequent effects on organizational processes and structures as well as the software development business as a whole. COP aims at producing software components for a component market and for late composition. Composers are third parties, possibly the end users, who are not able or willing to change components. This requires standards to allow independently created components to interoperate, and specifications that put the composer into the position to decide what can be composed under which conditions. On these grounds, WCOP\u2796 led to the following definition: "A component is a unit of composition with contractually specified interfaces and explicit context dependencies only. Components can be deployed independently and are subject to composition by third parties." After WCOP\u2796 focused on the fundamental terminology of COP, the subsequent workshops expanded into the many related facets of component software. WCOP 2006 emphasizes reasons for using components beyond reuse. While considering software components as a technical means to increase software reuse, other reasons for investing into component technology tend to be overseen. For example, components play an important role in frameworks and product-lines to enable configurability (even if no component is reused). Another role of components beyond reuse is to increase the predictability of the properties of a system. The use of components as contractually specified building blocks restricts the degrees of freedom during software development compared to classic line-by-line programming. This restriction is beneficial for the predictability of system properties. For an engineering approach to software design, it is important to understand the implications of design decisions on a system\u27s properties. Therefore, approaches to evaluate and predict properties of systems by analyzing its components and its architecture are of high interest. To strengthen the relation between architectural descriptions of systems and components, a comprehensible mapping to component-oriented middleware platforms is important. Model-driven development with its use of generators can provide a suitable link between architectural views and technical component execution platforms. WCOP 2006 accepted 13 papers, which are organised according to the program below. The organisers are looking forward to an inspiring and thought provoking workshop. The organisers thank Jens Happe and Michael Kuperberg for preparing the proceedings volume

    Conceptual schemas generation from organizacional model in an automatic software production process

    Full text link
    Actualmente, la ingeniería de software ha propuesto múltiples técnicas para mejorar el desarrollo de software, sin embargo, la meta final no ha sido satisfecha. En muchos casos, el producto software no satisface las necesidades reales de los clientes finales del negocio donde el sistema operará. Uno de los problemas principales de los trabajos actuales es la carencia de un enfoque sistemático para mapear cada concepto de modelado del dominio del problema (modelos organizacionales), en sus correspondientes elementos conceptuales en el espacio de la solución (modelos conceptuales orientados a objetos). El principal objetivo de esta tesis es proveer un enfoque metodológico que permita generar modelos conceptuales y modelos de requisitos a partir de descripciones organizacionales. Se propone el uso de tres disciplinas, distintas pero complementarias (modelado organizacional, requisitos de software y modelado conceptual) para lograr este objetivo. La tesis describe un proceso de elicitación de requisitos que permite al usuario crear un modelo de negocios que representa la situación actual del negocio (requisitos tempranos). Nosotros consideramos que este modelo, el cual refleja la forma en la que se implementan actualmente los procesos de negocio, es la fuente correcta para determinar la funcionalidad esperada del sistema a desarrollar. Se propone también un proceso para identificar los elementos que son relevantes para ser automatizados a partir del modelo de negocio. Como resultado de este proceso se genera un modelo intermedio que representa los requisitos del sistema de software. Finalmente, presentamos un conjunto de guías sistemáticas para generar un esquema conceptual orientado a objetos a partir del modelo intermedio. Nosotros también exploramos, como solución alternativa, la generación de una especificación de requisitos tardíos a partir del modelo intermedio.Martínez Rebollar, A. (2008). Conceptual schemas generation from organizacional model in an automatic software production process [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/3304Palanci

    Engineering Adaptive Model-Driven User Interfaces for Enterprise Applications

    Get PDF
    Enterprise applications such as enterprise resource planning systems have numerous complex user interfaces (UIs). Usability problems plague these UIs because they are offered as a generic off-the-shelf solution to end-users with diverse needs in terms of their required features and layout preferences. Adaptive UIs can help in improving usability by tailoring the features and layout based on the context-of-use. The model-driven UI development approach offers the possibility of applying different types of adaptations on the various UI levels of abstraction. This approach forms the basis for many works researching the development of adaptive UIs. Yet, several gaps were identified in the state-of-the-art adaptive model-driven UI development systems. To fill these gaps, this thesis presents an approach that offers the following novel contributions: - The Cedar Architecture serves as a reference for developing adaptive model-driven enterprise application user interfaces. - Role-Based User Interface Simplification (RBUIS) is a mechanism for improving usability through adaptive behavior, by providing end-users with a minimal feature-set and an optimal layout based on the context-of-use. - Cedar Studio is an integrated development environment, which provides tool support for building adaptive model-driven enterprise application UIs using RBUIS based on the Cedar Architecture. The contributions were evaluated from the technical and human perspectives. Several metrics were established and applied to measure the technical characteristics of the proposed approach after integrating it into an open-source enterprise application. Additional insights about the approach were obtained through the opinions of industry experts and data from real-life projects. Usability studies showed the approach’s ability to significantly improve usability in terms of end-user efficiency, effectiveness and satisfaction
    corecore