• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 43
  • 9
  • 1
  • Tagged with
  • 53
  • 43
  • 27
  • 17
  • 16
  • 13
  • 12
  • 12
  • 11
  • 11
  • 9
  • 8
  • 8
  • 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.
31

REFATORAÇÃO DE PROGRAMAS FORTRAN DE ALTO DESEMPENHO / REFACTORING OF HIGH PERFORMANCE FORTRAN PROGRAMS

Boniati, Bruno Batista 17 August 2009 (has links)
Refactoring is a software engineering technique that aims at improving the internal structure of an application, in such a way that the changes do not interfere in the results produced by the software. This technique is permanently employed in the software life cycle and refers to non-functional characteristics as legibility and performance. Most refactoring techniques currently apply to object-oriented systems and are widely available in integrated development environments for this programming paradigm. In high performance computing applications, code refactoring is a little-explored technique, as a great amount of legacy high performance code was written before the widespread use of object-oriented languages. The Fortran language (FORmula TRANslator) is heavily used in high performance applications, but has a few and limited tools for code refactoring. In such context, our work explores this open research area through the development of new techniques for refactoring Fortran source code. Our development starts from identifying refactoring opportunities for Fortran code and extends the Photran tool, which is an Eclipse IDE plugin for Fortran programming. The new automated refactoring techniques are applied to third-party code written in Fortran, in order to evaluate their impact on the software performance. / Refatoração é uma técnica de engenharia de software que consiste em alterar a estrutura interna de uma aplicação sem que tais alterações interfiram nos resultados produzidos pela mesma. Trata-se de uma tarefa permanentemente presente no ciclo de vida de uma aplicação e está diretamente associada às características não funcionais do software, como legibilidade e desempenho. Técnicas de refatoração são amplamente utilizadas em sistemas desenvolvidos para o paradigma da orientação a objetos e estão presentes de forma automatizada em diversas ferramentas que atuam neste paradigma. Na computação de alto desempenho, a refatoração de código é pouco explorada, principalmente em função de que boa parte do código legado de programas de alto desempenho está escrita em linguagens anteriores ao paradigma da orientação a objetos. A linguagem Fortran (FORmula TRANslator), largamente utilizada em aplicações de alto desempenho, possui poucas e limitadas ferramentas para refatoração de código. Neste contexto, este trabalho explora essa deficiência através da automatização de técnicas de refatoração, utilizando-se do framework da ferramenta Photran (um plugin para edição de código Fortran integrado ao IDE Eclipse). Partindo-se da identificação de oportunidades de refatoração para código Fortran, algumas técnicas são desenvolvidas e integradas à ferramenta Photran. As técnicas automatizadas são utilizadas em aplicações escritas nesta linguagem, de forma a avaliar seu impacto no desempenho das mesmas.
32

Refactoring rules for Graph Databases = Regras de refatoração para banco de dados baseado em grafos / Regras de refatoração para banco de dados baseado em grafos

Fonseca, Adriane de Martini, 1988- 27 August 2018 (has links)
Orientador: Luiz Camolesi Júnior / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Tecnologia / Made available in DSpace on 2018-08-27T04:46:35Z (GMT). No. of bitstreams: 1 Fonseca_AdrianedeMartini_M.pdf: 1663096 bytes, checksum: 54c4089adea68e67cb7ab43b4b46dfdf (MD5) Previous issue date: 2015 / Resumo: A informação produzida atualmente apresenta crescimento em volume e complexidade, representando um desafio tecnológico que demanda mais do que a atual estrutura de Bancos de Dados Relacionais pode oferecer. Tal fato estimula o uso de diferentes formas de armazenamento, como Bancos de Dados baseados em Grafos (BDG). Os atuais Bancos de Dados baseados em Grafos são adaptados para suportar automaticamente a evolução do banco de dados, mas não fornecem recursos adequados para a organização da informação. Esta função é deixada a cargo das aplicações que acessam o banco de dados, comprometendo a integridade dos dados e sua confiabilidade. O objetivo deste trabalho é a definição de regras de refatoração para auxiliar o gerenciamento da evolução de Bancos de Dados baseados em Grafos. As regras apresentadas neste trabalho são adaptações e extensões de regras de refatoração consolidadas para bancos de dados relacionais para atender às características dos Bancos de Dados baseado em Grafos. O resultado deste trabalho é um catálogo de regras que poderá ser utilizado por desenvolvedores de ferramentas de administração de bancos de dados baseados em grafos para garantir a integridade das operações de evolução de esquemas de dados e consequentemente dos dados relacionados / Abstract: The information produced nowadays does not stop growing in volume and complexity, representing a technological challenge which demands more than the relational model for databases can currently offer. This situation stimulates the use of different forms of storage, such as Graph Databases. Current Graph Databases allow automatic database evolution, but do not provide adequate resources for the information organization. This is mostly left under the responsibility of the applications which access the database, compromising the data integrity and reliability. The goal of this work is the definition of refactoring rules to support the management of the evolution of Graph Databases. The rules presented in this document are adaptations and extensions of the existent refactoring rules for relational databases to meet the requirements of the Graph Databases features. The result of this work is a catalog of refactoring rules that can be used by developers of graph database management tools to guarantee the integrity of the operations of database evolution / Mestrado / Tecnologia e Inovação / Mestra em Tecnologia
33

