• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 43
  • 12
  • 4
  • 2
  • 1
  • 1
  • Tagged with
  • 64
  • 64
  • 38
  • 20
  • 19
  • 18
  • 13
  • 13
  • 12
  • 12
  • 12
  • 10
  • 9
  • 8
  • 8
  • 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.
21

Evolução de componentes compartilhados por multiplas linhas de produto de software / Evolution of components shared by multiple software product lines

Assis, Wendel Malta de 15 August 2018 (has links)
Orientador: Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-15T07:02:41Z (GMT). No. of bitstreams: 1 Assis_WendelMaltade_M.pdf: 3475428 bytes, checksum: a93eaa26b089299962c102e6c3a037c5 (MD5) Previous issue date: 2009 / Resumo: O uso de Linhas de Produto de Software é uma prática comum entre as empresas de software, tendo como objetivo promover o desenvolvimento de um conjunto de produtos de software relacionados através da reutilização de um núcleo comum de ativos de software. Dentre estas empresas, podemos mencionar a Motorola, cujo ambiente de desenvolvimento em que múltiplas linhas de produto são mantidas em paralelo serviu de motivação para este trabalho. Na prática, a complexidade de alguns tipos de negócios apoiados por linhas de produto implica em mudanças na forma como a adoção da abordagem é sugerida pela literatura. Em particular na Motorola, as linhas de produto são baseadas em componentes e a arquitetura da linha de produto possui diversos pontos de variação, onde variantes de componentes representando diversas alternativas de projeto podem ser escolhidas. Além disso, várias linhas de produto são mantidas em paralelo e os componentes e suas variantes podem ser compartilhados entre elas. Neste contexto, a evolução de componentes é uma tarefa complexa, pois a inclusão de novas características nas variantes dos componentes pode impactar não somente a arquitetura e os ativos de uma única linha de produto, mas também das diversas linhas que as utilizam. A principal contribuição deste trabalho é a documentação de uma família de padrões de evolução de componentes compartilhados por múltiplas linhas de produto de software. Além desta família de padrões, também é apresentado um processo para auxiliar na análise do padrão de evolução a ser adotado para implementar uma determinada requisição de mudança / Abstract: The Software Product Line approach is becoming widely used by software companies, whose goal is to promote the development of a set of related software products through the reuse of a common core of software assets. Among these companies, we can mention Motorola, whose development environment where multiple software product lines are maintained in parallel served as the motivation for this work. In practice, the complexity of some types of businesses supported by product lines involves changes in how the adoption of the approach is suggested by the literature. At Motorola, the product lines are based on components and the product line architecture has many variation points, where variants of components representing various design alternatives can be chosen. In addition, several product lines are maintained in parallel and the components and their variants can be shared among them. In this context, the evolution of components is a complex task, because the inclusion of new features in variants of the components can impact not only the architecture and assets in a single product line but also on many products lines that are using them. The main contribution of this work is the documentation of a family of component evolution patterns that are shared between multiple software product lines. Besides that, a process to assist in analyzing the evolution pattern to be taken to implement a specific change request is presented / Mestrado / Engenharia de Software / Mestre em Ciência da Computação
22

Projeto e implementação de variabilidade em arquiteturas baseadas no modelo de componentes COSMOS* / Design and implementation of architectural variabilities based on COSMOS*

