• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 58
  • 2
  • Tagged with
  • 61
  • 61
  • 28
  • 21
  • 20
  • 19
  • 18
  • 18
  • 16
  • 16
  • 16
  • 16
  • 11
  • 10
  • 9
  • 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.
1

Definição de Processos Baseada em Componentes

SEGRINI, B. M. 28 August 2009 (has links)
Made available in DSpace on 2016-08-29T15:33:08Z (GMT). No. of bitstreams: 1 tese_2808_.pdf: 2022457 bytes, checksum: f49a705bcec0c4fe9cf41a5589689a22 (MD5) Previous issue date: 2009-08-28 / Definir processos de software não é uma tarefa trivial. Uma abordagem utilizada frequentemente para definição de processos é a definição de processos em níveis, na qual são definidos processos padrão organizacionais, os quais são instanciados para projetos, originando os processos de projeto. Embora essa abordagem se baseie na reutilização de processos, ela não explora amplamente as possibilidades de reúso de processos. Uma alternativa para tentar amenizar as dificuldades na definição de processos é trazer para a o domínio de processos de software as ideias do Desenvolvimento de software Baseado em Componentes (DBC). Este trabalho propõe uma abordagem intitulada Definição de Processos Baseada em Componentes (DPBC), a qual procura institucionalizar o reúso de processos ou de partes deles, tratados como componentes de processo. Esses componentes de processo podem ser definidos no nível de abstração de processos padrão e em variados níveis de granularidade, podendo ser utilizados na definição de outros componentes de processo ou na definição de processos de projeto.
2

Certificação de componentes em uma plataforma de nuvens computacionais para serviços de computação de alto desempenho. / Certification of components in a cloud-based platform for high performance computing services.

Dantas, Allberson Bruno de Oliveira January 2017 (has links)
DANTAS, Allberson Bruno de Oliveira. Certificação de componentes em uma plataforma de nuvens computacionais para serviços de computação de alto desempenho. 2017. 214 f. Tese (Doutorado em Ciência da Computação)-Universidade Federal do Ceará, Fortaleza, 2017. / Submitted by Gláucia Helena da Silveira Mota (glaucia@lia.ufc.br) on 2017-10-23T17:57:00Z No. of bitstreams: 1 2017_tese_abodantas.pdf: 3345763 bytes, checksum: 7d9c19651fdf5919fcc10ab432a72eeb (MD5) / Approved for entry into archive by Jairo Viana (jairo@ufc.br) on 2017-11-03T16:48:46Z (GMT) No. of bitstreams: 1 2017_tese_abodantas.pdf: 3345763 bytes, checksum: 7d9c19651fdf5919fcc10ab432a72eeb (MD5) / Made available in DSpace on 2017-11-03T16:48:46Z (GMT). No. of bitstreams: 1 2017_tese_abodantas.pdf: 3345763 bytes, checksum: 7d9c19651fdf5919fcc10ab432a72eeb (MD5) Previous issue date: 2017 / The development of correct and safe High Performance Computing (HPC) applications is a challenge for developers, since such applications generally use parallelism and run on heterogeneous parallel computing platforms. The Doctoral Thesis proposed in this document is aimed at presenting an architecture of a component certification mechanism for cloud computing platforms of high performance computing services. In particular, this mechanism is proposed within the context of the HPC Shelf platform, allowing the construction of certified components for functional and non-functional properties, which can be used to compose applications for expert users. Two particular certifier components are proposed using the certification mechanism introduced in this Thesis: SWC2 (Scientific Workflow Certifier Component) e C4 (Computation Component Certifier Component). SWC2 components are used to verify formal properties of workflows in HPC Shelf. In turn, C4 components are employed to verify formal properties on computation components. There are still tactical components, which expose the services of software formal verification infrastructures and can be orchestrated, by certifiers, by means of the TCOL (Tactical Component Orchestration Language) language, also proposed in this work. It is expected to contribute to the state-of-the-art in the following points: in cloud computing, by providing the first cloud infrastructure focused on software formal verification using exclusively high performance computing techniques; in component-oriented platforms, by providing nondisruptive components that can certify others in a reflexive way; enabling the creation of the so-called parallel certification systems, which are formed by the orchestration of provers to verify formal properties; in scientific workflows, by extracting the main verifiable patterns in these workflows; and in high performance computing applications, by providing a study on which software formal verification tools are able to verify their properties. / O desenvolvimento de aplicações de Computação de Alto Desempenho (CAD) corretas e seguras é um desafio para desenvolvedores, uma vez que tais aplicações geralmente utilizam paralelismo e executam em plataformas heterogêneas de computação paralela. A Tese de Doutorado proposta neste documento dispõe-se a apresentar a arquitetura de um mecanismo de certificação de componentes para plataformas de nuvens computacionais de serviços de computação de alto desempenho. Em particular, esse mecanismo é proposto no contexto da plataforma HPC Shelf, permitindo a construção de componentes certificados quanto a propriedades funcionais e não funcionais, os quais podem ser utilizados para compor aplicações para usuários especialistas. Dois componentes certificadores particulares são propostos utilizando o mecanismo de certificação introduzido na Tese: SWC2 (Scientific Workflow Certifier Component) e C4 (Computation Component Certifier Component). Componentes SWC2 são utilizados para verificar propriedades formais em workflows na HPC Shelf. Já os componentes C4 são empregados para verificar propriedades formais em componentes de computação. Existem ainda componentes táticos, que expõem serviços de infraestruturas de verificação formal de software e podem ser orquestrados, por certificadores, através da linguagem TCOL (Tactical Component Orchestration Language), também proposta nesse trabalho. Espera-se contribuir com o estado da arte nos seguintes pontos: em nuvens computacionais, fornecendo a primeira infraestrutura em nuvem voltada à verificação formal de software utilizando exclusivamente técnicas de CAD; em plataformas orientadas a componentes, provendo componentes não disruptivos que podem certificar outros de forma reflexiva; possibilitando a criação dos chamados sistemas de certificação paralela, os quais são formados por orquestrações de provadores para verificar propriedades formais; em workflows científicos, extraindo os principais padrões verificáveis desses workflows; e em aplicações de CAD, fornecendo um estudo sobre quais ferramentas de verificação formal de software se aplicam na verificação de suas propriedades.
3

