www.institutomaturi.com.br
• Pós-graduação em Gerenciamento de Projetos  pelo Senac;• Graduação em Análise de Sistemas pela  Unilins;• Habilitação em...
Desenvolvimento Ágil
Por que é queprojetos falham?
Falta de envolvimento do usuário final
Falha no levantamento de requisitos
Cronogramas irreais
Falta de gerenciamento decontrole de mudanças
Falta de testes
Processos inflexíveise inchados
• É um conjunto de metodologias.• As metodologias possuem modelos  (framework) de trabalho.• Ser ágil é ser eficiente, con...
• Indivíduos e interações entre eles mais que  processos e ferramentas.• Software em funcionamento mais que  documentação ...
• ... é necessário se adequar e abrir mão de  algumas formas de lidar com problemas.
• Responda: o que ocorreria onde você trabalha  caso:  – Alguma das entregas não forem feitas no prazo?  – A meta de orçam...
Ágil                        Não ágilEstrutura organizacional   Comunicação simples e       Altamente rígida e             ...
Exagero          Agilidade
• Processo de desenvolvimento cíclico• Cada iteração (ciclo) gera uma entrega• As entregas são feitas incrementando suas  ...
Análise                     e                 Arquitetura   ImplementaçãoPlanejamento                                     ...
Visão                         Visão           Controle                     Controle                                       ...
Equipe                           GP       EquipeEquipe   GP       Equipe   Equipe            Equipe         Equipe        ...
Desenvolvimento Ágil NÃO é a bala de prata!
Quando pode não ser adequado?
Equipe com mais de 20 desenvolvedores
As pessoas envolvidas não inspirar confiança
Projetos que levammuito tempo paraserem desenvolvidose serem executados
Projetos que lide com altos riscos           ou alta complexidade
Ambiente que não facilite a comunicaçãoentre stakeholders
Companhias com uma culturade processos engessados
Cultura que procura a ordem
•   Equipe pequena e competente;•   Equipe que consegue se auto-gerenciar;•   Menor quantidade de desenvolvedores Junior;•...
• Modelagem• Programação• Gerenciamento de projetos
Desenvolvimento Ágil
• Descrição do que o sistema  deverá ser capaz de fazer em  um formato de texto  descritivo;• Feito pelo cliente, podendo ...
• Criado para usar a cognição de  reconhecimento através de cores• Aplicável a Diagrama de Classes e de Objetos,  ou ainda...
• Levantamento de todas as funcionalidades do  sistema (features);• Guia os programadores nas entregas iterativas  e incre...
Desenvolvimento Ágil
• Programação de alto nível;• Possua algum framework que acelere o  desenvolvimento;• Possua componentes de uso trivial;• ...
• Linguagem de programação interpretada  multiparadigma;• Linguagem de alto nível;• Tipagem dinâmica e forte;• Gerenciamen...
• Framework livre para desenvolvimento de sites  e aplicativos Web;• Orientado a banco de dados;• Baseado no padrão MVC;• ...
• Desafio anual de 48h para desenvolvimento de  aplicação Web• Endereço: http://r09.railsrumble.com
Desenvolvimento Ágil
Falha             Falhas em projetos       Faltaorganizacional                             conhecimento     6%            ...
•   SCRUM•   Extreme Programming (XP)•   Feature Driven Development (FDD)•   Test Driven Development (TDD)•   Crystal•   D...
Métodos ágeis usados.           Outros            21%XP                                             Scrum8%               ...
• Product Owner e Cliente• Visão do produto   – Requisitos funcionais e não funcionais   – Restrições e User stories (prát...
Desenvolvimento Ágil
• Metodologias ágeis podem melhorar processos de  empresas que se encaixam no perfil esperado;• Não resolve todos os probl...
•   Modelagem para Documentação Ágil (12 h)•   Ruby on Rails (36 h)•   SCRUM Aplicado (16 h)•   Design Patterns (22/36 h) ...
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Desenvolvimento ágil
Upcoming SlideShare
Loading in...5
×

Desenvolvimento ágil

666

Published on

Slides utilizados na palestra sobre desenvolvimento ágil, abordando metodologias, programação e modelagem.

Published in: Technology
2 Comments
1 Like
Statistics
Notes
No Downloads
Views
Total Views
666
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
36
Comments
2
Likes
1
Embeds 0
No embeds

No notes for slide

Desenvolvimento ágil

  1. 1. www.institutomaturi.com.br
  2. 2. • Pós-graduação em Gerenciamento de Projetos pelo Senac;• Graduação em Análise de Sistemas pela Unilins;• Habilitação em Desenvolvimento de Sistemas Web pelo Colégio Salesiano;• Diretor de Projetos do Instituto Maturi.
  3. 3. Desenvolvimento Ágil
  4. 4. Por que é queprojetos falham?
  5. 5. Falta de envolvimento do usuário final
  6. 6. Falha no levantamento de requisitos
  7. 7. Cronogramas irreais
  8. 8. Falta de gerenciamento decontrole de mudanças
  9. 9. Falta de testes
  10. 10. Processos inflexíveise inchados
  11. 11. • É um conjunto de metodologias.• As metodologias possuem modelos (framework) de trabalho.• Ser ágil é ser eficiente, consequentemente pode-se ganhar tempo.
  12. 12. • Indivíduos e interações entre eles mais que processos e ferramentas.• Software em funcionamento mais que documentação abrangente.• Colaboração com o cliente mais que negociação de contratos• Responder a mudanças mais que seguir um plano
  13. 13. • ... é necessário se adequar e abrir mão de algumas formas de lidar com problemas.
  14. 14. • Responda: o que ocorreria onde você trabalha caso: – Alguma das entregas não forem feitas no prazo? – A meta de orçamento do mês não for atingida? – O desenvolvedor faz uma entrega cujo resultado desagrade o cliente?
  15. 15. Ágil Não ágilEstrutura organizacional Comunicação simples e Altamente rígida e direta burocráticaTransparência É clara a atitude a ser Não se preocupa em tomada diante a algum esclarecer procedimentos eventoGerenciamento de Riscos Avalia riscos negativos e Avalia apenas riscos positivos negativosDocumentação É feita sempre que for Para todo projeto são feitos necessária, e de forma documentações pré- planejada definidasMétricas Excessivas e mal- formuladasEquipe Colaborativa CompetitivaLiderança Autoconfiante
  16. 16. Exagero Agilidade
  17. 17. • Processo de desenvolvimento cíclico• Cada iteração (ciclo) gera uma entrega• As entregas são feitas incrementando suas partes, até formar o todo
  18. 18. Análise e Arquitetura ImplementaçãoPlanejamento Implantação Revisão e Mudanças Avaliação
  19. 19. Visão Visão Controle Controle Pode tornar-se Modelo Modelo desnecessário Servidor de Banco de Servidor de Banco de Dados Dados Banco de Dados Banco de Dados Desenvolvimento Monolítico Desenvolvimento Iterativo e Incremental(ex.: Mod. Desenv. Em Cascata)
  20. 20. Equipe GP EquipeEquipe GP Equipe Equipe Equipe Equipe Equipe
  21. 21. Desenvolvimento Ágil NÃO é a bala de prata!
  22. 22. Quando pode não ser adequado?
  23. 23. Equipe com mais de 20 desenvolvedores
  24. 24. As pessoas envolvidas não inspirar confiança
  25. 25. Projetos que levammuito tempo paraserem desenvolvidose serem executados
  26. 26. Projetos que lide com altos riscos ou alta complexidade
  27. 27. Ambiente que não facilite a comunicaçãoentre stakeholders
  28. 28. Companhias com uma culturade processos engessados
  29. 29. Cultura que procura a ordem
  30. 30. • Equipe pequena e competente;• Equipe que consegue se auto-gerenciar;• Menor quantidade de desenvolvedores Junior;• Projetos que possam usar frameworks e componentes já existentes;• Projetos onde as iterações não passem de 4 semanas;• Alta mudança nos requisitos;• Liberdade de comunicação;• Cultura que tem sucesso no caos.
  31. 31. • Modelagem• Programação• Gerenciamento de projetos
  32. 32. Desenvolvimento Ágil
  33. 33. • Descrição do que o sistema deverá ser capaz de fazer em um formato de texto descritivo;• Feito pelo cliente, podendo ser auxiliado por um analista de sistemas;• Deve ser detalhado o quanto for necessário.
  34. 34. • Criado para usar a cognição de reconhecimento através de cores• Aplicável a Diagrama de Classes e de Objetos, ou ainda em DER/DED, caso não use UML; Papel (atuação) Momento, intervalo Descrição Partido, lugar, coisa
  35. 35. • Levantamento de todas as funcionalidades do sistema (features);• Guia os programadores nas entregas iterativas e incrementais;• Facilita criar diagrama de Use Case, caso for necessário;• Contribui com as métricas do projeto.
  36. 36. Desenvolvimento Ágil
  37. 37. • Programação de alto nível;• Possua algum framework que acelere o desenvolvimento;• Possua componentes de uso trivial;• Que haja entre os desenvolvedores quem conheça bem a linguagem escolhida;• Trabalhe com MVC.
  38. 38. • Linguagem de programação interpretada multiparadigma;• Linguagem de alto nível;• Tipagem dinâmica e forte;• Gerenciamento de memória automático.
  39. 39. • Framework livre para desenvolvimento de sites e aplicativos Web;• Orientado a banco de dados;• Baseado no padrão MVC;• Desenvolvido em Ruby.
  40. 40. • Desafio anual de 48h para desenvolvimento de aplicação Web• Endereço: http://r09.railsrumble.com
  41. 41. Desenvolvimento Ágil
  42. 42. Falha Falhas em projetos Faltaorganizacional conhecimento 6% tec. 7% Outros Mudança de 42% requisitos 18% Requisitos errados 15% Requisitos incompletos 12%
  43. 43. • SCRUM• Extreme Programming (XP)• Feature Driven Development (FDD)• Test Driven Development (TDD)• Crystal• Dynamic Systems Development Method (DSDM)
  44. 44. Métodos ágeis usados. Outros 21%XP Scrum8% 49% Scrum & XP 22% Ref.: 3rd Annual ”State of Agile Development” Survey June-July 2008 3061 respondentes, 80 países
  45. 45. • Product Owner e Cliente• Visão do produto – Requisitos funcionais e não funcionais – Restrições e User stories (prática do XP)• Criação do product backlog (entregas) – Conjunto de funcionalidades do sistema – Priorização das funcionalidades• Preparação da base necessária para o desenvolvimento – Mecanismos de comunicação e coordenação – Formação das equipes
  46. 46. Desenvolvimento Ágil
  47. 47. • Metodologias ágeis podem melhorar processos de empresas que se encaixam no perfil esperado;• Não resolve todos os problemas, no entanto demonstra-se mais eficaz em relação aos resultados obtidos;• Para usar metodologias ágeis faz-se necessário estudar e treinar a equipe de trabalho.• O processo ágil é fácil de entender, mas não é simples aplicá-lo, principalmente em empresas com uma cultura retrograda.
  48. 48. • Modelagem para Documentação Ágil (12 h)• Ruby on Rails (36 h)• SCRUM Aplicado (16 h)• Design Patterns (22/36 h) www.institutomaturi.com.br contato@institutomaturi.com.br
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×