Dias, Marcelo de Oliveira 15 August 2018 (has links)
Orientador: Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-15T17:22:42Z (GMT). No. of bitstreams: 1 Dias_MarcelodeOliveira_M.pdf: 4085359 bytes, checksum: c41b2892cccbfb8a55cf89dc93b47f00 (MD5) Previous issue date: 2010 / Resumo: Muitos esforços estão sendo feitos, atualmente, para se obter um alto grau de reutilização durante o desenvolvimento de sistemas. Linhas de produtos de software (LPS) é uma abordagem moderna para promover a reutilização de software. Um dos principais artefatos de uma LPS é sua Arquitetura de Linhas de Produtos (ALP), que provê uma perspectiva global das variabilidades da linha, ao passo que engloba os conceitos tradicionais de uma arquitetura de software. Devido as variabilidades de software de uma ALP, a evolução arquitetural é ainda mais complexa, do que quando comparado com evolução de arquiteturas de software convencionais. O objetivo principal deste trabalho é propor um novo modelo para especificar e implementar variabilidades de software em ALPs baseadas em componentes, de forma a facilitar a evolução arquitetural. A solução proposta é um refinamento do modelo de implementações de componentes COSMOS*, chamado COSMOS*-VP, que emprega a modularização de pontos de variação explícitos e modernas abordagens de programação orientada a aspectos, com o intuito de promover a estabilidade arquitetural, e assim, facilitar a evolução de ALPs. A validação do modelo proposto foi feita utilizando duas LPS, que sofreram diversos cenários de evolução reais. Durante as evoluções, as ALPs criadas utilizando COSMOS*-VP tiveram a estabilidade mensurada através de métricas de impacto de mudanças e modularidade. Os resultados obtidos para o modelo proposto foram comparados com os alcançados utilizando o modelo COSMOS* original / Abstract: Nowadays, many efforts are being made to achieve a high degree of reuse during systems development. Software Product Lines (SPL) is a modern approach to improve software reuse, and one of its main artifacts is the Product Line Architecture (PLA). A PLA provides a global view of the variabilities of a SPL, while it embodies the concepts and advantages of the traditional software architecture. Due to its variabilities, a PLA is harder to evolve than a convetional software architecture. The main goal of this work is to propose a new model to specify and implement software variabilities of component-based PLAs. Our proposed solution is an extension of the component implementation model COSMOS*, called COSMOS*-VP, which employs specific elements and modern aspect-oriented approaches to modularize architectural variation points, aiming at the improvement of architectural stability of PLAs, and thus, facilitating their evolution. The validation of the proposed solution was made using two SPLs, which were targed of several real evolution scenarios. During the evolution, the PLAs created using COSMOS*-VP had their stability measured using metrics of change impact and modularity. The results of the proposed model were compared with those achieved using the COSMOS* model / Mestrado / Engenharia de Software / Mestre em Ciência da Computação
23

Un environnement pour le développement rigoureux de composants répartis : formalisation et outils logiciels / A framework for rigorous development of distributed components : formalisation and tools

Kulankhina, Oleksandra 14 October 2016 (has links)
Dans cette thèse, nous proposons une approche rigoureuse pour la conception et le développement de systèmes à base de composants hiérarchiques distribués. L’idée de base du travail présenté est de combiner les techniques de conception de logiciels dirigées par les modèles, bien connues des programmeurs, avec des méthodes de vérification formelles puissantes, capables d’assurer les propriétés fonctionnelles d’un système distribué et de détecter les erreurs dès le stade de la conception. Tout d’abord, nous introduisons un formalisme graphique basé sur UML pour l’architecture et le comportement des composants hiérarchiques de modélisation. Deuxièmement, nous spécifions formellement un ensemble de contraintes qui assurent la correction de la composition des composants, en mettant l’accent sur la séparation entre les aspects fonctionnels et non-fonctionnels. Troisièmement, nous expliquons comment nos modèles graphiques peuvent être traduits automatiquement dans le formalisme d’entrée d’un model-checker. Nous nous concentrons ensuite sur le codage des fonctionnalités avancées de composants distribués, comme communications de 1 vers N, la reconfiguration et les communications asynchrones basées sur les appels de procédures distants. Enfin, nous mettons en oeuvre cette approche dans une plateforme intégrée orienté modèle qui comprend un ensemble d’éditeurs graphiques, un module de validation de la décision correcte de l’architecture statique, un module traduisant le modèle conceptuel dans une entrée pour la plateforme de vérification CADP, et enfin un générateur de code exécutable / In this thesis we introduce an approach for rigorous design and development of distributed hierarchical component-based systems. The core idea of the presented work is to combine the well-known among the programmers techniques for modeldriven software design and the powerful formal verification methods able to ensure the functional properties of a distributed system and to detect errors at the early design stage. First, we introduce a UML-based graphical formalism for modelling architecture and behaviour of hierarchical components. Second, we formally specify a set of constraints that ensure the correct components composition with a focus on separation between the functional and non-functional aspects. Third, we explain how the graphical models can be automatically translated into an input for a model-checker. For this aim, we rely on a formally specified intermediate structure encoding the semantics of components behaviour as a network of synchronised parametrised label transition systems. We focus here on encoding the advanced features of distributed components such as one-to-many communications, reconfiguration, and asynchronous communications based on request-reply. Finally, we implement the approach in an integrated model-driven environment which comprises a set of graphical editors, an architecture static correctness validation plug-in, a plug-in translating the conceptual model into an input for a verification toolsuite CADP, and a generator of the implementation code
24

