1
Renato Ferreira
Thiago Gonçalves
Alex Vieira
Edson de Oliveira
Metodologia Ágil
2
Introdução
Ágil é uma nova forma de gestão e desenvolvimento de Software que usa uma abordagem de planejamento e execução iterativa e incremental voltado para processos empíricos (complexos, caóticos ou com muita incerteza, tem mudança ao longo do processo, não são repetitivos e são imprevisíveis) que divide o problema em produtos menores e que visa entregar o software funcionando regularmente.
3
Agilidade em TI é: “a habilidade de criar e responder a mudanças, buscando a obtenção de lucro em um ambiente de negócio turbulento” (HIGHSMITH, 2004); ou ainda, a capacidade de balancear a flexibilidade e a estabilidade. HIGHSMITH (2004) enfatiza que a ausência de estrutura ou estabilidade pode levar ao caos, mas que a estrutura em demasia gera rigidez.
Agilidade em TI é: “a habilidade de criar e responder a mudanças, buscando a obtenção de lucro em um ambiente de negócio turbulento” (HIGHSMITH, 2004); ou ainda, a capacidade de balancear a flexibilidade e a estabilidade. HIGHSMITH (2004) enfatiza que a ausência de estrutura ou estabilidade pode levar ao caos, mas que a estrutura em demasia gera rigidez.
4
"... most of our assumptions about business, technology and organizations are at least 50 years old. They have outlived their time. As a result, we are teaching and practicing policies that are increasingly at odds with reality and therefore counterproductive .“
[Peter Drucker 1998]
5
As metodologias ágeis são uma tentativa de refinar as metodologias iterativas, tirando o foco do processo em si e dando mais ênfase à contribuição das pessoas, dos integrantes do projeto.
Por outro lado, pesquisadores e mesmo defensores dessas práticas não recomendam times muito grandes para um projeto (e alguns propõem dividir o projeto em subprojetos e trabalhar com equipes menores). Os métodos mais conhecidos nesta categoria são Extreme Programming (mais carinhosamente conhecido como XP) e Scrum.
Mesmo tanto tempo depois da definição de métodos ágeis, da publicação do Manifesto Ágil, e de tanta gente pregando e achando que métodos ágeis são legais, porque é que isso não é ainda utilizado em larga escala? Entre alguns motivos estão:
As metodologias ágeis são uma tentativa de refinar as metodologias iterativas, tirando o foco do processo em si e dando mais ênfase à contribuição das pessoas, dos integrantes do projeto.
Por outro lado, pesquisadores e mesmo defensores dessas práticas não recomendam times muito grandes para um projeto (e alguns propõem dividir o projeto em subprojetos e trabalhar com equipes menores). Os métodos mais conhecidos nesta categoria são Extreme Programming (mais carinhosamente conhecido como XP) e Scrum.
Mesmo tanto tempo depois da definição de métodos ágeis, da publicação do Manifesto Ágil, e de tanta gente pregando e achando que métodos ágeis são legais, porque é que isso não é ainda utilizado em larga escala? Entre alguns motivos estão:
Metodologia ÁgilMetodologia Ágil
6
Burocracia como requisito: existem clientes que pedem pela burocracia, pelo processo mais rígido. Só contratam empresas que tenham fábrica de software com CMMi nível 50, e fazem questão de saber que foram definidos 432 diagramas, mesmo que nunca vá parar para dar uma olhada para eles.
Maturidade: obviamente existe um número muito maior de projetos bem sucedidos utilizando metodologias que existem a mais tempo. Não precisa ser um gênio para perceber isso. Por isso, mais gente que conhece e tem experiência com esses processos. Processos mais novos são obviamente mais atrativos para algumas empresas picaretas oferecerem serviço de desenvolvimento de software.
Burocracia como requisito: existem clientes que pedem pela burocracia, pelo processo mais rígido. Só contratam empresas que tenham fábrica de software com CMMi nível 50, e fazem questão de saber que foram definidos 432 diagramas, mesmo que nunca vá parar para dar uma olhada para eles.
Maturidade: obviamente existe um número muito maior de projetos bem sucedidos utilizando metodologias que existem a mais tempo. Não precisa ser um gênio para perceber isso. Por isso, mais gente que conhece e tem experiência com esses processos. Processos mais novos são obviamente mais atrativos para algumas empresas picaretas oferecerem serviço de desenvolvimento de software.
7
Nível técnico da equipe: no caso de muitos gerentes, ao mesmo tempo que métodos ágeis são vistos como processos que exigem muita habilidade e competência, eles acham que suas equipes são formados por pessoas super dotadas. Ou para diminuir os custos, realmente tentam contratar pessoas acima da média por um custo muito abaixo do que o mercado oferece. Quando você acredita que tem uma equipe não muito capacitada, acaba querendo ter mais controle sobre o processo. Quanto menos mão de obra precisar pensar, menor o seu risco.
Medo: meio que resume os outros itens. Mas basicamente, as pessoas preferem não mexer em time que aparentemente está ganhando. Você sabe que a metodologia B.A.T.A.T.A. vai te entregar um sistema. Pode demorar custar caro e ficar cheio de problemas, mas vai entregar um sistema. Preferem não arriscar.
8
Metodologia Ágil
Deixar o cliente participar mais dos processos;
Não recomendado times muitos grandes;
Categorias mais conhecidas são: Extreme Programming e Scrum;
9
Porque não é utilizado em grande escala?
Burocracia como requisito;
Maturidade;
Nível técnico da equipe;
Medo;
10
Vantagens da Metodologia Ágil
Iterações Curtas;
Diminuição dos custos de comunicação;
Levar em consideração que as coisas vão mudar ao longo do caminho;
11
Princípios da Metodologia Ágil
Satisfazer o cliente através da entrega contínua e adiantada de software; Mudanças nos requisitos são bem vindas; Entregar frequentemente Software funcionando, com menor escala de tempo; Trabalho em conjunto de pessoas de negócios e desenvolvimento; Construir projetos em torno de indivíduos motivados; Conversa face a face; Software funcionando é a medida primaria de progresso; Processos Ágeis promovem desenvolvimento sustentável; Atenção à excelência e técnica e bom design aumenta a agilidade; Simplicidade é essencial; Equipes auto organizáveis; Constantemente a equipe se reajusta após uma reflexão;
12
SCRUM - Foco: Planejar e Gerenciar Projetos da Organização Desenvolvimento Ágil de Software - Processo de desenvolvimento iterativo e incremental - Mecanismos do Controle de Processo Empírico: Ciclos de
Feedback - Planejmento Não-Linear. Não prescribente. - Baseado em pequenas equipes. Permite a comunicação entre
seus membros.
13
Histórico
- Origem: Empresas de Fabricação de Automóveis, 1986. - Objeto de Estudos dos educadores Hirotaka Takeuchi e Ikujiro
Nonaka. - Equipes pequenas e multidisciplinares (cross-functional)
produziram os melhores resultados. - Um grupo de pessoas necessitam trabalhar juntas para atingir
um objetivo comum. - Formação Scrum do Rugby
14
14
Equipe Scrum
Product Owner: Representa a voz do cliente. Garante que a equipe agregue valor ao negócio.
Development Team: Responsável pela entrega do produto. 5 a 9 pessoas com habilidade multifuncionais. Auto-organizada e Auto-conduzida. Analisar, Desenvolver, Testar, Projetar
Scrum Master: Responsável pela remoção de impedimentos à capacidade da equipe. Impedir qualquer influência ou distração. Proteger a equipe e mantê-la focada nas tarefas.
15
15
Artefato
Product Backlog
Sprint backlog
Planejamento de Sprint
16
16
Características de Scrum
- Clientes se tornam parte da equipe de desenvolvimento; - Discussão diária com cada membro da equipe; - Transparência no planejamento e desenvolvimento; - Reuniões frequentes com os stakeholders para monitorar o
progresso;
17
17
Kanban
Kanban é uma palavra japonesa que significa literalmente registro ou placa visível
18
18
Ações que podem ser medidas
Visualização do fluxo de trabalho; Limitação de tempo de execução; Priorização; Gerenciamento de atividades; Estabelecimento de SLAs; Melhoria Continua.
19
19
20
20
21
21
Realizado por:
www.alxmidiaeeventos.com.br
www.buteconosso.com
Top Related