Aplicação de práticas ágeis na construção de data warehouse evolutivo / Application of agile practices in the traditional method of data warehouse engineering

Guilherme Tozo de Carvalho 28 April 2009 (has links)
Um Data Warehouse (DW) é um banco de dados centralizado, orientado por assunto, integrado, não volátil e histórico, criado com o objetivo de dar apoio ao processo de tomada de decisão e que estrutura os dados em uma arquitetura analítica bastante distinta da arquitetura relacional utilizada nos bancos de dados transacionais. Construir um DW é um projeto de engenharia bastante complexo pois envolve muitas tecnologias e muitas pessoas, de diferentes equipes, em um grande esforço conjunto para construir esta base central de informações corporativas. O processo tradicional de construção de um DW não utiliza conceitos ágeis e, pelo escopo de desenvolvimento ser grande, pode levar muito tempo até que funcionalidades sejam entregues aos clientes. Os métodos ágeis de engenharia de software são muito usados como uma alternativa aos métodos tradicionais de desenvolvimento e têm diferenciais que trazem muito valor a projetos grandes pois, além de buscar desenvolver versões funcionais em prazos curtos, defendem que todos os sistemas têm a constante necessidade de se adaptar a mudanças. Neste trabalho são aplicadas práticas ágeis no processo tradicional de engenharia de DW para que o desenvolvimento seja realizado em ciclos iterativos curtos, tornando possível o desenvolvimento rápido e evolutivo de um DW com entregas constantes de novas funcionalidades. A contínua evolução deste complexo ambiente analítico é apoiada por conceitos de banco de dados evolutivos e também por fundamentos de métodos ágeis. / A data warehouse (DW) is a central database, subject-oriented, integrated, nonvolatile, and time-variant collection of data in support of management\'s decision making process and that summarize the data in an analytic architecture quite different from the relational one, used in transactional databases. Building a DW is a complex engineering project because it involves many technologies and many people, from different teams, in a huge corporative effort to build a central database with corporative data. The traditional engineering process to build a DW does not use agile concepts and, as its scope is quite big, it might takes a long time until the customer can use its features. Agile methods of software engineering are commonly used as an alternative to the traditional methods and they have some differentials that lead a lot of value to big projects, as the continuous attempt to develop short releases in short periods of time, or the belief that every system needs to be continuously adapted to the changes on its environment. This work applies agile practices in the traditional DW engineering method, so that the development can be done in short iterative cycles, making possible a fast and evolutive DW project, with frequent delivering of new functionalities. The continuous evolution of this complex analytical environment is supported by evolutive database concepts and also for agile methods foundations.
34

Replicação assíncrona em bancos de dados evolutivos / Asynchronous Replication in Evolutionary Databases

Helves Humberto Domingues 02 June 2011 (has links)
A modelagem evolutiva de bancos de dados é necessária devido às frequentes mudanças de requisitos das aplicações. O desafio é ainda maior quando o banco de dados tem de atender simultaneamente a várias aplicações. A solução proposta por Scott Ambler para evolução utiliza refatorações e define um período de transição, durante o qual tanto o esquema antigo quanto o novo coexistem e os dados são replicados por meio de um processo síncrono que apresenta várias dificuldades, como a interferência no funcionamento normal das aplicações. Para minimizar essas dificuldades, esta tese propõe um processo assíncrono para manter atualizados esses esquemas e apresenta um protótipo de uma ferramenta para auxiliar as evoluções dos bancos de dados. A proposta foi validada por meio de um experimento em laboratório que comparou a solução aqui apresentada com a proposta por Ambler. / Evolutionary database modeling is necessary due to the frequent changes in application requirements. The challenge is greater when the database must support multiple applications simultaneously. The solution for evolution proposed by Scott Ambler is refactoring with a transition period, during which both the old and the new database schemas coexist and data is replicated via a synchronous process, what brings several difficulties, such as interference with the normal operation of applications. To minimize these difficulties, this thesis proposes an asynchronous process to keep these schemas updated and presents a prototype tool to evolve databases. The proposal was validated by a laboratory experiment in which the solution presented here was compared with the one proposed by Ambler.
35

Uma abordagem para criação, reúso e aplicação de refatorações no contexto da modernização dirigida a arquitetura / An approach to create, reuse and apply refactoring in the context of architecture driven modernization

Durelli, Rafael Serapilha 12 April 2016 (has links)
A Modernização Dirigida a Arquitetura (do inglês - Architecture-Driven Modernization (ADM)) é uma iniciativa do Object Management Group (OMG) no sentido de padronizar os tradicionais processos de reengenharia de software utilizando metamodelos. O metamodelo mais importante da ADM é o Knowledge Discovery Metamodel (KDM), cujo objetivo é representar todos artefatos de um determinado sistema, de forma independente de linguagem e plataforma. Um passo primordial durante processos de modernização de software é a aplicação de refatorações. No entanto, até o presente momento, há carência de abordagens que tratam das questões referentes a refatorações no contexto da ADM, desde a criação até a aplicação das mesmas. Além disso, atualmente, não existe uma forma sistemática e controlada de facilitar o reúso de refatorações que são específicas do KDM. Diante disso, são apresentados uma abordagem para criação e disponibilização de refatorações para o metamodelo KDM e um apoio ferramental que permite aplicá-las em diagramas de classe da UML. A abordagem possui dois passos: (i) o primeiro envolve passos que apoiam o engenheiro de modernização durante a criação de refatorações para o KDM; (ii) o segundo resume-se na especificação das refatorações por meio da criação de instâncias do metamodelo Structured Refactoring Metamodel (SRM) e posterior disponibilização delas em um repositório. O apoio ferramental, denominado KDM-RE, é composto por três plug-ins do Eclipse: (i) o primeiro consiste em um conjunto de Wizards que apoia o engenheiro de software na aplicação das refatorações em diagramas de classe UML; (ii) o segundo consiste em um módulo de propagação de mudanças, permitindo manter modelos internos do KDM sincronizados; (iii) o terceiro fornece apoio à importação e reúso de refatorações disponíveis no repositório. Além disso, o terceiro módulo também contém uma linguagem específica de domínio, a qual é utilizada para auxiliar o engenheiro de software a instanciar o metamodelo SRM. Foi realizado um experimento, buscando reproduzir os cenários em que engenheiros de software realizam refatorações em instâncias do metamodelo KDM. Os resultados mostraram que a abordagem, bem como o apoio ferramental podem trazer benefícios para o engenheiro de software durante a atividade de aplicação de refatorações em sistemas, representados pelo metamodelo KDM. / Architecture Driven Modernization (ADM) is an initiative of the Object Management Group (OMG) whose main purpose is to provide standard metamodels that enable the conduction of modernization activities as reverse engineering and software transformation. In this context, the most important metamodel is the Knowledge Discovery Metamodel (KDM), whose objective is to represent software artifacts in a language- and platform-agnostic fashion. A fundamental step during software modernization is refactoring. However, there is a lack of approaches that address how refactoring can be applied in conjunction with ADM. In addition, few efforts have investigated how refactorings can be reused and systematically applied within the context of KDM representations. We propose an approach for creating and cataloging refactorings tailored to KDM. Our approach is twofold: (i) the first part comprises steps that help the software modernization engineer create KDM-compliant refactorings; (ii) the second part has to do with turning these refactoring descriptions into Structured Refactoring Metamodel (SRM) and making them available to be reused. To automate these activities, we developed a tool that makes it possible to apply refactorings to Unified Modeling Language (UML) class diagrams. Our tool, named KDM-RE, comprises three Eclipse plug-ins, which can be briefly described as follows: (i) a set of Wizards aimed at supporting the software modernization engineer during refactoring activities; (ii) a change propagation module that keeps the internal metamodels synchronized; and (iii) a plug-in that supports the selection and reuse of the refactorings available in the repository. Moreover, we developed a domain specific language to minimize the effort required to instantiate SRMs. We carried out an evaluation that simulates how software modernization engineers would go about refactoring KDM instances. Our results would seem to suggest that our approach, when automated by our tool, provides several advantages to software modernization engineers refactoring systems represented by KDMs.
36

Um novo processo para refatoração de bancos de dados. / A new process to database refactoring.

Domingues, Márcia Beatriz Pereira 15 May 2014 (has links)
O projeto e manutenção de bancos de dados é um importante desafio, tendo em vista as frequentes mudanças de requisitos solicitados pelos usuários. Para acompanhar essas mudanças o esquema do banco de dados deve passar por alterações estruturais que muitas vezes prejudicam o desempenho e o projeto das consultas, tais como: relacionamentos desnecessários, chaves primárias ou estrangeiras criadas fortemente acopladas ao domínio, atributos obsoletos e tipos de atributos inadequados. A literatura sobre Métodos Ágeis para desenvolvimento de software propõe o uso de refatorações para evolução do esquema do banco de dados quando há mudanças de requisitos. Uma refatoração é uma alteração simples que melhora o design, mas não altera a semântica do modelo de dados, nem adiciona novas funcionalidades. Esta Tese apresenta um novo processo para aplicar refatorações ao esquema do banco de dados. Este processo é definido por um conjunto de tarefas com o objetivo de executar as refatorações de uma forma controlada e segura, permitindo saber o impacto no desempenho do banco de dados para cada refatoração executada. A notação BPMN foi utilizada para representar e executar as tarefas do processo. Como estudo de caso foi utilizado um banco de dados relacional, o qual é usado por um sistema de informação para agricultura de precisão. Esse sistema, baseado na Web, necessita fazer grandes consultas para plotagem de gráficos com informações georreferenciadas. / The development and maintenance of a database is an important challenge, due to frequent changes and requirements from users. To follow these changes, the database schema suffers structural modifications that, many times, negatively affect its performance and the result of the queries, such as: unnecessary relationships, primary and foreign keys, created strongly attached to the domain, with obsolete attributes or inadequate types of attributes. The literature about Agile Methods for software development suggests the use of refactoring for the evolution of database schemas when there are requirement changes. A refactoring is a simple change that improves the design, but it does not alter the semantics of the data model neither adds new functionalities. This thesis aims at proposing a new process to apply many refactoring to the database schema. This process is defined by a set of refactoring tasks, which is executed in a controlled, secure and automatized form, aiming at improving the design of the schema and allowing the DBA to know exactly the impact on the performance of the database for each refactoring performed. A notation BPMN has been used to represent and execute the tasks of the workflow. As a case study, a relational database, which is used by an information system for precision agriculture was used. This system is web based, and needs to perform large consultations to transfer graphics with geo-referential information.
37

Qualidade de Produto de Software: uma abordagem baseada no controle da complexidade / Software product quality: an approach based on complexity control

Criscuolo, Marcelo 01 April 2008 (has links)
É rara a preocupação com a qualidade de implementação de software. Pode-se observar que as estruturas internas dos softwares são freqüentemente complexas e desorganizadas, especialmente no caso dos softwares que são ditos orientados a objetos. Essa complexidade afeta diretamente a manutenibilidade e a susceptibilidade a erros, dificultando a alteração e a adição de novas funcionalidades aos softwares. As próprias alterações, inerentes aos softwares, os tornam mais complexos, o que agrava o problema. Neste contexto, acredita-se que o controle da complexidade pode levar a produtos de software de melhor qualidade. Assim, trata-se neste trabalho da manutenção preventiva, implementada por meio de inspeções, refatorações e análise de métricas. São estudadas falhas de manutenibilidade em uma amostra de programas orientados a objetos e, a partir dos resultados, são propostos artefatos de apoio para um processo de inspeção de software e modelos para os produtos de trabalho gerados nesse processo. Propõe-se o uso da técnica de leitura PBR (Leitura Baseada em Perspectivas) como uma maneira de se melhorar a detecção de falhas de manutenibilidade. Finalmente, a proposta deste trabalho foi validada por meio de um estudo de caso / The commitment with the quality of software implemetation is rare. It\'s possible to observe that the software internal structures are frequently complex and disorganized, especially when talking about software that is said to be object-oriented. This complexity directly affects maintainability and error proneness, making it difficult to change and to add new functionalities to software. Changes themselves, that are inherent in software, make it more complex, and that makes the problem more serious. In this context, it\'s believed that the control of complexity can lead to better quality software products. Thus, the subject of this work is the preventive maintenance, implemented by means of inspections, refactoring and metric analysis. Maintenance flaws were studied in a sample of object-oriented programs and, based on the results, support artifacts for an inspection process were proposed, along with models of work products for this process. The use of PBR (Perspective-Based Reading) technique is proposed as a means of improving the detection of maintenance flaws. Finally, the proposal of this work is validated through a case study
38

Ustory-Refactory: ferramenta de refatoração de requisitos aplicada em cartões user stories (CRC Cards)

Minuzzi, Tiago da Silva 26 February 2007 (has links)
Made available in DSpace on 2015-03-05T13:58:27Z (GMT). No. of bitstreams: 0 Previous issue date: 26 / Nenhuma / O surgimento de novas metodologias ágeis para apoiar o desenvolvimento de sistemas, como a Extreme Programming (XP), vem causando impacto nas empresas de desenvolvimento de software, especialmente por sua flexibilidade nas mudanças de requisitos no decorrer do projeto. Assim, um melhor entendimento e representação estrutural dos requisitos tornam-se fundamental. Logo, esta pesquisa aplica o conceito das técnicas de refatoração de código dentro da Engenharia de Requisitos, que é focado na metodologia XP, por meios das User Stories. O trabalho aplica um conjunto de padrões e regras que permite aos requisitos expressos em cartões CRC serem refatorados através de pré e pós-condições, sendo que esses requisitos são descritos por mapas conceituais (MC) em formato OWL. Por sua vez, os MCs são convertidos em diagramas de classes da UML por meio da UML-MC que formaliza esta transformação. Dessa forma, o ambiente UStory-Refactory automatiza parcialmente o processo de refatoração e permite que os requisitos refatorados / The emergence of new agile methodologies to support systems development, as the Extreme Programming (XP), has been causing impact on software development companies, specially for its flexibility in the requirements changes during the project. Thus, a better understanding and structural representation of the requirements become basic. Then, this research applies the concept of the code refactoring techniques, inside of the Requirements Engineering, which is focused at XP methodology, through the User Stories. The work applies a set of standards and rules that allows the requirements expressed in CRC cards to be refactored through pre and post-conditions, and the requirements are described for conceptual maps (CMaps) in OWL format. In their turn, the CMaps are converted into UML classes diagrams by the UML-MC that formalizes this transformation. This way, the UStory-Refactory environment partially automatizes the refactoring process and allows the refactored requirements to be exported in OWL format, promoting
39

Um novo processo para refatoração de bancos de dados. / A new process to database refactoring.

