Engenharia de Software Experimental

Tamanho: px
Começar a partir da página:

Download "Engenharia de Software Experimental 2013.2"

Transcrição

1 Engenharia de Software Experimental Avaliação de introdução de anomalias de software, após aplicação de refatorações automáticas para remoção de code smells Chrystinne Fernandes

2 Sumário Conceitos abordados Introdução Objetivos Gerais Específicos Hipóteses Método empírico Resultados esperados Considerações finais Referências 2

3 Conceitos abordados Qualidade de software Conjunto de métricas; Ferramentas de medição Code smells Conceito Exemplos Ferramentas de detecção Refatoração Conceito Exemplos Ferramentas 3

4 Introdução De que forma é possível avaliar a qualidade de um software? Escolha adequada do conjunto de métricas Ferramentas de medição O que são code smells? Ferramentas de detecção O que é refatoração? Por que, quando e como refatorar Impactos positivos e negativos no código, no projeto e na qualidade do sistema Ferramentas de refatoração 4

5 Qualidade de software Uso de formas de avaliação da qualidade consolidadas e amplamente aceitas; Conjunto de métricas que serão utilizadas: DAC: Data Abstraction Coupling; LCOM: Lack of Cohesion in Methods; NOM: Number Of Methods; RFC: Response For a Class; TCC: Tight Class Cohesion; WMC: Weighted Methods per Class; 5

6 Qualidade de software Categorias: Métricas de Coesão (LCOM e TCC); Métricas de Acoplamento (DAC e RFC); Métricas de Complexidade (WMC e RFC); Ferramentas para avaliação da qualidade do código: JDepend4Eclipse (Plugin Eclipse); Sonar (Plugin Eclipse); Eclipse-PMD (Plugin Eclipse); 6

7 Code smells Definição: São estruturas no código que segerem ou às vezes até gritam pela refatoração. If it stinks, change it. (by Kent Beck and Martin Fowler) Alguns exemplos: Duplicated Code; Long Method; Large Class; Long Parameter List; 7

8 Code smells alguns exemplos Divergent Change; Shotgun Surgery; Feature Envy; Data Clumps; Primitive Obsession; Switch Statements; Parallel Inheritance Hierarchies; Lazy Class; Speculative Generality; Temporary Field; Message Chains; 8

9 Code smells alguns exemplos Middle Man; Inappropriate Intimacy; Alternative Classes with Different Interfaces; Incomplete Library Class; Data Class; Refused Bequest; Smells que serão abordados: Feature Envy (Inveja dos dados); Long Method; Shotgun Surgery (Cirurgia com rifle); Large Class; Entre outros; 9

10 Refatoração Conceito: Refatoração é o processo de alteração de um sistema de software de modo que o comportamento externo do código não mude, mas que sua estrutura interna seja melhorada. (Martin Fowler) 10

11 Refatoração Alguns exemplos Extract Method; Inline Method; Replace Temp with Query; Split Temporary Variable; Move Method; Move Field; Extract Class; Replace Conditional with Polymorphism; Rename Method; Pull Up Field; Pull Up Method; 11

12 Refatoração Alguns exemplos Pull Up Constructor Body; Push Down Method; Push Down Field; Extract Subclass; Extract Superclass; Extract Interface; Collapse Hierarchy; Form Template Method; Replace Inheritance with Delegation; Replace Delegation with Inheritance; Separate Domain from Presentation; 12

13 Refatoração Refatorações que serão aplicadas: Move Method; Extract Method; Extract Class; Entre outras; 13

14 Ferramentas de Refatorãção Ferramentas de suporte ao processo de refatoração: Ferramenta Linguagem Sonar Java, C, PHP, Groovy SafeRefactor Java Together Java, C++, C# JDepend Java Jdeodorant Java PMD Java InFusion Java, C, C++ 14

15 Objetivos gerais Avaliar a introdução de anomalias em sistemas de software, após aplicação de refatorações automáticas para remoção de code smells. 15

16 Objetivos específicos Avaliar impactos na qualidade de sistema após as transformações, utilizando métricas bem definidas; Avaliar a relação custo-benefício resultante da remoção de cada code smell; Determinar quais anomalias foram geradas após a aplicação de cada refatoração e qual seu impacto na qualidade do sistema; Indicar quais refatorações produzem maior número anomalias; 16

17 Hipóteses H1 Ferramentas de detecção de code smells não são 100% confiáveis, podendo não reconhecer alguns code smells ou encontrar falsos positivos; H2 Ferramentas de refatoração não são 100% confiáveis, uma vez que seu uso não elimina todos os code smells; H3 O processo de refatoração traz riscos para o desenvolvimento de software, mesmo realizado de modo sistemático, com uma metodologia bem definida; 17

18 Hipóteses H4 O uso de ferramentas que automatizam o processo de refatoração introduz anomalias no código; H5 Quando aplicado de modo sistemático, o processo de refatoração aumenta a qualidade do software, melhorando a legibilidade e a manutenibilidade do código; 18

19 Método empírico Estudo de caso Serão avaliados 3 sistemas open source; 19

20 Resultados esperados Relação de code smells mais críticos do sistema, listados na ordem em que deveriam ser removidos através de ferramentas de refatoração; Relação das anomalias introduzidas após a refatoração e seu impacto na qualidade do sistema; 20

21 Considerações finais Dúvidas? Críticas? Sugestões Contato: 21

22 Referências [1] Martin Fowler et al. Refactoring: Improving the Design of Existing Code. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, [2] Joshua Kerievsky, Refactoring To Patterns. Industrial Logic, Inc., [3] Fontana, Francesca Arcelli; Spinelli, Stefano. Impact of refactoring on quality code evaluation. WRT '11 Proceedings of the 4th Workshop on Refactoring Tools. Pages

23 Referências [4] Murphy-Hill et al How we refactor and how we know it. Proceedings of 31st ICSE, USA. [5] Arcoverde, Roberta. Identificando Quebras de Assertivas Causadas por Refatorações. [6] Arcoverde, Roberta. Ferramentas de Apoio a Refatorações. [7] Arendt, Thorsten; Taentzer, Gabriele. Integration of smells and refactorings within the Eclipse modeling framework. 23

24 Referências [8] [9] [10] toring/ [11] Understand for Java: [12] PMD: 24

25 Obrigada! 25

Refactoring Visão Geral do Catálogo de Martin Fowler

Refactoring Visão Geral do Catálogo de Martin Fowler Refactoring Visão Geral do Catálogo de Martin Fowler Jorge Fernandes Janeiro de 2001 Catálogo de Refactorings Composição de Métodos Movendo Características entre Objetos Organizando Dados Simplificando

Leia mais

Reengenharia, Refatoração e Bad Smell

Reengenharia, Refatoração e Bad Smell DCC / ICEx / UFMG Reengenharia, Refatoração e Bad Smell Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Reengenharia de Sistemas Reestruturação ou reescrita de parte ou de todo um sistema legado

Leia mais

Refatorando

Refatorando Refatorando TUDO! @marcosbrizeno @marcosbrizeno A única maneira de ir rápido é ter qualidade https://pt.wikipedia.org/wiki/procrastinação esforço tempo esforço prazo tempo esforço tempo O Scrum resolve

Leia mais

Refatoração de Software

Refatoração de Software Refatoração de Software O que é? Atividade em que a estrutura interna de um software é modificada de modo que seu comportamento externo seja preservado; O objetivo é melhorar a qualidade do software; Cada

Leia mais

J820. Refactoring. Design no Código. argonavis.com.br. Helder da Rocha ([email protected])

J820. Refactoring. Design no Código. argonavis.com.br. Helder da Rocha (helder@acm.org) J820 Refactoring Design no Código Helder da Rocha ([email protected]) O que é Uma técnica de design baseada no código Refactoring (ou refatoramento) permite que se altere o design de uma aplicação, grande

Leia mais

Utilização de Análise de Características Dinâmicas em analises estáticas.

Utilização de Análise de Características Dinâmicas em analises estáticas. Utilização de Análise de Características Dinâmicas em analises estáticas. Felipe A. Miziara 1, Marcelo A. Maia 1 1 Departamento de pós-graduação em Ciências da Computação Universidade Federal de Uberlândia

Leia mais

DataBase Refactoring em FireBird

DataBase Refactoring em FireBird DataBase Refactoring em FireBird Autor: Manoel Pimentel Medeiros É Engenheiro de Software, com mais de 15 anos na área de TI, atualmente trabalha com projetos Java pela Rhealeza(SP) e como Coach em metodologias

Leia mais

Desenvolvimento Dirigido por Testes (TDD)

Desenvolvimento Dirigido por Testes (TDD) Desenvolvimento Dirigido por Testes (TDD) Cursos de Verão 2008 www.agilcoop.org.br Mariana & Paulo O que é Desenvolvimento Dirigido por Testes? Dúvidas? Copyleft AgilCoop 2008 2 Testes a priori Conhecer

Leia mais

Desenvolvimento Dirigido por Testes (TDD)

Desenvolvimento Dirigido por Testes (TDD) Desenvolvimento Dirigido por Testes (TDD) Cursos de Verão 2010 www.agilcoop.org.br Hugo Corbucci O que é Desenvolvimento Dirigido por Testes? Entenderam? Copyleft AgilCoop 2010 2 Testes a priori Conhecer

Leia mais

Desenvolvimento do Módulo de Pré-processamento e Geração de Imagens de. Imagens de Teste do Sistema DTCOURO

Desenvolvimento do Módulo de Pré-processamento e Geração de Imagens de. Imagens de Teste do Sistema DTCOURO Desenvolvimento do Módulo de Pré-processamento e Geração de Imagens de Teste do Sistema DTCOURO Willian Paraguassu Amorim 27 de julho de 2005 1 Título Desenvolvimento do Módulo de Pré-processamento e Geração

Leia mais

JAVA. Tópicos Especiais de Programação Orientada a Objetos. sexta-feira, 26 de outubro de 12

JAVA. Tópicos Especiais de Programação Orientada a Objetos. sexta-feira, 26 de outubro de 12 JAVA Tópicos Especiais de Programação Orientada a Objetos 1 REFATORAÇÃO DE CÓDIGOS 2 REFATORAÇÃO O QUE É REFATORAR? Refatorar é alterar o código de um projeto existente, sem mudar o seu comportamento,

Leia mais

Fixture-Factory. Criando objetos para seus testes. Como criar objetos através de templates para serem utilizados como massa de dados em seus testes.

Fixture-Factory. Criando objetos para seus testes. Como criar objetos através de templates para serem utilizados como massa de dados em seus testes. fixture-factory_ Fixture-Factory Criando objetos para seus testes Como criar objetos através de templates para serem utilizados como massa de dados em seus testes. Começamos testando métodos simples, mas

Leia mais

Introdução ao TDD. Dionatan Moura. #guma10anos Abril de 2014. about.me/dionatanmoura

Introdução ao TDD. Dionatan Moura. #guma10anos Abril de 2014. about.me/dionatanmoura Introdução ao TDD #guma10anos Abril de 2014 Dionatan Moura about.me/dionatanmoura Introdução ao TDD Extreme Programming TDD Refatoração xunit Baby Steps Clean Code Patterns para TDD Red Bar Test Green

Leia mais

Evolução de Software e Refatoração

Evolução de Software e Refatoração Evolução de Software e Refatoração Mudança de software Mudança de software é inevitável Novos requisitos surgem quando o software é usado; O ambiente de negócio muda; Erros devem ser reparados; Novos computadores

Leia mais

Refatorações para Melhoria da Legibilidade de Código Fortran

Refatorações para Melhoria da Legibilidade de Código Fortran Refatorações para Melhoria da Legibilidade de Código Fortran Dionatan K. Tietzmann 1, Gustavo Rissetti 1, Andrea S. Charão 1, Eduardo K. Piveta 1 Adriano Petry 2, Jonas R. de Souza 2 1 Universidade Federal

Leia mais

Gestão de Processos de Negócio em Curso de Sistemas de Informação:

Gestão de Processos de Negócio em Curso de Sistemas de Informação: Gestão de Processos de Negócio em Curso de Sistemas de Informação: Relato de Experiência Utilizando Software Livre Jessica Lasch de Moura¹, Gabriel Machado Lunardi¹, Andrea Schwertner Charão¹, Patrícia

Leia mais

2 Medição e Acompanhamento

2 Medição e Acompanhamento 2 Medição e Acompanhamento Para verificar a eficácia da aplicação da técnica de desenvolvimento dirigido por testes, foram usadas algumas métricas para determinar se houve melhoria ou degradação no processo

Leia mais

Table 1. Dados do trabalho

Table 1. Dados do trabalho Título: Desenvolvimento de geradores de aplicação configuráveis por linguagens de padrões Aluno: Edison Kicho Shimabukuro Junior Orientador: Prof. Dr. Paulo Cesar Masiero Co-Orientadora: Prof a. Dr. Rosana

Leia mais

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr Engenharia de Software Apostila I >>> Introdução à ES - HEngholmJr Histórico de Revisões Data Versão Descrição Autor 12/08/2014 1.0 Criação da primeira versão HEngholmJr Agenda Introdução à Engenharia

Leia mais

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Prof. MSc. Hugo Souza Iniciando nossas aulas sobre

Leia mais

Extração da Métrica WMC a partir de Código Java

Extração da Métrica WMC a partir de Código Java 228 Extração da Métrica WMC a partir de Código Java Luana V. Martinez, Maurício S. R. Arrieira, Carlos M. Betemps Engenharia de Computação Universidade Federal do Pampa (UNIPAMPA) Campus Bagé RS Brasil

Leia mais

Programa do Curso de Pós-Graduação Lato Sensu MBA em Engenharia de Software Orientada a Serviços (SOA)

Programa do Curso de Pós-Graduação Lato Sensu MBA em Engenharia de Software Orientada a Serviços (SOA) Programa do Curso de Pós-Graduação Lato Sensu MBA em Engenharia de Software Orientada a Serviços (SOA) Apresentação O programa de Pós-graduação Lato Sensu em Engenharia de Software Orientada a Serviços

Leia mais

Usando RDL para Derivação de Produtos em uma Linha de Produtos de Software

Usando RDL para Derivação de Produtos em uma Linha de Produtos de Software Usando RDL para Derivação de Produtos em uma Linha de Produtos de Software Juliano Dantas Santos Universidade Federal do Rio de Janeiro COPPE - Instituto Alberto Luiz Coimbra de Pós-Graduação e Pesquisa

Leia mais

Documento de Requisitos

Documento de Requisitos Documento de Requisitos Projeto: Data 26/05/2005 Responsável Autor (s) Doc ID Localização Versão do Template Márcia Jacyntha Nunes Rodrigues Lucena Silvia Cássia Pereira Márcia Jacyntha Nunes Rodrigues

Leia mais

TESTES AUTOMATIZADOS COM JUNITE MOCKITO

TESTES AUTOMATIZADOS COM JUNITE MOCKITO TESTES AUTOMATIZADOS COM JUNITE MOCKITO Jaime William Dias 12, Dener Barranco 1, Douglas Delapria 1 1 Universidade Paranaense (Unipar) 2 Universidade Estadual de Maringá (UEM) Paranavaí PR Brasil [email protected],

Leia mais

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2 .:: Universidade Estadual de Maringá Bacharelado em Informática Eng. de Software III :. Sistema de Gerenciamento de Eventos - Equipe 09 EPSI Event Programming System Interface Metodologia e Gerenciamento

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do mundo

Leia mais

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte. Omondo EclipseUML Ricardo Rodrigues Lecheta Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte. Introdução Neste tutorial será apresentado

Leia mais

5. Métodos ágeis de desenvolvimento de software

5. Métodos ágeis de desenvolvimento de software Engenharia de Software 5. Métodos ágeis de desenvolvimento de software Nuno Miguel Gil Fonseca [email protected] Desenvolver e entregar software o mais rapidamente possível é hoje em dia um dos

Leia mais

Universidade Federal de Pernambuco

Universidade Federal de Pernambuco Universidade Federal de Pernambuco GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA 201 1. 2 Sistema de Gestão de Processos de Negócio Baseado em Modelos Declarativos Proposta de Trabalho de Graduação

Leia mais

Modernização e Evolução do Acervo de Software. Gustavo Robichez de Carvalho [email protected]

Modernização e Evolução do Acervo de Software. Gustavo Robichez de Carvalho guga@les.inf.puc-rio.br Modernização e Evolução do Acervo de Software Gustavo Robichez de Carvalho [email protected] Tópicos 1. Estudo Amplo sobre Modernização 2. Visão IBM Enterprise Modernization 3. Discussão - Aplicação

Leia mais

Heliomar Kann da Rocha Santos

Heliomar Kann da Rocha Santos Heliomar Kann da Rocha Santos RUMO AO REJUVENESCIMENTO AUTOMÁTICO DE SOFTWARE GUIADO POR ATRIBUTOS DE QUALIDADE Dissertação apresentada ao Programa de Pós- Graduação em Computação da Universidade Federal

Leia mais

GereComSaber. Desenvolvimento de Sistemas de Software. Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática

GereComSaber. Desenvolvimento de Sistemas de Software. Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática Desenvolvimento de Sistemas de Software Ano Lectivo de 2009/10 GereComSaber Ana Duarte, André Guedes, Eduardo

Leia mais

Integração Contínua com Rational Team Concert, Jenkins e SonarQube

Integração Contínua com Rational Team Concert, Jenkins e SonarQube Integração Contínua com Rational Team Concert, Jenkins e SonarQube Agenda 1. Introdução à Integração Contínua 2. Ferramentas 3. Solução de Integração Contínua em Furnas 4. Demonstração O que é a Integração

Leia mais

Capítulo 24 Gerência de Qualidade. Aula 1 Qualidade e Padrões de Qualidade

Capítulo 24 Gerência de Qualidade. Aula 1 Qualidade e Padrões de Qualidade Capítulo 24 Gerência de Qualidade Aula 1 Qualidade e Padrões de Qualidade 1 Roteiro ² Qualidade de software ² Padrões de software ² Revisões e inspeções ² Medidas e métricas de software 2 Gerência de Qualidade

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF Guilherme Macedo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil [email protected], [email protected] Resumo.

Leia mais

FACULDADE DE TECNOLOGIA RUBENS LARA Análise e Desenvolvimento de Sistemas

FACULDADE DE TECNOLOGIA RUBENS LARA Análise e Desenvolvimento de Sistemas FACULDADE DE TECNOLOGIA RUBENS LARA Análise e Desenvolvimento de Sistemas Trabalho de Conclusão de Curso Regulamento (2013/01) Professor Responsável: Ms. Gerson Prando Santos, 17 de março de 2013. Versão

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Construtor de sites SoftPixel GUIA RÁPIDO - 1 - GUIA RÁPIDO - 1 - Sumário Introdução...3 Por que utilizar o Construtor de Sites?...3 Vantagens do Construtor de Sites...3 Conceitos básicos...3 Configuração básica do site...5 Definindo o layout/template

Leia mais

Gestão do custo do projeto

Gestão do custo do projeto Nome: N. Série: Gestão do custo do projeto A gestão do custo é representada pelos processos necessários para cumprimento do orçamento. São eles o Planejamento dos Recursos, a Estimativa dos Custos, o Orçamento

Leia mais

Rock In Rio - Lisboa

Rock In Rio - Lisboa Curso de Engenharia Informática Industrial Rock In Rio - Lisboa Elaborado por: Ano Lectivo: 2004/05 Tiago Costa N.º 4917 Turma: C Gustavo Graça Patrício N.º 4757 Turma: C Docente: Professora Maria Estalagem

Leia mais

Gerenciamento de Problemas

Gerenciamento de Problemas Gerenciamento de Problemas O processo de Gerenciamento de Problemas se concentra em encontrar os erros conhecidos da infra-estrutura de TI. Tudo que é realizado neste processo está voltado a: Encontrar

Leia mais

Identificando a Formação de Ilhas de Conhecimento em Projetos de Software

Identificando a Formação de Ilhas de Conhecimento em Projetos de Software Identificando a Formação de Ilhas de Conhecimento em Projetos de Software Francisco Vanderson de Moura Alves 1, Pedro de Alcântara dos Santos Neto 1, Werney Ayala Luz Lira 1, Ricardo de Andrade Lira Rabêlo

Leia mais

PROVA DISCURSIVA. UnB/CESPE BACEN/2013

PROVA DISCURSIVA. UnB/CESPE BACEN/2013 PROVA DISCURSIVA Nesta prova, faça o que se pede, usando, caso deseje, os espaços para rascunho indicados no presente caderno. Em seguida, transcreva os textos para o CADERNO DE TEXTOS DEFINITIVOS DA PROVA

