• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 88
  • 44
  • 5
  • 5
  • 5
  • 2
  • 2
  • 1
  • 1
  • Tagged with
  • 158
  • 158
  • 142
  • 61
  • 38
  • 36
  • 36
  • 32
  • 28
  • 27
  • 26
  • 25
  • 24
  • 22
  • 20
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
141

GingaForAll: linha de Produtos do Middleware Ginga

Pereira, Lucas Silva 16 December 2010 (has links)
Made available in DSpace on 2014-12-17T15:47:55Z (GMT). No. of bitstreams: 1 LucasSP_DISSERT.pdf: 4412437 bytes, checksum: 1797ce9cec4016d1d5518d6d933435d2 (MD5) Previous issue date: 2010-12-16 / Many challenges have been imposed on the middleware to support applications for digital TV because of the heterogeneity and resource constraints of execution platforms. In this scenario, the middleware must be highly configurable so that it can be customized to meet the requirements of applications and underlying platforms. This work aims to present the GingaForAll, a software product line developed for the Ginga - the middleware of the Brazilian Digital TV (SBTVD). GingaForAll adds the concepts of software product line, aspect orientation and model-driven development to allow: (i) the specification of the common characteristics and variables of the middleware, (ii) the modularization of crosscutting concerns - both mandatory and concepts variables - through aspects, (iii) the expression of concepts as a set of models that increase the level of abstraction and enables management of various software artifacts in terms of configurable models. This work presents the architecture of the software product line that implements such a tool and architecture that supports automatic customization of middleware. The work also presents a tool that implements the process of generating products GingaForAll / V?rios desafios t?m sido impostos a middleware para suporte a aplica??es de TV digital devido a heterogeneidade e restri??es de recursos das plataformas de execu??o. Nesse cen?rio, o middleware deve ser altamente configur?vel de forma a poder ser customizado para atender aos requisitos das aplica??es e das plataformas subjacentes. Esse trabalho tem como objetivo apresentar o GingaForAll, uma linha de produtos de software desenvolvida para o Ginga o middleware do Sistema Brasileiro de TV Digital (SBTVD). GingaForAll agrega os conceitos de linha de produtos de software, orienta??o a aspectos e desenvolvimento dirigido a modelos de forma a permitir: (i) a especifica??o das caracter?sticas comuns e vari?veis do middleware; (ii) a modulariza??o dos conceitos transversais tanto conceitos obrigat?rios quanto vari?veis atrav?s de aspectos; (iii) a express?o de conceitos como um conjunto de modelos que aumentam o n?vel de abstra??o e permite o gerenciamento de diferentes artefatos de software em termos de modelos configur?veis. Esse trabalho apresenta a arquitetura da linha de produtos de software e uma ferramenta que implementa tal arquitetura e que oferece suporte para customiza??es autom?ticas do middleware. O trabalho tamb?m apresenta uma ferramenta que implementa o processo de gera??o de produtos GingaForAll
142

Avalia??o sistem?tica de abordagens de deriva??o de produto

