Conceito: Ciclo de Vida de Iteração |  |
O ciclo de vida de iteração fornece um conjunto de práticas, baseadas em equipes, que descrevem como alavancar as iterações para concentrar a equipe na entrega incremental de valor aos Stakeholders de forma previsível.
Relacionamentos
Elementos Relacionados | Gerenciar a Iteração Planejar a Iteração
Descrição Principal
As iterações no OpenUP mantêm a equipe focada na entrega incremental de valor ao cliente em poucas semanas, fornecendo uma construção demonstrável e despachável totalmente testada (incremento de produto). Isto cria um foco saudável na garantia de que o que é construído é de valor para os Stakeholders. A tomada de decisão deve acontecer mais depressa, pois não há tempo para discussões intermináveis. O desenvolvimento iterativo foca-se na produção de código funcional reduzindo o risco de paralisia-analítica. Demonstrações freqüentes de código funcional fornecem mecanismos de feedback que permitem correções de curso a serem tomadas, conforme necessário. O planejamento, a estimativa e o acompanhamento do progresso da iteração estão centralizados nos itens de trabalho. O plano de iteração é criado pela seleção dos itens de trabalho de alta prioridade. As técnicas de estimativa ágil são utilizadas para compreender quantos itens de trabalho podem seguramente caber na duração da iteração, e os itens de trabalho são filtrados para garantir que os itens escolhidos permitirão à equipe entregar os objetivos da iteração acordados com os Stakeholders. O progresso é demonstrado através da conclusão contínua de vários itens de trabalho pequenos (veja Micro-Incrementos). Assim como um projeto percorre um ciclo de vida, as iterações percorrem um ciclo de vida com um foco diferente para a equipe, dependendo se você está na primeira ou na última semana da iteração, veja a figura abaixo e [Jazz]. Uma iteração começa com uma reunião de planejamento da iteração de algumas horas de duração. Os primeiros dias são normalmente mais centrados no planejamento e na arquitetura para, entre outras coisas, compreender as dependências e a ordenação lógica dos itens de trabalho, e os impactos arquiteturais do trabalho a ser feito. A maior parte do tempo de duração de uma iteração é gasto na execução dos micro-incrementos. Cada micro-incremento deve entregar código testado para uma construção, bem como artefatos validados. Para impor uma maior disciplina, construções estáveis são produzidas ao final de cada semana. Mais atenção é dada para essas configurações para certificar que a qualidade não está diminuindo e que os problemas estão sendo tratados com antecedência de forma que o sucesso da iteração não seja comprometida. A última semana ou os últimos dias da iteração normalmente têm uma forte ênfase no polimento e na correção de erros do que as semanas anteriores, mesmo que novas características sejam adicionadas apropriadamente. A meta é nunca deixar a qualidade diminuir, assegurando assim que um incremento do produto, útil e de alta qualidade, seja produzido ao final da iteração. A iteração termina com uma avaliação (com os Stakeholders) do que foi construído, e uma retrospectiva para descobrir uma forma de melhorar o processo para a próxima iteração. Uma iteração acontece durante um ciclo de vida com ênfase mais forte no planejamento e na construção de uma arquitetura precoce, e na correção e estabilização de erros até o fim. Os membros da equipe trabalham de forma mais eficaz se eles puderem influenciar no que fazem e como fazem, ao invés de atuarem num ambiente onde é determinado o que deve ser feito. Dar à equipe a capacidade e a responsabilidade de organizar seu trabalho e de determinar a melhor forma de cumprir seus compromissos motiva seus membros para fazer o melhor possível. Isso também os ajuda a colaborar para garantir que as habilidades corretas sejam aplicadas às tarefas adequadas. A auto organização afeta muitas áreas, incluindo como o planejamento e o comprometimento acontecem (por uma equipe, e não por indivíduos), como o trabalho é atribuído (você se prontifica, não sendo determinado), e como os membros da equipe enxergam o seu papel no projeto (membro da equipe em primeiro, função de trabalho em segundo). A auto-organização necessita de algumas coisas para funcionar: A transparência e comprometimento são cruciais para auxiliar na comunicação da equipe e para conseguir o melhor de seus membros. Uma comunicação aberta sobre os compromissos da equipe relacionados ao ciclo de vida da iteração, e compromissos pessoais assumidos em relação aos micro-incrementos garante que os problemas de execução sejam examinados e que a pessoa certa seja focada para a sua solução. É necessário instruir a equipe para ajudá-la a se organizar e eliminar as barreiras que impedem o sucesso. O pressuposto é que o gerente do projeto seja o instrutor. Isto exige que o gerente do projeto evite o estilo de gestão do tipo comando-e-controle e assuma o estilo instrutor. Esta tem sido uma recomendação essencial dos livros de gestão nas últimas duas décadas, mas alguns gerentes de projeto podem ainda não ser capazes de fazer essa transição.
Informações Adicionais
Conceitos | Iteração
Este programa e o material que o acompanha são disponibilizados sob a Eclipse Public License v1.0 que acompanha esta distribuição. Direitos Autorais do OpenUP.