Processo
Métodos ágeis: como possibilitam mais eficiência e produtividade
10 minutos de leitura
O uso de métodos ágeis é um dos recursos que a CWI emprega no gerenciamento do fluxo de trabalho de seus times, proporcionando estabilidade e diminuindo desperdícios em processos. Dessa forma, auxiliamos o cliente a alcançar seus objetivos de negócio — e fazemos isso com foco na solução dos problemas realmente relevantes para a organização parceira.
Essa visão é reflexo dos princípios da Engenharia de Software CWI, que integra Design, Desenvolvimento, Qualidade e o assunto deste artigo, Processos. A aplicação dos princípios ágeis é mais uma maneira de colocar em prática a nossa incessante busca por melhorias, em todos os campos nos quais atuamos.
As metodologias ágeis são leves, flexíveis e levam o contexto e a situação atual da empresa sempre em consideração. Entre as vantagens para o negócio, estão a maior capacidade de adaptação e a ampliação de fatores como precisão, engajamento e resiliência. Nos parágrafos a seguir, a gente explica o motivo! ?
✍ Colaboraram neste conteúdo Camila Capellão e Marcelo Lora.
Navegue pelo artigo com os links abaixo
- Manifesto ágil: um guia para processos mais produtivos e eficientes
- Benefícios da cultura ágil
- Quais empresas podem se beneficiar com metodologias ágeis?
- O que times que trabalham com métodos ágeis têm em comum
- Sprints: fragmentando o projeto para atingir melhores resultados
- A importância de especialistas em agilidade para processos mais fluidos
Manifesto ágil: um guia para processos mais produtivos e eficientes
O Manifesto para Desenvolvimento Ágil de Software, publicado em 2001, gerou uma série de práticas baseadas em valores descritos no documento. Todas têm o mesmo objetivo: melhorar a maneira de desenvolver software.
O material sintetizou em quatro questões o que significa a cultura ágil nessa área. As afirmações abordam aspectos relacionados a pessoas, ciclos mais curtos de entregas, colaboração com o cliente e resposta a mudanças.
Veja a seguir como os times da CWI aplicam essas perspectivas!
1 | Indivíduos e interações mais que processos e ferramentas
Essa premissa já fica evidente no fato de não termos um método fixo de trabalho: nos adaptamos a cada cenário, cliente e time. Com isso, a CWI tem diferentes níveis de conhecimento e aplicação dos métodos ágeis em cada uma de suas equipes.
Afinal, cada projeto tem um contexto diferente. É preciso entendê-lo, assim como as pessoas envolvidas e as variáveis vinculadas, para que possamos apoiar o cliente da melhor forma. Deste modo, garantimos que o foco esteja em ter pessoas trabalhando em conjunto para resolver o problema, e não orientadas a simplesmente usar Scrum ou Kanban, por exemplo.
Outra atitude em que essa questão fica evidente é a preocupação constante que temos com as pessoas. Nenhuma decisão sobre processos e ferramentas é tomada sem antes pensar no que faz sentido para quem está envolvido na situação.
2 | Software em funcionamento mais que documentação abrangente
Quando o Manifesto Ágil foi publicado, havia uma tendência de desenvolvimento em longas fases, no formato cascata. Grandes volumes de documentações eram gerados antes de o desenvolvimento ser iniciado. Em outras palavras, meses de projeto planejando e documentando, sem nenhum software produzido.
Porém, a velocidade das mudanças de conjuntura passou a exigir ciclos mais curtos de entrega. É evidente para o time CWI que, quanto mais cedo uma parte do software for posta à prova, mais cedo poderemos refiná-la e melhorá-la.
Isso não quer dizer que não haja documentação em nossos processos. No entanto, fazemos isso com o que é importante, o que faz sentido, o que vai ser relevante para uma pessoa nova que entrar na equipe. Documentar é levar a informação para o resto do time. Então, evitamos produzir materiais que não são lidos — ou seja, que não são úteis.
Em outras palavras, para a CWI, “software em funcionamento mais que documentação abrangente” significa documentar o que é realmente necessário, para que o foco esteja em resolver o problema correto.
3 | Colaboração com o cliente mais que negociação de contratos
No modelo de trabalho com contratos de escopo fechado, o fornecedor e o cliente podem acabar ficando em posições divergentes. O primeiro busca entregar o que foi previamente acordado e o segundo, com o passar do tempo, percebe que ajustes são necessários. Mas, ao solicitar alterações no contrato, cria um novo ciclo de entendimento, análise, estimativa e assinaturas, prolongando os processos.
Na CWI, no entanto, a postura de colaboração sempre foi um ponto forte. Procuramos trabalhar em parceria com nossos clientes, entendendo a necessidade de mudanças e que o importante é atender bem, além de cumprir o contrato. Quando elaboramos esse documento, o foco está em auxiliar o parceiro a chegar nos seus objetivos, gerar valor e trazer diferencial ao produto.
A negociação ainda existe, mas é cada vez menor. Muitas vezes, sequer é necessário fazer ajustes contratuais, por já estarmos utilizando abordagens ágeis de gestão.
4 | Responder a mudanças mais que seguir um plano
Essa é uma postura essencial no trabalho com produtos que estão em ambientes complexos e pode ser observada no dia a dia dos times. Colocamos a agilidade em prática toda vez que precisamos ajustar planejamentos, por qualquer que seja o motivo.
É muito comum fazermos adaptações a partir dos feedbacks que o usuário vai trazendo sobre o produto que está usando. Com essas informações, podemos perceber a necessidade de fazer alguma correção de rota. Ajustar uma funcionalidade para operar em uma nova realidade faz parte do jogo e lidamos muito bem com isso.
Em um projeto, por exemplo, o cliente teve dificuldades de conexão em determinadas áreas e precisamos alterar a aplicação para que funcionasse off-line. Em outra ocasião, fomos chamados para desenvolver um produto pensado pelo cliente mas, já no início do processo, identificamos que havia dúvidas sobre a concepção. Por isso, realizamos uma adaptação do nosso serviço de Discovery para melhor atendê-lo.
Temos ainda um exemplo em que estávamos montando uma solução para o envio de comunicações e, depois de percebermos outra oportunidade de negócios, a solução foi deixada de lado, pois não traria o retorno esperado naquele momento. Rapidamente, o time conseguiu se estruturar para iniciar o trabalho nesta nova necessidade.
Benefícios da cultura ágil
Trabalhar com métodos ágeis é uma questão de sobrevivência para alguns produtos. Considerando a velocidade vertiginosa da evolução tecnológica, as empresas ficam em uma posição vulnerável se buscam planejar todas as etapas e, só depois, desenvolver a solução. Por isso, essa metodologia é uma aliada em um mundo tão inconstante, já que trabalha com ciclos curtos de validação e entregas contínuas.
Veja a seguir três vantagens da agilidade para empresas.
Capacidade de adaptação
A aplicação de métodos ágeis facilita a adaptação de organizações a novos cenários, uma característica que a pandemia de covid-19 deixou especialmente evidente. Com o mundo mudando cada vez mais rapidamente, torna-se ainda mais necessário vivenciar uma cultura de eficiência e eficácia, sem desperdício de tempo e/ou recursos.
Engajamento do time
Um dos efeitos do trabalho com métodos ágeis é que o propósito de cada membro do time fica muito evidente, o que acaba resultando em pessoas mais engajadas. Isso porque, com a agilidade, o time não é simplesmente um executor do que foi pensado por outra pessoa, e sim agente ativo de ideias e responsabilidades, o que melhora as condições de trabalho.
Qualidade do trabalho entregue
As metodologias ágeis têm uma relação direta com a qualidade do trabalho entregue no desenvolvimento de software. Como funciona com entregáveis em ciclos mais curtos, os feedbacks são recebidos com mais frequência, facilitando as inevitáveis correções de rotas. Um trabalho que fica sem validação por muito tempo tem a tendência de apresentar qualidade inferior porque perde oportunidades de refinamento e ajustes.
Se uma hipótese demora para ser validada, há o risco de o time trabalhar por muito tempo em algo que não está no caminho certo — ou não está mais, devido a mudanças de contexto durante o tempo transcorrido. Ao encurtar os ciclos de ideação, geração de hipóteses, validação das hipóteses, priorização, desenvolvimento, entrega e monitoramento, as verificações de qualidade são feitas mais vezes do que em métodos tradicionais de gestão.
Desta forma, crescem as chances de termos produtos de qualidade elevada e, mais do que isso, alinhados com o propósito dos clientes. Afinal, não adianta entregar algo que funcione muito bem, mas que não seja o que o cliente ou usuário precisa.
Quais empresas podem se beneficiar com metodologias ágeis?
Todas! Mesmo nas culturas organizacionais baseadas em processos de comando e controle (que dificultam resposta rápida a mudanças pois exigem que um plano seja rigorosamente seguido), é possível inserir novas práticas que beneficiarão os times e a empresa.
O que as empresas que usam métodos ágeis têm em comum é que sabem onde querem chegar. São focadas em objetivos e enxergam a agilidade como uma maneira de atingi-los. Também veem valor na colaboração, entendendo que não é possível ser ágil quando todas as ideias e decisões estão concentradas em apenas uma pessoa.
Assim como a agilidade indica pequenas evoluções e entregas constantes, a implantação de suas práticas em uma organização também deve ser feita aos poucos. Dessa forma, a dor da mudança é menor: o ambiente vai mudando e as pessoas vão se acostumando com um novo jeito de trabalhar.
Não existe uma regra sobre como começar a implantar métodos ágeis, mas uma possibilidade é iniciar com a introdução de dailys, reuniões diárias curtas (em geral, de até 15 minutos) nas quais os membros da equipe sinalizam o andamento de suas atividades, otimizando a colaboração. Há inúmeras outras práticas que podem ser inseridas aos poucos no dia a dia da empresa, rumo a uma forma de trabalho cada vez mais ágil.
Como identificar qual é a metodologia mais adequada para o contexto
Além de aplicar essa visão nos próprios times, a CWI pode auxiliar seus clientes no processo gradual de mudança na forma de trabalho da equipe como um todo. Nossos profissionais de Engenharia de Software fazem um mergulho para entender as necessidades da empresa e podem apoiar desde a concepção dos produtos até a entrega de soluções de forma contínua (continuous delivery).
A definição de qual método ágil será utilizado por um time CWI em um projeto está diretamente relacionada ao perfil da empresa cliente. Cada organização é um organismo vivo, e isso faz com que as abordagens tenham efeitos muito diferentes entre si. Por isso, não começamos definindo modelos — evitando, assim, uma resistência elevada das pessoas envolvidas.
Nós acreditamos em ouvir, visualizar, compreender e agir. Em conhecer o dia a dia da organização, colocar a mão na massa, ver como estão as relações entre as pessoas, experienciar a forma como o trabalho vem sendo feito. Trabalhamos em ciclos curtos medindo, testando e validando, e também compartilhando o que já vimos funcionar em experiências anteriores.
O que times que trabalham com métodos ágeis têm em comum
Além dos benefícios para o negócio, trabalhar sob princípios da agilidade apresenta vantagens também para os times. A premissa de que uma equipe ágil tem espaço e autonomia para realizar o seu trabalho acaba resultando em pessoas mais motivadas, que entendem a importância da própria contribuição para a conquista dos objetivos definidos em conjunto.
Assim, membros de um time que trabalha com métodos ágeis colaboram, protagonizam ideias e não vêem mudanças como inimigas. Além disso, pessoas engajadas criam uma espécie de pressão entre os pares: uma acaba puxando a outra para que o objetivo seja atingido. Essa característica é muito evidente em times de alta performance.
Outro ponto a ser destacado é a produtividade de times que trabalham com métodos ágeis. Como a agilidade coloca o foco no que realmente importa, as pessoas não perdem tempo fazendo coisas que não são relevantes para atingir os objetivos estabelecidos. Isso as torna, inevitavelmente, mais produtivas.
Como são configuradas as squads da CWI
Dentro da CWI, temos diferentes times. Também chamados de squads, são grupos de profissionais de diferentes disciplinas, criados para atender a um objetivo específico. É comum que tenhamos várias squads atuando em um cliente, cada uma dedicada a um produto. Por exemplo, uma para mobile, outra para acessibilidade, outra para um chatbot… E por aí vai.
Em cada caso, é preciso entender o que o cliente necessita e, a partir disso, estruturar a squad que o atenderá. Uma estrutura comum é formada por desenvolvedores (especialistas em front-end, back-end e/ou mobile), QAs (testadores, analistas e/ou engenheiros de testes) e um gestor técnico. Cada vez mais frequentemente, estamos incluindo designers e agilistas (veja mais sobre esse papel a seguir) nas squads, seguindo os princípios da Engenharia de Software CWI.
Sprints: fragmentando o projeto para atingir melhores resultados
Uma das práticas do Scrum, famoso framework ágil, é a divisão do projeto em sprints. O Scrum Guide as define como eventos de duração fixa de um mês ou menos. Uma meta é definida para ser concluída em cada sprint e o trabalho desse período é dedicado exclusivamente ao atingimento desse objetivo. A meta representa o motivo pelo qual a sprint é importante para o produto.
Cada time está inserido em um contexto diferente, mas, na prática, o que se observa com mais frequência nas squads da CWI que usam sprints é o período de duas semanas, com incidência de alguns casos de três semanas. Para definir esse prazo, é preciso considerar a situação, lembrando que, quanto mais curto o ciclo, mais frequentes são os feedbacks.
Cabe avaliar fatores como a frequência com que mudanças costumam acontecer, a cultura da empresa e o formato de trabalho com o cliente. Por exemplo: em um cenário de mudanças frequentes, a sprint de uma semana pode ser a ideal, enquanto que ambientes com delays de feedbacks podem se encaixar melhor com períodos mais longos.
Cada atividade de uma sprint deve estar relacionada à sua meta e ser uma parte que contribua para atingi-la. E, evidentemente, ser possível de executar dentro do tempo determinado. Na hora da Sprint Planning, reunião em que esse período será planejado, o próprio time, em conjunto, define o que é possível realizar naquela sprint. A decisão depende da experiência prévia da equipe e leva em consideração a expectativa do cliente.
A importância de especialistas em agilidade para processos mais fluidos
Para auxiliar tanto os próprios times quanto para apoiar mudanças na forma de trabalho dos clientes, a CWI conta com agilistas no seu quadro de colaboradores. Estas pessoas reforçam o nosso compromisso com a busca pela excelência.
São profissionais comprometidos com a atenção aos processos. Afinal, quem está executando as tarefas no dia a dia não necessariamente tem tempo ou visibilidade do que pode estar causando os problemas que vêm surgindo. Ninguém trabalha de forma improdutiva por vontade própria, e a observação de um outro ponto é essencial, principalmente se for de um especialista em processos e que domina os princípios de agilidade.
Um agile coach da CWI tem como foco criar, em cada atuação, um processo que permita que o software seja desenvolvido da melhor maneira. Para isso, está sempre buscando se aprofundar na compreensão do motivo pelo qual as pessoas agem da forma como agem — para, assim, poder ajudá-las a aperfeiçoar suas condições de trabalho.
O investimento na inclusão desses profissionais se justifica na diferença, para melhor, das entregas. Uma das formas pelas quais isso ocorre é o encurtamento dos caminhos, pois agilistas estão sempre trabalhando em ciclos de validações curtos. A constante avaliação a respeito do valor da entrega também tem um papel importantíssimo nisso. Faz sentido ou estamos fazendo por fazer?
É por causa dessa interpretação que um agile coach está sempre levantando questionamentos no time, buscando melhorias. Seu trabalho também inclui a observação de indícios do dia a dia em falas e atitudes, para gerar debates com o objetivo de evitar silos nas equipes. Esse olhar ajuda o time a entender o motivo pelo qual os problemas acontecem e, assim, evitá-los.
Os agilistas podem assumir diferentes papéis: mentor, coach, professor, gestor… São profissionais que agem em diferentes níveis e contextos, trazendo as boas práticas dos métodos ágeis para os times e para os produtos.
Métodos ágeis são poderosas ferramentas para melhorar a produtividade da equipe, e há outras perspectivas que também podem ajudar nisso. Confira mais artigos sobre processos no desenvolvimento de software!
Referências