Specification, design and implementation of a reuse repository

BURÉGIO, Vanilson André de Arruda January 2006 (has links)
Made available in DSpace on 2014-06-12T15:59:51Z (GMT). No. of bitstreams: 2 arquivo5652_1.pdf: 2564164 bytes, checksum: 6b08baa8253889819823661c59e9a6a0 (MD5) license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5) Previous issue date: 2006 / A disciplina de Reuso de Software tem crescido em importância, tornando-se uma ferramenta estratégica para empresas que almejam um aumento de produtividade, a obtenção de baixos custos e a alta qualidade dos seus produtos. Porém, antes de obtermos as vantagens inerentes ao reuso, é preciso termos mecanismos hábeis a fim de facilitar o armazenamento, a busca, a recuperação e o gerenciamento dos artefatos reusáveis. Nesse contexto, encaixa-se a idéia de repositórios de reuso. Um repositório de reuso pode ser entendido como uma base preparada para o armazenamento e a recuperação de componentes. O mesmo pode ser visto também, como um grande facilitador, que atua como suporte aos engenheiros de software e outros usuários no processo de desenvolvimento de software para e com reuso. Na literatura, existem diversos trabalhos que exploram repositórios de reuso, porém, o foco desses trabalhos está, quase sempre, voltado a questões de busca e recuperação de componentes e, muitas vezes, aspectos importantes de repositórios de reuso não são explorados adequadamente, como, por exemplo, o uso destes como ferramenta para auxiliar gerentes no monitoramento e controle do reuso em uma organização. Por outro lado, algumas questões levantadas por empresas que desejam construir um repositório de reuso continuam mal respondidas. Tais questões geralmente incluem: Que papéis um repositório deve desempenhar no contexto de reutilização? Quais são os principais requisitos de um repositório de reuso? Quais as alternativas práticas existentes? Como um repositório de reuso pode ser projetado? Motivado por essas questões, esta dissertação apresenta a especificação, o projeto e a implementação de um repositório de reuso baseado na análise das soluções existentes e em uma experiência prática de construção de um ambiente de reuso para fábricas de software. Adicionalmente, são discutidos os resultados obtidos, os problemas encontrados, e as direções futuras para pesquisa e o desenvolvimento
4

Systematic Development of Trustworthy Component-based Systems

