Os diferentes métodos que compõem todo o escopo da Metodologia Ágil revolucionaram a área de desenvolvimento de software a aumentaram significativamente a performance dos times desenvolvedores. Desde então, essa metodologia passou a ser implementada, de maneira fragmentada, muitas vezes, em outras áreas, principalmente na
Gestão de Projetos:
A metodologia ágil é um conjunto de práticas que visam permitir, por meio de inspeção e adaptações frequentes, entregas rápidas, com qualidade e alinhadas à necessidade do cliente e da empresa. Metodologia Ágil possui a seguinte base:
O desenvolvimento Ágil é incremental, ou seja, não se faz um plano completo com tudo que devemos fazer para depois iniciar o desenvolvimento, muito menos desenvolvemos o produto sem contato com o cliente.
Ao invés disso, desenvolvemos incrementalmente, isto é, o produto é feito aos poucos e entregue constantemente. Desta forma, toda mudança é bem-vinda, pois o projeto está em desenvolvimento e não foi concluído por completo.
Um dos principais pontos na Metodologia Ágil é a possibilidade de a equipe ser auto gerenciável: não há necessidade de um gerente e sim um líder, que tem o papel de facilitador. A equipe e a comunicação entre os membros e o cliente são crucial para o sucesso das metodologias ágeis, e para isso as equipes pequenas tornam-se fatores de sucesso. As equipes pequenas reduzem problemas de conflitos, comunicação, entre outros.
As metodologias ágeis contribuem para que as equipes enfrentem os eventos imprevistos considerando um projeto por meio de entregas incrementais e ciclos iterativos. Elas favorecem um processo de gestão de projetos que estimula a inspeção e os ajustes frequentes.
As metodologias ágeis estão cada vez mais presentes no mercado de desenvolvimento de software quando o assunto é conseguir entregar trabalhos com mais qualidade e no prazo estabelecido. Elas já se tornaram uma necessidade estratégica.
Com ela, a qualidade na entrega de algum trabalho é garantida por haver uma melhor aplicação das práticas ideais, que é possível com a realização frequente de testes para cada uma das funcionalidades. Isso ajuda a identificar qualquer problema com antecedência de forma que o produto final possa ser entregue conforme o prazo estabelecido e as especificações acordadas com o cliente.
Como, durante o desenvolvimento do software, ele passa por diversos processos e fica em contato com o cliente para validação, é difícil não considerar que a sua qualidade melhorará. Por meio de todos esses processos, o produto final terá mais segurança a cada etapa do projeto com base em tudo que já foi realizado, testado e validado até então.
Essa otimização do tempo não é só vantajosa por economizar e realizar uma entrega mais rápida. Outra consequência positiva disso é ter uma maior rentabilidade da equipe.
Desse modo, a equipe pode se tornar mais independente para lidar com os eventuais problemas de um projeto e aprender como solucioná-los. O resultado é mais produtividade e menos perda de tempo como poderia ocorrer com o uso das metodologias tradicionais.
Além disso, é muito comum que os clientes peçam para que haja alterações no produto. Por isso, a cada versão recebida, é possível que ele envie sugestões de alterações e os responsáveis pelas alterações já comecem a fomentá-las para as próximas fases do projeto.
Ou seja, para que uma mudança possa ocorrer e o cliente possa sair mais satisfeito, não é preciso que isso ocorra apenas na etapa final do projeto. Desse modo, o software desenvolvido se torna mais flexível.
Claro que essa constante comunicação com o cliente e a flexibilidade para alterar o que ele pede tornam mais fácil gerenciar os riscos de um projeto. Isso porque o cliente tem um maior controle e pode identificar os possíveis problemas que um produto pode apresentar e reportá-los aos desenvolvedores para que sejam solucionados rapidamente.
As metodologias ágeis têm como proposta economizar tempo na efetivação de diferentes atividades. Também apresentam um interesse em oferecer um desenvolvimento constante até que sejam alcançados os resultados. Para atingir suas propostas, elas contam com algumas características.
O desenvolvimento deve focar no relacionamento entre as pessoas, que devem se envolver bem entre si. Além da relação com os processos, que são passíveis de mudança, as pessoas devem se conectar, trabalhando em conjunto para a produção dos mesmos efeitos.
O resultado é a intensa interatividade, pois toda a equipe deve atuar com consistência a fim de conquistar resultados satisfatórios. O cliente também deve integrar essa interatividade, assegurando a realização das expectativas.
Interatividade e iteratividade não são a mesma coisa! A iteratividade se relaciona com as entregas incrementais, que ocorrem em períodos menores. Na administração convencional, o mais habitual é as etapas ocorrerem em cascatas e os resultados só são entregues no final de tudo.
Na gestão ágil, as coisas são diferentes porque se procura o trabalho contínuo em diferentes frentes, sendo que uma etapa influencia a seguinte. Assim, as entregas se realizam em pequenos períodos. O cliente pode acompanhar todo o processo, não se limita a analisar os resultados.
As metodologias ágeis também se destacam por sua flexibilidade. Já os métodos convencionais são muito rígidos, pois é importante manter-se dentro do que foi planejado, do escopo original.
A flexibilidade nos métodos ágeis é a palavra de ordem. A equipe deve se preparar para imprevistos e modificações, conforme se tornem necessárias. Algumas vezes, isso significa descobrir boa parcela do projeto justamente durante seu desenvolvimento e sua execução. Preparar-se para as transformações é fundamental na gestão ágil.
Para garantir a satisfação dos clientes e para garantir o sucesso da equipe na execução, a transparência deve ser maximizada. Ainda que seja relevante nos métodos tradicionais, nas metodologias ágeis ela se torna ainda mais importante.
Os profissionais devem manter um bom nível de comunicação e entendimento sobre as tarefas que já foram efetuadas e as que ainda serão feitas. O cliente também deve ter esse conhecimento de modo a acompanhar ou não cada etapa.
A máxima transparência permite identificar com mais facilidade os conflitos e as melhores soluções.
Existem diversas estratégias de transformação ágil que podem ser desenvolvidas em projetos
SAP, conforme exemplos abaixo:
Sistema de controle e gestão do fluxo de produção/processos em empresas e projetos que usa cartões coloridos (post-its) para gestão visual. Proporciona uma boa comunicação e andamento do trabalho em tempo real.
Também gera engajamento com o time e demonstra a evolução ou problemas enfrentados. Pode ser adaptado para uso em times de desenvolvimento SAP, testes integrados e usuário ou mapeamento de processos em um BBP, por exemplo.
É a ferramenta contra problemas de má comunicação, momento em que o time compartilha informações e identifica eventuais barreiras. Os membros do time se reúnem por 15 minutos diariamente e respondem a três perguntas básicas:
Esse é o momento do acompanhamento dos objetivos, para o time ganhar confiança e os três pilares da Metodologia Ágil se evidenciarem. São eles: a transparência, a inspeção e a adaptação.
Ele pode ser desenvolvido em todas as fases do projeto, para garantir assim a comunicação e a sinergia do time envolvido.
O Product Backlog é a única fonte de requisitos que contém o escopo do Projeto, conforme a priorização realizada pelo cliente. Após essa determinação, se parte para a Sprint Backlog, onde a partir das priorizações, o time realiza todas as atividades técnicas a serem realizadas e, consequentemente, temos a estimativa do que poderá ser feito no decorrer do processo.
Podemos adequar esse trabalho para o mundo SAP, trazendo as melhores práticas para a etapa de realização, onde, a partir da definição do escopo (BBP), realizamos a priorização das entregas e, em alinhamento com o time, adequamos as etapas de especificação funcional e desenvolvimento, trabalhando com o que deve ser feito, conforme priorização e estimativas de trabalho.
Sprint Review é o momento onde somos responsáveis por apresentar os entregáveis planejados na última Sprint. O intuito é apresentar as funcionalidades aos clientes.
Podemos adequar esse overview da funcionalidade algumas semanas antes da entrega de valor ao cliente. Grande parte dos projetos SAP trabalha com escopo fechado, de modo que o intuito em apresentar a funcionalidade ao usuário antes do período de testes integrados servirá para conter as expectativas, alinhar ajustes finos da funcionalidade e, se necessário, avaliar manobras de solicitação de mudança para endereçar possíveis necessidades adicionais.
O fato é que, com as devidas adaptações e modelagem, o agile pode ser utilizado em todo e qualquer projeto ou demanda de SAP.
O aspecto mais importante para viabilizar isso não foge muito a regra, boas práticas, mas com alguns pontos muito importantes que devem ser observados quando adotar um método ágil para SAP que são: