< Insights

Disciplined Agile Delivery: o que é e como funciona?

  • Metodologias

O Disciplined Agile Delivery é uma metodologia ágil que funciona como um kit de ferramentas/estratégias, que auxiliam nas tomadas de decisão da empresa, levando em consideração o tamanho do time e outras especificidades do contexto da organização.

Esse framework organiza, simplifica e agiliza os processos de uma organização de forma personalizada, respeitando o WoW – Way to Working de cada empresa. Trata-se de um método híbrido, ou seja, comporta uma variedade de outras práticas e métodos, tais como: Scrum, Kanban, Extreme Programming,, Agile Data, Agile Modeling e DSDM.

Com o Disciplined Agile, você identifica quais ferramentas são necessárias para cada situação específica e é essa flexibilidade do método que mantém a empresa competitiva e adaptável a qualquer adversidade. Cada função a ser desempenhada recebe papéis e responsabilidades específicas de modo a manter o fluxo da organização em movimento.

Quer saber mais? Continue a leitura!

 

Disciplined Agile
Disciplined Agile é uma metodologia que otimiza os processos de uma organização | Foto: Freepik

Como funciona o Disciplined Agile

O Disciplined Agile atua como um economizador de tempo através do seu mix de métodos ágeis, mitiga riscos através de sua abordagem prática e pragmática na gestão de projetos que, por vez, é maleável o suficiente para se manter aberta a alterações em suas ferramentas de acordo com as necessidades das equipes.

Essa metodologia pode ser utilizada não apenas para o desenvolvimento de um software, mas também na elaboração de estratégias de marketing, por exemplo.

Daily Meeting e Disciplined Agile

Através de práticas como a daily meeting (em português, reuniões diárias), o Disciplined Agile garante que todos os times trabalhem juntos e colaborem ativamente em todo o processo, garantindo que cada membro das equipes fique ciente do andamento do projeto e possa compartilhar orientação prontamente. A daily meeting também é uma forma de compartilhar estratégias que contribuam com o desenvolvimento de softwares, por exemplo.

Assim, há uma maior facilidade para responder certas questões como: qual será a próxima meta que devemos bater? Como posso agilizar essa tarefa? Será que devemos mudar de estratégia agora? O que posso fazer para ultrapassar a concorrência? Como posso contribuir para entregar resultados que proporcionem uma melhor experiência aos clientes? Qual valor/benefício a minha entrega vai proporcionar ao cliente?

Uma entrega tranquila é o sonho de qualquer empresa e isso pode ser alcançado com o Disciplined Agile, que proporciona entregas rápidas o suficiente para que a organização possa pensar na próxima meta, no próximo trabalho e no próximo ciclo da empresa.

Qual o melhor método?

Há uma frequente discussão na comunidade ágil sobre qual método é o melhor, mas a realidade é que as organizações podem se beneficiar desses métodos quando usados em conjunto.

Muitas organizações iniciam sua jornada em direção à agilidade via Scrum – o mais usado pelas companhias de acordo com “13th Annual State of Agile Report de 2019” – que é um framework leve e simples de entender. No entanto, o Scrum é uma parte do que é necessário para fornecer soluções completas aos clientes. Invariavelmente, as equipes procuram outros métodos que o completem. 

Quando esses outros métodos são pesquisados, conflitos com terminologia, papéis e objetivos vêm à tona. Pior ainda, as pessoas, na maioria das vezes, não sabem onde procurar ou até mesmo o que devem considerar.

Disciplined Agile Delivery

Para lidar com esses desafios, o DAD (Disciplined Agile Delivery) surgiu em 2009 quando Scott Ambler era chefe de metodologia de TI na IBM Rational.

“Na verdade, pouquíssimas pessoas poderiam descrever o que elas estavam realmente fazendo. Por exemplo, quando perguntado quais frameworks os times estavam seguindo, frequentemente ouvia-se: ‘Usamos Scrum’ ou ‘Usamos Kanban’ como se fossem respostas suficientes. De fato, os times não somente tinham adotado estratégias do Scrum/Kanban, mas também Extreme Programming, Agile Modelling, Unified Process entre outras coisas. Frequentemente, empresas reinventam ideias a partir destes métodos sem ao menos os conhecer, gastando muito tempo e dinheiro”. Scott Amblers lembra em uma entrevista.