Leia mais

CARLOS EDUARDO LINO REESTRUTURAÇÃO DE SOFTWARE COM ADOÇÃO DE PADRÕES DE PROJETO PARA A MELHORIA DA MANUTENIBILIDADE

CARLOS EDUARDO LINO REESTRUTURAÇÃO DE SOFTWARE COM ADOÇÃO DE PADRÕES DE PROJETO PARA A MELHORIA DA MANUTENIBILIDADE CARLOS EDUARDO LINO REESTRUTURAÇÃO DE SOFTWARE COM ADOÇÃO DE PADRÕES DE PROJETO PARA A MELHORIA DA MANUTENIBILIDADE LAVRAS - MG 2011 CARLOS EDUARDO LINO REESTRUTURAÇÃO DE SOFTWARE COM ADOÇÃO DE PADRÕES

Leia mais

Identificação de Interesses Transversais: Uma Visão Geral

Identificação de Interesses Transversais: Uma Visão Geral Identificação de Interesses Transversais: Uma Visão Geral Paulo Afonso Parreira Júnior [email protected] 24 de Maio de 2013 Agenda Breve Histórico sobre Desenvolvimento de Software Separação de

Leia mais

APLICAÇÃO DE TÉCNICAS DE REFACTORING NO DESENVOLVIMENTO DE FRAMEWORKS ORIENTADOS A OBJETOS

APLICAÇÃO DE TÉCNICAS DE REFACTORING NO DESENVOLVIMENTO DE FRAMEWORKS ORIENTADOS A OBJETOS APLICAÇÃO DE TÉCNICAS DE REFACTORING NO DESENVOLVIMENTO DE FRAMEWORKS ORIENTADOS A OBJETOS Palestrante: Isaac Babsky Neto ATAN Ciência da Informação Orientador: Renato Cardoso Mesquita Departamento de

Leia mais

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE Renan Leme Nazário, Ricardo Rufino Universidade Paranaense (Unipar) Paranavaí PR - Brasil [email protected], [email protected] Resumo. Este artigo

Leia mais

Sistema de Gerenciamento de Pet Shop. Documento de Requisitos

Sistema de Gerenciamento de Pet Shop. Documento de Requisitos Universidade Rural Federal de Pernambuco - UFRPE Sistema de Gerenciamento de Pet Shop Documento de Requisitos Autores: Allan do Amaral Fernanda Monteiro Jean Karlos Macena Marcela Domingues Wagner Palacio

Leia mais

RESUMO: APRESENTAÇÃO DOS RESULTADOS DO ESTUDO DE CASO:

RESUMO: APRESENTAÇÃO DOS RESULTADOS DO ESTUDO DE CASO: MÉTRICAS PARA ESTIMATIVA DE SOFTWARES EM QUE SE APLICAM METODOLOGIA ÁGIL Juliana Cotta Ferreira RESUMO: A engenharia de software discute-se muito sobre métricas, devido à sua importância para acompanhar

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

Plano de Gerenciamento do Projeto

Plano de Gerenciamento do Projeto Projeto para Soluções Contábeis 2015 Plano de Gerenciamento do Projeto Baseado na 5ª edição do Guia PMBOK Brendon Genssinger o e Elcimar Silva Higor Muniz Juliermes Henrique 23/11/2015 1 Histórico de alterações

Leia mais

Proposta Técnica. Desenvolvimento de software QUICKSITE

Proposta Técnica. Desenvolvimento de software QUICKSITE Proposta Técnica Desenvolvimento de software CONTEÚDO Resumo Executivo...3 1.1 Duração e Datas Especiais... 3 1.2 Fatores Críticos de Sucesso... 3 A Hi Level...3 Solução Proposta...4 1.3 Escopo... 4 1.4

Leia mais

Introdução Visão Geral Processos de gerenciamento de qualidade. Entradas Ferramentas e Técnicas Saídas

