MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

Teste de Software 01: Introdução
Desenvolvimento de Plug-ins Orientado a Testes
VERIFICAÇÃO FORMAL DE BLOCOS COMPLEXOS
Rational Unified Process
Modelagem de Software Orientado a Objetos
Web Services Passo a passo Consumo de serviço SOAP em Java 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Protótipo de Simulador de Elevadores
Leo Silva Leonardo Murta
15/1/2014 Professor Leomir J. Borba- – 1 Tec. Em Analise e desenvolv. De Sistemas analise.
Ferramentas de Engenharia de Software
Sistema para Criação e Testes de Modelos Formais
Sistema para Criação e Testes de Modelos Formais
1 SCTMF Sistema para Criação e Testes de Modelos Formais.
Alexandro Klein dos Santos
Desenvolvimento ágil: eXtreme Programming vs SCRUM Tiago Rodrigues de Mello CCO-230 – ENGENHARIA DE SOFTWARE / 2010.
Ideais QA Selenium Leonardo Serra Faria Matrícula: Período: Estágio Supervisionado ENG1153.
Mutação Orientada a Objeto para Assegurar a Qualidade de Testes Baseado no Artigo: Object-Oriented Mutation to Asses the Quality of Tests Anna Derezinska.
Desenvolvimento Guiado por Testes
Processo de Reengenharia Prático Pós- Graduação Pós- Graduação Karolyne Almeida Siqueira Michael Caldas da Silva.
April 05 Prof. Ismael H. F. Santos - 1 Modulo II CheckStyle Professor Ismael H F Santos –
April 05 Prof. Ismael H. F. Santos - 1 Modulo II Findbugs Professor Ismael H F Santos –
Porto Alegre, 5 de Outubro de 2009
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
Laboratório de Programação de Computadores I
Carlos Alberto de Freitas Pereira Júnior
Composição e Geração de Aplicações usando Aspectos
Testes de Mutação baseado no artigo de Mário Correia,
Trabalho de Conclusão do Curso Sistemas de Informação
FERRAMENTA PARA ANÁLISE DE IMPACTO BASEADO EM RASTREABILIDADE DE
PROGRAMAÇÃO ORIENTADA A ASPECTOS EM JAVA Introdução a conceitos teóricos e práticos Adriano G. do Prado José Eduardo M. Lemos José Fernando da S. Cruz.
Roteiro Para o Trabalho do Módulo
Ferramentas e Tecnologias III
MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE SOFTWARE USANDO MÉTODOS ÁGEIS SOFTWARE USANDO MÉTODOS ÁGEIS Faculdade Cenecista Nossa Senhora dos Anjos FACENSA.
MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE SOFTWARE USANDO MÉTODOS ÁGEIS SOFTWARE USANDO MÉTODOS ÁGEIS Faculdade Cenecista Nossa Senhora dos Anjos FACENSA.
MÉTRICAS PARA MELHORIA CONTÍNUA DE CÓDIGO UM ESTUDO DE CASO COM JAVA
MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE
MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Introdução a Programação Orientada a Objetos
FUMIGANT: GERADOR DE CÓDIGO JAVA A PARTIR DE BASE DE DADOS
Categorização de dados com o NVivo 7
Análise e Desenvolvimento de Sistemas
Pontifícia Universidade Católica de Campinas
Test-Driven Development
Linguagem Técnica II Testes Automatizados Aula 04 Prof
Introdução aos conceitos de Teste de Software
Introdução ao Teste Unitário com JUnit
UERJ – Universidade do Estado do Rio de Janeiro
DESENVOLVIMENTO ÁGIL DE SISTEMAS ALINHADO À GOVERNANÇA DE TI
Test Driven Development Nazareno Andrade Baseado no material do prof. Hyggo Almeida.
Test Driven Development por Johann Gomes e Thaís Moura.
Fevereiro/ Resultado dos Projetos de Software Pesquisa Motivação.
Prof. Alexandre Vasconcelos
Introdução a Desenvolvimento de Sistemas
Prof. Celso Cardoso Neto. (2) ALINHAMENTO Caso 1.
Técnicas e Projeto de Sistemas
Introdução a Desenvolvimento de Sistemas
1 Test Driven Development John Jonathan da Silva /
3/4/2015 Prof. Msc George Cabral Bacharelado em Sistema de Informação Ambientes de Desenvolvimento de Software.
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng
Introdução Teste Unitário com JUnit
MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE
Introdução a Teste de Software
Fabrício Dias
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Singleton, Professores Eduardo Bezerra –
Ferramentas JMOCKIT, ALLPAIRS, ECLEMMA, MUCLIPSE
Universidade Federal de Pernambuco Ambiente para Integração Contínua Rafael Vanderlei de Souza 06/12/2008 Programa de Mestrado em Ciência.
REFATORAÇÃO JOÃO LACERDA DJALMA LIMA. MARTIN FOWLER É um autor conhecido na área de arquitetura de software, especializado em análise orientada a objetos,
Transcrição da apresentação:

MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE Faculdade Cenecista Nossa Senhora dos Anjos FACENSA Sistemas de Informação MÉTRICAS ASSOCIADAS AO DESENVOLVIMENTO DE SOFTWARE USANDO MÉTODOS ÁGEIS por Guilherme da Silveira Elias - guilherme.elias@gmail.com Monografia apresentada na disciplina de Trabalho de Conclusão de Curso II, sob orientação do Prof. Daniel Wildt e Co-orientação do Prof. Guilherme Lacerda

Métricas de Qualidade de Código Ferramentas de Apoio AGENDA Motivação Objetivos Métricas de Qualidade de Código Ferramentas de Apoio Trabalhos Relacionados Estudo de Caso Considerações Finais Perguntas

Motivação Como você mede a qualidade de seu código? Você Mede?

Métricas de forma pró-ativa; Objetivos Métricas de forma pró-ativa; Maior qualidade de código fonte gerado.

Métricas de Qualidade de Código Testes Unitários – Funcionais - Testar até não conseguir pensar em mais nenhum possível teste. (BECK, 2004) - Ambiente Automatizado Cobertura de Código - Garantir maior abrangência dos testes - Buscando qualidade nos teste

Métricas de Qualidade de Código TAMANHO - SLOC, LOC, KLOC - Mensurar métodos, classes, módulos etc.. (KOSCIANSKI, 2006) COMPLEXIDADE - Sinônimo de Legibilidade!! OO - Acoplamento, Abstração (LANZA, 2006) REFACTORING - Instrumento de otimização C.I. (Integração Contínua) - Agir de forma preventiva

Ferramentas de Apoio JUnit - NUnit Selenium IDE NCover EMMA Ant - NAnt

Ferramentas de Apoio PMD/CPD Simian/FxCop Checkstyle Metrics .NET Reflector

Ferramentas de Apoio Visual Studio Netbeans Cruise Control Continuum

Trabalhos Relacionados Métricas para melhoria contínua de código – Um estudo de caso com Java (SILVEIRA; WILDT, 2008) Artigo e Pôster aceitos na SEMINFO 2008.

Trabalhos Relacionados Experimento usando Java http://classdiary.dev.java.net

Estudo de Caso Projeto Class Diary FUJA Projeto Social Program https://classdiary.dev.java.net Projeto Class Diary FUJA http://code.google.com/p/spm-net-br Projeto Social Program Management FACENSA.NET

Estudo de Caso “Detector de Reuso de Código” Projeto: Classdiary Solução: - Adotado reuso de código; - Criado método publico(public) em classe base. Situação Adversa - CPD (Copy Paste Detector) - 12 incidências do trecho de código: Automatização: Refatoração de código (IDE Netbeans) If (rs != null){ rs.close(); } If(st != null){ st.close(); If(c != null){ c.close(); Beneficios Trazidos: Redução de mais 75 LOC; Reducão do % da Complexidade (Métodos e Classes); Novo teste unitário específico; Aumento cobertura para: Bloco refatorado Método refatorado

Estudo de Caso “Pós e Pré-Condições Para Testes” Projeto: SPM Situação Adversa Testes Unitários e Funcionais; Ao rodar falhavam no ambiente de Integração Contínua!! Dependências entre os métodos; Solução: Criado Classe publica(public) para execução de Statements (Insert, Update, Delete) Uso dos métodos Initialize() e CleanUp() Automatização: IDE VSTS 2008 Beneficios Trazidos: Testes Coesos;

Estudo de Caso SPM (Social Program Management) http://code.google.com/p/spm-net-br

Considerações Finais Grande desafio utilizar os grupos; Projetos em desenvolvimento mas já funcionais, através de versões beta.

Referências Sites Livros EMMA – http://emma.sourceforge.net ChecStyle – http://checkstyle.sourceforge.net/ Junit – http://www.junit.org Cruise Control Java http://cruisecontrol.sourceforge.net Selenium IDE - http://selenium-ide.openqa.org Ant Apache - http://ant.apache.org PMD / CPD – http://pmd.sourceforge.net Metrics – http://metrics.sourceforge.net Netbeans – http://www.netbeans.org Eclipse – http://www.eclipse.org Continuum - http://continuum.apache.org Livros BECK, Kent. Extreme Programming Explaned. Bookman, Porto Alegre, 2004; LANZA, Michele. Object-Oriented Metrics in Pratice, using software metrics to characterize, evaluate, and improve the design of object-oriented systems. Springer, 2006. KOSCIANSKI , André e dos Santos Soares, Michel. Qualidade de Software. São Paulo: Novatec, 2006; - SILVEIRA, Guilherme Elias; WILDT, Daniel. Métricas de Qualidade de Codigo. Um estudo de caso usando Java, FACENSA, 2008.

PERGUNTAS ?

http://fuja.dev.java.net http://furor.dev.java.net http://groups.google.com/group/fuphp http://groups.google.com/group/FacensaNET