Não é de surpreender que o DAD tenha sido idealizado procurando endereçar os aspectos críticos do desenvolvimento de software que alguns frameworks intencionalmente deixam para você decidir. Vamos a eles:

Abordagem híbrida

Como dito anteriormente, o DAD adota práticas e estratégias de diversos métodos, pois uma das grandes vantagens do desenvolvimento de software ágil e enxuto é a riqueza de práticas, técnicas e estratégias disponíveis.

Cobrir todo o ciclo de vida da entrega

O foco do DAD está na entrega, que é um subset do ciclo de vida do produto, que vai desde o conceito inicial até a entrega para operações e suporte. A figura abaixo mostra uma visão de alto nível do ciclo de vida do DAD. É um ciclo de vida de três fases no qual você constrói incrementalmente um produto.

Inception

Aqui, ocorrem as atividades de iniciação do produto/projeto. A grande maioria das equipes faz algum trabalho inicial de levantamento no início de um produto/projeto. Embora algumas pessoas se refiram a esse esforço como Sprint/Iteration 0, é fácil observar que, de acordo com a pesquisa “Agile Initiation 2013” em média, esse esforço leva cerca de um mês na Inception, enquanto a duração mais comum de iteração/sprint é de duas semanas. Assim, na fase inicial do DAD, fazemos algumas atividades de visão muito leves para enquadrar o projeto/produto corretamente.

Construction

Durante essa fase, uma equipe DAD produzirá uma solução potencialmente consumível em uma base incremental. Eles podem fazê-lo por meio de um conjunto de iterações ou por meio de uma abordagem de fluxo contínuo e enxuto. A equipe pode aplicar aqui um híbrido de práticas do Scrum, XP, Agile Modeling, Agile Data e outros métodos para fornecer a solução.

Transition

O DAD reconhece que, para projetos ágeis em grandes empresas, a implantação da solução para os stakeholders geralmente não é um exercício trivial. Por isso, é importante que as equipes procurem simplificar seus processos de implantação para que, com o passar do tempo, essa fase dure cada vez menos tempo até que, idealmente, desapareça.

DAD ciclos de vida

De modo a não ser prescritivo e refletir a realidade dos times da melhor maneira possível, o Disciplined Agile Delivery suporta seis tipos de ciclo de vida, a saber:

Pessoas em primeiro lugar: Papéis no DA

Assim como o DAD adota práticas e estratégias de diversos métodos, os papéis sugeridos pelo DAD também seguem essa abordagem híbrida considerando o tamanho dos times. Desde um time que tem até 15 pessoas até um time com 50 pessoas ou mais.

É válido lembrar também que existem vários papéis, que têm nomes diferentes, dependendo da metodologia que está sendo seguida, comuns a equipes ágeis. Os papéis não são posições. Qualquer pessoa assume um ou mais papéis e pode-se mudar de papel ao longo do tempo, sendo que qualquer papel pode ter zero ou mais pessoas em um determinado tempo.

Os papéis no DAD se dividem em papéis primários, que existem em todos os times independente da escala, e os papéis secundários, que tipicamente estão presentes quando há escala e somente por um determinado período.

Levando em conta que o foco do Disciplined Agile Delivery (DAD) vai desde a concepção até a operação e suporte e a desativação do serviço, é natural crer que mais papéis são necessários para um maior escopo.    

Vamos aos papéis primários e secundários:

São papéis primários:

Team Lead: É responsável por facilitar as cerimônias do time, remover impedimentos, promover cooperação e garantir que o processo seja seguido.

Product Owner: Representa as partes interessadas. Essa é a única pessoa responsável em uma equipe pela lista de itens de trabalho priorizados (chamada de backlog de produto no Scrum), por tomar decisões em tempo hábil e por fornecer informações do produto.

Team Member: Responsável pela criação e entrega do incremento. Isso inclui modelagem, programação, testes e atividades de release, além de outros.

Architecture Owner: Responsável pelas decisões de arquitetura. O Architecture Owner estará envolvido com a arquitetura prevista para o produto como um todo. O Architecture Owner é diferente de um arquiteto tradicional, pois não é o único responsável ​​por definir a direção da arquitetura, mas sim facilitar sua criação e evolução.

Stakeholder: São as pessoas que afetam ou são afetadas pelo sucesso do sistema.

São papéis secundários:

Specialist: É alguém que tem uma ou mais especialidades técnicas (por exemplo: programação Java, gerenciamento de projetos, administração de banco de dados, etc…) para que possam contribuir com a equipe, o especialista tem pelo menos um conhecimento geral de desenvolvimento de software e o domínio de negócios nos quais eles trabalham e, mais importante, buscam ativamente obter novas habilidades tanto em suas especialidades existentes quanto em outras áreas.

Independent Tester: Equipes ágeis eficazes geralmente têm uma equipe de teste independente trabalhando em paralelo que valida seu trabalho durante todo o ciclo de vida. Esse é um papel opcional, geralmente adotado apenas em projetos muito complexos (ou em escala).

Domain Expert: conhece detalhes que nem sempre são de domínio do usuário final ou dos stakeholders como um especialista em taxas financeiras por exemplo. 

Technical Expert: Especialistas técnicos – como um DBA por exemplo – são trazidos de forma temporária para ajudar a equipe a superar um problema difícil e transferir suas habilidades para um ou mais desenvolvedores da equipe.

Integrator: responsáveis pela integração de sistemas e/ou subsistemas complexos.

As atividades outrora realizadas pelo gerente de projetos ou pelos analistas de negócio em projetos tradicionais tendem a ser feitas, cada vez mais, por pessoas em funções ágeis, conforme as empresas adotam uma nova maneira de acelerar a entrega de software ou melhorar a habilidade de mudar as prioridades, conforme atestado no “13th Annual State of Agile Report”. Mudar para ágil requer uma mudança de paradigma, e parte dessa mudança é a aceitação de que os papéis das pessoas mudaram para melhor.

Princípios do Disciplined Agile

Há certos princípios no Disciplined Agile que são importantes para manter a qualidade dos resultados e a estabilidade do time. Esses valores garantem que as coisas não saiam dos eixos e a equipe não perca a estabilidade e o foco em seus objetivos. Estão entre eles:

Delicie o Cliente

Uma equipe usuária da metodologia Disciplined Agile procura não somente suprir as expectativas do cliente, mas sim surpreendê-lo proporcionando a melhor experiência com aquele produto. É importante que o cliente se fidelize e não vá em busca da concorrência.

Seja Incrível

Para que a organização tenha sucesso, é necessário que ela concentre-se em mantê-lo e não só alcançá-lo, visto que o mercado é imprevisível e a equipe está fadada a circunstâncias internas e externas que nem sempre é possível controlar. Por isso, a Disciplined Agile incentiva a manter uma escala de progresso na qual as metas impostas são sempre superadas. A empresa se torna referência.

Contagens de Contexto

Para que uma equipe obtenha sucesso, ela precisa estar atenta às suas próprias necessidades. Acatar a apenas uma ferramenta, como o Scrum ou Kanban, não é totalmente efetivo ou é efetivo apenas até um certo momento. Como um kit de ferramentas, a Disciplined Agile incentiva que a empresa encontre sua própria maneira de trabalhar o WoW. O Disciplined Agile é flexível e busca as melhores ferramentas para a individualidade de cada empresa e seu contexto para que assim a organização mantenha-se evoluindo.

Seja Pragmático

A equipe não apenas precisa ser rápida, mas sim eficaz em tudo o que se propõe, entregando produtos de alta qualidade. Com o Disciplined Agile, a organização busca progredir utilizando os métodos que se fazem necessários em cada contexto.

A Escolha é Boa

