• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 78
  • 34
  • 5
  • 5
  • 3
  • 2
  • 1
  • 1
  • 1
  • Tagged with
  • 134
  • 134
  • 134
  • 53
  • 37
  • 30
  • 26
  • 26
  • 26
  • 24
  • 22
  • 22
  • 21
  • 19
  • 18
  • 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.
121

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.
122

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.
123

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.
124

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
125

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.
126

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.
127

Qualitätssicherung mittels Feature-Modellen

Gollasch, David 17 October 2013 (has links)
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.
128

Conceptual Variability Management in Software Families with Multiple Contributors

Gollasch, David 17 December 2015 (has links)
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.
129

Integrierte und hybride Konstruktion von Software-Produktlinien

Dinger, Ulrich 12 June 2009 (has links)
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.
130

Evolution in Feature-Oriented Model-Based Software Product Line Engineering

Seidl, Christoph 29 September 2011 (has links)
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.:1 Introduction 1.1 Motivation for Evolving Software Product Lines 1.2 Outline of the Thesis 2 Background and Scope 2.1 Concepts and Terminology 2.1.1 Software Product Lines 2.1.2 Model-Driven Software Development 2.1.3 FeatureMapper 2.2 Scope 2.3 Related Work 3 Evolution of Software Product Lines 3.1 Evolutions 3.1.1 Evolutions in the Problem Space 3.1.2 Evolutions in the Solution Space 3.2 Classification Systems for Evolutions 3.2.1 Classification by Behavior Preservation 3.2.2 Classification Systems in the Literature 3.2.3 Classification by Semantical Extent of Model Changes 3.3 Remapping Operations 3.3.1 Remapping in the Problem Space 3.3.2 Remapping in the Solution Space 3.4 Classification and Remapping of Evolutions 3.4.1 Classification and Remapping of Problem Space Evolutions 3.4.2 Classification and Remapping of Solution Space Evolutions 4 A Framework for Evolutions in FeatureMapper 4.1 Relevant Technology 4.1.1 Refactory 4.1.2 EMFText 4.2 Implementation 4.2.1 Implementation of the Evolutions System 4.2.2 Implementation of the Remapping System 4.2.3 Implementation of the User Interface System 4.2.4 Implementation of the Test Suite 4.3 Possibilities for Extension 4.3.1 Adding New Evolutions 4.3.2 Adapting Existing Evolutions 5 Example Project 5.1 Initial Situation in 2001 5.2 First Revision in 2006 5.2.1 Removing the Cassette Player 5.2.2 Adding an MP3 CD Player 5.2.3 Adding a Personal Navigation Device 5.2.4 Changing the Implementation of the UI Builder 5.2.5 Summary of the Changes of the First Revision in 2006 5.3 Second Revision in 2011 5.3.1 Creating a Multi-Format CD Player 5.3.2 Enhancing Voice Recognition to Control the Audio Player 5.3.3 Restructuring Personal Navigation Maps 5.3.4 Changing the Implementation of the CD Player 5.3.5 Summary of the Changes of the Second Revision in 2011 5.4 Conclusion of the Example Project 6 Conclusion 6.1 Summarized Findings 6.2 Limitations and Drawbacks 6.3 Possibilities for Future Work 6.4 Theoretical and Practical Contributions A Object Remapping Specification (*.orspec) A.1 Object Remapping Specification Model A.2 Object Remapping Specification Syntax B DocBooklet (*.docbooklet) B.1 DocBooklet Model B.2 DocBooklet Syntax C NavMap (*.navmap) C.1 NavMap Model C.2 NavMap Syntax List of Figures List of Tables List of Listings Bibliography

Page generated in 0.1649 seconds