Torres, M?rio S?rgio Scaramuzzi 17 February 2011 (has links)
Made available in DSpace on 2014-12-17T15:47:57Z (GMT). No. of bitstreams: 1 MarioSST_DISSERT.pdf: 2743049 bytes, checksum: da23e766aa49e7926f3ad6450145c626 (MD5) Previous issue date: 2011-02-17 / Conselho Nacional de Desenvolvimento Cient?fico e Tecnol?gico / Product derivation tools are responsible for automating the development process of software product lines. The configuration knowledge, which is responsible for mapping the problem space to the solution space, plays a fundamental role on product derivation approaches. Each product derivation approach adopts different strategies and techniques to manage the existing variabilities in code assets. There is a lack of empirical studies to analyze these different approaches. This dissertation has the aim of comparing systematically automatic product derivation approaches through of the development of two different empirical studies. The studies are analyzed under two perspectives: (i) qualitative that analyzes the characteristics of approaches using specific criteria; and (ii) quantitative that quantifies specific properties of product derivation artifacts produced for the different approaches. A set of criteria and metrics are also being proposed with the aim of providing support to the qualitative and quantitative analysis. Two software product lines from the web and mobile application domains are targets of our study / Abordagens de deriva??o de produto s?o respons?veis por automatizar o processo de engenharia de aplica??o de linhas de produto de software. O conhecimento de configura??o, que ? respons?vel por relacionar o espa?o do problema com o espa?o da solu??o, desempenha um papel fundamental nas abordagens de deriva??o de produto. Cada ferramenta adota estrat?gias e t?cnicas diferentes para gerenciar o processo de deriva??o de produto e h? uma car?ncia de estudos experimentais para avaliar as diferentes abordagens. Esta disserta??o de mestrado tem como objetivo comparar sistematicamente abordagens de deriva??o autom?tica de produtos, atrav?s do desenvolvimento de estudos emp?ricos. Os estudos s?o desenvolvidos sob duas perspectivas: (i) qualitativa atrav?s da an?lise de caracter?sticas das ferramentas; e (ii) quantitativa atrav?s da quantifica??o de propriedades espec?ficas de artefatos de deriva??o produzidos para as ferramentas. Um conjunto de crit?rios e m?tricas tamb?m ? proposto com o objetivo de oferecer suporte para as an?lises qualitativas e quantitativas. Duas linhas de produto, uma para o dom?nio de sistemas web e outra para o contexto de aplica??es de dispositivos m?veis, s?o alvos do nosso estudo
143

Dos requisitos ? arquitetura em linhas de produtos de software: uma estrat?gia de transforma??es entre modelos

Coelho, Keivilany Janielle de Lima 06 February 2012 (has links)
Made available in DSpace on 2014-12-17T15:47:59Z (GMT). No. of bitstreams: 1 KeivilanyJLC_DISSERT.pdf: 3136956 bytes, checksum: 58f2931b21ff1ab0cd5e4e065e0d1aa4 (MD5) Previous issue date: 2012-02-06 / Conselho Nacional de Desenvolvimento Cient?fico e Tecnol?gico / The tracking between models of the requirements and architecture activities is a strategy that aims to prevent loss of information, reducing the gap between these two initial activities of the software life cycle. In the context of Software Product Lines (SPL), it is important to have this support, which allows the correspondence between this two activities, with management of variability. In order to address this issue, this paper presents a process of bidirectional mapping, defining transformation rules between elements of a goaloriented requirements model (described in PL-AOVgraph) and elements of an architectural description (defined in PL-AspectualACME). These mapping rules are evaluated using a case study: the GingaForAll LPS. To automate this transformation, we developed the MaRiPLA tool (Mapping Requirements to Product Line Architecture), through MDD techniques (Modeldriven Development), including Atlas Transformation Language (ATL) with specification of Ecore metamodels jointly with Xtext , a DSL definition framework, and Acceleo, a code generation tool, in Eclipse environment. Finally, the generated models are evaluated based on quality attributes such as variability, derivability, reusability, correctness, traceability, completeness, evolvability and maintainability, extracted from the CAF? Quality Model / O rastreamento entre modelos das atividades de requisitos e arquitetura ? uma estrat?gia que busca evitar a perda de informa??es, reduzindo o gap entre essas duas atividades iniciais do ciclo de vida do software. No contexto das Linhas de Produto de Software (LPS), ? importante que haja um suporte a esse rastreamento, que permita a correspond?ncia entre as duas atividades, com um gerenciamento satisfat?rio das variabilidades. Buscando atender a essa quest?o, este trabalho apresenta um processo de mapeamento bi-direcional, definindo regras de transforma??o entre elementos de modelo de requisitos orientado a objetivos (descrito em PL-AOVgraph) e elementos de descri??o arquitetural (definida em PL-AspectualACME). Essas regras de mapeamento s?o avaliadas em um estudo de caso: a LPS Ginga ForAll. Para automatizar essa transforma??o, implementamos a ferramenta MaRiPLA (Mapping Requirements to Product Line Architecture), atrav?s de t?cnicas do desenvolvimento dirigido a modelos (Model-driven Development MDD), incluindo a linguagem de transforma??es entre modelos Atlas Transformation Language (ATL) com especifica??o de metamodelos do tipo Ecore em conjunto com os frameworks Xtext, de defini??o DSL, e Acceleo, de gera??o de c?digo, em ambiente Eclipse. Por fim, os modelos gerados s?o avaliados, com base em atributos de qualidade como variabilidade, derivabilidade, reusabilidade, corretude, rastreabilidade, completude, evolutibilidade e manutenibilidade, extra?dos do Modelo de Qualidade CAF?
144

