Spelling suggestions: "subject:"bproduct lines"" "subject:"2product lines""
131 |
A Software Product Line for Parameter TuningPukhkaiev, Dmytro 09 August 2023 (has links)
Optimization is omnipresent in our world. Its numerous applications spread from industrial cases, such as logistics, construction management or production planning; to the private sphere, filled with problems of selecting daycare or vacation planning.
In this thesis, we concentrate on expensive black-box optimization (EBBO) problems, a subset of optimization problems (OPs), which are characterized by an expensive cost of evaluating an objective function. Such OPs are reoccurring in various domains, being known as: hyperpameter optimization in machine learning, performance configuration optimization or parameter tuning in search-based software engineering, simulation optimization in operations research, meta-optimization or parameter tuning in the optimization domain itself.
High diversity of domains introduces a plethora of solving approaches, which adhere to a similar structure and workflow, but differ in details. The software frameworks stemming from different areas possess only partially intersecting manageability points, i.e., lack manageability.
In this thesis, we argue that the lack of manageability in EBBO is a major problem, which leads to underachieving optimization quality. The goal of this thesis is to study the role of manageability in EBBO and to investigate whether improving the manageability of EBBO frameworks increases optimization quality.
To reach this goal, we appeal to software product line engineering (SPLE), a methodology for developing highly-manageable software systems. Based on the foundations of SPLE, we introduce a novel framework for EBBO called BRISE. It offers: 1) a loosely-coupled software architecture, separating concerns of the experiment designer and the developer of EBBO strategies; 2) a full coverage of all EBBO problem types; and 3) a context-aware variability model, which captures the experiment-designer-defined OP with the content model; and manageability points including their variants and constraints with the cardinality-based feature model.
High manageability of the introduced BRISE framework enables us: 1) to extend the framework with novel efficient strategies, such as adaptive repetition management; and 2) to introduce novel EBBO mechanisms, such as multi-objective compositional surrogate modeling, dynamic sampling and hierarchical surrogate modeling.
The evaluation of the novel approaches with a set of case studies, including: the WFG benchmark for multi-objective optimization, combined selection and parameter control of meta-heuristics, and energy optimization; demonstrated their superiority over the state-of-the-art competitors. Thus, it supports the research hypothesis of this thesis:
Improving manageability of an EBBO framework enables to increase optimization quality.
|
132 |
Domain-Centered Product Line TestingLackner, Hartmut 11 July 2017 (has links)
Die Ansprüche von Kunden an neue (Software-)Produkte wachsen stetig.
Produkte sollen genau auf die einzelnen Kundenwünsche zugeschnitten sein, sodass der Kunde genau die Funktionalität erhält und bezahlt die er benötigt.
Hersteller reagieren auf diese gestiegenen Ansprüche mit immer mehr Varianten in denen sie ihre Produkte ihren Kunden anbieten.
Die Variantenvielfalt hat in solchem Maß zugenommen, dass selbst in Massen gefertigte Produkte heute als Unikate produziert werden können.
Neue Methoden wie Produktlinienentwicklung unterstützen die Entwicklung solcher variantenreicher Systeme.
Während der Aufwand für die Entwicklung neuer Varianten nun sinkt, profitiert die Qualitätssicherung nicht vom Effizienzgewinn der Entwicklung.
Im Gegenteil:
Insbesondere beim Test wird zunächst jede Variante wie ein einzelnes Produkt behandelt.
Bei variantenreichen Systemen ist dies aufwandsbedingt jedoch nicht mehr möglich.
Die in dieser Arbeit vorgestellten Testentwurfsmethoden berücksichtigen die Variantenvielfalt in besonderem Maße.
Bisher wurden, nach einer Stichprobenauswahl zur Reduktion des Testaufwands, die Testfälle auf Basis der konkreten Produkte entworfen.
Statt nun auf Basis konkreter Produkte werden in dieser Arbeit zwei Ansätze vorgestellt, die die Phase des Testentwurfs auf die Produktlinienebene heben.
Die bei Anwendung dieser Methoden entstehenden Testfälle enthalten, je nach Inhalt, Freiheitsgrade bzgl. ihrer Anforderungen an eine Variante, sodass ein Testfall auf ein oder mehrere Varianten angewendet wird.
Ausgehend von solchen Testfällen werden in dieser Arbeit neue Kriterien zur Stichprobenauswahl entwickelt.
Mit diesen Kriterien kann der Umfang der Stichprobe, aber auch Eigenschaften der zu testenden Varianten bzgl. eines gegebenes Testziel optimiert werden.
So ist es möglich, z.B. sehr wenige oder sehr unterschiedliche Varianten zum Test auszuwählen.
Insgesamt werden in dieser Arbeit fünf Kriterien definiert und auf ihr Fehleraufdeckungspotenzial untersucht.
Zu diesem Zweck werden neue Bewertungskriterien zur Fehleraufdeckungswahrscheinlichkeit von Produktlinientests etabliert.
Somit ist erstmalig eine quantitative sowie qualitative Bewertung von Produktlinientests möglich.
Die Ergebnisse der vorgestellten Methoden und Auswahlkriterien werden sowohl untereinander evaluiert, als auch konventionellen Testmethoden für Produktliniensysteme gegenübergestellt.
An vier Beispielen unterschiedlicher Gro{\"ss}e werden die in dieser Arbeit vorgestellten Methoden evaluiert. / Consumer expectations of (software-)products are growing continuously.
They demand products that fit their exact needs, so they pay only for necessary functionalities.
Producers react to those demands by offering more variants of a product.
Product customization has reached a level where classically mass produced goods, like cars, can be configured to unique items.
New paradigms facilitate the engineering of such variant-rich systems and reduce costs for development and production.
While development and production became more efficient, quality assurance suffers from treating each variant as a distinct product.
In particular, test effort is affected, since each variant must be tested sufficiently prior to production.
For variant-rich systems this testing approach is not feasible anymore.
The methods for test design presented in this thesis overcome this issue by integrating variability into the test design process.
The resulting test cases include requirements for variants, which must be fulfilled to execute the test successfully.
Hence multiple variants may fulfill these requirements, each test case may be applicable to more than only one variant.
Having test cases with requirements enables sampling subsets of variants for the purpose of testing.
Under the assumption that each test case must be executed once, variants can be sampled to meet predefined test goals, like testing a minimal or diverse subset of variants.
In this thesis, five goals are defined and evaluated by assessing the tests for their fault detection potential.
For this purpose, new criteria for assessing the fault detection capability of product line tests are established.
These criteria enable quantitative as well as qualitative assessment of such test cases for the first time.
The results of the presented methods are compared with each other and furthermore with state of the art methods for product line testing.
This comparison is carried out on four examples of different sizes, from small to industry-grade.
|
133 |
Qualitätssicherung mittels Feature-Modellen / Quality Assurance by Means of Feature ModelsGollasch, David 11 May 2016 (has links) (PDF)
Modern business applications are getting increasingly distributed as multi-tenant software as a service (SaaS). This leads to new challenges in terms of quality assurance, because all customers are directly affected by software changes. The resulting problem is to proactively determinate evolutionary effects.
Because SaaS applications are often realized in the sense of a software product line, this thesis examines ways of using feature models to face the mentioned problem. For this purpose, two approaches are analyzed: extended feature models with quality attributes annotated per feature and the analysis of structural aspects of feature models and corresponding concrete configurations.
The presented attributed feature model approach measures the quality of concrete configurations to make configurations comparable according to specific quality goals. Criteria are elicited for when configurations can be compared to draw helpful conclusions. The structural approach focuses economic questions that are quality assurance related, such as identifying features that none of the tenants selected in their application configurations. Furthermore, three algorithms are presented that demonstrate the structural analysis approach to gather information relevant to quality assurance.
|
134 |
Conceptual Variability Management in Software Families with Multiple ContributorsGollasch, David 11 May 2016 (has links) (PDF)
To offer customisable software, there are two main concepts yet: software product lines that allow the product customisation based on a fixed set of variability and software ecosystems, allowing an open product customisation based on a common platform.
Offering a software family that enables external developers to supply software artefacts means to offer a common platform as part of an ecosystem and to sacrifice variability control. Keeping full variability control means to offer a customisable product as a product line, but without the support for external contributors.
This thesis proposes a third concept of variable software: partly open software families. They combine a customisable platform similar to product lines with controlled openness similar to ecosystems.
As a major contribution of this thesis a variability modelling concept is proposed which is part of a variability management for these partly open software families. This modelling concept is based on feature models and extends them to support open variability modelling by means of interfaces, structural interface specifications and the inclusion of semantic information. Additionally, the introduction of a rights management allows multiple contributors to work with the model. This is required to enable external developers to use the model for the concrete extension development.
The feasibility of the proposed model is evaluated using a prototypically developed modelling tool and by means of a case study based on a car infotainment system.
|
135 |
Uma abordagem orientada a modelos para reutilização de software / A model-driven software reuse approachLucredio, Daniel 17 July 2009 (has links)
A reutilização de software busca aumentar a qualidade e produtividade no desenvolvimento de software, evitando a duplicação do esforço e reaproveitando o máximo possível das experiências de projetos passados. Apesar de simples, esta idéia não é facilmente colocada em prática, principalmente de maneira sistemática e controlada. Técnicas de engenharia de domínio e linhas de produtos de software buscam facilitar esta tarefa, porém ainda existem outros fatores que dificultam a adoção da prática da reutilização. Entre estes, destacam-se os problemas inerentes ao desenvolvimento de software da maneira como é conduzido atualmente, baseado em código-fonte. Estes problemas têm suas origens na crescente demanda por software cada vez mais complexo e afetam negativamente a capacidade de reutilizar software. O desenvolvimento orientado a modelos surge como uma alternativa atraente neste cenário, elevando a importância de modelos dentro do ciclo de vida do software, incorporando-os como parte integrante do produto final por meio de técnicas de modelagem e geração de código. Com isto, parte da complexidade do software fica escondida dentro dos geradores, protegendo os desenvolvedores, reduzindo a incidência de erros, aumentando a produtividade, qualidade, interoperabilidade e manutenibilidade dos artefatos produzidos. Nesta dissertação defende-se a tese de que o desenvolvimento orientado a modelos pode efetivamente aumentar e/ou melhorar a reutilização de software, e que para isso ela deve ser tratada de forma consistente dentro de um processo de engenharia de domínio. Para demonstrar esta tese, é apresentada uma abordagem orientada a modelos para reutilização de software, com atividades que guiam o desenvolvedor durante a análise, projeto e implementação do domínio. São também apresentados os resultados de uma avaliação envolvendo três estudos empíricos, realizados em ambiente acadêmico e industrial, que buscou determinar a viabilidade da abordagem e os benefícios que podem ser alcançados com a combinação de técnicas do desenvolvimento orientado a modelos e da reutilização de software. Os resultados mostram que a abordagem pode trazer diferentes benefícios para organizações de software, incluindo aumento da quantidade e qualidade da reutilização, e reduzindo a complexidade de desenvolvimento e configuração de produtos / Software reuse aims at increasing quality and productivity in software development, avoiding effort duplication and reusing all past experiences possible. Although it is a simple idea, it is not easy to put reuse in practice, especially in a systematic and controlled way. Domain engineering and software product lines techniques try to make this task easier, but there are many other factors that difficult the reuse adoption. Among these factors are the problems that are inherent to software development in the way it is conducted today, based on source code. These problems arise from the growing demand for increasingly complex software, negatively affecting the ability to reuse. Model-driven development is an attractive alternative in this scenario, leveraging the importance of models in the software life cycle, incorporating them as part of the final product through modeling and code generation techniques. As a result, part of the software complexity becomes hidden inside the generators, shielding the developers, reducing errors, increasing the productivity, quality, interoperability and maintainability of the produced assets. In this dissertation is presented the thesis that model-driven development can effectively increase and/or improve software reuse, and that to achieve this goal it must be treated in a consistent way inside a domain engineering process. To demonstrate this thesis, a model-driven software reuse approach is presented, with activities that guide the developer during domain analysis, design and implementation. The results of an evaluation involving three empirical studies are also presented. The studies were performed in both academic and industrial environments, and aimed at determining the viability of the approach and the benefits that can be achieved with the combination of model-driven development and software reuse techniques. The results showed that the approach can bring different benefits to software organizations, such as software reuse quantity and quality improvements, and complexity reduction in product development and configuration tasks
|
136 |
Uma linguagem de modelagem de domínio específico para linhas de produto de software dinâmicas / A domain specific modeling language to dynamic software product linesBorelli, Helberth 06 May 2016 (has links)
Submitted by Marlene Santos (marlene.bc.ufg@gmail.com) on 2016-08-09T16:58:08Z
No. of bitstreams: 2
Dissertação - Helberth Borelli - 2016.pdf: 5479597 bytes, checksum: c182a5a918e2fda8bf310ba47bc494e4 (MD5)
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) / Approved for entry into archive by Luciana Ferreira (lucgeral@gmail.com) on 2016-08-10T11:31:18Z (GMT) No. of bitstreams: 2
Dissertação - Helberth Borelli - 2016.pdf: 5479597 bytes, checksum: c182a5a918e2fda8bf310ba47bc494e4 (MD5)
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) / Made available in DSpace on 2016-08-10T11:31:18Z (GMT). No. of bitstreams: 2
Dissertação - Helberth Borelli - 2016.pdf: 5479597 bytes, checksum: c182a5a918e2fda8bf310ba47bc494e4 (MD5)
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)
Previous issue date: 2016-05-06 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES / Systems which involve adaptations due to context changes have the challenge of adapting
software systems at runtime. This thesis adopts as proposal the adaptation of resources in
the form of features, involving concepts of Feature Oriented Domain Analysis. A possible
approach to develop systems based on adaptable features at runtime is the concept of
Dynamic Software Product Line (DSPL), which can be implemented by Metamodels.
The aim of this thesis is the development of a Domain Specific Modeling Language
(DSML) for DSPL, designed from the construction of a metamodel for the development
of DSPLs, which is divided in three metamodels: of features, of variabilities and of
applications to derive products. The variabilities metamodel aims at modeling contracts
that must negotiate the product adaptation to the features that may be present or not
in the execution environment. Adaptations are based in state machines, which address
changes of feature state or changes by transitions of equivalent features, in order to
keep the execution of the software product. The developed DSML still plays the role
of extending the constraints imposed by the metamodels, as well as to generate codes in
general-purpose language based on modeling features, variabilities and applications. In
order to validate the proposal, the DSML was used to model two DSPLs, including the
derivation of products and the execution in a platform based in OSGi specification. / Sistemas que envolvem adaptação em decorrência de mudanças de contexto possuem
como desafio a adaptação do sistema de software em tempo de execução. Esta dissertação
adota como proposta a adaptação de recursos na forma de características, envolvendo o
conceito de Análise de Domínio Orientada a Características. Uma abordagem para o desenvolvimento
de sistemas baseados em características adaptáveis em tempo de execução
é o conceito de Linha de Produto de Software Dinâmica (LPSD), o qual pode ser implementado
por meio do desenvolvimento de Metamodelos. O objetivo desta dissertação é
o desenvolvimento de uma Linguagem de Modelagem de Domínio Específico (do inglês,
Domain Specific Modeling Language - DSML) para LPSD, concebida a partir da construção
de um metamodelo para o desenvolvimento de LPSDs, o qual está dividido em três
metamodelos: de características, de variabilidades e de aplicação para derivação de produtos.
Em destaque, o metamodelo de variabilidade tem como objetivo a modelagem de
contratos que devem negociar a adaptação dos produtos às características que poderão estar
ou não presentes no ambiente de execução. As adaptações são baseadas em máquinas
de estado, as quais abordam a mudança de estado de uma característica ou a mudança por
transição de características equivalentes, com o intuito de manter a execução do produto
de software. A DSML desenvolvida tem ainda o papel de estender as restrições impostas
pelos metamodelos, assim como gerar códigos em linguagem de propósito geral com
base na modelagem de características, variabilidades e aplicações. No sentido de validar
a proposta, a DSML foi usada para a modelagem de duas LPSDs, incluindo a derivação
de produtos e a execução em uma plataforma baseada na especificação OSGi.
|
137 |
Architecting software systems using model transformations and architectural frameworksPerrouin, Gilles 20 September 2007 (has links)
<b>Résumé</b>
Les applications logicielles sont devenues indispensables dans un grand nombre d’activités humaines et se sont répandues grâce à l’avènement des réseaux (ADSL, WIFI, GSM...) ou de l’informatique nomade (ordinateurs portables, assistant digitaux personnels, téléphones mobiles etc.) qui ont rendu l’interaction avec des systèmes informatiques possible en presque tout lieu. Cet état de fait a engendré à la fois une grande complexité pour la conception de ces systèmes distribués et de grandes attentes de la part des clients de ces systèmes, préoccupés principalement par les qualités et temps de réalisation des applications logicielles exécutées par ces systèmes ainsi que les coûts qui en découlent. Il est donc nécessaire d’améliorer nos méthodes de développement afin de faire face à ces nouveaux défis.
D’une part, l’ingénierie dirigée par les modèles (IDM), en permettant la description d’applications logicielles à divers niveaux d’abstraction et en générant certains de leurs éléments via la transformation de modèles, s’attaque à la complexité intrinsèque de ces systèmes et réduit leur temps de développement ainsi que celui de maintenance. D’autre part, l’approche de ligne de produits accélère la réutilisation logicielle en proposant le développement d’applications basées sur un ensemble de composants communs dans un domaine déterminé. Ainsi, lorsque ceux-ci sont conçus avec soin, il est possible de satisfaire simultanément des critères de qualité et de temps de développement. Les méthodes qui ont été construites sur le paradigme de ligne de produits se sont principalement attachées à décrire les points communs et les différences parmi les composants qui seront réutilisés par les applications membres de lignes de produits.
Néanmoins, un logiciel doit très souvent répondre à un besoin qui émane d’un utilisateur particulier. Il est donc nécessaire de prendre en compte ses attentes qui sont parfois spécifiques à cet utilisateur et il n’est ni possible ni souhaitable de définir et de supporter celles ci dans l’ensemble de composant réutilisables à partir desquels les applications sont dérivées. Certaines méthodes orientées lignes de produits proposent des approches pour la dérivation de produits par trop restrictives qui excluent de manière indue des produits qui, bien que pouvant être développés à partir des composants de la ligne de produits, n’ont pas été envisagés lors de sa définition, ce qui nous prive donc de la possibilité d’adresser facilement les exigences spécifiques des utilisateurs. Si quelques méthodes reconnaissent la nécessité de prendre en compte ces exigences particulières, elles ne fournissent aucune solution systématique pour intégrer ces exigences dans le cycle de développement d’un produit.
Cette thèse s’attache à la définition d’une méthode plus souple pour le développement d’applications dans le contexte de ligne de produits qui s’appuie sur une combinaison de l’approche IDM avec les “frameworks” orientés-objet. Le domaine ciblé par cette méthode est celui des applications de ventes enchères sur Internet qui est un domaine non-critique pour lequel une grande variabilité dans les scenarii d’utilisation est requise.
La première partie de cette thèse introduit les concepts de base de notre méthode nommée FIDJI. En particulier, nous définissons la notion de framework architectural comme un ensemble de modèles permettant la description cohérente des divers constituants d’analyse et de concept d’une ligne de produits. Cette entité est ensuite instanciée par le biais de transformations de modèles. Nous décrivons ensuite les principes méthodologiques qui ont déterminé les choix des modèles du framework architectural ainsi que l’instanciation flexible de produits encadré par des contraintes définies sur les modèles du framework architectural.
La seconde partie de cette thèse présente en détail les phases de définition des charges, d’analyse et de conception de la méthode FIDJI. Tout d’abord, un modèle de définition de ligne de produits est introduit permettant la définition des charges de manière informelle en se basant sur des variations de cas d’utilisation et un dictionnaire de données et encadré par des règles méthodologiques simples. Nous définissons ensuite la phase d’analyse comme un raffinement de la phase de découverte des charges en proposant la modélisation des concepts du domaine à l’aide de diagrammes UML 2.0 ainsi que l’enrichissement des cas d’utilisation par des expressions OCL (Object Constraint Language). Au niveau de l’analyse, nous démontrons comment un certain degré de flexibilité peut être obtenu au niveau du cycle de vie des évenements échangés entre le système et ses acteurs via l’utilisation de variables d’états. La phase de design s’intéresse principalement à l’aspect architectural, en proposant un modèle de composants basé sur UML 2.0 permettant la description de styles architecturaux structurant le framework architectural. Des profiles UML 2.0 définissant les éléments de modèles utilisés, leurs conditions d’application ainsi que des règles de cohérence et de traceabilité pour les modèles d’analyse et de conception sont proposés. Le processus méthodologique, commun aux phases d’analyse et de conception, consiste en l’écriture d’un programme de transformation de modèles permettant d’instancier le framework architectural tout en étant guidé par des contraintes d’instanciation qui définissent de manière souple les frontières de la ligne de produits.
Enfin, la dernière partie de cette thèse s’intéresse à l’application concrète de la méthode FIDJI. Une étude de cas appartenant au domaine des applications e-commerce est détaillée, illustrant ainsi les modèles FIDJI. Nous montrons en particulier comment écrire le programme de transformations à partir d’opérations de transformation prédéfinies ainsi que la raison d’être et l’utilisation des contraintes guidant le processus d’instanciation au coeur de la méthode.
<b>Abstract</b>
Software systems have become essential to many human activities and have proliferated thanks to various hardware innovations such as mobile computing (laptops, personal digital assistants, mobile phones) and networks (DSL, WIFI, GSM, etc.) enabling interactions between users and computer systems in virtually any place. This situation has created both a great complexity for such distributed systems to be designed and great expectations (mainly concerned with quality, time and induced costs of the software) from the users of these systems, requiring improvements in software engineering methods in order to meet these challenges.
On the one hand, Model Driven Engineering (MDE), by allowing the description of software systems through abstractions and deriving useful system artifacts, harnesses inherent complexity of software systems and reduces time-to-market via model transformations. On the other hand, software product lines foster software reuse by proposing to develop applications based on a set of common assets belonging to a particular domain. Thus, when product line assets are carefully designed, both quality and time-to-market requirements can be achieved. Development methods that have resulted from the product line paradigm generally focus on defining common and variable assets to be reused by product line members. However, they hardly address the development of applications from the product line assets in a systematic way. Furthermore, those considering it propose automated but rather inflexible approaches that unnecessarily exclude products which, although addressable by product line assets, have not been explicitly envisioned during product line definition. If in some domains — in particular, those including hardware constraints and/or critical features — it is possible to fully determine the products that are part of the software product line, in the other cases, an initial set of products can only be considered assuming that the customers’ requests will be met by this set. We believe that this assumption is false in general and this thesis examines the research question which consists in proposing a set of models and a product line development method to offer more flexibility while deriving products in order to seamlessly address customers’ requests. The domain we consider is that of web e-bartering systems.
This thesis strives to propose a trade-off between automated and unsupported product derivation by providing a model-driven product line development method that allows developers to define product line members by transforming a coherent and layered set of product line models. Moreover, constraints on the possible transformations have to be specified in order to determine which products cannot be derived both for functional and technical reasons.
The first part of this thesis introduces the foundational concepts of our FIDJI method. In particular, it describes the notion of architectural framework as a set of models defining product line assets at analysis and design levels and which is instantiated in order to obtain product line members thanks to model transformations. This part then describes key methodological principles driving the choice of architectural framework models and how flexibility in product derivation can be achieved and controlled by constraints defined over the set of architectural framework models.
The second part of this thesis is devoted to requirements elicitation, analysis and design phases of the method. For requirements elicitation, a specific product line template is defined to allow for the description of a software product line in an informal manner via use case variants and data dictionaries. The analysis phase refines requirements elicitation by allowing the precise description of domain concepts in terms of UML models as well as functionalities in terms of use cases completed by OCL expressions. Variability is ensured through the use of state variables in OCL expressions which enable a wide variety of scenarios to be implemented in the product. Constraints indirectly define product line boundaries by preventing certain instantiations from being made. The design phase focuses on the architectural design of the architectural framework and describes it in terms of interacting components structured via architectural styles. Analysis and design models are supported by UML profiles defining the constructs offered by the FIDJI method, their usage conditions as well as traceability and consistency rules ensuring model correctness. The methodological process for both analysis and design consists in writing a transformation program, validated over the aforementioned constraints, that will instantiate the architectural framework to obtain a viable product line member.
The last part of the thesis deals with the practical application of the method. A case study belonging to the e-commerce domain illustrates the FIDJI method in detail and a simple architectural framework is defined for this purpose. In particular, we show how the transformation program is created from predefined transformation operations dedicated to FIDJI models and the rationale and usage of constraints controlling the instantiation of the architectural framework.
|
138 |
Integrierte und hybride Konstruktion von Software-ProduktlinienDinger, Ulrich 10 September 2009 (has links) (PDF)
Die Konzepte zur Erstellung von Software-Produktlinien dienen der ingenieurmäßigen, unternehmensinternen Wiederverwendung existierender Software-Artefakte. Existierende Ansätze nutzen von Hand erstellte und gewartete Kompositionsprogramme zum Assemblieren der Produkte entsprechend einer Variantenauswahl. Der Einsatz einer automatischen Planungskomponente sowie eines einfachen, erweiterbaren Komponenten-Meta-Modells hilft dabei, die dabei anfallenden Daten computergestützt zu verarbeiten. Die Integration beider Konzepte zu einem hybriden Ansatz ermöglicht die Neuerstellung von Produkten, die nicht von Anfang an als Produktlinie konzipiert sind, ohne eine spätere Umarbeitung unter Nutzung der automatischen Planungskomponente unnötig zu erschweren.
|
139 |
Evolution in Feature-Oriented Model-Based Software Product Line Engineering / Evolution in feature-orientierten modellbasierten Software-ProduktlinienSeidl, Christoph 02 January 2012 (has links) (PDF)
Software Product Lines (SPLs) are a successful approach to software reuse in the large. Even though tools exist to create SPLs, their evolution is widely unexplored. Evolving an SPL manually is tedious and error-prone as it is hard to avoid unintended side-effects that may harm the consistency of the SPL. In this thesis, the conceptual basis of a system for the evolution of model-based SPLs is presented, which maintains consistency of models and feature mapping. As basis, a novel classification is introduced that distinguishes evolutions by their potential to harm the mapping of an SPL. Furthermore, multiple remapping operators are presented that can remedy the negative side-effects of an evolution. A set of evolutions is complemented with appropriate remapping operations for the use in SPLs. Finally, an implementation of the evolution system in the SPL tool FeatureMapper is provided to demonstrate the capabilities of the presented approach when co-evolving models and feature mapping of an SPL.
|
140 |
CrossMDA-SPL: uma abordagem para ger?ncia de variabilidades dirigida por modelos e aspectosFilgueira, Geam Carlos de Ara?jo 11 August 2009 (has links)
Made available in DSpace on 2014-12-17T15:47:51Z (GMT). No. of bitstreams: 1
GeamCA_3.pdf: 4100171 bytes, checksum: a5754ac2b6b60fbd217e904c104737e4 (MD5)
Previous issue date: 2009-08-11 / This paper proposes a systematic approach to management of variability modelsdriven and aspects using the mechanisms of approaches Aspect-Oriented Software Development (AOSD) and Model-Driven Development (MDD). The main goal of the approach, named CrossMDA-SPL, is to improve the management(ger?ncia), modularization and isolation ou separation of the variability of the LPSs of architecture in a high level of abstraction (model) at the design and implementing phases of development Software Product Lines (SPLs), exploiting the synergy between AOSD and MDD. The CrossMDA-SPL approach defines some artifacts basis for advance the separation clear in between the mandatory (bounden) and optional features in the architecture of SPL. The artifacts are represented by two models named: (i) core model (base domain) - responsible for specify the common features the all members of the SPL, and (ii) variability model - responsible for represent the variables features of SPL. In addition, the CrossMDA-SPL approach is composed of: (i) guidelines for modeling and representation of variability, (ii) CrossMDA-SPL services and process, and (iii) models of the architecture of SPL or product instance of SPL. The guidelines use the advantages of AOSD and MDD to promote a better modularization of the variable features of the architecture of SPL during the creation of core and variability models of the approach. The services and sub-processes are responsible for combination automatically, through of process of transformation between the core and variability models, and the generation of new models that represent the implementation of the architecture of SPL or a instance model of SPL. Mechanisms for effective modularization of variability for architectures of SPL at model level. The concepts are described and measured with the execution of a case study of an SPL for management systems of transport electronic tickets / Este trabalho prop?e uma abordagem sistem?tica para ger?ncia de variabilidades dirigida por Modelos e Aspectos usando os mecanismos das abordagens de Desenvolvimento de Software Orientado a Aspectos (DSOA) e Desenvolvimento Dirigido por Modelos (DDM). O objetivo central da abordagem, denominada CrossMDA-SPL, ? melhorar a ger?ncia, modulariza??o e isolamento das variabilidades da arquitetura de LPSs em um n?vel de abstra??o alto (modelo) nas fases de projeto e implementa??o de dom?nio de desenvolvimento de Linhas de Produto de Software (LPSs), explorando a sinergia entre o DSOA e DDM. A abordagem CrossMDA-SPL define alguns artefatos base para promover a separa??o clara entres as features mandat?rias (obrigat?rias) e opcionais na arquitetura da LPS. Os artefatos s?o representados por dois modelos denominados: (i) modelo do n?cleo (dom?nio base) respons?vel por especificar as features comuns a todos os membros da LPS; e (ii) modelo de variabilidades respons?vel por representar as features vari?veis da LPS. Em adi??o, a abordagem CrossMDA-SPL ? composta por: (i) diretrizes para modelagem e representa??o das variabilidades; (ii) servi?os e processo CrossMDA-SPL; e (iii) modelos da arquitetura da LPS ou inst?ncia do produto da LPS. As diretrizes utilizam as vantagens de DSOA e DDM para promover uma melhor modulariza??o das features vari?veis da arquitetura da LPS durante a cria??o dos modelos do n?cleo e de variabilidades da abordagem. Os servi?os e subprocessos s?o respons?veis pela combina??o autom?tica, atrav?s de processos de transforma??o, entre os modelos de n?cleo e variabilidades, e a gera??o dos novos modelos que representam a implementa??o da arquitetura de LPS ou um modelo de inst?ncia da LPS. Apresentamos mecanismos para uma eficaz modulariza??o de variabilidades para arquiteturas de LPS no n?vel de modelo. Os conceitos s?o mostrados e avaliados com a execu??o de um estudo de caso de uma LPS para sistemas de gerenciamento de bilhetes eletr?nicos de transporte.
|
Page generated in 0.2229 seconds