Márcia Beatriz Pereira Domingues 15 May 2014 (has links)
O projeto e manutenção de bancos de dados é um importante desafio, tendo em vista as frequentes mudanças de requisitos solicitados pelos usuários. Para acompanhar essas mudanças o esquema do banco de dados deve passar por alterações estruturais que muitas vezes prejudicam o desempenho e o projeto das consultas, tais como: relacionamentos desnecessários, chaves primárias ou estrangeiras criadas fortemente acopladas ao domínio, atributos obsoletos e tipos de atributos inadequados. A literatura sobre Métodos Ágeis para desenvolvimento de software propõe o uso de refatorações para evolução do esquema do banco de dados quando há mudanças de requisitos. Uma refatoração é uma alteração simples que melhora o design, mas não altera a semântica do modelo de dados, nem adiciona novas funcionalidades. Esta Tese apresenta um novo processo para aplicar refatorações ao esquema do banco de dados. Este processo é definido por um conjunto de tarefas com o objetivo de executar as refatorações de uma forma controlada e segura, permitindo saber o impacto no desempenho do banco de dados para cada refatoração executada. A notação BPMN foi utilizada para representar e executar as tarefas do processo. Como estudo de caso foi utilizado um banco de dados relacional, o qual é usado por um sistema de informação para agricultura de precisão. Esse sistema, baseado na Web, necessita fazer grandes consultas para plotagem de gráficos com informações georreferenciadas. / The development and maintenance of a database is an important challenge, due to frequent changes and requirements from users. To follow these changes, the database schema suffers structural modifications that, many times, negatively affect its performance and the result of the queries, such as: unnecessary relationships, primary and foreign keys, created strongly attached to the domain, with obsolete attributes or inadequate types of attributes. The literature about Agile Methods for software development suggests the use of refactoring for the evolution of database schemas when there are requirement changes. A refactoring is a simple change that improves the design, but it does not alter the semantics of the data model neither adds new functionalities. This thesis aims at proposing a new process to apply many refactoring to the database schema. This process is defined by a set of refactoring tasks, which is executed in a controlled, secure and automatized form, aiming at improving the design of the schema and allowing the DBA to know exactly the impact on the performance of the database for each refactoring performed. A notation BPMN has been used to represent and execute the tasks of the workflow. As a case study, a relational database, which is used by an information system for precision agriculture was used. This system is web based, and needs to perform large consultations to transfer graphics with geo-referential information.
40

Refatoração com enfoque em portabilidade como estratégia de reúso em desenvolvimento de middleware para TV digital interativa

Sardinha, Eduardo Drumond 12 December 2011 (has links)
Made available in DSpace on 2016-06-02T19:06:01Z (GMT). No. of bitstreams: 1 4788.pdf: 1588226 bytes, checksum: c369684839c007e031e6c23626c58793 (MD5) Previous issue date: 2011-12-12 / Middleware for interactive digital TV systems are designed to provide convenient abstractions to overcome differences of hardware/software in order to improve the portability of applications. The development of a middleware implementation from scratch is a complex and costly task. To minimize this effort, software assets of existing implementations of these middleware can be reused through software reuse techniques. A refactoring process can be applied to existing middleware implementations to improve some software requirements such as modularity and reusability, in order to facilitate reuse of the middleware. This work presents an approach of refactoring focused on portability as a reuse strategy for the development of new instances of a digital TV middleware for new hardware platforms. The proposed approach is based on software portability concepts and construction characteristics of digital TV middleware. To evaluate the work, we present a case study with our experience of refactoring an implementation of the Brazilian digital TV system s middleware. / Middleware para TV Digital interativa tem a função de prover um ambiente padronizado para a execução de aplicações no qual dependências e/ou diferenças de hardware/software são abstraídas, permitindo o desenvolvimento de aplicativos portáveis. O desenvolvimento completo de um middleware é uma tarefa complexa e que consome muitos recursos. Entretanto, técnicas de reúso de software podem ser aplicadas de forma a tornar o processo de desenvolvimento mais eficiente através da reutilização de artefatos de software de outras implementações existentes do mesmo middleware. Dentro desse contexto, um processo de refatoração (refactoring) pode ser utilizado para melhorar características como modularidade ou reusabilidade, de modo a facilitar o reúso de partes dessas implementações. Esta dissertação de mestrado apresenta uma abordagem de refatoração voltada para portabilidade como estratégia de reúso em implementações de novas inst ancias de middleware para TV Digital para plataformas de hardware diferentes daquela para o qual foi originalmente desenvolvido. A abordagem proposta apoia-se em conceitos e técnicas de portabilidade de software, bem como em características de arquitetura e aspectos de implementação de middleware para TV Digital. Como estudo de caso de aplicação dessa abordagem, resultados de experimentações realizadas com uma implementação do middleware do sistema brasileiro de TV Digital são apresentados e discutidos.

Page generated in 1.0121 seconds