Teixeira Ramos, Rodrigo 31 January 2011 (has links)
Made available in DSpace on 2014-06-12T15:54:23Z (GMT). No. of bitstreams: 2 arquivo6881_1.pdf: 1905257 bytes, checksum: 04bfefe5198fb11e1af4564f77de083a (MD5) license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5) Previous issue date: 2011 / Petróleo Brasileiro S.A. / Apesar de componentes serem tratados como unidades básicas de composição no desenvolvimento baseado em componentes (CBD), para que eles obtenham um disseminado status de serem facilmente conectados como peças de lego a integração de componentes precisa ser cuidadosamente projetada, sistematizada e verificada; somente isto poderá garantir arquiteturas confiáveis. Além dos argumentos gerais sobre redução de custo através de reuso, abordagens CBD precisam oferecer uma interessante, e frutífera, oportunidade para o desenvolvimento de sistemas críticos de alta qualidade e viável no contexto industrial. Para alcançar esta meta, propomos neste trabalho uma abordagem sistematizada para a construção de sistemas baseados em componentes (CBS) confiáveis. A abordagem foca na realização de análises que consideram preocupações de engenharia no CBD. Ela se baseia em um modelo de componentes que caracteriza os blocos de construção de nossa abordagem de desenvolvimento, e que impõe as restrições necessárias para sua interação segura. Além disto, definimos restrições de construção para o nosso modelo de componentes, baseadas em regras de composição para componentes. Estas permitem verificar quando dois componentes são compatíveis para trocarem informações. As regras de composição compreendem um método sistematizado para preservar, por construção, propriedades comportamentais em composições de componentes; em particular, focamos na preservação de progresso local e da ausência de deadlock nas composições. Como conseqüência, é possível prever o comportamento de uma vasta gama de CBS, antes de sua implementação, com base em propriedades conhecidas do sistema. Em nossa abordagem, também propomos alternativas de verificação mais amenas: a) predições de condições de composição baseadas na análise de metadados de componentes; b) simplificações em verificações de componente associados a estilos arquiteturais específicos. Toda a abordagem é apoiada pela álgebra de processos CSP, que oferece modelos semânticos que suportam uma vasta gama de verificações e comparações de processos. Além disto, ilustramos a aplicação desta abordagem através de dois estudos de caso, que focam em diferentes aspectos da nossa abordagem, e verificamos mecanicamente a preservação de propriedades comportamentais de componentes na evolução dessas aplicações
5

CoordenaÃÃo e ReconfiguraÃÃo DinÃmica de Componentes em uma Plataforma de ComputaÃÃo Paralela / Coordination and Dynamic Reconfiguration of Components in a Parallel Computing Platform

Juliano Efson Norberto Sales 30 November 2012 (has links)
nÃo hà / Long running applications are very common in High Performance Computing (HPC) domains. During the execution of this kind of application, some improvements or corrections can be identified and applied without making invalid the data that has been processed. In these cases, the ability to make changes in a parallel program during execution is considered useful. Dynamic reconfiguration is the term used to describe this technique, which can be implemented using different alternatives, like architecture description languages (ADL). An ADL allows a the specification of a software based on exogenous conectors to combine and define data types and protocols for orchestrating the interaction between components. This research has the goal of designing an ADL and implementing a configuration interpretation environment for the HPE component-based parallel computing platform. The main purpose of this language is to provide the ability to specify exogenous connectors and support dynamic reconfiguration. Case studies evaluate the performance of the component interpretation developed by the ADL, as well as validate the actions of dynamic reconfiguration. The results are an evidence that the overhead in the interpretation process for realistic problem instances is acceptable, in such a way that, when used wisely, the connectors can be used even in production scenarios. In some cases, the interpretation weight can be disregarded. The reconfiguration experiments are also deemed satisfactory, making the simplicity of the mechanism the major draw of the solution. / Nos domÃnios da ComputaÃÃo de Alto Desempenho (CAD), sÃo comuns aplicaÃÃes com tempo de execuÃÃo de longa duraÃÃo. Durante a execuÃÃo de uma aplicaÃÃo dessa natureza, podem ser identificadas melhorias ou correÃÃes nos algoritmos em execuÃÃo que nÃo invalidam o processamento previamente realizado. Neste cenÃrio, a capacidade de realizar modificaÃÃes em tempo de execuÃÃo se mostra de grande utilidade. A esta tÃcnica chamamos reconfiguraÃÃo dinÃmica, a qual, dentre outros meios discutidos ao longo do trabalho, pode ser implementada a partir do uso de linguagens de propÃsito especÃfico como as linguagens de descriÃÃo de arquitetura (ADL). Uma ADL permite a especificaÃÃo de um sistema de software a partir da construÃÃo de conectores exÃgenos com a funÃÃo de combinar e definir os formatos de dados e protocolos nas interaÃÃes de componentes. Este trabalho de pesquisa tem como objeto o projeto de uma ADL e a implementaÃÃo de um ambiente de interpretaÃÃo de configuraÃÃo para a plataforma de componentes paralelos HPE (Hash Programming Environment). Essa linguagem tem como principal propÃsito oferecer a capacidade de especificar conectores exÃgenos e suporte à reconfiguraÃÃo dinÃmica. Estudos de caso avaliam o desempenho da interpretaÃÃo dos componentes desenvolvidos pela ADL, como tambÃm validam as operaÃÃes de reconfiguraÃÃo dinÃmica. Os resultados mostram sobrecarga considerada aceitÃvel no processo de interpretaÃÃo, para instÃncias realÃsticas de problemas, de forma que, quando utilizado com prudÃncia, os conectores podem ser utilizados atà mesmo em cenÃrios de produÃÃo. Em alguns casos, o peso da interpretaÃÃo chega a ser desprezÃvel. Os ensaios de reconfiguraÃÃo tambÃm se mostram satisfatÃrios para os requisitos apresentados, sendo um dos principais diferencias da soluÃÃo, a simplicidade de uso do mecanismo.
6