[en] MODULARITY AND STABILITY ASSESSMENT OF IMPLEMENTATION TECHNIQUES FOR MULTI-AGENT SYSTEMS PRODUCT LINES / [pt] AVALIAÇÃO DA MODULARIDADE E ESTABILIDADE DE TÉCNICAS DE IMPLEMENTAÇÃO PARA LINHAS DE PRODUTOS DE SISTEMAS MULTI-AGENTES

CAMILA PATRICIA BAZILIO NUNES 15 September 2017 (has links)
[pt] Uma Linha de Produtos de Sistemas Multi-agentes (LP-SMA) define uma arquitetura de linha de produto de software (LPS) cujo projeto e implementação são realizados usando agentes de software para compreender features comuns e variáveis. O desenvolvimento de LP-SMA pode ser feito através de plataformas específicas de SMA e técnicas de implementação. Exemplos de tais técnicas são: frameworks orientados a objetos, compilação condicional, arquivos de configuração e programação orientada a aspectos (POA). Todavia, os estudos empíricos existentes não focam na abordagem de LP-SMA, considerando diferentes técnicas de implementação e plataformas específicas de desenvolvimento de SMA. Nesse contexto, este trabalho apresenta uma comparação sistemática de diferentes técnicas de implementação de variabilidades de features de agentes no domínio de LP-SMA. Esta comparação sistemática envolveu o uso de duas plataformas de desenvolvimento de SMA (JADE e Jadex) e das técnicas de implementação: compilação condicional, arquivos de configuração e POA. Neste estudo, um conjunto de métricas de software foram utilizadas para avaliar atributos de qualidade, tais como modularidade e estabilidade. Para a realização deste estudo, duas LP-SMAs foram desenvolvidas. A primeira foi a LP-SMA do Expert Committee, uma linha de produto de sistemas de gerenciamento de conferências. A segunda foi a LP-SMA OLIS, que provê diversos serviços pessoais para os usuários. Os dados coletados durante a realização dos estudos empíricos permitiram o relato de um conjunto de lições aprendidas. / [en] A Multi-agent System Product Line (MAS-PL) defines a Software Product Line (SPL) architecture whose design and implementation are accomplished using software agents to address its common and variable features. The MAS-PL development can be performed through MAS specific platforms and implementation techniques. Examples of such techniques are: object-oriented frameworks, conditional compilation, configuration files and aspect-oriented programming (AOP). However, the existing empirical studies do not focus on MAS-PL approach, considering different implementation techniques and MAS specific platforms. In this context, this work presents a systematic comparison of different variability implementation techniques of agent features in the MAS-PL domain. This systematic comparison involved the use of two platforms of MAS development (JADE and Jadex) and implementation techniques conditional compilation, configuration files and AOP. In this study, a suite of software metries were used to evaluate quality attributes, such as modularity and stability. In order to perform this study, two MAS-PLs were developed. The first one was the Expert Commitee MAS-PL, a product line of conference management systems. The second one as the OLIS MAS-PL, which provides several personal services to the users. The collected data during the accomplished empirical studies allowed to report a set of lessons learned.
145

Catálogo de padrões para o desenvolvimento de software como um serviço multi-tenant

