Engenharia de Software I. Aula 15: Metodologias Ágeis. Prof. Márcio D. Puntel - PDF Free Download
Engenharia de Software I. Aula 15: Metodologias Ágeis. Prof. Márcio D. Puntel
Download "Engenharia de Software I. Aula 15: Metodologias Ágeis. Prof. Márcio D. Puntel marcio@puntel.org"
Tânia Coelho Zagalo
1 Engenharia de Software I Aula 15: Metodologias Ágeis Prof. Márcio D. Puntel Março
2 Antes... Manifesto Mudança de contratos Foco nas premissas... 2
3 Algumas metodologias Extreme Programming (XP) Scrum Feature Driven development (FDD) Microsoft Soluctions Framework (MSF) Crystal Adaptative Software Development (ASD) Dynamic Systems Development Method (DSDM) 3
4 Extreme Programming (XP) Final década de 90; Programação em par; Estórias; Planejamento (reduzir desperdícios); Desenvolvimento iterativo; Iterações de 1 semana; Teste antecipado; Refactoring; Envolvimento do cliente; Propriedade coletiva; 40 horas semanais; Código padrão; Projeto simples. 4
5 Extreme Programming (XP) Três fases do XP: exploração, compromisso e direcionamento. 5
6 Extreme Programming (XP) Não possui papéis padrão (pode variar conforme o projeto) Mais comuns: Testador Designer de interação Arquiteto Gerente de projeto Gerente de produto Executivo Documentador técnico Programador Usuário Para esses papéis, o XP foca: comunicação, simplicidade, feedback, coragem, respeito, ser mais humano, benefício mútuo, reutilização, melhoria contínua, diversidade, qualidade, desenvolvimento em pequenos passos e responsabilidade. 6
7 Scrum Início década 90; Rugby; Ele foca: em pequenas equipes, processos adaptáveis, frequentes incrementos, divisão do desenvolvimento, testes e documentação constantes, entregas constantes. possui três papéis: Product Owner (Dono do Produto), Scrum Master (Líder do Projeto) e Scrum Team (Equipe) suas responsabilidades são desmembradas (diluídas) nas fases Pré-game, Game e Pós-game. 7
8 Scrum Ciclo do Scrum 8
9 Scrum Plano de jogo Sprint Planejamento do Sprint Equipes auto organizadas e autodirigidas Reunião diária (1) O que você fez? (2) O que você fará? (3) Há algum obstáculo? Equipes de até 7 pessoas Reunião de revisão do Sprint Reunião de retrospectiva do Sprint 9
10 Feature Driven Development (FDD) Criada 1997 Experiência OO Peter Coad e gerenciamento de Jeff de Luca Baseado em funcionalidades Contexto na orientação a objetos Papéis: Gerente de projeto, Gerente de desenvolvimento, Arquiteto-chefe, Programadores-chefe, Proprietários de código/classe (Desenvolvedores), Especialistas do domínio. Na iteração, cada membro deverá trabalhar especificamente para sua funcionalidade que deverá ser construída em no máximo duas semanas. 10
11 Feature Driven Development (FDD) Estrutura do FDD 11
12 Feature Driven Development (FDD) Enfatiza os valores de comunicação, redução de complexidade e qualidade a fim de atingir resultados frequentes, tangíveis e funcionais. Características: Iterativo Enfatiza na qualidade Entrega resultados tangíveis e frequentes Relatórios de progresso. 12
13 Microsoft Soluctions Framework (MSF) 1993 (foco inicial diferente) Nomes anteriores: Microsoft Development Framework e Product Cycle Model Partiu de uma ideologia de mais importância para o tempo (não escopo) Experiência Microsoft Duas personalizações: Essential e Agile Essential é o convencional para projetos que requerem um grau maior de detalhes e controle. Agile deu-se após o Manifesto Ágil. Apenas o que difere os dois é que o Agile é iterativo e incremental. 13
14 Microsoft Soluctions Framework (MSF) Características... Manter a comunicação aberta Trabalhar com uma visão compartilhada Fornecer mais poderes aos membros do time Estabelecer responsabilidades compartilhadas Focar na entrega de valor no negócio Manter a agilidade e esperar mudanças Focar em qualidade continuamente Aprender com as experiências passadas 14
15 Microsoft Soluctions Framework (MSF) Ciclo MSF Responsabilidades (papéis): Program Manager, Product Manager, User Experience, Tester, Developer, Architect Release Manager 15
16 Comparativo boas práticas Iteração e ciclo Boa prática Extreme Programming Scrum Feature Driven Development Microsoft Solutions Framework Iteração 1 semana 4 semanas 2 semanas 4 semanas Ciclo Iterativo e incremental Iterativo e incremental Iterativo e incremental Iterativo e incremental 16
17 Comparativo boas práticas Papéis e responsabilidades Boa prática Extreme Programming Scrum Feature Driven Development Microsoft Solutions Framework Gerente de produto Executivo Product Owner Especialistas do domínio Product Manager Papéis necessários Gerente de projeto Designer de interação Scrum Master Gerente de projeto Gerente de desenvolvimento Program Manager Arquiteto Arquiteto-chefe Architect Programador Programadoreschefe Developer Documentador técnico Testador Scrum Team Proprietários da classe Release Manage Tester Usuário User Experience 17
18 Comparativo boas práticas Participação do cliente Tamanho da equipe Boa prática Extreme Programming Scrum Feature Driven Development Microsoft Solutions Framework Participação do cliente Constante Constante Constante Constante Tamanho das equipes Até 7 pessoas Até 7 pessoas Até 10 pessoas - 18
19 Comparativo boas práticas Etapas Boa prática Extreme Programming Scrum Feature Driven Development Microsoft Solutions Framework Visão Modelo Geral Envisioning Exploração Planejamento Backlog do Produto Lista de Features Planning Etapas da iteração Compromisso Planejamento do Sprint Backlog do Sprint Sprint Planejar por Feature Projetar por Feature Developing Release do Produto Direcionamento Revisão Contruir por Feature Stabilizing Retrospectiva 19
20 Comparativo boas práticas Reuniões Documentos Boa prática Extreme Programming Scrum Feature Driven Development Microsoft Solutions Framework Reuniões Diária Diária (15 min) Início da iteração Semanal Em pé Em pé Ambiente externo Em pé Documentos Estória Backlog do Produto e do Sptint UML e Relatórios de acompanhamento Release 20