Comparação da Metodologia TenStep PGP®

 

com - Agile Desenvolvimento de Software

 

A TenStep PGP® é uma metodologia para gerenciar trabalhos em projetos. Tem outras metodologias e filosofias também disponíveis – algumas são similares e algumas são complementares para a metodologia TenStep PGP®. O propósito desta seção é para fazer uma comparação entre umas e outras metodologias comum. A intenção é ser honesta e imparcial nas descrições das diferenças e similares. Mas, se os leitores tiverem opiniões diferentes ou maiores informações, por favor envie-nos um e-mail para feedback@tenstep.com.br

Visão Geral - Agile Desenvolvimento de Software

Nos últimos anos, foram publicadas um número de idéias, sobre como fazer o processo de desenvolvimento de software mais simples, mais fácil de implementar e mais responsivo às necessidades do cliente. As metodologias de Programação Extrema, Scrum e Cristal servem de exemplos. Dezessete pessoas que foram na vanguarda deste pensamento, tiveram um encontro nos dias 11, 12 e 13 de fevereiro de 2001 em Utah no EUA. Este encontro foi realizado para coletar e documentar idéias comuns sobre o desenvolvimento de software. O resultado foi um manifesto de um grupo de princípios de desenvolvimento de software e filosofias, que foram copiadas abaixo.

Produtos

Metodologia TenStep PGP®

Metodologia TenStep PB™

Metodologia LifecycleStep™

Metodologia SupportStep™

Metodologia ProcessStep™

Termos e Condições de Uso

Software

cOrdin8 TenStep PPMO Solution

Outros Produtos

Produtos de PMP Prep

Loja Virtual

Enquanto que, a maior parte da filosofia tratar dos processos atuais de desenvolvimento de software, alguns pontos tocam na área de gerenciamento de projetos. Em geral, a metodologia TenStep PGP®, complementa estes processos de desenvolvimento, na maioria das áreas.  Há uma divergência de opiniões nas outras áreas. Você poderá ler o manifesto da Agile abaixo, junto com os comentários da TenStep, Inc., sobre como este manifesto se relaciona com a a metodologia TenStep PGP®.

 Manifesto da Agile Desenvolvimento de Software

Dezessete anarquistas concordam:

Nós estamos descobrindo, melhores maneiras de desenvolver software e ajudando outros a desenvolverem. Através deste trabalho nós viemos a valorizar:

Metodologia TenStep PGP®

Mais os Indivíduos e as interações, que os processos e as ferramentas.

Mais o Software que funciona, que a documentação detalhada.

Mais a Colaboração do cliente, que a negociação do contrato.

Mais as Respostas às mudanças, que seguir um plano.

Na experiência da TenStep, Inc., os projetos múltiplos que são executados em uma organização, têm uma possibilidade de sucesso muito maior, se for utilizado um grupo de processos consistentes, flexíveis e escaláveis. Se estes processos já foram utilizados antes com sucesso, há uma grande probabilidade de que eles sejam bem sucedidos novamente.

Isto é, enquanto nós valorizamos os itens acima do lado direito, nós valorizamos ainda mais, os itens da esquerda.

Nós seguimos os seguintes princípios:

 

A nossa prioridade mais alta é satisfazer o cliente através da entrega cedo e continua de um software valioso.

A filosofia Agile é para o desenvolvimento iterativo. Ou seja, obter as exigências iniciais e criar um código que funcione, seguidos por mais exigências e por mais códigos que funcione. Isto é bom, mas o desenvolvimento iterativo não é a melhor abordagem para todos os projetos de software. Entretanto, onde puder ser executado, deve ser tentado.

As exigências de mudanças são bem-vindas, mesmo sendo tarde no desenvolvimento. Os processos Agile  controlam as mudanças para a vantagem competitiva do cliente.

 

Sobre o desenvolvimento iterativo geral, as exigências não necessitam serem finalizadas cedo. Entretanto, conforme com o processo de desenvolvimento iterativo tradicional, em algum ponto, as exigências necessitam ser finalizadas para entregar algo. Nesse ponto, deve ser utilizado o processo de gerenciamento de mudanças do escopo.

NA Agile, as exigências de desenvolvimento podem mudar em algum ponto. Isto é bom em um ponto de vista de desenvolvimento, mas o gerenciamento de mudanças do escopo é também utilizado para beneficiar o cliente. O patrocinador do cliente concordou em financiar o projeto, baseado em receber uma determinada solução, por um determinado custo em uma determinada data. Se a equipe do projeto continuar a aceitar as mudanças do escopo por conta própria, o projeto poderá requerer mais tempo e um custo muito mais elevado do que o concordado pelo patrocinador.

O ponto é que, quando as mudanças de negócio acontecem, a equipe do projeto deve estar preparada para responder. Entretanto, as mudanças das exigências têm conseqüências nos termos de orçamento e nas datas de entregas, e as mesmas devem ser aprovadas pelo patrocinador.

Entregar freqüentemente software que funcione. Por exemplo, entregar software entre um período de duas semanas até dois meses, dando  preferência ao prazo mais curto.

