4. Contextualização Anos 60 Fase embrionária e artesanal do sw Crise do sw: 1965 a 1985 Orçamentos estourados Danos à propriedades (crackers) Vidas humanas (radioterapia)
5. Contextualização Ferramentas e métodos passaram a ser adotados para recuperar a reputação do sw Programação estruturada, padrões
6. Contextualização Anos 80 Massificação da produção de sw e popularização dos modelos de processo de desenvolvimento Gerenciamento de Projetos Modelo Cascata e Espiral
7. Contextualização Anos 90 Popularização da web Cresce o número de pequenas empresas produzindo software Um grupo de engenheiros de software chama a atenção para a produção artesanal de sw mudando os princípios aboradados pelos grupos de estudo no decorrer da crise do sw
8. Contextualização Anos 2000 Diversificação de plataformas de hardware (gadgets) aonde os software são embarcados Era da computação ubíqua Cloudcomputing Offshoring
10. Contextualização Modelo Espiral 1986 Java 1994 UML e RUP 1996 HTML 5 2008 FORTRAN / COBOL 1957 / 1959 Modelo Cascata 1970 C 1972 Modelo ER 1976
11. Contextualização A tecnologia avança rapidamente Para acompanhar as mudanças é preciso ter a mente aberta e trabalhar com melhoria contínua Velhos hábitos podem estancar a evolução de uma empresa “A MS está sempre a 18 meses de falir” Bill Gates
12. Contextualização Pra quê um modelo/processo? Aplicação de melhores práticas para aumentar a precisão de orçamento e prazos Definição de escopo Facilitar a evolução/manutenção do software considerando: Rotatividade de recursos humanos (padrões) Complexidade inerente ao tamanho (rastreabilidade) Pontos de integração (regras de negócio)
13. Contextualização Por quê eu devo me importar com isso? Empresas maduras de desenvolvimento de software exigem conhecimento em metodologias de desenvolvimento Principalmente multinacionais Se você não sabe, vai ter que aprender
14. Contextualização Equipe: 05 pessoas Sistema: web-site da TAM Prazo: 03 meses ... como fazer? Opção 01: iniciar a codificação (go-horse) Opção 02: seguir um modelo “tradicional” Opção 03: ? Opção “n”: ?
15. Contextualização Opção 01: iniciar a codificação Qual é o escopo? Quais são as regras de negócio? Qual o planejamento para um ciclo? Qual a noção de prazo? Qual é a integração entre as telas? ..............
16. Contextualização Opção 02: seguir um modelo tradicional Quantos papéis cada membro da equipe terá que desempenhar? O tempo é suficiente para manter todos os documentos, seguir todas as fases? Todos os documentos são realmente necessários? E se o cliente solicitar uma mudança no fim do prazo?
23. Manifesto Ágil Conceito introduzido em 2001 por 17 desenvolvedores de software Conjunto de princípios em comum dos métodos ágeis A motivação foi a formalização de métodos em projetos com alto nível de mudanças, requisitos desconhecidos e equipes pequenas
25. Métodos Ágeis - MITOS Método ágil não precisa documentar Método ágil não precisa planejar Método ágil é bom/ruim Se eu usar ágeis não posso ter CMMI ou outras certificações
27. SCRUM Método para Gerenciamento de Projetos Harvard Business Review 1986 (Toyota) Proposta inicial em 1995 por Ken Schwaber e Jeff Sutherlan Formalizado em 2001
28. Princípios do SCRUM Equipes multifuncionais Equipes auto-organizáveis Iterações curtas Papéis, cerimônias e artefatos em número reduzido
43. ...Cada papel tem seus artefatos associados e atividades pré-definidas
44. Anatomia do SCRUM No SCRUM os papéis são Dono do Produto SCRUM Master Equipe
45. Anatomia do SCRUM Dono do Produto Define e prioriza as funcionalidades Decide as datas de lançamento Aceita ou rejeita os trabalhos Normalmente é um representante do cliente
46. Anatomia do SCRUM SCRUM Master Responsável por garantir que as práticas do SCRUM sejam seguidas por todos Responsável por resolver impedimentos Deve garantir máxima produtividade da equipe e promover a colaboração entre os mesmos Protege a equipe de interferências externas
47. Anatomia do SCRUM Equipe Recomenda-se de 05 a 09 pessoas Multifuncional Dedicação integral
58. Anatomia do SCRUM Sprint Backlog Lista de funcionalidades do productbacklog que será feito em um ciclo (iteração) Como os itens do productbacklog são priorizados, este parâmetro é utilizado para selecioná-los A prioridade pode ser Alta, média, baixa; EDI; etc.
60. Anatomia do SCRUM Sprint Backlog Trabalhos não são atribuídos, cada um escolhe o que vai fazer Todos podem mexer no escopo da sprint Estimativa de esforço atualizado diariamente Trabalhos complexos são definidos como um item com uma grande quantidade de tempo e detalhados quando ficam mais conhecidos
62. Anatomia do SCRUM Gráfico Burndown Acompanhamento das tarefas executadas Atualizado diariamente Permite uma visualização simples e clara sobre atrasos e adiantamentos no projeto
78. Anatomia do SCRUM Sprint planning Quebra os itens do productbacklog em tarefas Bom senso ao determinar a granularidade Depende do tamanho da sprint e da capacidade das pessoas envolvidas Estima a duração das tarefas em horas
86. Considerações Finais SCRUM é um modelo ágil, o fato da sua empresa ser pequena, ou os projetos serem de curta duração por si só não significa que ele é o modelo ideal para você Deve-se considerar uma série de fatores em conjunto
87. Considerações Finais Cultura e política da empresa Cultura da região Experiência da equipe Maturidade da equipe Tamanho da equipe Natureza dos projetos Proximidade com o cliente
88. Considerações Finais O bom senso aplicado sobre todos estes fatores somado ao conhecimento nos modelos disponíveis do mercado e no know-how da empresa serão os maiores subsídios para definir qual modelo será utilizado Pode-se personalizar os modelos
89. Considerações Finais Pode-se obter bons resultados usando qualquer cada um dos modelos Muda a forma de gerenciamentoe as técnicas utilizadas
94. Considerações Finais Indícios para usar ágeis Equipe sênior Baixa criticidade Requisitos que mudam com frequência Equipe pequena Pessoas capazes de se auto-organizar
95. Considerações Finais Indícios para usar tradicionais Equipe júnior Alta criticidade Requisitos que não mudam com frequência Equipe grande Pessoas não são capazes de se auto-organizar
96. Considerações Finais Independente do formato, é preciso adaptar e usar um processo Processos são a base para a obtenção de indicadores de qualidade e base de conhecimento, que ajudam a empresa a aprender e a evoluir Também passa confiança ao cliente