Saber as especificidades de cada técnica faz parte do processo de escolha da melhor estratégia para determinado contexto.

Otimize o Fluxo

Otimizar os processos de toda a organização, e não em partes específicas, estimula o fluxo da empresa a se manter sempre em movimento, evitando desgastes desnecessários. Com menos tempo gasto nos processos, a equipe se mantém motivada e mais proativa.

Organize em torno de Produtos e Serviços

A Disciplined Agile incentiva o time a sempre seguir em busca de gerar valor para os clientes, querendo o melhor em seus produtos, serviços e ofertas.

Conscientização Empresarial

Ter consciência empresarial é pensar a longo prazo e não só em questões pontuais e individuais, procurando sempre adaptar seus processos, bem como dar e receber feedbacks, mantendo um ambiente interativo e harmônico com a equipe e facilitando o aprimoramento dos métodos organizacionais.

Daily Meeting
Daily Meeting são reuniões diárias para gerar soluções | Foto: Freepik

Daily Meeting

Como o próprio nome diz, Daily Meeting são encontros diários comumente feitos de manhã, antes da jornada de trabalho. São reuniões curtas, de 15 minutos, mas extremamente necessárias para manter o fluxo da equipe correndo. Nelas, são administrados todos os processos das equipes. 

Assim, cada pessoa/equipe relata voluntariamente o andamento de sua parte no projeto. Dúvidas, anseios, imprevistos, impedimentos na realização da tarefa, ideias, tudo é colocado ali. Através dessa reunião, também é possível trocar feedbacks. 

Essa etapa atua como facilitadora na tomada de decisões e no acompanhamento da gestão da empresa, evitando a necessidade de perguntar frequentemente sobre o andamento das atividades

Para que a reunião não se prolongue, e mantenha os 15 minutos, cada desenvolvedor deverá resumir a análise do seu projeto em 3 perguntas: 

  • O que eu fiz ontem?
  • O que eu vou fazer hoje?
  • O que me impede de reproduzir o resultado ideal?

É também no Daily Meeting que é discutido o plano de trabalho da empresa até o próximo ciclo, bem como meios de as equipes atingirem a meta.

É obrigatório que todos da equipe participem, pois qualquer ausência pode atrapalhar o fluxo de trabalho e a intenção aqui é justamente automatizar processos de tomadas de decisão.

Benefícios do DAD

No final das contas, embora o número cada vez maior de frameworks e as várias opiniões sobre eles possam ser divergentes, eles demonstram a adaptabilidade pela qual a agilidade é conhecida. A evolução e o debate contínuo levam a uma coisa que todos os agilistas concordam: a necessidade de inspecionar e adaptar.

Levando em conta principalmente a necessidade de inspeção e adaptação em um ambiente de mudança, que geralmente leva muito tempo, um dos pontos fortes do DAD é abertamente não ser prescritivo, tanto em seus papéis quanto nos seus ciclos de vida, tornando-se assim uma abordagem híbrida, explicitando que não há uma estratégia “bala de prata” para todas as situações em todas as empresas.

O DAD é uma referência útil por sua abordagem e pode ser ainda melhor se associado aos daily meeting. Mas entendo que o primeiro passo é educar sua organização e ter uma compreensão firme dos princípios Lean e ágeis que compõem as estruturas do DAD, para que sua equipe tenha maneiras melhores de resolver o problema de seu cliente, entregando cada vez mais valor.

—- 

Fonte das figuras:

A Small Agile Team’s Journey from Scrum to DevOps by Mark Lines and Scott W. Ambler

ISBN: 1983891304

ISBN-13: 978-1983891304

Fonte da pesquisa “13th Annual State of Agile Report” de 2019 (Ver páginas 7 e 9)

Pesquisa Agile Initiation 2013

Fonte da entrevista com Scott Ambler

Sugira um artigo

    Para enviar o formulário é necessário o aceite das políticas.

    Insights do nosso time

    Obtenha insights do nosso time de especialistas sobre metodologias de desenvolvimento de software, linguagens, tecnologia e muito mais para apoiar o seu time na operação e estratégia de negócio.