Leite, Bruno Dias 20 October 2014 (has links)
Made available in DSpace on 2016-06-02T19:06:22Z (GMT). No. of bitstreams: 1 6616.pdf: 3224245 bytes, checksum: 3bea5c064e483543e0961a78c51613d2 (MD5) Previous issue date: 2014-10-20 / Software as a Service (SaaS) represent a form of software distribution on demand and accessible via the Internet. The development of SaaS enables service users (tenants) to benefit from the low cost of deployment and maintenance. The Multi-Tenant (MT) architecture is often used in the development of SaaS, it allows the sharing of software and hardware resources, providing cost savings to the costumers and the service provider. A challenge that the SaaS developer has is to keep sharing the instance of the software in scenarios with tenants who have differing needs. In this project, to address the variability of tenants in SaaS MT were set some patterns, based on Software Product Lines techniques for customizing user interfaces, data, processes and permissions. A framework called FoSaaS (Framework of Software as a Service) has also been developed to support the use of patterns, providing support to developers in SaaS MT coding. In addition to allowing the customization of SaaS MT, experiments in this project indicated that patterns improve reuse, quality and productivity in developed SaaS MT. The applicability of the patterns was evidenced through real projects in developing commercial applications. / Softwares como um Serviço (SaaS) representam uma forma de distribuição de software sob demanda e acessíveis via Internet. O desenvolvimento de SaaS possibilita aos consumidores do serviço (tenants) se beneficiarem do baixo custo de implantação e manutenção. A arquitetura Multi-Tenant (MT) é frequentemente utilizada no desenvolvimento de SaaS, pois permite o compartilhamento de recursos de software e hardware, proporcionando a redução de custos ao consumidor e ao fornecedor do serviço. Um desafio que o desenvolvedor de SaaS tem é o de manter o compartilhamento da instância do software em cenários com tenants que possuem necessidades divergentes. Neste projeto, para tratar a variabilidade dos tenants em SaaS MT foram criados alguns padrões, com base em técnicas de linhas de produtos de software, para customização de interfaces de usuários, dados, processos e permissões. Um framework denominado FoSaaS (Framework of Software as a Service) também foi desenvolvido para apoiar o uso dos padrões criados fornecendo apoio aos desenvolvedores na codificação de SaaS MT. Além de permitir a customização de SaaS MT, experimentos realizados neste projeto indicaram que os padrões melhoram o reúso, a qualidade e a produtividade dos SaaS MT desenvolvidos. A aplicabilidade dos padrões foi evidenciada por meio da realização de projetos reais no desenvolvimento de aplicações comerciais.
146

Uma Abordagem para Recomendação de Módulos para Projetos de Desenvolvimento Distribuído de Linhas de Produto de Software

Pereira, Thaís Alves Burity 28 February 2011 (has links)
Made available in DSpace on 2015-05-14T12:36:28Z (GMT). No. of bitstreams: 1 arquivototal.pdf: 2198784 bytes, checksum: 572b347cf59107b757a2f48f47d938a2 (MD5) Previous issue date: 2011-02-28 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / Software Product Line (SPL) has been adopted by software industry in recent years, mainly by promoting software reuse in a systematic and predictable way, and supporting product development for global markets. Despite the benefits, SPL requires a high initial effort and the involvement of domain experts, which are not always available in a local team. In such a scenario, Global Software Development (GSD) approaches would be applied to find domain experts and more qualified teams for SPL projects. Moreover, such work strategy reinforces some of the benefits already offered by SPL approach, such as reducing development cost and increasing product quality. Nonetheless, GSD approaches also present some obstacles, which are mainly related to communication between dispersed development teams. Assuming that dependencies between software components greatly influence the need for communication between their respective development teams, in this work it is presented an approach to identify candidates for modules to be developed in a (partially) independent manner by geographically dispersed teams, in which a module is a clustering of components. To do so, the approach defines: quantitative measures that describe the dependence between software components in SPL projects; an algorithm based on metaheuristics for clustering components into modules, dealing with clustering as an optimization problem; and a quantitative measure that describe the dependencies between modules, which must be employed to guide the allocation of the development teams to the modules. / Linhas de Produto de Software (LPS) tem ganhado bastante espaço na indústria de software nos últimos anos, principalmente por promover o reuso de maneira sistemática e previsível, e oferecer apoio ao desenvolvimento de produtos para mercados globais. No entanto, o desenvolvimento de LPS exige das organizações grande investimento inicial e a participação de profissionais qualificados, os quais nem sempre estão disponíveis localmente. Nesse cenário, o Desenvolvimento Distribuído de Software (DDS) pode ser empregado para encontrar especialistas do domínio e equipes mais qualificadas para o desenvolvimento de LPS. Além disso, essa forma de trabalho reforça alguns dos benefícios já oferecidos por LPS, tais como redução de custo de desenvolvimento e aumento da qualidade dos produtos. Apesar disso, abordagens de DDS também têm suas limitações, relacionadas principalmente à comunicação entre as equipes participantes de um mesmo projeto. Partindo da premissa de que dependências entre componentes de software exercem grande influência sobre a necessidade de comunicação entre suas respectivas equipes de desenvolvimento, neste trabalho é apresentada uma abordagem para identificar candidatos à módulos para serem desenvolvidos de forma (parcialmente) independente por equipes geograficamente dispersas, sendo um módulo um agrupamento de componentes. Para tanto, a abordagem define: medidas quantitativas que descrevem a dependência entre componentes de software em projetos de LPS; um algoritmo baseado em metaheurísticas para agrupar componentes em módulos, tratando o agrupamento como um problema de otimização; e uma medida quantitativa que descreve as dependências entre módulos, que deve ser empregada para guiar a alocação das equipes de desenvolvimento aos módulos.
147