[en] DESIGN AND IMPLEMENTATION OF COLLECTIVE INTERFACES IN A COMPONENT-ORIENTED MIDDLEWARE / [pt] PROJETO E IMPLEMENTAÇÃO DE INTERFACES COLETIVAS EM UM MIDDLEWARE ORIENTADO A COMPONENTES DE SOFTWARE

PAULO DA SILVA SILVEIRA 11 October 2011 (has links)
[pt] Tradicionalmente, o processo de desenvolvimento de sistemas paralelos enfatiza o desempenho em detrimento de melhores abstrações de programação, o que acarreta problemas como excessiva complexidade de código e redução da manutenibilidade do software. Novas técnicas tem se mostrado interessantes na construção de software paralelo, tais como as tecnologias de componentes de software. Este trabalho realizou um estudo do mecanismo de comunicação paralela entre componentes conhecido como Interfaces Coletivas. Como parte desse estudo, foi realizada uma implementação desse mecanismo no middleware de componentes SCS, onde foram projetados e implementados dois conectores para sincronizaçãoe comunicação paralela. Essa implementação viabilizou uma análise dos requisitos para a integração das Interfaces Coletivas em um middleware orientado a componentes e possibilitou a identificação dos desafios de implementar esse mecanismo em uma linguagem como C++, amplamente usada em aplicações científicas. / [en] Traditionally, the development process of parallel systems emphasizes performance at the expense of better programming abstractions, which causes problems such as excessive code complexity and reduced software maintainability. New techniques have shown expressive results in building parallel software, such as software components technologies. This work conducted a study of the mechanism of parallel communication between components known as Collective Interfaces. As part of this study, we performed an implementation of this mechanism in the SCS middleware, where two connectors were designed and implemented for parallel synchronization and communnication. This implementation allowed us to analyze the requirements for the integration of Collective Interfaces in a component oriented middleware and to identify the challenges of implementing this mechanism in a language as C++, widely used in scientific applications.
7

Reuso de componentes para interfaces com realidade virtual apoiado pelo ambiente GaCIV.

Albertin, José Carlos Lazzari 25 August 2003 (has links)
Made available in DSpace on 2016-06-02T19:05:20Z (GMT). No. of bitstreams: 1 DissJCLA.pdf: 1360789 bytes, checksum: bb209c7235c8538625fb792962b07d1e (MD5) Previous issue date: 2003-08-25 / This work presents the GaCIV Computational Environment (Configurable Templates for Development of Virtual Reality Interfaces) for building interfaces with non-immersive Virtual Reality for applications in different domains. This new version supports software component reuse, allowing project of friendlier interfaces with virtual reality, with usability and praticity. / A Realidade Virtual (RV) permite que a interação humano-computador possa ocorrer de maneira mais natural e intuitiva, já que o usuário pode transmitir o conhecimento que ele possui do mundo real para o mundo virtual. Isso beneficia a usabilidade do sistema pois o usuário, ao sentir-se dentro de um ambiente que se pareça com o mundo real, pode se situar melhor perante as atividades que ele quer realizar, através da navegação no mundo virtual e a interação mais natural com objetos virtuais. Este trabalho apresenta o Ambiente Computacional GaCIV (Gabaritos Configuráveis para elaboração de Interfaces com realidade Virtual) que propõe a elaboração de interfaces com RV de maneira simples e direta, dando suporte ao reuso de componentes para interfaces com RV, gerando repositórios de componentes para interfaces com RV.
8

