Spelling suggestions: "subject:"[een] MODEL-DRIVEN DEVELOPMENT"" "subject:"[enn] MODEL-DRIVEN DEVELOPMENT""
21 |
Desenvolvimento baseado em modelos de ferramentas para avaliação da aderência de processos de software em relação a modelos de maturidadeLIBÓRIO, Luiz Felipe de Oliveira 27 August 2014 (has links)
Submitted by Irene Nascimento (irene.kessia@ufpe.br) on 2016-08-22T18:54:13Z
No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
DissertacaoCD_LuizFelipeLiborio.pdf: 3777707 bytes, checksum: a7937e9fc359d5b560c37ea3abf5e74c (MD5) / Made available in DSpace on 2016-08-22T18:54:13Z (GMT). No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
DissertacaoCD_LuizFelipeLiborio.pdf: 3777707 bytes, checksum: a7937e9fc359d5b560c37ea3abf5e74c (MD5)
Previous issue date: 2014-08-27 / Capes / Atualmente, é cada vez mais exigido como critério competitivo a aderência do processo
de software de uma organização a um modelo ou norma de qualidade. Alcançar altos níveis de
aderência é uma tarefa complexa para as organizações, pois a atividade de avaliar essa aderência
exige cuidado ao ser realizada. Com isso, busca-se cada vez mais o apoio de ferramentas de avaliação
computadorizadas, cujo objetivo é agilizar e tornar mais confiável o processo de avaliação
dos processos de software. Ainda assim, um dos fatores que tendem a dificultar a utilização e
propagação do uso de ferramentas é a atualização das normas de qualidade e dos métodos de
avaliação associados, que visam se adequar constantemente às boas práticas do mercado. Ora, se
uma ferramenta é criada baseada na norma de qualidade e no seu método de avaliação, qualquer
mudança em algum dos dois componentes significa mudanças na ferramenta, gerando custos de
manutenção e de distribuição da nova versão da ferramenta. Este trabalho busca criar uma engine
de geração que seja sensível a esses mudanças, sem que seu processo de desenvolvimento necessite
ser executado novamente. Para isto, utiliza o processo MDD (Model-Driven Development)
para atender a esses requisitos, dado que o seu objetivo é transformar elementos mais abstratos
em elementos mais concretos utilizando uma sucessão de transformações, através de modelos. O
objetivo deste trabalho é, então, aplicar as regras de MDD aos modelos de qualidade e métodos
de avaliação. Isto torna possível a criação de ferramentas para avaliação baseada nos modelos
necessários à avaliação. Ou seja, através de um modelo de processo e de um metamodelo da
norma de qualidade, além do método de avaliação, é possível criar de forma automática via
MDD uma ferramenta que possa ser atualizada sob demanda, sem que seu código-fonte precise
ser alterado manualmente. / Nowadays, it is increasingly required as a competitive criteria the adherence of an
organization to a software model or quality standard process. Achieving high levels of adherence
is a complex task for organizations, because the activity of evaluating this adherence requires
care to be performed. Thus, it is increasing the nedd of computerized evaluation tools whose
goal is to speed up and make more reliable the process of evaluating software processes.Still, one
of the factors that tend to hamper the use and propagation of tool use is the change of the quality
standards and assessment methods, which aim to adapt constantly to best practices in the market.
So, if a tool is created based on quality standard and its evaluation method, any change in any of
the two components mean changes in the tool, generating costs of maintaining and distributing
the new version of the tool. This work seeks to develop a tool that is sensitive to that changes,
but without the need of performing its development process again. For that, it uses MDD (Model-
Driven Development) processes meet these requirements, since their goal is to transform more
abstract elements into more concrete elements using a succession of transformations, through
models. So, the goal of this work is to apply the rules of MDD to quality models and assessment
methods. It makes possible to create tools based on models. In other words, through a process
model and a metamodel quality standard, besides the evaluation method, it is possible to create
automatically via MDD a tool that can be updated on demand, without its source code need to be
changed manually. Read more
|
22 |
Projeto e implementação de um gerador automático de serviços web a partir de diagramas de classes / Design and implementation of an automatic generator of web services from class diagramsDomenico Schettini Filho 21 March 2016 (has links)
A indústria de desenvolvimento de software está em constante evolução e em busca de novos desafios, como por exemplo: novas tecnologias, linguagens de programação e estratégias para aumentar a produtividade no desenvolvimento. Com o passar do tempo, essa evolução desejada tem se concretizado, em especial com o surgimento de conceitos como Service Oriented Architecture (SOA) e Model-Driven Development (MDD). Nesse contexto, ganha importância a reutilização de software, por exemplo por meio do uso de serviços que facilitam a interoperabilidade entre diferentes sistemas. Ambientes de desenvolvimento de software, em especial ambientes de reúso de software, poderiam se adequar à arquitetura SOA para facilitar a disponibilização de serviços a outros ambientes, promovendo sua integração e aumentando a possibilidade de reúso. Após um levantamento bibliográfico sobre ambientes integrados de reúso que utilizassem serviços para permitir o compartilhamento de recursos, percebeu-se que os trabalhos nessa direção são poucos. Ao mesmo tempo, observou-se que para integração de sistemas por meio de serviços é necessário criar camadas de acesso às entidades dos sistemas que compartilharão informações. A implementação desses serviços de forma manual é repetitiva e sujeita a erros, principalmente por programadores que não estão familiarizados com SOA. Por outro lado, diagramas de classes em UML (Unified Modeling Language) são de amplo conhecimento por parte de desenvolvedores e estão em um nível de abstração que é suficientemente detalhado para permitir a derivação de serviços de acesso às suas classes. Desta forma, para atender uma demanda crescente de sistemas que precisam oferecer serviços para possibilitar sua integração com outros sistemas, este mestrado tem por objetivo promover a geração automatizada de código de serviços por meio de transformações de modelo para texto, em que o modelo de entrada é um diagrama de classes derivado da UML e os serviços gerados cobrem operações básicas do tipo CRUD. O gerador resultante foi validado por meio de duas provas de conceito e mostrou-se adequado para cumprir os objetivos estabelecidos, visto que o desenvolvedor trabalha com um modelo em alto nível de abstração, não precisando conhecer os detalhes inerentes à implementação dos serviços. / The software development industry is constantly evolving and looking for challenges, such as: new technologies, programming languages and strategies to increase developers productivity. During the course of time, this required evolution has been concretized, especially with the emergency of concepts such as Service Oriented Architecture (SOA) and Model-Driven Development (MDD). In this context, software reuse gains importance, for example through the use of services that ease the interoperability of different systems. Software development environments, in special reuse environments, could be adapted to the SOA architecture to ease the availability of services to other environments, thus promoting its integration and possibility of reuse. After a literature review about integrated reuse environments that use services to allow resources sharing, it has been observed that there are only a few works in this direction. At the same time, it was observed that for system integration through services it is required to create an access layer for the system entities that share information. The manual implementation of these services is repetitive and error prone, especially for programmers who are not familiar with SOA. On the other hand, UML (Unified Modeling Language) class diagrams are widely known by developers and are at a level of abstraction that is sufficiently detailed to allow the derivation of access services to their classes. Thus, to meet a growing demand for systems that need to provide services to enable its integration with other systems, this masters dissertation aims to promote the automated generation of service code through transformations from model to text, where the input model is a class diagram derived from UML, and the generated services cover the basic CRUD operations. The resulting generator has been validated through two proofs of concepts and was adequate to meet the stated objectives, as the developer works with a model in a high abstraction level, and does not need to know the details related with the service implementation. Read more
|
23 |
An approach to architecture-centric domain-specific modelling and implementation for software development and reuseDuan, Qing January 2010 (has links)
Model-driven development has been considered to be the hope of improving software productivity significantly. However, it has not been achieved even after many years of research and application. Models are only and still used at the analysis and design stage, furthermore, models gradually deviate from system implementation. The thesis integrates domain-specific modelling and web service techniques with model-driven development and proposes a unified approach, SODSMI (Service Oriented executable Domain-Specific Modelling and Implementation), to build the executable domain-specific model and to achieve the target of model-driven development. The approach is organised by domain space at architectural level which is the elementary unit of the domain-specific modelling and implementation framework. The research of SODSMI is made up of three main parts: Firstly, xDSM (eXecutable Domain-Specific Model) is proposed as the core construction for domain-specific modelling. Behaviour scenario is adopted to build the meta-modelling framework for xDSM. Secondly, XDML language (eXecutable Domain-specific Meta-modelling Language) is designed to describe the xDSM meta-model and its application model. Thirdly, DSMEI (Domain-Specific Model Execution Infrastructure) is designed as the execution environment for xDSM. Web services are adopted as the implementation entities mapping to core functions of xDSM so as to achieve the service-oriented domain-specific application. The thesis embodies the core value of model and provides a feasible approach to achieve real model-driven development from modelling to system implementation which makes domain-specific software development and reuse coming true. Read more
|
24 |
Rahmenwerk zur integrativen Gestaltung von ServicesAugenstein, Christoph 05 July 2016 (has links) (PDF)
Die vorliegende Arbeit befasst sich mit der modellgetriebenen Servicebeschreibung, einem Ansatz zur integrativen Beschreibung bzw. Modellierung von Services. Ausgehend von der Prämisse, dass die Natur von Services nur schwer zu erfassen ist und eine Disziplinen-übergreifende Positiv-Definition nicht erreicht werden kann, soll mit dem Ansatz eine Syn-these bisher vorhandener Modellierungsansätze erfolgen. Das Ziel liegt dabei nicht in einem erneuten Versuch, ein vollständiges Modell zur Beschreibung von Services zu entwickeln, sondern vielmehr vorhandene Perspektiven so zu integrieren, dass ein vollständiges Bild als eine Art Mosaik entsteht. Den Kern der Arbeit bildet das Service Modeling Framework. Als Rahmenwerk umfasst es Anforderungen und Restriktionen für die Arbeit mit unter-schiedlichen Servicemodellen, definiert Methoden zur Integration und bietet Werkzeuge, mit deren Hilfe die darin enthaltenen Konzepte umgesetzt werden.
Ziel der Konstruktion des Rahmenwerks ist es Nutzer in die Lage zu versetzen mittels mo-dellgetriebener Verfahren eine Zusammenführung von Modellen zu ermöglichen. Auf Basis einer fachlichen, nicht nur syntaktischen Beschreibung von Beziehungen zwischen Model-len und Modellelementen sollen Zusammenhänge modelliert werden, die einen Informati-onsaustausch zwischen Modellen realisieren. Dadurch werden Abhängigkeiten zwischen Modellen explizit formuliert oder aber die Entwicklung neuer Modelle auf Basis bereits bestehender Modelle vorangetrieben.
Der Beitrag dieser Arbeit besteht in der Erarbeitung der notwendigen Konzepte und in der Bereitstellung geeigneter Verfahren sowie Werkzeugen zur Umsetzung. Insbesondere stellt diese Arbeit einen Metamodell-basierten Ansatz zur Verfügung, mit dem Modelle über ein Domänen-neutrales Basismetamodell zueinander in Beziehung gesetzt werden können. Zugehörige Werkzeuge, wie Editoren, zeigen eine prototypische Umsetzbarkeit. Read more
|
25 |
Preservation of Extra-Functional Properties in Embedded Systems DevelopmentSaadatmand, Mehrdad January 2015 (has links)
The interaction of embedded systems with their environments and their resource limitations make it important to take into account properties such as timing, security, and resource consumption in designing such systems. These so-called Extra-Functional Properties (EFPs) capture and describe the quality and characteristics of a system, and they need to be taken into account from early phases of development and throughout the system's lifecycle. An important challenge in this context is to ensure that the EFPs that are defined at early design phases are actually preserved throughout detailed design phases as well as during the execution of the system on its platform. In this thesis, we provide solutions to help with the preservation of EFPs; targeting both system design phases and system execution on the platform. Starting from requirements, which form the constraints of EFPs, we propose an approach for modeling Non-Functional Requirements (NFRs) and evaluating different design alternatives with respect to the satisfaction of the NFRs. Considering the relationship and trade-off among EFPs, an approach for balancing timing versus security properties is introduced. Our approach enables balancing in two ways: in a static way resulting in a fixed set of components in the design model that are analyzed and thus verified to be balanced with respect to the timing and security properties, and also in a dynamic way during the execution of the system through runtime adaptation. Considering the role of the platform in preservation of EFPs and mitigating possible violations of them, an approach is suggested to enrich the platform with necessary mechanisms to enable monitoring and enforcement of timing properties. In the thesis, we also identify and demonstrate the issues related to accuracy in monitoring EFPs, how accuracy can affect the decisions that are made based on the collected information, and propose a technique to tackle this problem. As another contribution, we also show how runtime monitoring information collected about EFPs can be used to fine-tune design models until a desired set of EFPs are achieved. We have also developed a testing framework which enables automatic generation of test cases in order verify the actual behavior of a system against its desired behavior. On a high level, the contributions of the thesis are thus twofold: proposing methods and techniques to 1) improve maintenance of EFPs within their correct range of values during system design, 2) identify and mitigate possible violations of EFPs at runtime. / CHESS / MBAT / ITS-EASY Read more
|
26 |
Extracting Reusable Design Decisions for UML-based Domain-specific Languages: A Multi-Method StudySobernig, Stefan, Hoisl, Bernhard, Strembeck, Mark January 2016 (has links) (PDF)
When developing domain-specific modeling languages (DSMLs), software engineers have to make a number of important
design decisions on the DSML itself, or on the software-development process that is applied to develop the DSML. Thus, making well-informed design decisions is a critical factor in developing DSMLs. To support this decision-making process, the model-driven development community has started to collect established design practices in terms of patterns, guidelines, story-telling, and procedural models. However, most of these documentation practices do not capture the details necessary to reuse the rationale behind these decisions in other DSML projects. In this paper, we report on a three-year research effort to compile and to empirically validate a catalog of structured decision descriptions (decision records) for UML-based DSMLs. This
catalog is based on design decisions extracted from 90 DSML projects. These projects were identified - among others - via an extensive systematic literature review (SLR) for the years 2005 - 2012. Based on more than 8,000 candidate publications, we finally selected 84 publications for extracting design-decision data. The extracted data were evaluated quantitatively using a
frequent-item-set analysis to obtain characteristic combinations of design decisions and qualitatively to document recurring
documentation issues for UML-based DSMLs. We revised the collected decision records based on this evidence and made the decision-record catalog for developing UML-based DSMLs publicly available. Furthermore, our study offers insights into UML usage (e.g. diagram types) and into the adoption of UML extension techniques (e.g. metamodel extensions, profiles). Read more
|
27 |
A Model Driven Component Agent Framework for Domain ExpertsJayatilleke, Gaya Buddhinath, buddhinath@gmail.com January 2007 (has links)
Industrial software systems are becoming more complex with a large number of interacting parts distributed over networks. Due to the inherent complexity in the problem domains, most such systems are modified over time to incorporate emerging requirements, making incremental development a suitable approach for building complex systems. In domain specific systems it is the domain experts as end users who identify improvements that better suit their needs. Examples include meteorologists who use weather modeling software, engineers who use control systems and business analysts in business process modeling. Most domain experts are not fluent in systems programming and changes are realised through software engineers. This process hinders the evolution of the system, making it time consuming and costly. We hypothesise that if domain experts are empowered to make some of the system changes, it would greatly ease the evolutionary process, thereby making the systems more effective. Agent Oriented Software Engineering (AOSE) is seen as a natural fit for modeling and implementing distributed complex systems. With concepts such as goals and plans, agent systems support easy extension of functionality that facilitates incremental development. Further agents provide an intuitive metaphor that works at a higher level of abstraction compared to the object oriented model. However agent programming is not at a level accessible to domain experts to capitalise on its intuitiveness and appropriateness in building complex systems. We propose a model driven development approach for domain experts that uses visual modeling and automated code generation to simplify the development and evolution of agent systems. Our approach is called the Component Agent Framework for domain-Experts (CAFnE), which builds upon the concepts from Model Driven Development and the Prometheus agent software engineering methodology. CAFnE enables domain experts to work with a graphical representation of the system , which is easier to understand and work with than textual code. The model of the system, updated by domain experts, is then transformed to executable code using a transformation function. CAFnE is supported by a proof-of-concept toolkit that implements the visual modeling, model driven development and code generation. We used the CAFnE toolkit in a user study where five domain experts (weather forecasters) with no prior experience in agent programming were asked to make changes to an existing weather alerting system. Participants were able to rapidly become familiar with CAFnE concepts, comprehend the system's design, make design changes and implement them using the CAFnE toolkit. Read more
|
28 |
Model Synchronization for Software EvolutionIvkovic, Igor 26 August 2011 (has links)
Software evolution refers to continuous change that a software system endures from inception to retirement. Each change must be efficiently and tractably propagated across models representing the system at different levels of abstraction. Model synchronization activities needed to support the systematic specification and analysis of evolution activities are still not adequately identified and formally defined.
In our research, we first introduce a formal notation for the representation of domain models and model instances to form the theoretical basis for the proposed model synchronization framework. Besides conforming to a generic MOF metamodel, we consider that each software model also relates to an application domain context (e.g., operating systems,
web services). Therefore, we are addressing the problems of model synchronization by focusing on domain-specific contexts.
Secondly, we identify and formally define model dependencies that are needed to trace and propagate changes across system models at different levels of abstraction, such as from design to source code. The approach for extraction of these dependencies is based on Formal Concept Analysis (FCA) algorithms. We further model identified dependencies
using Unified Modeling Language (UML) profiles and constraints, and utilize the extracted dependency relations in the context of coarse-grained model synchronization.
Thirdly, we introduce modeling semantics that allow for more complex profile-based dependencies using Triple Graph Grammar (TGG) rules with corresponding Object Constraint Language (OCL) constraints. The TGG semantics provide for fine-grained model synchronization, and enable compliance with the Query/View/Transformation (QVT) standards.
The introduced framework is assessed on a large, industrial case study of the IBM Commerce system. The dependency extraction framework is applied to repositories of business process models and related source code. The extracted dependencies were evaluated by IBM developers, and the corresponding precision and recall values calculated with results
that match the scope and goals of the research. The grammar-based model synchronization and dependency modelling using profiles has also been applied to the IBM Commerce system, and evaluated by the developers and architects involved in development of the system. The results of this experiment have been found to be valuable by stakeholders, and a patent
codifying the results has been filed by the IBM organization and has been granted. Finally, the results of this experiment have been formalized as TGG rules, and used in the context of fine-grained model synchronization. Read more
|
29 |
Model Driven Development and Maintenance of Business Logic for Information SystemsBrückmann, Tobias 20 January 2011 (has links) (PDF)
Since information systems become more and more important in today\'s society, business firms, organizations, and individuals rely on these systems to manage their daily business and social activities. The dependency of possibly critical business processes on complex IT systems requires a strategy that supports IT departments in reducing the time needed to implement changed or new domain requirements of functional departments. In this context, software models help to manage system\'s complexity and provide a tool for communication and documentation purposes. Moreover, software engineers tend to use automated software model processing such as code generation to improve development and maintenance processes. Particularly in the context of web-based information systems, a number of model driven approaches were developed. However, we believe that compared to the user interface layer and the persistency layer, there could be a better support of consistent approaches providing a suitable architecture for the consistent model driven development of business logic.
To ameliorate this situation, we developed an architectural blueprint consisting of meta models, tools, and a method support for model driven development and maintenance of business logic from analysis until system maintenance. This blueprint, which we call Amabulo infrastructure, consists of five layers and provides concepts and tools to set up and apply concrete infrastructures for model driven development projects. Modeling languages can be applied as needed. In this thesis we focus on business logic layers of J2EE applications. However, concrete code generation rules can be adapted easily for different target platforms.
After providing a high-level overview of our Amabulo infrastructure, we describe its layers in detail: The Visual Model Layer is responsible for all visual modeling tasks. For this purpose, we discuss requirements for visual software models for business logic, analyze several visual modeling languages concerning their usefulness, and provide an UML profile for business logic models.
The Abstract Model Layer provides an abstract view on the business logic model in the form of a domain specific model, which we call Amabulo model. An Amabulo model is reduced to pure logical information concerning business logic aspects. It focuses on information that is relevant for the code generation. For this purpose, an Amabulo model integrates model elements for process modeling, state modeling, and structural modeling. It is used as a common interface between visual modeling languages and code generators. Visual models of the Visual Model Layer are automatically transformed into an Amabulo model.
The Abstract System Layer provides a formal view onto the system in the form of a Coloured Petri Net (CPN). A Coloured Petri Net representation of the modeled business logic is a formal structure and independent of the actual business logic implementation. After an Amabulo model is automatically transformed into a CPN, it can be analyzed and simulated before any line of code is generated.
The Code Generation Layer is responsible for code generation. To support the design and implementation of project-specific code generators, we discuss several aspects of code integration issues and provide object-oriented design approaches to tackle the issues. Then, we provide a conceptual mapping of Amabulo model elements into architectural elements of a J2EE infrastructure. This mapping explicitly considers robustness features, which support a later manual integration of generated critical code artifacts and external systems. The Application Layer is the target layer of an Amabulo infrastructure and comprises generated code artifacts. These artifacts are instances of a specific target platform specification, and they can be modified for integration purposes with development tools.
Through the contributions in this thesis, we aim to provide an integrated set of solutions to support an efficient model driven development and maintenance process for the business logic of information systems. Therefore, we provide a consistent infrastructure blueprint that considers modeling tasks, model analysis tasks, and code generation tasks. As a result, we see potential for reducing the development and maintenance efforts for changed domain requirements and simultaneously guaranteeing robustness and maintainability even after several changes. Read more
|
30 |
Improving Modeling with UML by Stereotype-based Language CustomizationStaron, Miroslaw January 2005 (has links)
Graphical modeling is becoming an increasingly important part of software engineering as it provides means of increasing productivity by raising the level of abstraction in software devel-opment. One of the most widely adopted modeling notations is the Unified Modeling Language (UML) which has gained popularity due to its generality and broad applicability. Despite its advantages, this general purpose notation is burdened with the lack of purpose specific model-ing abstractions. The modeling abstractions in the language lack specialized properties and thus models might not precisely express the intentions of the modeler. In consequence, this leads to ineffectiveness of using models in UML. This thesis presents research aimed at improving modeling with UML. By exploiting the language customization mechanisms inherent in UML – stereotypes and profiles – the research presented in the thesis explores such aspects of improving modeling as creating language cus-tomizations or using a customized modeling language. The context, in which the modeling is considered, is delineated by the principles of model driven software development (MDD). The principles recognize the usage of models as the primary artefacts in software development thus providing a solid foundation for considering the use of models in software development. One of the contributions in the thesis is the identification and definition of factors determin-ing the successful realization of MDD in industry. These factors provide means of positioning language customization in the forefront of MDD. Another contribution in the thesis is eliciting and prioritizing a set of criteria for choosing between language customization mechanisms, which is a result of another industrial case study. A series of experiments in academic and industrial environments showed the magnitude of improvements to be expected after replacing a standard modeling language with a customized modeling notation. This series of experiments provided a basis for experimenting with stereo-types and software inspections which indicated a considerable increase in effectiveness of the reading techniques used in software inspections after replacing a standard notation with a cus-tomized one. The results from all empirical studies affected the development of quality assessment crite-ria for stereotypes. The criteria and the exploration of several existing profiles led to the devel-opment of guidelines for creating “good” stereotypes by analyzing existing UML profiles. An additional contribution in the thesis is exploring the usage of an alternative mechanism to stereo-types – model libraries – for adaptation of a modeling language. The way in which model librar-ies can be created in an efficient way is studied by creating a method for extracting knowledge from ontologies into UML domain models. The results of the research presented in the thesis show how to improve modeling with UML by customizing the language with stereotypes. The main contribution is the exploration and evaluation of issues related to creating language customizations and using the customized language. Read more
|
Page generated in 0.042 seconds