Introdução Visão Geral Processos de gerenciamento de qualidade. Entradas Ferramentas e Técnicas Saídas Introdução Visão Geral Processos de gerenciamento de qualidade Entradas Ferramentas e Técnicas Saídas O que é qualidade? Qualidade é a adequação ao uso. É a conformidade às exigências. (ISO International

Leia mais

Criando uma agenda simples com NetBeans 6.5

Criando uma agenda simples com NetBeans 6.5 Criando uma agenda simples com NetBeans 6.5 (Swing application framework e Beansbinding) Já faz algum tempo que escrevi uma agenda simples usando o Eclipse com o Visual Class Editor. Demorei em torno de

Leia mais

3º Seminário Blogs: Redes Sociais e Comunicação Digital

3º Seminário Blogs: Redes Sociais e Comunicação Digital 3º Seminário Blogs: Redes Sociais e Comunicação Digital Regulamento 1. Disposições Gerais O Curso de Comunicação Social e o Instituto de Ciências Sociais Aplicadas, com apoio da Pró-Reitoria de Pesquisa,

Leia mais

build UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix.

build UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix. UNIP Sistemas de Informação Análise Essencial de Sistemas Prof.Marcelo Nogueira Análise Essencial de Sistemas 1 Introdução A produção de Software é uma atividade build and fix. Análise Essencial de Sistemas

Leia mais

Plataforma Open Source de Desenvolvimento e Sustentação de Sistemas. Daniel Darlen Lucius Curado Ridai Pombo

Plataforma Open Source de Desenvolvimento e Sustentação de Sistemas. Daniel Darlen Lucius Curado Ridai Pombo Plataforma Open Source de Desenvolvimento e Sustentação de Sistemas Daniel Darlen Lucius Curado Ridai Pombo Agenda Cenário Gerenciamento de Projetos e Mudanças Infra estrutura Arquitetura Ambiente de Desenvolvimento

Leia mais

Acompanhamento da Evolução de Software via Métricas

Acompanhamento da Evolução de Software via Métricas Acompanhamento da Evolução de Software via Métricas Wallace Ribeiro, Daniel Castellani, Alexandre Plastino, Leonardo Murta Instituto de Computação Universidade Federal Fluminense (UFF) {wribeiro,dribeiro,plastino,leomurta}@ic.uff.br

Leia mais

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação. ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.

Leia mais

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração

Leia mais

Testes de Software. Por quê testar? 3/28/2011. Andrew Diniz da Costa. [email protected]. Manter alta qualidade. Prevenir e encontrar defeitos

Testes de Software. Por quê testar? 3/28/2011. Andrew Diniz da Costa. andrew@les.inf.puc-rio.br. Manter alta qualidade. Prevenir e encontrar defeitos Testes de Software Andrew Diniz da Costa [email protected] Por quê testar? Manter alta qualidade Prevenir e encontrar defeitos Ganhar confiança sobre o nível de qualidade e prover informações.

Leia mais

REGULAMENTO DO TRABALHO DE CONCLUSÃO DO CURSO DE GRADUAÇÃO EM ENGENHARIA DE CONTROLE E AUTOMAÇÃO DA FAG CAPÍTULO I DAS DISPOSIÇÕES PRELIMINARES

REGULAMENTO DO TRABALHO DE CONCLUSÃO DO CURSO DE GRADUAÇÃO EM ENGENHARIA DE CONTROLE E AUTOMAÇÃO DA FAG CAPÍTULO I DAS DISPOSIÇÕES PRELIMINARES REGULAMENTO DO TRABALHO DE CONCLUSÃO DO CURSO DE GRADUAÇÃO EM ENGENHARIA DE CONTROLE E AUTOMAÇÃO DA FAG CAPÍTULO I DAS DISPOSIÇÕES PRELIMINARES Art. 1º O presente Regulamento tem por finalidade normatizar

Leia mais

Especial Online RESUMO DOS TRABALHOS DE CONCLUSÃO DE CURSO. Sistemas de Informação 2011-2 ISSN 1982-1816. www.unifoa.edu.br/cadernos/especiais.

Especial Online RESUMO DOS TRABALHOS DE CONCLUSÃO DE CURSO. Sistemas de Informação 2011-2 ISSN 1982-1816. www.unifoa.edu.br/cadernos/especiais. Especial Online ISSN 1982-1816 www.unifoa.edu.br/cadernos/especiais.html DOS TRABALHOS DE CONCLUSÃO DE CURSO Sistemas de Informação 2011-2 SISTEMA DE GERENCIAMENTO DE MANUTENÇÃO AUTOMOTIVA Alunos: WERNECK,

Leia mais

Qualidade de Software

Qualidade de Software Qualidade de Software O software é algo abstrato, pois são as instruções que quando executadas atingem o propósito desejado no sistema computacional. (Algoritmo). As principais características são: Complexidade:

Leia mais

Projeto de Redes de Computadores. Desenvolvimento de Estratégias de Segurança e Gerência

Projeto de Redes de Computadores. Desenvolvimento de Estratégias de Segurança e Gerência Desenvolvimento de Estratégias de Segurança e Gerência Segurança e Gerência são aspectos importantes do projeto lógico de uma rede São freqüentemente esquecidos por projetistas por serem consideradas questões

Leia mais

Métricas para avaliação de Linguagens de

Métricas para avaliação de Linguagens de Métricas para avaliação de Linguagens de Modelação - UML José Pedro Silva Pedro Faria Ulisses Araújo Costa Resumo A utilização de diagramas de UML é importante na moelação de uma arquitectura de um sistema

Leia mais

1. Introdução e Objetivos 2. Fundamentação teórica 3. Desenvolvimento e Especificações do sistema

1. Introdução e Objetivos 2. Fundamentação teórica 3. Desenvolvimento e Especificações do sistema SISTEMA DE CONTROLE DE INDICADORES DE DESEMPENHO VOLTADO À DISPONIBILIDADE DE SERVIÇOS DE TI BASEADO NA BIBLIOTECA ITIL V3 Eduardo Cuco Roteiroda apresentação 1. Introdução e Objetivos 2. Fundamentação

Leia mais

Engenharia de Software

Engenharia de Software Gerenciamento da Qualidade Cap. 27 Sommerville 8 ed. Introdução: - Preocupação com a qualidade do software; - Uso de técnicas e tecnologias novas; - Manufatura de software Qualidade de Software: Qualidade

Leia mais

Desempenho e Segurança em Sistemas de Informação. Profa.: Me. Christiane Zim Zapelini E-mail: [email protected]

Desempenho e Segurança em Sistemas de Informação. Profa.: Me. Christiane Zim Zapelini E-mail: christianezapelini@nwk.edu.br Desempenho e Segurança em Sistemas de Informação Profa.: Me. Christiane Zim Zapelini E-mail: [email protected] Desempenho e Segurança em Sistemas de Informação Aula 5 Áreas da Engenharia de

Leia mais

extreme Programming extreme Programming (XP) Metodologia Ágil Partes do XP Communication (comunicação) 1. Valores do XP

extreme Programming extreme Programming (XP) Metodologia Ágil Partes do XP Communication (comunicação) 1. Valores do XP extreme Programming extreme Programming (XP) Metodologia ágil para equipes pequenas a médias desenvolvendo software com requesitos vagos ou que mudam freqüentemente. [Beck 2000] Em XP, codificação é principal

Leia mais

Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos

Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos Indice Indice... 2 1. Introdução... 3 2. Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos (SILOGR)....

Leia mais

FERRAMENTA WEB DE SUPORTE A AVALIAÇÃO DE SOFTWARE COM A METODOLOGIA CERTICS

FERRAMENTA WEB DE SUPORTE A AVALIAÇÃO DE SOFTWARE COM A METODOLOGIA CERTICS FERRAMENTA WEB DE SUPORTE A AVALIAÇÃO DE SOFTWARE COM A METODOLOGIA CERTICS Acadêmico: Vinícius Ferneda de Lima [email protected] Orientador: Prof. Everaldo Artur Grahl [email protected]

Leia mais

Função Mudar de unidade estatística

Função Mudar de unidade estatística Função Mudar de unidade estatística Frequentemente, certas pesquisas contêm informações correspondentes a níveis estatísticos diferentes. No Sphinx (Survey ou Léxica), a partir do menu Gestão, opção Mudar

Leia mais

INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena

INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena Trabalho Experimental Sistema de Biblioteca 1. Objetivo Este trabalho tem o objetivo de consolidar o conhecimento sobre UML e garantir

Leia mais