Você é responsável por entregar a maior e mais recente iniciativa da sua empresa que mudará a cara da 'Widgets International' para sempre. É um projeto de software que vai envolver e cativar seus clientes, tornar a vida de seus colegas mais fácil e tornar a empresa milhões em receita. Há muita expectativa, fervor, entusiasmo e expectativa. Você precisa fazer isso o mais rápido possível para que sua empresa comece a colher os benefícios. O sucesso futuro da empresa depende de você. Todos os olhos estão em você. Você não pode falhar.
No início, você pensa consigo mesmo: 'Ótimo, estou pronto para o desafio. Vamos fazer isso! ” Você faz uma pausa por um momento, dá um passo para trás e pensa consigo mesmo: 'Ok, então como faremos isso?' Você começa a conversar com seus colegas e colegas. Você gasta tempo procurando as melhores práticas desenvolvimento de software e Gerenciamento de Projetos técnicas, mas as opções e abordagens são inúmeras. Existem siglas e metodologias em grande quantidade. Os notáveis chegam ao topo. A dúvida se insinua. Qual devemos usar? Como posso garantir o sucesso? E se eu tomar decisões erradas?
Quando se trata de gerenciar projetos de software, há uma mistura inebriante de opções apoiadas por uma miríade de opiniões. Vozes nos cantos da sala sussurram: “Tente fazer desta forma”; outros gritam: “Esta é a única maneira de fazer isso”; e o resto apenas choraminga: 'Não administre isso, apenas siga em frente'. Na realidade, todas essas vozes falam alguma verdade. Mas o importante é descobrir o que é certo para suas necessidades, sua equipe, sua empresa e seus clientes.
Houve uma época em que o gerenciamento de projetos de software se encaixava perfeitamente em um dos três campos. Havia estruturas pesadas que permitem tomar decisões sobre como executar e entregar, ao mesmo tempo que oferecem uma estrutura para manter o controle e a governança. Havia metodologias sequenciais prescritivas como cascata que forçou você a planejar projetos longos, entender e se comprometer com todos os seus requisitos, projetar e aprovar sistemas complexos, escrever muitos códigos e, em seguida, testar (tudo antes que seu cliente os veja pela primeira vez). E, finalmente, os ciclos de vida de desenvolvimento de software menos prescritivos, mas iterativos ( SDLC ) que incentivam a prototipagem rápida ou sistemas maiores a serem projetados, construídos e entregues em etapas incrementais, cada um construindo sobre o outro.
Desenvolvimento ágil de software e o gerenciamento de projetos Agile nasceu das inadequações da cascata e dos benefícios das abordagens iterativas para entrega de software. Eles podem traçar suas raízes até os anos 1950, liderança de pensamento nos anos 70, maturidade nos anos 90 e adoção até os anos 2000. Em 2001, um grupo de profissionais e especialistas criou o Manifesto Ágil , com o objetivo de definir 4 valores e 12 princípios norteadores que buscam corporificar o espírito do desenvolvimento ágil de software e estimular sua evolução. E definitivamente evoluiu.
Agora, simplesmente chamar algo Agile não é particularmente útil. A palavra, mesmo em um contexto de software, significa coisas diferentes para pessoas ou organizações diferentes. Existem muitas facetas, definições, implementações e interpretações. Cada corpo que adota o Agile tende a tentar dar a ele sua própria definição.
Simplesmente chamar algo de Agile não é particularmente útil. TweetBasta dizer que o desenvolvimento de software Agile e o gerenciamento de projetos são um grupo de comportamentos, estruturas, técnicas e conceitos relacionados que favorecem fundamentalmente a entrega do software de trabalho correto o mais cedo e com a maior frequência possível de forma realista.
Mencionei anteriormente que o Agile, conforme aplicado ao desenvolvimento de software ou gerenciamento de projetos, pode ser coisas diferentes. Resumindo, o desenvolvimento de software Agile cuida do desenvolvimento de um ótimo software em um business as usual (BAU) ou contexto de projeto. O gerenciamento ágil de projetos, por outro lado, cuida da governança e do controle necessários para entregar projetos complexos, incluindo, mas não se limitando a software.
Existem muitos métodos de desenvolvimento de software Agile disponíveis, como Scrum , Kanban , XP e Desenvolvimento Lean de Software . Mas assim como o jogo de rúgbi envolve mais do que um scrum, o Agile também o é. Isoladamente, esses paradigmas Agile não abordam o ciclo de vida completo do gerenciamento de projetos exigido em projetos complexos, como governança, recursos, financeiro, gerenciamento de risco explícito e muitos outros conceitos importantes de gerenciamento de projeto. Para estes, você pode querer considerar PMEs Agile ou PRINCE2 Agile —Pensar nisso como 'Agilidade Governada'.
Há muito tempo, vagamos pela terra para coletar alimentos e abrigo para sobreviver. Eram necessidades simples, mas bastante ágeis. Algum tempo depois, países e economias cresceram e prosperaram na parte de trás do Revolução Industrial . Este foi o nascimento do gerenciamento e controle e a perda de agilidade. Agora estamos no Era ou revolução da informação , onde as empresas empregam trabalhadores do conhecimento. Trabalhadores do conhecimento são você, seus parceiros e seus colegas e pares, que se esforçam para criar grandes soluções para os problemas dos clientes, negócios, sociais, econômicos e mundiais. Os trabalhadores do conhecimento aplicam a análise, o conhecimento, o raciocínio, a compreensão, a experiência e as habilidades a necessidades frequentemente definidas de forma vaga. Essas empresas e trabalhadores precisam de métodos e técnicas que não podem ser atendidos pelos processos e procedimentos da velha Era Industrial. Agile oferece suporte a interações.
Praticamente nenhum projeto de software pode definir com segurança no início e saber tudo o que precisa para entregar software funcional valioso sem alterações. A mudança apresenta oportunidades e riscos para o sucesso de um projeto. Oportunidades não gerenciadas podem significar a diferença entre uma grande empresa e uma empresa incrível. Risco não gerenciado significa desastre e ruína. Agile gerencia mudanças.
A adoção do Agile permite que você responda às mudanças ou aos novos requisitos. Ele capacita as equipes de desenvolvimento a serem especialistas e tomarem decisões apoiadas por uma empresa engajada, confiável e informada. Ele permite que você entregue aos clientes o que eles realmente desejam. Em última análise, coloca você e sua organização no controle do fornecimento de software valioso e de alta qualidade que atende às necessidades e expectativas do cliente, ao mesmo tempo em que obtém um retorno sobre o investimento em dólares o mais cedo possível. Agile cria valor.
Há um custo para adotar o Agile. Não vem de graça. A transformação para uma abordagem ágil de entrega de software pode ser um caminho difícil de seguir. No entanto, se você internalizar a filosofia Agile, agir com cuidado, envolver a equipe certa com a atitude certa, dividir as coisas, torná-las realizáveis e realistas e responder ao feedback, você colherá recompensas. Agile enfatiza a colaboração.
A seguir estão listados alguns benefícios que você pode esperar:
O sucesso não é definitivo, o fracasso não é fatal: é a coragem de continuar que conta.
Winston Churchill pode nunca ter realmente dito isso, mas acho que é um bom resumo do Agile. Sabemos que o Agile é o melhor passo em frente para a maioria dos projetos. Isso o incentiva a se empenhar pelo sucesso, mas sempre repetimos e continuamos a construir sobre isso. O Agile o incentivará a falhar, mas falhe cedo e siga em frente. Ter a coragem de continuar e construir a solução certa com base no insight informado por seu cliente é o que traz a recompensa.
O que devemos ter em mente é que você pode adaptar o Agile às suas necessidades. Use o método e a governança adequados para o seu negócio. Onde quer que você comece, seja fiel ao conteúdo, contexto e espírito do método que você usa - mantenha-o natural. Se você está apenas começando, aprender . Se você já faz isso há um tempo, Compreendo . Se você está se tornando incrível, Aplique . Finalmente, se sua empresa e seus projetos são complexos e interdependentes, governo . Com o tempo, você e suas equipes descobrirão o que funciona melhor para sua empresa.
Então agora você está pensando: 'Ok, entendi. Como eu começo? Por onde eu começo? ” Bem, com todas as coisas boas, começamos do início. E com o Agile, é se perguntando 'Qual valor de negócio eu quero entregar?' Afinal, é por isso que realizamos projetos, para gerar valor de negócio. Para estabelecer se vale a pena empreender o projeto para derivar o valor do negócio, você precisa entender se é viável.
Seu projeto foi projetado para aumentar a receita, entrar em um novo mercado, adquirir mais clientes, melhorar a percepção do cliente ou tornar a vida mais fácil para um determinado problema que você identificou? Com isso em mente, você pode definir sua 'visão'.
As pessoas não compram o que você faz ou como você faz. Eles compram o “por que” você faz isso. É isso que cria a conexão emocional entre sua empresa e seus clientes. A visão ajudará a ilustrar isso.
A viabilidade vem em pelo menos alguns tons. Normalmente, você desejará entender se sua visão de um futuro melhor para sua empresa e clientes é tecnicamente viável e se é viável para sua empresa fazer acontecer.
Para testar a viabilidade técnica de seu produto, considere explorá-lo ainda mais em um projeto de protótipo do Discovery ou executando um Espinho nas fases iniciais do projeto. Você saberá qual método usar pensando na escala ou complexidade da solução que tem em mente.
“Parte do melhor conhecimento que minhas equipes adquiriram no entendimento da viabilidade técnica veio da execução de um pico. E, muitas vezes, é a solução mais simples que vence! ”
Então, agora você confirmou que seu sonho é mais do que chocolates sofisticados, comece a testar suas suposições e a provar às pessoas que vale a pena investir neste esforço.
Agora, dependendo de suas circunstâncias, a justificação virá em diferentes formas. Mas, essencialmente, você quer provar que este projeto irá satisfazer os critérios de sucesso do cliente, tem uma chance de sucesso, entregará valor e é acessível.
Escreva, teste e valide seu plano de negócios. Agora, isso não se parece em nada com os que seu banco ou seu major de negócios e finanças lhe disseram para produzir. Não os use - eles estarão desatualizados antes de a tinta secar. Em vez disso, verifique o Business Model Canvas . Este é essencialmente um plano de negócios resumido que mantém seu foco em sua proposta de valor, seus clientes, receitas e custos. Use-o para validar se você tem um negócio que vai funcionar.
“Eu ignorei esse conselho uma vez e passei muito tempo escrevendo um longo plano de negócios tradicional de 50 páginas. Não me levou a lugar nenhum. Todas as suposições que fiz eram infundadas e todas as projeções que fiz não puderam ser validadas. Foi uma experiência dolorosa e cara que me ensinou a nunca mais fazer isso. ”
Assim que tiver sua justificativa e todas as partes interessadas estiverem a bordo, você estará em chamas.
A fase de viabilidade normalmente é realizada uma vez na vida do projeto. Você pode descobrir que revisou a visão e a viabilidade do projeto, especialmente se seus dados, clientes, mercado ou negócio indicarem isso. No mínimo, eles serão suas luzes orientadoras durante todo o processo.
Impressionante. A decisão foi tomada, o projeto tem luz verde e você está pronto para construir. Bem, quase. Eu sei que você está pensando: 'Vamos já, sério? Se não fizermos isso agora, nunca faremos. Vamos colocar esse show na estrada! ” Mas considere isso - o Agile não é nada senão entregar valor no início e frequentemente, enquanto encanta seus clientes ao longo do caminho. Dedicar algum tempo para descobrir a melhor maneira de entregar seu projeto é a base mais bem construída para o sucesso.
Nos esportes, ao pensar no seu jogo de equipe favorito, você será capaz de reconhecer os principais papéis que permitem que a equipe atue como o faz. Tradicionalmente, você encontrará um gerente, um capitão e o resto do time. Fora disso, você encontrará treinadores, fisioterapeutas, nutricionistas e uma variedade de funcionários de apoio. Mas se olharmos para o jogo de rúgbi, há uma equipe dentro da equipe: os jogadores que compõem o scrum . Este pacote é composto por jogadores designados cujo trabalho é recuperar a bola e continuar o jogo. Quando um scrum está em jogo, os jogadores de cada lado trabalham, sem líder, como uma única unidade da maneira mais colaborativa, comunicativa e eficiente possível para recuperar a posse de bola. É o jogo de rugby que inspirou Jeff Sutherland para nomear sua metodologia de desenvolvimento de software 'Scrum'.
Há muitas maneiras de formar uma equipe para fornecer software.
Na etapa de viabilidade, você descobriu o “porquê” do seu projeto e criou sua confiança para seguir em frente com sua startup ou obteve apoio para prosseguir. O resumo do projeto é o documento vivo que reúne o 'por quê' com o 'o quê' e 'quando' e 'quem'. É 'viver' porque, conforme você progride, seu conhecimento, compreensão e caminho podem mudar. Deixar este documento uma vez escrito e nunca mais retornar a ele apenas remete seus pensamentos para um ponto no tempo. Em um mundo Agile, sua referência point-in-time pode mudar semanalmente ou mesmo diariamente no início, por isso é importante mantê-la atualizada.
Um colega uma vez me parou em um corredor e me perguntou onde poderia conseguir o briefing do projeto para o projeto. Eu brinquei 'Não precisamos de um briefing, somos ágeis'. Ele parecia confuso, como se questionasse minha sanidade ou autoridade. Ele estava certo em fazer isso.
Antes de continuar, certifique-se de que todos estão na mesma página, faça um workshop, faça as perguntas difíceis e acerte em algum lugar onde as pessoas possam parar, ler, comentar e ajudar a revisá-lo.
Você conhece a forma como sua empresa funciona e sua cultura, como ela gosta de fazer as coisas. O Agile, por sua própria natureza, pode desafiar algumas dessas formas de trabalho que sua empresa cultivou ao longo dos anos. Não espere que o Agile seja implementado e que todos o adotem com amor desde o início. Algumas pessoas podem achar isso confuso e vê-lo apenas com pavor e medo. Algumas pessoas podem se recusar abertamente a se envolver nisso. Esses são desafios e percepções que você deve superar. Mas em seus primeiros dias, não saia por aí agitando o bastão Agile batendo em alguém que não quer ouvir com ele. Isso não vai construir confiança, adoção ou envolvimento.
Eu já fui fã de balançar grandes bastões proverbiais uma vez, e isso me rendeu muitos comentários negativos na imprensa. Eu o virei, mas não antes de sofrer uma dor considerável primeiro.
Ao iniciar seu caminho de adoção, siga com cuidado, respeito e empatia. Se você está em um negócio tradicional antigo e decadente, talvez não seja a melhor abordagem para alinhar todo o negócio. Comece pequeno e gradualmente ganhe respeito e reconhecimento. Comece apenas com sua equipe. Assim que você começar a fornecer um software mais rápido e com melhor qualidade do que nunca, as pessoas começarão a notar e vão querer jogar seu jogo. Quando o fizerem, ofereça-lhes a bola, leve-os para um café e leve-os para o seu novo mundo. Ajude-os.
Com sua equipe, agora que eles sabem do que se trata o projeto e seus planos para a adoção do Agile foram acordados, deixe a equipe decidir como deseja se comportar e operar como uma equipe.
A esta altura, sua equipe deve estar super animada, energizada e motivada. Agora, envolva-os ainda mais com seu acúmulo de histórias de usuários.
Não tenha dúvidas de que há incerteza envolvida em seu projeto. Você não pode saber exatamente o que será necessário para construir o produto certo para seus clientes tão cedo em sua vida. Você não pode olhar melancolicamente para uma bola de cristal e prever o futuro.
O “backlog” ou “product backlog” é onde residem seus requisitos. O Agile favorece a escrita de declarações curtas e enérgicas que capturam a essência de um 'requisito'. O backlog é simplesmente uma longa lista de entradas, cada entrada definindo um único “requisito” discreto como uma história de usuário. E de agora em diante, usaremos a palavra história do usuário, e não 'requisito'. Você provavelmente está perguntando 'por quê?' Esta é uma boa pergunta. Pelo que parece uma eternidade, declarar os recursos ou facetas necessários em um projeto de software por um cliente sempre foi referido como um requisito. Essa palavra tem uma interpretação que não tem valor no Agile. O dicionário Oxford o define como:
Algo que é necessário ou desejado. Ou algo que é obrigatório ; um necessário doença .
E infelizmente, se nos propusermos a definir qual deve ser a nossa solução, afirmando que as coisas são “obrigatórias”, vamos acabar em apuros. É muito fácil dizer que todas essas histórias de usuários são obrigatórias. Se tivermos essa visão, corremos o risco de ultrapassar o cronograma e o orçamento na tentativa de entregar tudo de um determinado escopo. Não é problema dizer que, para este produto essas histórias são necessárias para que a solução seja viável, queremos apenas evitar a interpretação dessa palavra em particular.
Depois de ter um backlog que atende às suas necessidades, você pode estimar as histórias nele, classificá-los em ordem de prioridade e construir um plano de liberação.
A estimativa de alto nível é o processo de dimensionar sua carteira. Quão “grande” é o projeto e que valor ele oferece? Priorização é o processo de decidir quais histórias são mais importantes para você, a viabilidade do produto e os interesses de seus clientes. Queremos entregar os itens de maior valor o mais rápido possível para entregar o máximo valor ao negócio, obter feedback do cliente e não se preocupar com as pequenas coisas. A saída será uma lista de pendências ordenada classificada em prioridade e dimensionada apropriadamente.
Lembre-se de que você não precisa saber todas as suas histórias de usuário antecipadamente. Além disso, lembre-se de que não é necessário entregar todas as suas histórias antes que um cliente veja seu produto. Você deseja permanecer ágil - e isso significa apenas criar o que você precisa, quando precisa, desperdiçando o mínimo possível e respondendo às mudanças nas necessidades do cliente e nas condições de mercado. Um roteiro o ajudará a traçar seu produto e planejar seus objetivos para os próximos 3, 6, 9 e 12 meses.
PARA roteiro é exatamente o que parece, oferece o mesmo que um roteiro de um país. Ele detalha a posição relativa das cidades (ou, no seu caso, recursos) entre si e as rotas que podem ser tomadas para ir da cidade A para a cidade B, ou o recurso X e o recurso Z. Não informa qual rota você deve tomar, ou como você deve chegar lá. Não informa qual meio de transporte usar, mas pode ilustrar opções para pegar a rodovia ou o trem.
Em uma cidade, existem muitas estradas, edifícios, parques, serviços e instalações. Todas as características de uma cidade. Isso também se aplica ao roteiro de seu produto. Nesse nível, seu roteiro mostra os principais objetivos ou marcos a serem alcançados. Uma meta é um agrupamento lógico de temas, recursos e histórias do usuário reunidos em uma visualização consumível que demonstra valor tangível. O roteiro de um produto de software compartilha essa visão e comunica sua intenção. Não necessariamente mostra como ou quando os recursos serão entregues; apenas o valor relativo das metas e recursos para você e sua empresa.
Uma ótima maneira de demonstrar um roteiro é gerar um mapa da história . Esta ferramenta indica a priorização valorizada pelo cliente. Ele estabelece a espinha dorsal, ou blocos de construção essenciais de seu produto. O esqueleto ambulante fica pendurado no backbone e ilustra os recursos que o tornam um MVP. Todos os outros recursos são o que agregam mais valor e importância ao sistema. O mapa da história apresenta recursos em posição relativa uns aos outros e é uma ferramenta visual incrível.
É importante notar que depois de realizar um exercício de mapeamento de histórias, seu backlog pode precisar ser refinado. Isso ficará claro onde as histórias foram divididas em várias histórias, identificadas como redundantes, recém-criadas ou como uma prioridade mais alta ou mais baixa do que se pensava anteriormente. O mapa da história é outro artefato que é continuamente revisitado e revisado.
A fase de iniciação normalmente é realizada uma vez na vida de seu projeto. No entanto, muitas das ferramentas e documentos que você criou serão revisitados e revisados ao longo do projeto.
“Finalmente”, ouço você chorar, “finalmente, algum planejamento”. Bem, você essencialmente planejou todos os estágios de viabilidade e iniciação; nós apenas não chamávamos assim. Isso é evidência de planejamento iterativo ou adaptativo - a arte de planejar apenas o suficiente para atingir seus objetivos imediatos e mais valiosos. Veremos mais tarde mais sobre planejamento adaptativo, mas, por enquanto, o planejamento de lançamento é o nosso foco.
Seu plano de liberação pode muito bem ser determinado por eventos externos. Talvez haja uma feira de negócios em que você queira demonstrar seu aplicativo ou seus clientes obterão o máximo de benefícios usando seu aplicativo nas vésperas do Natal. Estes são eventos da linha do tempo com os quais seus objetivos podem estar alinhados. Você provavelmente planejaria fornecer histórias de usuário ou recursos que façam mais sentido para facilitar esses eventos. Se não houver datas externas que você precise considerar, você pode simplesmente optar pela priorização de recursos e fornecer o quanto antes o que faz mais sentido e agrega mais valor aos seus clientes.
Considere isso como um exemplo. Se você vai a um restaurante para comer, não vai pedir todos os itens do menu e espera comer tudo de uma vez. Você nunca seria capaz de comer tudo, você pode não pagar o custo, você vai enjoar de comida e o restaurante pode fechar enquanto você está comendo o quinto de 19 pratos! Você pode não deixar um cliente satisfeito, o restaurante pode não considerá-lo um grande cliente e a experiência será ruim para todos. Mais provavelmente, se você adora o restaurante, será porque você desfrutou de uma bela refeição lá uma vez. Você vai decidir voltar e desfrutar de uma refeição diferente. Você vai dizer a seus amigos, você vai lá com frequência. A moral da história é:
O planejamento da liberação geralmente ocorre em um projeto de software. Cada novo lançamento requer um plano de lançamento. O plano de liberação também pode ser refatorado a qualquer momento durante um projeto. Apenas tome cuidado para não exagerar e cair na psicose de planejamento zumbificada. No final do planejamento de lançamento, você vai querer se preparar para a primeira iteração, que é para onde iremos a seguir!
Sua equipe está pronta, eles estão motivados, você tem um negócio engajado, seu planejamento inicial está feito - agora você está pronto para construir seus sonhos.
Falamos anteriormente sobre algumas das ferramentas, técnicas e conceitos que o Agile subscreve. Já existem muitos recursos disponíveis que fazem um ótimo trabalho no estabelecimento das bases para a entrega de um projeto de software Agile. Escolha um, mantenha-o simples e cresça em sua jornada Agile. Para ajudar a reduzir o trauma na decisão da metodologia de desenvolvimento de software Agile certa para começar, eu recomendo o Scrum. E apenas Scrum. Haverá a tentação de usar elementos de outras metodologias. Não faça isso ainda. Guarde esse tipo de mudança até que você tenha vivido e respirado Scrum por 6 ou 12 meses. Então, se você determinou que sozinho não funciona para você ou se deseja amadurecer como uma equipe, introduza constantemente novos métodos, técnicas ou estruturas.
eu escolho Scrum como a abordagem recomendada para a adoção do Agile por uma nova equipe, porque tem todos os princípios básicos integrados. É muito popular e tem muitas comunidades e recursos de boa qualidade online, em livros ou na sala de treinamento. Isso o atenderá bem, mesmo para as equipes menores. O restante deste post é dedicado a discutir alguns aspectos importantes da entrega de software que você, sua equipe e as partes interessadas devem sempre ter em mente.
O planejamento em um projeto Agile é um processo contínuo. Fazemos um planejamento inicial com antecedência, apenas o suficiente para entender o que sabemos em um determinado ponto. Nossos planos iniciais serão vagamente definidos e falhos. E então iteramos nosso planejamento, adaptando-nos às novas informações, planejando com mais detalhes antes de iniciarmos a entrega, respondendo às mudanças no escopo. Essa é uma forma de minimizar o desperdício - apenas nos esforçando para planejar quando necessário.
As histórias são elaboradas quando você precisa delas. Você não precisa de explicações completas da história para recursos que ainda faltam seis meses para serem entregues. Escrevê-los no início pode ser um esforço desperdiçado, quando essa necessidade desaparece do escopo. Escreva suas histórias no máximo duas iterações antes de serem necessárias. É preferível reduzir esse período para um sprint.
Vamos dar um tempo no sprint 0 para definir o cenário. Em duas semanas, você começará o desenvolvimento. Agora é hora de pegar o suficiente das histórias do topo da lista de pendências que poderiam potencialmente ser entregues no sprint 1. Você pode pegar de 10 a 15% a mais se não tiver certeza de sua velocidade. Esses one-liners agora podem ser expandidos em documentos verdadeiramente valiosos com cenários, critérios de aceitação e wireframes. Se os wireframes ainda não foram criados, agora é a hora de fazer isso. Você pode descobrir, ao revisar essas histórias de candidatos, que elas precisam ser divididas. Talvez fossem épicos que não poderiam ser concluídos em uma corrida. Se você dividir as histórias, reavalie-as com a equipe.
PARA boa história segue as seguintes regras: - Escrito em um formato comum, por exemplo, COMO A EU QUERO ASSIM. - Inclui os critérios de aceitação que a história deve atender para ser considerada aceitável pela empresa para aprovação. - Usa uma linguagem que a empresa e seus clientes entendem. - Segue o modelo INVEST. - Inclui todos os documentos de suporte para informar o desenvolvedor, designer e testador: wireframes, visão geral do design técnico, outros ativos. - Atende aos seus critérios padrão de “definição de pronto”.
Independentemente de você chamá-lo de sprint, iteração ou timebox, cada entrega incremental de seu projeto Agile tem um tempo limitado. O timebox não diminui e não aumenta. Concentre-se em iterações de duas semanas no início. Você pode descobrir que 1, 3 ou 4 semanas se adequa melhor ao seu modelo de negócios. Depois de escolher um comprimento, não o altere. Você deseja manter um regular cadência , ou um ritmo sustentável. Isso significa que a equipe e os negócios se concentram na entrega de software regular, sem o emprego de horas extras loucas para fazer o trabalho e liberar incrementos potencialmente entregáveis a cada duas semanas.
Definir o que “pronto” realmente significa é muito importante. Existem muitas versões de “pronto” na vida do seu projeto - o que significa ser “feito” com uma história, lançamento ou projeto inteiro. Tudo se resume ao que você, sua equipe e a empresa consideram completo com o nível certo de qualidade para satisfazer a prontidão para envio.
Para a sua equipe, a definição de uma história “pronta” será algo como todo o código completo, revisado por pares, atende aos critérios de aceitação definidos, testado por unidade, UAT e enviado para seu repositório de código. Para permitir a passagem de uma história do designer para o desenvolvedor e para o testador, as definições de “pronto” terão que ser aceitas pela próxima pessoa na cadeia. O product owner terá expectativas quanto ao que isso significa para eles, a fim de liberar o incremento do produto para seus clientes. Em qualquer caso, todos devem estar cientes do que significa “feito” e ser uma parte responsável em garantir que seu significado seja cumprido. Defina sua definição de “pronto”, comunique-a, concorde com ela e desenvolva-a. Pronto pronto.
Se você não pode medir, você não pode gerenciá-lo. O mesmo vale para melhorias. A necessidade de coletar dados empíricos em um projeto Agile é quase tão vital quanto ter sangue fluindo nas veias! Como saber o que precisa ser gerenciado, corrigido ou aprimorado se não houver dados? Bem, simplesmente, você estará contando com a intuição e com suposições infundadas, que se desfazem rapidamente sob exame. E dependendo de quem está fazendo o escrutínio, este pode ser um lugar bastante desconfortável para se estar. Portanto, desde o início do seu projeto, certifique-se de saber como irá demonstrar o progresso e por quais medidas os outros verão o seu sucesso.
Felizmente, o Agile vem carregado com ferramentas e técnicas úteis. A primeira coisa a fazer é voltar ao Manifesto Ágil, digitar as seguintes palavras em seu processador de texto favorito, ampliá-las para 96pt, imprimir e aplicar na parede para que todos vejam:
O software funcional é a principal medida de progresso TweetSeu maior poder demonstrável no fornecimento de software é mostrá-lo às pessoas que trabalham, fazem o que deve fazer. Isso não apenas deixará seus clientes satisfeitos, mas também conquistará muito respeito para sua equipe e tornará mais fácil sua adoção por meio do negócio.
Aqui estão algumas outras ferramentas:
Outras ferramentas a serem consideradas são Valor agregado ágil , tempo de ciclo e diagramas de fluxo cumulativos (CFD's).
Mantenha essas medidas, gráficos e outras ferramentas visíveis, de preferência em alto e bom som, em uma parede para que todos possam ver. A equipe, as partes interessadas e outras partes interessadas podem ver imediatamente o status de um projeto. É transparente e serve como uma ferramenta de comunicação valiosa. Se você não pode colocar esses artefatos em uma parede, use ferramentas que sejam compartilháveis e colaborativas e certifique-se de que aqueles que desejam acessar as tenham.
Ao longo de sua vida Agile, procure identificar e aprender onde melhorias podem ser feitas. As lições não são capturadas e aprendidas no final de um projeto. É como passar no teste de direção e, provisoriamente, fazer sua primeira viagem sem um instrutor. Você saberá o que funciona e o que deve fazer, mas com o tempo você ajustará suas habilidades e capacidades de direção, aprendendo novas técnicas. Você vai até adquirir maus hábitos. Procure-os, compreenda-os e encontre maneiras de melhorar.
Existem muitas oportunidades para identificar o que não funciona e aplicar soluções. A abordagem embutida para isso no Agile é a retrospectiva. Esta é a principal ferramenta para reflexão e ajuste. No final de cada sprint, reserve um tempo com a equipe para melhorar como o trabalho é feito, como a qualidade é entregue, como a eficiência pode ser maximizada, como o desperdício pode ser minimizado e como a capacidade é aumentada. Ao identificar medidas de melhoria, não fique tentado a resolver todos os seus problemas imediatamente. Identifique aqueles que terão mais impacto e podem ser implementados no próximo sprint. Meça e observe. Se teve o impacto desejado, bloqueie-o, escreva-o em suas formas de trabalho e definições de feito. Se não funcionar, pense novamente. Todas as lições aprendidas que não forem colocadas no próximo sprint podem ser estacionadas e priorizadas para receber atenção no próximo sprint.
Personalize o processo. Remova tudo o que não funciona. Remova os impedimentos. Sua maturidade como equipe ágil não conhecerá limites se você permitir.
É importante saber o que acontece depois que o projeto é entregue. Suporte e manutenção são essenciais para garantir que, uma vez que o projeto esteja nas mãos dos clientes, ele permaneça com bom desempenho; o feedback do cliente pode ser fatorado em versões futuras; e os problemas dos clientes são tratados de forma adequada. Um projeto é um esforço único e limitado pelo tempo. O produto que ele entrega vive depois que a equipe do projeto é desfeita. Certifique-se de que você é capaz de suportar o produto quando ele estiver ativo.
Projetos ágeis coexistem com abordagens mais tradicionais. Equilibrar os requisitos de controle orçamentário e visibilidade das partes interessadas com os objetivos do Agile de flexibilidade e capacidade de resposta.
Uma estrutura de governança ou modelo de governança Agile é usado em conjunto com processos Agile padrão, como Scrum. Eles funcionam de duas maneiras específicas:
No mundo em constante mudança de hoje, organizações e negócios estão ansiosos para adotar uma abordagem mais flexível para entregar projetos e querem se tornar mais ágeis. No entanto, para organizações que entregam projetos e programas, e onde já existem processos formais de gerenciamento de projetos, a informalidade de muitas das abordagens Agile é assustadora e às vezes é percebida como muito arriscada. Essas organizações focadas em projetos precisam de uma abordagem ágil madura - agilidade dentro do conceito de entrega de projetos - Gestão ágil de projetos .
Aprenda e cresça com a adoção do Agile. Sempre faça aquilo com que sua equipe se sentir confortável, certifique-se de que sua voz seja ouvida e atenda às suas solicitações. Incentive sua equipe a adotar técnicas novas e mais valiosas no momento certo. Negocie com a empresa e incentive-os a entender o que significa ser uma organização ágil.
Aproveite a jornada.