9 research outputs found

    Domain-specific languages

    Get PDF
    Domain-Specific Languages are used in software engineering in order to enhance quality, flexibility, and timely delivery of software systems, by taking advantage of specific properties of a particular application domain. This survey covers terminology, risks and benefits, examples, design methodologies, and implementation techniques of domain-specific languages as used for the construction and maintenance of software systems. Moreover, it covers an annotated selection of 75 key publications in the area of domain-specific languages

    Multi-Pradigm Design with Feature Modeling.

    Get PDF
    Abstract. In this article, a method for selecting paradigms, viewed as solution domain concepts, appropriate for given application domain concepts is proposed. In this method, denoted as multi-paradigm design with feature modeling, both application and solution domain are modeled using feature modeling. The selection of paradigms is performed in the process of feature modeling based transformational analysis as a paradigm instantiation over application domain concepts. The output of transformational analysis is a set of paradigm instances annotated with the information about the corresponding application domain concepts and features. According to these paradigm instances, the code skeleton is being designed. The approach is presented in conjunction with its specialization to AspectJ programming language. Transformational analysis performed according to the AspectJ paradigm model enables an early aspect identification

    Organization Domain Modeling (ODM): Formalizing the Core Domain Modeling Life Cycle

    No full text
    : Researchers and practitioners are looking for systematic ways of comparing domain analysis (DA) methods and related technologies such as systems modeling. Less attention has been paid to comparing DA methods in terms of certain core methodological issues, including problems of scoping, contextualizing, descriptive vs. prescriptive modeling, and formalized models of variability. This paper presents key aspects of Organization Domain Modeling (ODM), a systematic domain analysis method structured in terms of a core domain modeling life cycle directly addressing these methodological concerns. 1 Keywords: domain engineering, domain analysis, domain modeling, variability modeling, organization domain, stakeholder model, feature modeling 1.0 Introduction Since the seminal work of Neighbors and other researchers in the early 1980's, domain analysis (DA) has emerged as a distinct area of research and practice within the software reuse research community [9,10]. There are now a number of pu..

    Integración de técnicas de análisis de dominio con especificaciones RSL

    Get PDF
    Los métodos formales han alcanzado un uso más masivo en la construcción de sistemas reales, ya que ayudan a aumentar la calidad del software y la fiabilidad. Las especificaciones formales pueden ser usadas a lo largo de todo el ciclo de vida del desarrollo de software y también este desarrollo puede ser automatizado por medio de herramientas de amplia variedad y propósito como model checking, verificación, animación, generación de datos para testing, como también refinamiento de especificaciones a implementaciones. Cuando las especificaciones se usan en etapas iniciales del proceso, se ayuda a revelar ambigüedades, omisiones, inconsistencias, errores o interpretaciones erróneas que podrían ser detectados durante pruebas costosas y en las fases de depuración. Sin embargo, las especificaciones formales no son muy familiares para los stakeholders, cuya participación activa es crucial en los primeros estados del proceso de desarrollo de software para entender y comunicar un problema. Estas actividades son especialmente útiles en el análisis de dominio, pues su primera etapa consiste en capturar el conocimiento de un dominio en particular, lo que hace necesario disponer de un modelo que sea comprensible por los ingenieros de software y expertos del dominio. Para contribuir a reducir esta brecha, se trabaja en la integración de una fase de análisis de dominio con el método formal de desarrollo de software RAISE, a fin de especificar una familia de sistemas para producir aplicaciones cualitativas y fiables en un dominio, promover la reutilización temprana y reducción de los costos de desarrollo.Facultad de Informátic

    Managing Product Line Asset Bases

    Get PDF
    Product lines are predicated on collecting assets common to the desired product portfolio, commonly known as the asset base. For many product lines, the size of asset base has become large enough to create a variety of difficulties. The techniques for managing large product line asset bases are unaddressed in the literature. This research presents new techniques that take advantage of asset base characteristics, unavailable in more general collections, to both reduce the number of assets and to organize the asset base that go beyond what is possible with other software collections. The result is an asset base that is more efficient to use. Research related to improving the organization of the asset base was performed by taking the component assets of a research SPL and arranging them based on three different organizational criteria - according to the structure of the architecture, important abstractions (Key Domain Abstractions), and product features. The three resulting organizations were then studied using four evaluation criteria - natural division of assets into groups (assets fit into the groups provided by the organization), easy to map assets to organization criteria (mapping between the selection of a particular product variant and the assets needed to produce it), reasonably sized groups, and similarly sized groups. The effectiveness of the different organizations was then compared and recommendations concerning asset base organization provided. The literature indicates that large product lines are likely to contain multiple assets that provide the same functionality, but that differ in the program context that they support. The presence of the duplicative assets creates a number of problems including organization difficulties. In a SPL these differences in program context are the result of requirements expressed at the product`s variation points. The limited differences in program context make it practical to attempt to provide a modular solution which permits the desired variation to be assembled as needed. The research explored a number of different implementation mechanisms to provide these modular variation points. The result is a recommendation on how to implement SPL variation points provided in the form of a pattern language

    A configuration-based domain-specific rule generation framework for process model customization

    Get PDF
    In today’s changing world, there is an ever-increasing demand and need for software reuse in applications, where the process model needs to be reused in different applications in a domain-specific environment. The process model is required to adapt and implement changes promptly at run-time, in response of the end-user configuration requirements. Furthermore, reusability is emerging strongly as a necessary underlying capability, particularly for customization of business in a dynamic environment where end-users can select their requirements to achieve a specific goal. Such adaptations are in general, performed by non-technical end-users which can lead to losing a significant number of person-days and which can also open up possibilities to introduce errors into the system. These scenarios call for - indeed cry out for - a system with a configurable and customizable business process, operable by users with limited technical expertise. Research aims to provide a framework for generating the rule language and configuring domain constraints. This framework builds upon the core idea of Software Product Lines Engineering (SPLE) and Model-Driven Architecture (MDA). The SPLE provides a platform that includes the variability model. Variability models offer features where end-users can select features and customize possible changes in the domain template, which is the container for domain and process models. The user selects their requirements as a feature from feature models and generates rules from domain models using MDA. Then, the generated rules are translated from a high-level domain model, based on the requirements of the end-user. On the other hand, the weaving model is responsible for reflecting activation and de-activation of features of variabilities in the domain template. The usability of the proposed framework is evaluated with a user study in the area of Digital Content Technology. The results demonstrate that usability improvements can be achieved by using the proposed techniques. The framework can be used to support semi-automatic configuration that is efficient, effective and satisfactory

    From information systems requirements to service-oriented logical architectures

    Get PDF
    Tese de doutoramento do Programa de Doutoramento em InformáticaIn a world where there are no certain and doubt prevails, it is not possible to take a based decision about the construction of an artifact able to deliver a set of functionalities of which only the intended output is known. Based on the previous premise, this work details a method and a process for, starting from a very high-level of abstraction of an information system requirements, create a representation of the software solution that is able to implement the desired functionalities and ending with an assessment of the entire process. The presented V-Model approach for creating the information system’s representation and the following transition to the V+V-Model approach for the creation of the software solution representation is able to deliver a set of modeling artifacts that are presented to development teams in order to build those represented artifacts. The V+V-Model approach and the adopted models alongside the entire approach are validated using the architecture validation method ARID and applied in a real industrial case study, the ISOFIN Project, framed within business model conditioned by cloud-related and service-oriented target scenarios.Num mundo onde não há certezas e as dúvidas imperam, não é possível efetuar decisões baseadas na construção de artefactos capazes de disponibilizar funcionalidades, das quais só se conhece o resultado esperado. Baseado na premissa anterior, este trabalho detalha um método e um processo para, a partir de um nível de abstração muito elevado dos requisitos de um sistema de informação, criar a representação de uma solução de software capaz de implementar as funcionalidades desejadas e, em simultâneo, avaliar se o processo de construção foi corretamente executado. O processo apresentado, a aproximação baseada em V-Model, para criar contexto para a representação do sistema de informação e a transição do V-Model para o V+V-Model, para a criação da representação da solução de software, são capazes de disponibilizar um conjunto de artefactos que que podem ser entregues às equipas de desenvolvimento de forma a executar a construção desses mesmos artefactos. O processo baseado no V+V-Model, assim como os modelos usados são validados usando uma adaptação de um método de avaliação de arquiteturas, o ARID. São também aplicados a um caso de estudo derivado de um caso industrial real, chamado Projeto ISOFIN. Este projeto é condicionado por fatores relacionados com cenários derivados de cloud e orientação a serviços.O projeto ISOFIN foi realizado ao abrigo do Quadro de Referência Estratégico Nacional, com a referência QREN 2010/013837.A Fundação para a Ciência e Tecnologia, financiou o presente trabalho, ao abrigo da Bolsa de Douramento em Empresas com a referência SFRH/BDE/33297/2008

    Méthode pour la définition des langages dédiés basée sur le métamodèle ISO/IEC 24744

    Get PDF
    Au cours des dernières années, il y a eu un intérêt croissant pour les langages dédiés (Domain Specific Languages (DSL)). Cet intérêt est motivé par l'émergence d'approches telles que l’ingénierie dirigée par les modèles, l’architecture dirigée par les modèles, les lignes de produits logiciels (SPL), les usines à logiciels et le développement dirigé par les modèles. Alors qu’au fond l'objectif de ces approches est d'élever le niveau d'abstraction du développement logiciel et d’augmenter le degré d’automatisation en utilisant des modèles de domaine précis et facilement exploitables par les machines, on constate que ces approches manquent de langages capables de produire de tels modèles et qu’elles sont toujours à la recherche de solutions pour mieux soutenir le développement selon ce nouveau paradigme. À cet égard, beaucoup de spécialistes considèrent les langages dédiés comme une solution capable d’aller au delà des modèles limités à la documentation et de produire des modèles précis prêts à être traités automatiquement par la machine. Les langages dédiés ont démontré un grand potentiel pour augmenter la productivité, améliorer la maintenabilité, élever le niveau d'abstraction, et produire des modèles exécutables. Toutefois, le développement de langages dédiés fiables et intègres est une activité difficile et coûteuse qui demande à la fois une connaissance du domaine et des compétences en développement des langages. Ainsi, l’établissement d’une infrastructure rendant le développement de DSL plus facile et plus accessible constituera une étape importante vers la concrétisation et la consolidation des approches dirigées par les modèles. Afin de développer cette infrastructure, nous pensons que les efforts doivent être axés sur trois domaines principaux : 1) les processus qui permettent d’offrir une approche disciplinée en matière de développement des DSL, 2) les outils pour soutenir le développement et la maintenance de ces DSL et 3) les standards pour assurer l’unification du développement et l’interopérabilité entre les outils. Cette thèse est une contribution au domaine des processus. Nous y proposons une méthode de développement de DSL basée sur la norme ISO/IEC 24744 (Software Engineering-Metamodel for Development Methodologies - SEMDM). La méthode est générée à partir du métamodèle décrit dans la norme. Elle décrit, entre autres, les activités et les tâches à exécuter lors du développement d’un DSL, les artefacts à manipuler (créer, utiliser ou modifier) et les personnes impliquées. La méthode fournit également, lorsque possible, des techniques et des lignes directrices expliquant comment certains éléments de la méthode peuvent être utilisés
    corecore