Uma ferramenta para anÃlise automÃtica de modelos de caracterÃsticas de linhas de produtos de software sensÃvel ao contexto / A tool for context aware software product lines feature diagram automatic analysis

Paulo Alexandre da Silva Costa 27 November 2012 (has links)
CoordenaÃÃo de AperfeiÃoamento de Pessoal de NÃvel Superior / As Linhas de produtos de software sÃo uma forma de maximizar o reuso de software, dado que proveem a customizaÃÃo de software em massa. Recentemente, Linhas de produtos de software (LPSs) tÃm sido usadas para oferecer suporte ao desenvolvimento de aplicaÃÃes sensÃveis ao contexto nas quais adaptabilidade em tempo de execuÃÃo à um requisito importante. Neste caso, as LPSs sÃo denominadas Linhas de produtos de software sensÃveis ao contexto (LPSSCs). O sucesso de uma LPSSC depende, portanto, da modelagem de suas caracterÃsticas e do contexto que lhe à relevante. Neste trabalho, essa modelagem à feita usando o diagrama de caracterÃsticas e o diagrama de contexto. Entretanto, um processo manual para construÃÃo e configuraÃÃo desses modelos pode facilitar a inclusÃo de diversos erros, tais como duplicaÃÃo de caracterÃsticas, ciclos, caracterÃsticas mortas e falsos opcionais sendo, portanto, necessÃrio o uso de tÃcnicas de verificaÃÃo de consistÃncia. A verificaÃÃo de consistÃncia neste domÃnio de aplicaÃÃes assume um papel importante, pois as aplicaÃÃes usam contexto tanto para prover serviÃos como para auto-adaptaÃÃo caso seja necessÃrio. Neste sentido, as adaptaÃÃes disparadas por mudanÃas de contexto podem levar a aplicaÃÃo a um estado indesejado. AlÃm disso, a descoberta de que algumas adaptaÃÃes podem levar a estados indesejados sà pode ser atestada durante a execuÃÃo pois o erro à condicionado à configuraÃÃo atual do produto. Ao considerar que tais aplicaÃÃes estÃo sujeitas a um grande volume de mudanÃas contextuais, a verificaÃÃo manual torna-se impraticÃvel. Logo, à interessante que seja possÃvel realizar a verificaÃÃo da consistÃncia de forma automatizada de maneira que uma entidade computacional possa realizar essas operaÃÃes. Dado o pouco suporte automatizado oferecido a esses processos, o objetivo deste trabalho à propor a automatizaÃÃo completa desses processos com uma ferramenta, chamada FixTure (FixTure), para realizar a verificaÃÃo da construÃÃo dos modelos de caracterÃsticas para LPSSC e da configuraÃÃo de produtos a partir desses modelos. A ferramenta FixTure tambÃm provà uma simulaÃÃo de situaÃÃes de contexto no ciclo de vida de uma aplicaÃÃo de uma LPSSC, com o objetivo de identificar inconsistÃncias que ocorreriam em tempo de execuÃÃo. / Software product lines are a way to maximize software reuse once it provides mass software customization. Software product lines (SPLs) have been also used to support contextaware applicationâs development where adaptability at runtime is an important issue. In this case, SPLs are known as Context-aware software product lines. Context-aware software product line (CASPL) success depends on the modelling of their features and relevant context. However, a manual process to build and configure these models can add several errors such as replicated features, loops, and dead and false optional features. Because of this, there is a need of techniques to verify the model consistency. In the context-aware application domain, the consistency verification plays an important role, since application in this domain use context to both provide services and self-adaptation, when it is needed. In this sense, context-triggered adaptations may lead the application to undesired state. Moreover, in some cases, the statement that a contex-triggered adaptation is undesired only can be made at runtime, because the error is conditioned to the current product configuration. Additionally, applications in this domain are submitted to large volumes of contextual changes, which imply that manual verification is virtually not viable. So, it is interesting to do consistency verification in a automated way such that a computational entity may execute these operations. As there is few automated support for these proccesses, the objective of this work is to propose the complete automation of these proccesses with a software tool, called FixTure, that does consistency verification of feature diagrams during their development and product configuration. FixTure tool also supports contextual changes simulation during the lifecycle of a CASPL application in order to identify inconsistencies that can happen at runtime.
148

