A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Métricas associadas ao desenvolvimento de software usando Métodos Ágeis. Trabalho de Conclusão do Curso Sistemas de Informação por Guilherme da S. Elias.

Apresentações semelhantes


Apresentação em tema: "Métricas associadas ao desenvolvimento de software usando Métodos Ágeis. Trabalho de Conclusão do Curso Sistemas de Informação por Guilherme da S. Elias."— Transcrição da apresentação:

1 Métricas associadas ao desenvolvimento de software usando Métodos Ágeis. Trabalho de Conclusão do Curso Sistemas de Informação por Guilherme da S. Elias sob orientação do Prof. Daniel Wildt co-orientação do Prof. Guilherme Lacerda Estado da Arte Objetivo do Trabalho Desenvolvimento do Trabalho Estudo de Caso Resultados Referências Motivação: Como você mede a qualidade do código que você produz? No contexto da engenharia de software as métricas possuem papel fundamental dentro deste contexto, dando subsídios aos times de desenvolvimento para acompanhar o código fonte produzido. MÉTRICAS FERRAMENTAS QUALIDADE PRÁTICAS FACENSA Baseado nestas premissas, este trabalho de conclusão propõe experimentos em forma de pequenos projetos, que baseiam-se na aplicação de um guia, que compreende a utilização de MÉTRICAS de software, FERRAMENTAS de apoio a QUALIDADE e PRÁTICAS pertinentes ao desenvolvimento ÁGIL de software. Estes experimentos estão sendo conduzidos com o auxilio dos grupos de estudos da FACENSA, movidos apenas por ações voluntárias. VERIFICAÇÃO E VALIDAÇÃO Segundo André koscianski (KOSCIANSKI, 2004) podemos definir o conceito de verificação e validação da seguinte forma: Verificação: Estamos construindo certo o produto? Validação: Estamos construindo o produto certo? MÉTRICAS A aplicação de métricas no desenvolvimento de software vem ganhando uma maior proporção e maturidade dentre os times de desenvolvimento, em busca de uma melhor qualidade para o produto final projetado (KAN, 2002; PRESSMAN, 1995). MÉTODO ÁGEIS As Metodologias Ágeis de desenvolvimento de software possuem uma coleção de princípios e valores extremamente simples e focados no real objetivo do desenvolvimento de software, a entrega de software funcional e valorada ao cliente (BECK, 2004; MANIFESTO, 2008). : e X treme P rogramming: Extreme Programming, Programação Extrema ou simplesmente XP, é uma das mais difundidas Metodologias Ágeis de desenvolvimento de software (BECK, 2004). A XP possui como premissas o desenvolvimento de software baseado em comunicação, feedback, simplicidade, coragem e respeito com os indivíduos. Práticas da XP - Desenvvolvimento Dirigido à Testes (TDD) - Integração Contínua (C.I.) - Desenvvolvimento Dirigido à Testes (TDD) - Integração Contínua (C.I.) - Refactoring - Programação em Pares - Refactoring - Programação em Pares MÉTRICAS BASEADAS EM MÉTODOS ÁGEIS Tamanho Tamanho: LOC (Line Of Code), KLOC (Kilo Line Of Code) e SLOC (Source Code Line Of Code). Refactoring Refactoring: Permite mensurar número de commits realizados no repositório de versionamento (FOWLER, 2008). Cobertura de Código Cobertura de Código: Garantir maior abrangência dos testes por blocos, métodos, pacotes... Integração Contínua Integração Contínua: Acompanhamento dos builds por dia, semana, iteração. Complexidade: Complexidade: Mensurar o quanto um determinado método, função etc. é de fácil compreensão – legibi- lidade. Auditorias Auditorias: Analisar código fonte estático em em busca de anti-patterns, que gerem brechas para falhas e bugs. Métricas OO Métricas OO: Métricas do paradigma orientado à objetos: Acoplamento entre classes (CBO), Profundidade da àrvore de herança (DIT), falta de coesão de métodos (LCOM)... (LANZA, 2006; SOMMERVILLE, 2003) Tanto o conceito de qualidade, quanto o de métricas são assuntos explorados em vários trabalhos científicos dentro da engenharia de software, visando colher os benefícios trazidos com a aplicação de distintos modelos, filosofias e técnicas. Abaixo são mostrados alguns destes trabalhos: Um Estudo de Caso da Adoção das Práticas e Valores do Extreme Programming (MANHAES, 2005) O foco principal destacado no trabalho foram, as costumeiras dificuldades enfrentadas durante o desenvolvimento de um software. Práticas e valores da XP foram adotados, exatamente no intuito de prover melhorias no ambiente estudado, o qual proporcionou a validação de sua tese. Vinicius também mensurou a adoção de cada prática emprega em um estudo de caso realizado ao junto ao comitê olímpico da Rússia. O Uso Eficaz de Métricas em Métodos Ágeis de Desenvolvimento de Software (TOSHIAKI, 2007) A aplicação de práticas, princípios, valores pertinentes as Metodologias Ágeis e métricas de software, desempenharam papel fundamental dentro do estudo de caso proposto. Este estudo de caso é composto por sete projetos conduzidos em ambiente acadêmico e em uma instituição governamental. Métricas como número de Histórias entregues, número de pontos entregues e satisfação do cliente. PROJETOS Classdiary (FACENSA Usuários Java – FUJA): Através da necessidade do preenchimento diário das atividades realizadas em sala de aula pelo professores, adotou-se a idéia de automatizar tal processo. Ferramentas de Apoio - PMD/CPD - Ant - EMMA - Junit - Metrics - Checkstyle - Cruise Control - Netbeans Social Program Manager SPM (FACENSA.Net): Projeto que visa facilitar o gerenciamento de ações sociais realizadas por instituições sem fins lucrativos. Ferrmantas de Apoio - Simian - Nant - Ncover - Nuni - Visual Studio Team System Cruise Control.Net GUIA DE PADRÕES E BOAS PRÁTICAS resultado obtido através do acompanhamento aos projetos e validações realizadas, servirá de apoio aos times de desenvolvimento, como um conjunto de boas práticas para garantir a qualidade do código fonte sendo gerado. Abaixo algumas destas boas práticas obtidas e documentadas pelas equipes envolvidas: - Detector de Reuso de Código; - Boas Práticas Para Teste Unitários; - Controlando Complexidade passo-a-passo etc … BECK, Kent. Programação Extrema Explicada. Porto Alegre: Bookman, 2004; FOWLER, Martin. Refactoring. Disponível em (http://www.refactoring.com), acessado em 03/06/2008 às 21h58min.http://www.refactoring.com LANZA, Michele. Object-Oriented Metrics in Pratice, using software metrics to characterize, evaluate, and improve the design of object-oriented systems. Springer, 2006; KAN, Stephen H. Metrics and Models in Software Quality Engineering, Second Edition. Boston: Addison – Wesley, 2002; KOSCIANSKI, André e dos Santos Soares, Michel. Qualidade de Software. São Paulo: Novatec, 2006; MANIFESTO, Agile. Manifesto for Agile Software Development. Disponível em (http://www.agilemanifesto.org), acessado em abril de 2001 às 22h10min.http://www.agilemanifesto.org PRESMANN, Roger S. Engenharia de Software, Makron books, 1995; SOMMERVILLE, Ian. Engenharia de Software, São Paulo: Addison Wesley, 2003; Acessado em 13/04/2008; TOSHIAKI, Danilo Sato. Uso Eficaz de Métricas no Desenvolvimento Ágil de software, São Paulo, 2007; MANHÃES, Vincíus Teles. Um estudo de Caso das praticas e valores da Extreme Programming, Rio de Janeiro, 2005.


Carregar ppt "Métricas associadas ao desenvolvimento de software usando Métodos Ágeis. Trabalho de Conclusão do Curso Sistemas de Informação por Guilherme da S. Elias."

Apresentações semelhantes


Anúncios Google