[en] COMPOSITE COMPONENT SUPPORT FOR THE SCS MIDDLEWARE / [pt] SUPORTE A COMPONENTES COMPOSTOS PARA O MIDDLEWARE SCS

ADRIANO MEDEIROS DOS SANTOS 30 November 2012 (has links)
[pt] Diversos modelos de componentes de software apresentam o conceito de componentes compostos, como é o caso do Fractal, OpenCOM, Koala, Kobra e SaveCCM. Um componente composto encapsula outros componentes e é responsável por oferecer mecanismos de configuração e introspecção estrutural, bem como externalizar serviços e dependências internas. A ideia de componentes compostos é reconhecida como uma boa técnica para abstrair estruturas complexas e maximizar o reuso. Entretanto, não existe um estudo mais aprofundado sobre tal mecanismo que aborde questões sobre a configuração inicial dos subcomponentes, o mapeamento de serviços e depend ências de subcomponentes através de interfaces do componente composto, formas de navegação compartilhamento de subcomponentes, ciclo de vida e formas de introspecção estrutural. Neste trabalho foi realizado um levantamento sobre como os modelos Fractal e OpenCOM tratam o conceito de componentes compostos e é proposto um modelo que oferece este suporte. Como estudo experimental foi implementada uma nova versão do SCS com suporte a componentes compostos, o SCS-Composite. Também foi feita uma avaliação da expressividade do SCS-Composite através da adaptação de uma aplicação pré-existente baseada no SCS. / [en] Several software component models support composite components, such as Fractal, OpenCOM, Koala, Kobra and SaveCCM. A composite component encapsulates components and provides introspection and configuration mechanisms. Composite components are recognized as a good practice because abstract complex structures and increase reuse. However, there is not a comprehensive study about composite component mechanisms addressing issues like initial composite configuration, mapping of subcomponents services and dependencies through composite component’s interfaces, introspection, component sharing, and composites life cycle. In this work we perform a study about how the Fractal and OpenCOM apply the composite component concept and we propose a new model for composite components. As an experimental study we implemented a new version of the SCS component system with support for composite components, the SCS-Composite. We also present an evaluation of SCS-Composite through the adaptation of a SCS based application.
25

[en] A STUDY ABOUT CONTRACTS IN SOFTWARE COMPONENT SYSTEMS / [pt] UM ESTUDO SOBRE CONTRATOS EM SISTEMAS DE COMPONENTES DE SOFTWARE