Uma abordagem orientada a modelos para reutilização de software / A model-driven software reuse approach

Daniel Lucredio 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
149

Family-Based Modeling and Analysis for Probabilistic Systems

Chrszon, Philipp, Dubslaff, Clemens, Klüppelholz, Sascha, Baier, Christel 11 May 2020 (has links)
Feature-based formalisms provide an elegant way to specify families of systems that share a base functionality and differ in certain features. They can also facilitate an all-in-one analysis, where all systems of the family are analyzed at once on a single family model instead of one-by-one. This paper presents the basic concepts of the tool ProFeat, which provides a guarded-command language for modeling families of probabilistic systems and an automatic translation of family models to the input language of the probabilistic model checker PRISM. This translational approach enables a family-based quantitative analysis with PRISM. Besides modeling families of systems that differ in system parameters such as the number of identical processes or channel sizes, ProFeat also provides special support for the modeling and analysis of (probabilistic) product lines with dynamic feature switches, multi-features and feature attributes. By means of several case studies we show how ProFeat eases family-based modeling and compare the one-by-one and all-in-one analysis approach.
150

ProFeat: Feature-oriented engineering for family-based probabilistic model checking

Chrszon, Philipp, Dubslaff, Clemens, Klüppelholz, Sascha, Baier, Christel 11 May 2020 (has links)
The concept of features provides an elegant way to specify families of systems. Given a base system, features encapsulate additional functionalities that can be activated or deactivated to enhance or restrict the base system’s behaviors. Features can also facilitate the analysis of families of systems by exploiting commonalities of the family members and performing an all-in-one analysis, where all systems of the family are analyzed at once on a single family model instead of one-by-one. Most prominent, the concept of features has been successfully applied to describe and analyze (software) product lines. We present the tool ProFeat that supports the feature-oriented engineering process for stochastic systems by probabilistic model checking. To describe families of stochastic systems, ProFeat extends models for the prominent probabilistic model checker Prism by feature-oriented concepts, including support for probabilistic product lines with dynamic feature switches, multi-features and feature attributes. ProFeat provides a compact symbolic representation of the analysis results for each family member obtained by Prism to support, e.g., model repair or refinement during feature-oriented development. By means of several case studies we show how ProFeat eases family-based quantitative analysis and compare one-by-one and all-in-one analysis approaches.

Page generated in 0.0839 seconds