APLICAÇÃO DA METODOLOGIA SCRUM EM PROCESSO DE CAPTAÇÃO E DESENVOLVIMENTO DE SOFTWAR
Por: Kleber.Oliveira • 3/5/2018 • 2.471 Palavras (10 Páginas) • 521 Visualizações
...
Scrum, que é fundamentado na teoria de controle de processos empíricos, emprega uma abordagem iterativa e incremental para otimizar a previsibilidade e controlar riscos. Três pilares sustentam qualquer implementação de controle de processos empíricos (SCHWABER, 2009, p. 3).
De acordo com Lopes et al (2009), um conjunto de princípios técnicos básicos e de gestão é necessário se a boa prática de Engenharia de Software tiver que ser conduzida. Esses princípios técnicos básicos incluem a necessidade de entender áreas de incerteza de requisitos e de protótipos, além da necessidade de definir explicitamente a Arquitetura do Software e planejar a integração dos componentes.
Lopes et al (2009), enfatiza a importância da comunicação no processo de captação dos clientes, presumindo que o primeiro contato deve obter dados relevantes e exatos a respeito dos objetivos do cliente, e destaca ainda:
Os princípios de comunicação com o cliente focalizam a necessidade de reduzir o ruído e aumentar a afinidade de ideias e pensamentos funcionais entre equipe desenvolvedora e cliente. Todos os princípios de planejamento enfocam em diretrizes para construir o melhor caminho para a obtenção de um sistema ou produto completo. O plano pode ser projetado somente para um único incremento de software, ou pode ser definido para o projeto todo. Independentemente disso, o planejamento deve incluir o que será feito, quem irá fazê-lo e quando o trabalho será completado (LOPES et al, 2009, p. 26).
Complementa ainda Lopes et al (2009), que os princípios básicos de gestão incluem a necessidade de definir prioridades em um cronograma realístico que as reflita, a necessidade de gerir riscos ativamente, e a necessidade de definir medidas de controle de projeto adequadas quanto à qualidade e suas modificações.
2.1 METODOLOGIA SCRUM[d]
O que seria exatamente a agilidade no contexto de Engenharia de Software? Jacobson fez uma explanação com as seguintes palavras:
Agilidade tornou-se atualmente uma palavra mágica quando se descreve um processo moderno de software. Tudo é ágil. Uma Equipe ágil é uma equipe esperta, capaz de responder adequadamente as modificações. Modificação é aquilo para o qual o desenvolvimento de software está principalmente focado. Modificações no software que está sendo requisitadas e construídas, modificações dos membros integrantes de uma equipe, novas tecnologias, qualquer espécie de modificação causam impacto no projeto e por consequência no produto (JACOBSON, 2002, p. 35).
O apoio as modificações deveria ser incorporado em tudo que fazemos em software, algo que se adota porque está no coração e na alma do software. Uma equipe ágil reconhece que o software é desenvolvido por indivíduos trabalhando em equipes e que as especialidades dessas pessoas e sua capacidade de colaborar estão no âmago do sucesso do projeto (JACOBSON, 2002, p. 37).
Segundo Lopes et (2009) o termo “Scrum” se origina de uma jogada do Rugby (esporte praticado entre dois times, originado do futebol), o intuito da jogada é colocar a bola em jogo. Nesta jogada o time trabalha em equipe, e se auto organizam com um objetivo a ser cumprido.
A metodologia Scrum é realmente isto, um framework de conceitos e práticas a serem utilizadas, onde o time se auto organiza, com comprometimento total com a equipe a fim de se atingir um objetivo, que no caso, pode ser um Sprint finalizado ou até tarefas que necessitam ser concluídas.
Enfatiza Ambler (2004) que diferentemente dos modelos tradicionais, onde o processo de desenvolvimento definido é rígido, com obrigatoriedade de ser seguido em seu todo, o Scrum tem outro conceito, com foco na satisfação do cliente e flexibilidade. Onde as necessidades do negócio é que ditam como e em que momento as funcionalidades serão implementadas. Este conceito agrega maior valor de negócio com um menor tempo de produção, entregas em prazos menores, com um módulo do projeto.
Ambler (2004), destaca que o foco principal do Scrum é o gerenciamento e não como as tarefas são realizadas, com o conceito de auto-organização é possível utilizar o Scrum em conjunto com outras metodologias com foco em desenvolvimento, como o XP (eXtreme Programming). Diversos relatos e pesquisas, como o 3f Annual Survey sobre metodologias ágeis mostram bons resultados na utilização híbrida dessas duas metodologias.
De acordo com Schwaber (2009), Scrum, que é fundamentado na teoria de controle de processos empíricos, emprega uma abordagem iterativa e incremental para otimizar a previsibilidade e controlar riscos. Três pilares sustentam qualquer implementação de controle de processos empíricos.
- O primeiro pilar é a transparência: esta garante que aspectos do processo que afetam o resultado devem ser visíveis para aqueles que gerenciam os resultados. Esses aspectos não apenas devem ser transparentes, mas também o que está sendo visto deve ser conhecido. Isto é, quando alguém que inspeciona um processo acredita que algo está pronto, isso deve ser equivalente à definição de pronto utilizada.
- O Segundo pilar é a inspeção: Os diversos aspectos do processo devem ser inspecionados com uma frequência suficiente para que variações inaceitáveis no processo possam ser detectadas. A frequência da inspeção deve levar em consideração que qualquer processo é modificado pelo próprio ato da inspeção. O problema acontece quando a frequência de inspeção necessária excede a tolerância do processo à inspeção. Os outros fatores são a habilidade e a aplicação das pessoas em inspecionar os resultados do trabalho.
- O terceiro pilar é a adaptação: Se o inspetor determinar, a partir da inspeção, que um ou mais aspectos do processo estão fora dos limites aceitáveis e que o produto resultante será inaceitável, ele deverá ajustar o processo ou o material sendo processado. Esse ajuste deve ser feito o mais rápido possível para minimizar desvios posteriores. Existem três pontos para inspeção e adaptação em Scrum. A reunião diária é utilizada para inspecionar o progresso em direção à meta da Sprint e para realizar adaptações que otimizem o valor do próximo dia de trabalho. Além disso, as reuniões de revisão da Sprint e de planejamento da Sprint são utilizadas para inspecionar o progresso em direção à meta da versão para entrega e para fazer as adaptações que otimizem o valor da próxima Sprint. Finalmente, a retrospectiva da Sprint é utilizada para revisar a Sprint passada e definir que adaptações tornarão a próxima Sprint mais produtiva, recompensadora
...