LUIZ MARQUES AFONSO 02 March 2009 (has links)
[pt] A programação por contratos é uma das técnicas voltadas para a melhoria da qualidade de software, sendo baseada no aumento do formalismo da especificação das interfaces. No contexto de componentes de software distribuídos, o uso de contratos envolve alguns desafios que o diferenciam do seu uso mais tradicional. O objetivo deste trabalho é a avaliaação do uso de contratos no desenvolvimento de sistemas distribuí­dos baseados em componentes de software, identificando as abordagens existentes e analisando as vantagens e desvantagens do seu uso. São também avaliadas caracterí­sticas como robustez, desempenho, flexibilidade, facilidade de uso e limitações. Como estudo de caso, foi desenvolvido um subsistema de suporte a contratos sobre um middleware CORBA implementado em Lua, servindo de base para experimentos realizados durante a pesquisa. / [en] Contract-based programming is one of the techniques used to improve the quality of software by enhancing the formalism of interface specifications. In the context of distributed software components, the use of contracts presents new challenges that make it di*erent from its traditional use. This work intends to evaluate the use of contracts in the development of component-based distributed systems, identifying the current approaches and analyzing its advantages and disadvantages. It also covers topics like robustness, performance, flexibility, ease of use and limitations. As a case study, a contract subsystem was developed over a CORBA middleware using Lua, serving as the basis for experiments in our study.
26

[en] ADDING SYSTEM INTRASTRUCTURE FRAMEWORKS IN AN COMPONENT BASED ARCHITECTURE: A CASE STUDY WITHIN THE AULANET ENVIRONMENT / [pt] AGREGANDO FRAMEWORKS DE INFRA-ESTRUTURA EM UMA ARQUITETURA BASEADA EM COMPONENTES: UM ESTUDO DE CASO NO AMBIENTE AULANET

CELSO GOMES BARRETO JUNIOR 05 July 2006 (has links)
[pt] Groupware é difícil de construir e de manter, pois envolve aspectos multidisciplinares. Além das dificuldades associadas ao desenvolvimento de aplicações colaborativas, usualmente o desenvolvedor de groupware deve se preocupar com outros aspectos de infra-estrutura. Nesta dissertação é proposta uma arquitetura multicamadas baseada em componentes para groupware, utilizando frameworks de infra-estrutura. Na camada de negócio são utilizados os frameworks Hibernate, responsável pela persistência dos dados da aplicação, e o framework Spring, que dentre outras coisas é responsável pelo controle de transações e pela exposição de serviços remotamente. Na camada de apresentação o framework JaveServer Faces provê meios para criar e reusar componentes de interface. Nesta dissertação também é apresentada uma forma de comparar frameworks de infra-estrutura, levando em consideração tanto aspectos técnicos, que definem se o framework atende aos requisitos da aplicação, quanto nãotécnicos, relacionados a aspectos como documentação disponível e aceitação no mercado. A arquitetura definida nesta dissertação é aplicada no AulaNet, groupware voltado para a aprendizagem desenvolvido no Laboratório de Engenharia de Software da PUC-Rio. / [en] Groupware is difficult to develop and maintain because it involves multidisciplinary aspects in its construction. Besides the difficulties related to the development of collaborative applications, usually the developer must handle with other infrastructure aspects. In this dissertation, it is proposed a multilayer component based architecture with system infrastructure frameworks to deal with them. In the business layer, the Hibernate framework is responsible for the persistence of application data, and the Spring framework is responsible for, amongst others, transactions control and remote exposition of services. In the presentation layer the JaveServer Faces framework provides ways to create and to reuse user-interface components. This dissertation also presents a way to compare system infrastructure frameworks, considering both technical aspects, related to the application requirements fulfillment, and non- technical, related to aspects such as documentation availability and market acceptance. The architecture defined in this dissertation is applied to the AulaNet, which is a groupware for learning developed in the Software Engineering Laboratory of PUC-Rio.
27

Processo de avaliação de componentes de software fornecidos por terceiros baseado no uso de modelos de qualidade. / Third-party software components evaluation process based on quality models.

Hirata, Thiago Massao 27 November 2007 (has links)
O objetivo deste trabalho foi definir um processo para a avaliação de componentes de software, que possa ser utilizado em organizações que utilizem componentes comerciais ou de software livre desenvolvidos por terceiros no desenvolvimento de sistemas de software. O Desenvolvimento Baseado em Componentes (CBD - Component-based Development) é um caminho para a diminuição de custos e prazos no desenvolvimento de sistemas de software. A adesão a essa prática pelas organizações incentivou o surgimento do mercado de comercialização de componentes de software e a multiplicação de projetos de componentes de código aberto, distribuídos livremente pela Internet. No entanto, o uso de componentes de software desenvolvidos por terceiros possui um risco associado, pois um componente escolhido pode não possuir a qualidade esperada, ou não apresentar o comportamento desejado dentro das condições reais de uso. Neste contexto, o objetivo do processo de avaliação de componentes é levantar dados referentes à qualidade de um componente e interpretar esses dados, seja para adquirir confiança em um componente, ou para a seleção de um componente em casos em que existe mais de uma opção disponível. Como peça central da avaliação está o modelo de qualidade, que define os atributos de qualidade de cada fator de qualidade, e as métricas para apoiar a avaliação. / The objective of this work is to define a process to software component evaluation to organizations which use third party, commercial off-the-shelf or open source components in the development of software products. The Component-based Development (CBD) is an approach to reduce costs and time-to-market of software projects. The need of components has become an opportunity to the growth of the software component market and to multiplication of projects of open source software components, which can be freely downloaded from Internet. However, the use of third-party components in a project can be risky. It is possible that a component does not present the expected behavior or does not have the needed quality for specific conditions associated to the software system in development. In this context, the objective of the software component evaluation process is to obtain trustful information from the quality of a component and to analyze this information, assessing the component use in a particular context or selecting one component among similar products. The main part of this process is the use of Quality Model which establishes the quality factors and metrics to support the evaluation.
28

Composition d'applications multi-modèles dirigée par la composition des interfaces graphiques / Multi-models application composition driven by user interface composition

Brel, Christian 28 June 2013 (has links)
Force est de constater que composer des applications existantes afin d’en réutiliser tout ou une partie est une tâche complexe. Pourtant avec l’apparition quotidienne d’applications, les éditeurs d’applications ont de plus en plus besoin d’effectuer de telles compositions pour répondre à la demande croissante des utilisateurs. Les travaux existants ne traitent généralement que d’un seul point de vue : celui du "Noyau Fonctionnel" dans le domaine du Génie Logiciel, celui des Tâches" ou celui de l’"Interface Graphique" dans le domaine des Interactions Homme-Machine (IHM). Cette thèse propose une nouvelle approche basée sur un modèle d’application complet (fonctionnel, tâche et interface graphique). Elle permet à un utilisateur de naviguer entre ces différents modèles pour sélectionner des ensembles cohérents pouvant être composé par substitution. Une implémentation de cette approche a permis d’effectuer des tests utilisateurs confortant les bienfaits d’une modélisation complète. / One has to note that composing existing applications by completely or partly reusing them is a complex task. Nevertheless with the daily appearance of new available applications on any media, the application editors need to perform such compositions more and more to answer the increasing users’ requests. Modeling an application for composition or just determining by which point of view on applications make this composition is not easy. Works exist, but generally deal or ensue from only a single point of view : the "Functional Core" point of view in Software Engineering field, the "Task" one or "User Interface" one in Human Computer Interaction (HCI) field. This thesis defines a new approach based on a complete application model (functionnal, task and user interface). It enables an user to navigate between those different models in order to select consistent sets. These last ones are composable by substitution. An implementation of this approach was used to perform user tests whose results consolidate benefits of a complete model.
29

Processo de avaliação de componentes de software fornecidos por terceiros baseado no uso de modelos de qualidade. / Third-party software components evaluation process based on quality models.

