Apresentação desenvolvida por alunos da Universidade Federal de Sergipe para a disciplina de Qualidade de Software.
Este artigo tem o intuito de reduzir os problemas da falta de documentação presente na metodologia ágil, tentando ao máximo absorver o conhecimento presente nos colaboradores através de técnicas da gestão do conhecimento com o apoio de ferramentas da baseadas nos princípios colaborativos da Web 2.0, buscando o melhoramento da qualidade do processo e produto de software.
POO - Aula 02 - Fatores de Qualidade de Software e Introdução ao Java
Utilização da Gestão do Conhecimento nas Metodologias Ageis para Melhoria da Qualidade de Software
1. Universidade Federal de Sergipe
Departamento de Computação
Sistemas de Informação
Utilização da Gestão do Conhecimento nas Metodologias
Ágeis para Melhoria da Qualidade de Software
Diego Armando de Oliveira Meneses
Felipe José Rocha Vieira
Roberto Pizzi Gomes Neto
Última Atualização em junho de 2010
2. Introdução
➢
Qualidade de Software, Métricas, Processos de Desenvolvimento – termos
que estão presentes no jargão dos analistas de sistemas;
➢
Busca por metodologias que garantam o bom desenvolvimento do
software;
➢
A eficácia na utilização destes princípios é comprovada;
➢
O processo de desenvolvimento de software é composto por pessoas,
ferramentas e processos;
Qualidade de Software 2
3. Introdução
➢
Mas não se pode minimizar a importância das pessoas;
➢
Publicação do manifesto ágil;
➢
Qual dos dois focos é o mais importante?
•
A flexibilidade da metodologia ágil.
•
A robustez do processo de desenvolvimento “tradicional”.
Qualidade de Software 3
4. Este artigo tem o intuito de reduzir os problemas da falta de documentação
presente na metodologia ágil, tentando ao máximo absorver o conhecimento
presente nos colaboradores através de técnicas da gestão do conhecimento com o
apoio de ferramentas da baseadas nos princípios colaborativos da Web 2.0, buscando
o melhoramento da qualidade do processo e produto de software.
Qualidade de Software 4
5. Sumário
➢
Introdução
• Trabalhos relacionados
➢
Referencial Teórico
• Gestão do conhecimento
•
Web 2.0
• Metodologias ágeis
• Qualidade de software
➢
Qualidade de software e metodologias ágeis
➢
Utilização da gestão do conhecimento no XP para melhoria da qualidade
➢
Conclusão
Qualidade de Software 5
6. Trabalhos relacionados
➢
Parreiras e Oliveira – Gestão do conhecimento em processos de
desenvolvimento de software;
➢
Black e Jacobs – Web 2.0 para a qualidade de software;
➢
Namioka e Bran – Qualidade de software mesmo com metodologias ágeis;
Qualidade de Software 6
7. Gestão do conhecimento
➢
Estratégias e práticas para identificar, criar, representar, distribuir e
permitir a adoção de ideias e experiências.
➢
Hierarquia DIKW
• Dado
•
Informação
•
Conhecimento
•
Sabedoria
Qualidade de Software 7
8. Web 2.0
➢
Formas de publicar, compartilhar e organizar informações;
➢
“É a mudança para uma Internet como plataforma, e um entendimento
das regras para oferecer sucesso nesta nova estrutura.” (O' Reilly);
➢
Serviços e não softwares empacotados.
Qualidade de Software 8
9. Metodologias ágeis
➢
O que são metodologias ágeis?
➢
Diferença entre metodologias ágeis e tradicionais;
➢
Ponto de vista relevante;
➢
Características das metodologias ágeis;
➢
O que é manifesto ágil.
Qualidade de Software 9
10. Metodologias ágeis
➢
“Equilíbrio entre nenhum processo e muito processo, provendo apenas o
suficiente de processo para obter um retorno razoável”;
➢
“Caracterizadas como um antídoto contra a burocracia”.
Martin Fowler, 2003
Qualidade de Software 10
11. Qualidade de software
➢
“Qualidade é a adequação ao uso. É a conformidade às exigências” (ISO);
➢
“Qualidade é o grau em que um conjunto de características inerentes a
um produto, processo ou sistema cumpre os requisitos inicialmente
estipulados para estes” (ISO 9000);
➢
“Software é conjunto completo ou apenas uma parte dos programas,
procedimentos, regras e documentação associada de um sistema
[computacional] de processamento de informação” (ISO/IEC 2382-1,
1993);
Qualidade de Software 11
12. Qualidade de software
➢
Programa fácil de usar;
➢
Funciona de acordo com as regras estabelecidas e documentadas;
➢
Possui integridade dos dados em momentos de falha;
➢
Facilidade de manutenção e extensibilidade;
➢
“A totalidade de características de um produto de software que lhe
confere a capacidade de satisfazer necessidades explícitas e implícitas”
(ISO/IEC 9126);
Qualidade de Software 12
13. Qualidade de software
➢
Qualidade total:
• Múltiplas disciplinas;
• Controle do processo;
➢
Gestão da qualidade total:
•
Estratégia de alto nível;
➢ Fomentar a qualidade;
Qualidade de Software 13
14. Qualidade de software e Metodologias ágeis
➢
Crise do software;
➢
Como definir se um software tem qualidade?
➢
McCall e ISO 9126.
Qualidade de Software 14
15. Qualidade de software e Metodologias ágeis
Revisão do Produto Implantação do Produto
- Manutenibilidade - Portabilidade
- Flexibilidade - Reusabilidade
- Testabilidade - Interoperabilidade
Operação do Produto
- Corretude
- Confiabilidade
- Eficiência
- Integridade
- Usabilidade
Qualidade de Software 15
16. Qualidade de software e Metodologias ágeis
Funcionalidade Satisfaz às necessidades?
Confiabilidade É imune a falhas?
Usabilidade É fácil de usar?
Eficiência É rápido e “enxuto”?
Manutenibilidade É fácil de modificar?
Portabilidade É fácil de usar em outro ambiente?
Qualidade de Software 16
18. Utilização da gestão do conhecimento no XP
para melhoria da qualidade
➢
Qualidade é possível com metodologias ágeis
• Sempre?
➢
GC apreende conhecimento “perdido” pela XP
➢
Como?
Qualidade de Software 18
19. Utilização da gestão do conhecimento no XP
para melhoria da qualidade
➢
Web 2.0 capta conhecimento sem stress
• Blog;
•
Wiki;
• Rede social;
• Microblog.
Qualidade de Software 19