C-CORE : uma Ferramenta de programação para construção e reuso de componentes.

Souza Neto, Raphael Marcilio de 24 May 2005 (has links)
Made available in DSpace on 2016-06-02T19:05:25Z (GMT). No. of bitstreams: 1 DissRMSN.pdf: 1736895 bytes, checksum: 08004f2bb011a8d73cc8d4f96e47491d (MD5) Previous issue date: 2005-05-24 / Financiadora de Estudos e Projetos / The Software Development contains several activities that are not always supported by tools that aid the Software Engineer and automate great part of his activities. Different researches have been accomplished and many resources have been spent aiming to construct tools that support the Software Development Process. Among these tools, stand out those that support project and implementation activities, and that are integrated with tools that support other activities of the software construction process. With those tools, it can be obtained a larger consistence of the results that are produced along the whole software development cycle. Another important point of the development process is related to obtain a software with better quality and less cost. One of the areas that is highlighted in the software production with quality and less cost, is those that researches the software components reuse. Thus, the Software Component Oriented Programming Tools integrated with modeling tools that aim mainly to improve the software productivity based on reuse is standing out. Motivated by these ideas, this work presents a tool denominated C-CORE, that supports the project and implementation of components and their applications integrated with other modeling tool, denominated MVCASE. / O Desenvolvimento de Software compreende diversas atividades que nem sempre são suportadas por ferramentas que auxiliam o Engenheiro de Software e automatizam grande parte de suas atividades. Diferentes pesquisas têm sido realizadas e muitos recursos têm sido gastos com o objetivo de construir ferramentas que apóiam o Processo de Desenvolvimento de Software. Dentre essas ferramentas, destacam-se aquelas que oferecem apoio às atividades de projeto e implementação, e que são integradas com ferramentas que auxiliam outras atividades do processo de construção de software. Com essas ferramentas, pode-se obter uma maior consistência dos artefatos produzidos ao longo de todo o ciclo de desenvolvimento de software. Outro ponto importante do processo de desenvolvimento relaciona-se com a obtenção de software com melhor qualidade e menor custo. Uma das áreas que vem se destacando na produção de software com qualidade e menor custo é a que pesquisa o reuso de componentes de software. Assim, vem ganhando destaque as ferramentas de programação orientadas a componentes de software integradas com ferramentas de modelagem que visam principalmente a produtividade de software baseada no reuso. Motivados por estas idéias, este trabalho apresenta uma ferramenta de suporte ao projeto e implementação de componentes e suas aplicações, denominada C-CORE, integrada com outra ferramenta de modelagem, denominada MVCASE.
9

Componentes para manipulação de objetos multimídia utilizando o padrão MPEG-7.

Figueira, Leandro Donaires 18 June 2007 (has links)
Made available in DSpace on 2016-06-02T19:05:25Z (GMT). No. of bitstreams: 1 DissLDF.pdf: 1886677 bytes, checksum: dc37e62087bd48b0ae6005924f0c8b99 (MD5) Previous issue date: 2007-06-18 / Financiadora de Estudos e Projetos / This work presents a layer for the manipulation of media based on the multimedia content description interface, MPEG-7. This layer realizes some parts of the MPEG-7 MDS (Multimedia Description Schemes), and being built by components, makes a base for the implementation of any application that has media manipulation requisites that range from the simplest ones to a database multimedia system. In this last case, it can be a system that have many operations being executed in a database, like multimedia data mining and indexing by low level features, all supported by MPEG-7. This layer was built to unify the necessities on manipulating media of many applications, integrating them and acting as a mediator. It provides interfaces so that the insertion of media together with their semantic annotation is possible, along with queries based on these semantic metadata derived from these annotations. A simplified model for the semantic annotation and queries for the ease of use of these interfaces was proposed, being the annotations and queries made in a similar manner. Finally, this layer allows the exporting of the query metadata on the format used by MPEG-7 for interchange between systems. / Este trabalho apresenta uma camada de manipulação de mídias baseada no padrão de descrição de dados multimídia MPEG-7. Esta camada realiza algumas partes dos MDS (Multimedia Description Schemes) do padrão MPEG-7, e através de sua construção por componentes, forma uma base para a implementação de quaisquer aplicações que tenham requisitos de manipulação de mídias, desde as mais simples até um sistema de banco de dados multimídia. Nesse último caso, pode ser um sistema que execute as várias operações possíveis em um banco de dados, como mineração de dados multimídia e indexação por características de baixo-nível, tudo apoiado sobre o padrão. Esta camada foi feita com a intenção de unificar as necessidades de manipulação de mídias por várias aplicações, integrando-as e agindo dessa forma como mediadora. Ela provê interfaces para que sejam feitas inserções de mídias junto com as anotações semânticas, além de consultas sobre elas através desses metadados semânticos provindos das anotações. Foi proposto um modelo simplificado de anotação e consulta semântica para a fácil utilização dessas interfaces, sendo que tanto as anotações como as consultas são feitas de maneira semelhante. Finalmente, essa camada possibilita que seja feita a exportação dos metadados da consulta no formato usado pelo padrão MPEG-7, para intercâmbio de dados com outros sistemas.
10