Thiago Massao Hirata 27 November 2007 (has links)
O objetivo deste trabalho foi definir um processo para a avaliação de componentes de software, que possa ser utilizado em organizações que utilizem componentes comerciais ou de software livre desenvolvidos por terceiros no desenvolvimento de sistemas de software. O Desenvolvimento Baseado em Componentes (CBD - Component-based Development) é um caminho para a diminuição de custos e prazos no desenvolvimento de sistemas de software. A adesão a essa prática pelas organizações incentivou o surgimento do mercado de comercialização de componentes de software e a multiplicação de projetos de componentes de código aberto, distribuídos livremente pela Internet. No entanto, o uso de componentes de software desenvolvidos por terceiros possui um risco associado, pois um componente escolhido pode não possuir a qualidade esperada, ou não apresentar o comportamento desejado dentro das condições reais de uso. Neste contexto, o objetivo do processo de avaliação de componentes é levantar dados referentes à qualidade de um componente e interpretar esses dados, seja para adquirir confiança em um componente, ou para a seleção de um componente em casos em que existe mais de uma opção disponível. Como peça central da avaliação está o modelo de qualidade, que define os atributos de qualidade de cada fator de qualidade, e as métricas para apoiar a avaliação. / The objective of this work is to define a process to software component evaluation to organizations which use third party, commercial off-the-shelf or open source components in the development of software products. The Component-based Development (CBD) is an approach to reduce costs and time-to-market of software projects. The need of components has become an opportunity to the growth of the software component market and to multiplication of projects of open source software components, which can be freely downloaded from Internet. However, the use of third-party components in a project can be risky. It is possible that a component does not present the expected behavior or does not have the needed quality for specific conditions associated to the software system in development. In this context, the objective of the software component evaluation process is to obtain trustful information from the quality of a component and to analyze this information, assessing the component use in a particular context or selecting one component among similar products. The main part of this process is the use of Quality Model which establishes the quality factors and metrics to support the evaluation.
30

Ajouter de l'information spatiale aux modèles de composant logiciel - l'effet de localisation

HASSAN, Ali 25 September 2012 (has links) (PDF)
Highly distributed environments (HDEs) are deployment environments that include powerful and robust machines in addition to resource-constrained and mobile devices such as laptops, personal digital assistants (or PDAs), smart-phones, GPS devices, sensors, etc. Developing software for HDEs is fundamentally different from the software development for central systems and stable distributed systems. This argument is discussed deeply and in-details throughout this dissertation. HDE applications are challenged by two problems: unreliable networks, and heterogeneity of hardware and software. Both challenges need careful handling, where the system must continue functioning and delivering the expected QoS. This dissertation is a direct response to the mentioned challenges of HDEs. The contribution of this dissertation is the cloud component model and its related formal language and tools. This is the general title. However, and to make this contribution clear, we prefer to present it in the following detailed form: (1) We propose a paradigm shift from distribution transparency to localization acknowledgment being the first class concern. (2) To achieve the above mentioned objective, we propose a novel component model called cloud component (CC). (3) In this dissertation we propose a new approach to assemble CCs using systematic methodology that maintains the properties of CC model. (4) Cloud component development process and cloud component based systems development process. (5) Location modeling and advanced localization for HDEs are the pivotal key in our contribution. (6) Formal language to model single CC, CC assembly, CC development process, and CC based systems. (7) We finally present our fully-developed supporting tools: the cloud component management system CCMS, and the Registry utility. To respond to the challenges posed by HDEs, and to maintain expected software quality at the user endpoint, we think we need to pass a ¿paradigm shift¿ from the way software is designed and implemented currently to our new vision that this dissertation is devoted to. This is a paradigm shift from distribution transparency to localization acknowledgment being the first class concern. The contribution in this thesis has several faces as explained above, but still, these faces are cohesive. Each of these faces form a partial contribution, however, this partial contribution does not mean anything if isolated from the overall proposal. Moreover, the merit of the overall proposal can not be grasped by reading one partial contribution. The merit of the proposal is evident only if all parts of this work are cohesively organized. Finally, we claim that our proposal spans the entire software development process for HDEs, from requirements to deployment and runtime management.

Page generated in 0.1007 seconds