A TenStep, Inc., recomenda que os projetos grandes sejam fracionados em uma série de projetos menores. Assim, cada um dos projetos menores poderá ser entregue mais rápido e poderão reutilizar os mesmos processos. Nem todos os projetos têm esta flexibilidade, mas a preferência é fracionar os projetos grandes em projetos menores, quando possível.

Os processos da Agile, podem ser utilizados para entregar os deliverables em curtos ciclos. Alguns projetos que utilizam a Programação Extrema podem ser entregues em ciclos semanais. Isto pode ser difícil para gerenciar e controlar, mas não há nada inerentemente errado.

Os clientes e os desenvolvedores trabalham juntos diariamente durante todo o projeto.

Esta é a melhor abordagem para permanecer a par, das necessidades dos clientes.

Construir os Projetos, em torno dos indivíduos muito motivados. Dê-lhes o ambiente e o suporte necessário, e confie que o trabalho será feito.

Às vezes, as pessoas muito motivadas, sentem dificuldades para entregar os projetos dentro dos prazos. Elas focalizam em demasiado nos detalhes de desenvolvimento e não o suficiente em gerenciar os orçamentos e os prazos. Se as pessoas muito motivadas, sempre concluíssem os seus projetos dentro dos prazos, haveria uma porcentagem mais elevada de projetos bem sucedidos. Às vezes você necessita colocar as pessoas motivadas, em um ambiente mais estruturado onde elas possam ser bem sucedidas. A TenStep, Inc. acredita que a melhor abordagem, é construir projetos em torno das pessoas motivadas, e se certificar então, de que elas têm as ferramentas, os processos e as habilidades certas para concluir o trabalho.

O método mais eficiente e mais eficaz para comunicar as informações á equipe de desenvolvimento, é comunicar pessoalmente.

Não há duvidas, de que comunicar pessoalmente é a melhor opção em muitas circunstâncias. Entretanto, há épocas em que outros meios de comunicação são muito bons, por exemplo, quando emitimos os relatórios de andamento (Status) do projeto a 20 pessoas. Também, alguma documentação relevante necessita ser escrita para ser utilizada após o trabalho dos desenvolvedores serem concluídos. Esta documentação deve ser somente de informação importante. A documentação raramente é mantida atualizada pela equipe de suporte, e assim poderá transformar-se menos valiosa.

A medida mais importante sobre o progresso do projeto são as entregas de código que funcionam.

No desenvolvimento iterativo, ter o software funcionando no final de cada iteração é uma medida boa do progresso. Entretanto, nem todos os projetos podem ser feitos usando o desenvolvimento iterativo, por exemplo, um pacote de implementação. Assim, a maioria dos projetos, continua a monitorar o plano através dos Marcos Principais, para assegurar que os projetos estão dentro dos prazos concordados.

Os processos Agile, promovem um desenvolvimento sustentável. Os patrocinadores, os desenvolvedores e os usuários, devem manter indefinidamente um ritmo constante.

O desenvolvimento através da Agile, força uma semana do trabalho de 40 horas e um ritmo que será mantido indefinidamente. Naturalmente, com o planejamento e o  gerenciamento apropriado, esta é a melhor abordagem.

A atenção contínua na superioridade técnica e o bom design realçam a agilidade.

A superioridade técnica e o bom design são essenciais. Entretanto, se as horas ou os processo de trabalho do design, forem cortados devido a tentativa de produzir o software (funcionando) mais rápido, isto poderá ser um problema.

Simplesmente - A arte de maximização da quantidade de trabalho não feito – é essencial.

Concordado. Os desenvolvedores de software e os clientes, devem focalizar em entregar primeiramente as exigências principais e mais importantes. Isto "maximiza o trabalho não feito." Permite também que o software seja entregue com maior rapidez.

As equipes que são bem organizadas e que gerenciam a si mesmo, produzem as melhores arquiteturas, exigências e designes.

Se todas as equipes tivessem um desempenho elevado e tecnicamente superior, seria mais fácil de concordar com este ponto. Entretanto, a maioria das equipes de projetos, não tem o amadurecimento suficiente e não tem o nível de habilidade adequado para desenvolver os melhores designes e arquiteturas. As arquiteturas necessitam serem desenvolvidas especialmente em um nível organizacional ou empresarial. Se isto fosse deixado para as equipes individuais, o resultado estaria sobrepondo as tecnologias e virando um caos no nível da empresa.

Em intervalos regulares, a equipe reflete sobre como transformar-se mais eficaz, então ajustam o comportamento apropriado.

Concordado. As equipes devem constantemente tentar compreender as suas forças e fraquezas e tentar compreender, como os processos de gerenciamento de projetos, podem ser melhorados. A TenStep, Inc. também acredita que estas recomendações de mudanças, devem também ser aplainadas à organização, de modo que as idéias de melhorias possam ser utilizadas por todas as equipes.

Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas -

www.agilealliance.org

 

 

Tudo que você precisa para gerenciar projetos!

A TenStep Brasil oferece um número significativo de serviços de consultoria para ajudar a sua organização a destravar o potencial de seus processos de negócio. Todos os serviços serão personalizados de acordo com as necessidades da sua organização. Contate-nos para discutirmos sobre suas necessidades.

consultoria@tenstep.com.br ou +55 51 3665 6242