Uma abordagem de reengenharia interativa orientada a características para sistemas embutidos legados

Ramos, Marcelo Augusto 28 October 2007 (has links)
Made available in DSpace on 2016-06-02T19:05:27Z (GMT). No. of bitstreams: 1 1694.pdf: 901058 bytes, checksum: e514a96a13b1c36a4d60a8b5b7008adb (MD5) Previous issue date: 2007-10-28 / To reduce costs, to minimize risks, to anticipate deadlines and to optimize resources of new product designs it is recommended, whenever possible, to reuse artifacts of existing successful similar products. However, these artifacts must be of easy adaptation to meet the requirements of the new products with a few or no need of re-design or re-coding. This work describes a feature oriented iterative reengineering approach to concomitantly achieve both the revitalization of embedded legacy systems and the incremental creation of a core of reusable artifacts, to support the development of other similar systems, members of a product family. Such systems are generally small and pass through frequent maintenances to support the evolution of the hardware they integrate, accelerating the natural software degradation process. The accomplishment of a reengineering process can extend the life cycle of these systems, improving their structural properties for a better adaptation to changes. Agile principles and techniques are applied throughout the process, providing continuous interactions with the customer and deliveries of executable and tested partially modernized versions in short and frequent intervals, with documentation in appropriate level and prepared for future modifications. Software Product Line techniques are used for the domain modeling and for the design of generic software components. Its activities are accomplished without the need of code freezing or duplication and allow maintenances and interruptions at anytime, without prejudice of the enhancements already developed in all previously ended iterations. A case study is presented to exemplify the proposed approach in a real environment and to evaluate its results. / Para reduzir custos, minimizar riscos, antecipar prazos e otimizar recursos de projetos de novos produtos recomenda-se, sempre que possível, a reutilização de artefatos de produtos similares e bem sucedidos existentes. Porém, esses artefatos devem ser de fácil adaptação para que satisfaçam aos requisitos desses novos produtos com pouca ou nenhuma necessidade de re-projeto ou de re-codificação. Este trabalho descreve uma abordagem de reengenharia iterativa orientada a características para realizar concomitantemente a revitalização de sistemas embutidos legados e a criação incremental de um núcleo de artefatos reutilizáveis, para apoiar o desenvolvimento de outros sistemas similares, membros de uma família de produtos. Tais sistemas são geralmente pequenos e sofrem constantes manutenções para apoiarem a evolução do hardware que integram, acelerando o processo natural de degradação do software. A realização de um processo de reengenharia pode prolongar a vida útil desses sistemas, melhorando suas propriedades estruturais para uma melhor adaptação a mudanças. Princípios e técnicas ágeis são aplicados ao longo de todo o processo, provendo interações contínuas com o cliente, entregas de versões executáveis testadas e parcialmente modernizadas em intervalos curtos e freqüentes, com documentação em nível apropriado e preparadas para modificações futuras. Técnicas de Linha de Produtos de Software são utilizadas para a modelagem de domínio e para o projeto de componentes genéricos de software. Suas atividades são realizadas sem a necessidade de congelamentos ou duplicações de código e permitem que manutenções e paralisações ocorram a qualquer instante, sem prejuízo das melhorias já desenvolvidas nas iterações previamente concluídas. Um estudo de caso é apresentado para exemplificar a aplicação da abordagem proposta em um ambiente real e para avaliar os seus resultados.

Page generated in 0.1268 seconds