InfoQ

InfoQ

Notícias

Meus Favoritos

Faça oLogin ou Cadastre-se para ativar o recurso de favoritos por tempo ilimitado.

O conteúdo foi adicionado aos favoritos!

Houve um erro ao adicionar aos favoritos! Por favor, tente novamente.

Contratos para Desenvolvimento de Software Ágil

Postado por Chris Sims , traduzido por Wagner R. Santos em 07 Mai 2009

Seções
Arquitetura Corporativa,
Processos e Práticas,
Arquitetura e Design
Tópicos
Agile ,
Colaboração ,
Negócios
Tags
Contratos e Negociação ,
Modelos de Negócio

Enquanto o Manifesto Ágil diz "Colaboração com o Cliente mais que negociação de contratos", contratos são uma realidade de desenvolvedores e firmas.  Peter Stevens tem analyzed 10 tipos diferentes de contratos de desenvolvimento, esclarecendo como cada estilo se aplica em um projeto ágil. Ele tem descoberto que alguns se enquadram muito melhor do que contratos por preço fixo ou tempo–e–recurso.

Peter examina cada um dos 10 tipos de contrato, e para cada um descreve:

  • A estrutura geral do contrato
  • Como o contrato lida com mudanças no escopo
  • Como o risco é distribuído
  • Qual tipo de relacionamento ele fomenta entra o cliente e o desenvolvedor.

O tipo mais básico de contrato de desenvolvimento é a abordagem tempo-e-recurso. Ele inclui a maioria dos riscos financeiros na conta do cliente. O desenvolvedor não possui incentivo para finalizar o projeto previamente ou manter os custos baixos.

A alternativa mais comum é o contrato por preço fixo. Este tipo de contrato tem se tornado muito popular entre os clientes, pois ele passa o maior risco para o desenvolvedor. Se o projeto atrasa, o desenvolvedor arca com os custos. Este tipo de acordo não é amigável em casos de mudança de escopo, o que pode em certo estágio do projeto causar desentendimentos sobre o que está ou não no escopo.

Stevens examinou estes, assim como variações interessantes, como a abordagem Lucro Fixo. Onde ambas as partes concordam previamente em um valo fixo para o lucro. Ex.: $100,000 que serão pagos para o desenvolvedor. Independente da duração do projeto, a consultoria de desenvolvimento recebe o lucro mais os custos incorridos. Se o projeto finalizar antes, tanto o cliente quanto o desenvolvedor se beneficiam.

Llewellyn Falco tem utilizado um contrato híbrido que ele credita á Bob Martin. O contrato inclui tanto uma quantia fixa quanto uma taxa por hora. O desenvolvedor faz uma estimativa de quanto tempo o trabalhar irá tomar, por exemplo, 80 horas. O desenvolvedor então multiplica este tempo pelo seu valor de horas "usuais", vamos dizer $200 á hora, para chegar a um custo esperado pelo trabalho. Neste caso o custo esperado é de $16,000. Este montante será quebrado em um montante fixo e uma taxa por hora menor. Por exemplo, a parte fixa poderia ser $8,000 e a taxa da hora seria reduzida para $100 a hora. Se o projeto tomar mais tempo do que o esperado, então o preço seria: $8,000 + 80 * $100 = 16,000. Se o projeto esta em atraso, o desenvolvedor esta ganhando apenas $100 á hora pelo trabalho adicional. Esta abordagem é uma tentativa de compartilhar o risco de maneira justa entre o desenvolvedor e o cliente.

As recomendações de Peter Stevens são de um contrato de desenvolvimento em fases e o contrato “money for nothing, changes for free”, ou (“Dinheiro por nada e mudanças à vontade”). Ele reporta o sucesso pessoal com um desenvolvimento em fases, citando:

Um contrato "Dinheiro por nada e mudanças à vontade" torna as vantagens do Scrum e processos ágeis de desenvolvimento em uma vantagem competitiva.
  • Priorizando e trazendo valor ao negócio incrementalmente, as chances de uma falha total são reduzidas drasticamente. Esta vantagem é passada para o cliente.
  • Além disso, este é um modelo cooperativo, de forma que ele oferece incentivo para ambas as partes para manter os custos baixos.
  • A cláusula de cancelamento prévio remunera a alta produtividade alcançada com times Scrum. Por outro lado, esta cláusula se parece com um "pára-quedas de ouro" que pode não ser politicamente aceito no ambiente econômico atual.

No fim, Peter volta para o Manifesto Ágil, reiterando que ter um bom contrato é importante, mas ter um bom relacionamento colaborativo é mais importante.

Quais os tipos de contratos que você tem se envolvido e qual o benefício que ele tem trazido para o relacionamento com o seu cliente? Deixe um comentário e compartilhe suas experiências.

Nota do tradutor: A frase "money for nothing, changes for free" é uma alusão a um trecho da música "Money for Nothing" da banda Dire Straits.

 

Conteúdo Educacional

Formando equipes de alto desempenho, parte 1: Início e fases de evolução

Nesta primeira parte de uma série sobre equipes de alto desempenho e gerenciamento Agile, veja uma introdução geral e uma apresentação dos estágios de formação das equipes.

Business Model Canvas, passo a passo

O Business Model Canvas é uma ferramenta estratégica para a construção visual de novos produtos ou serviços. Conheça cada um dos seus elementos e como preencher o Canvas, passo a passo.

Google Apps Script, Parte 2: Google Docs, triggers e envio de emails

Nessa segunda e última parte de uma série sobre o Google Apps Script, conheça como funciona o envio de emails, a conversão de documentos e como criar menus e triggers.

Serviços de cloud computing PaaS: um guia para desenvolvedores Java

Este artigo avalia seis dos mais importantes fornecedores de serviços de cloud computing PaaS para desenvolvedores Java, analisando critérios como desempenho, escalabilidade e tecnologias suportadas.

Canvas de Modelo de Negócios: uma contribuição para o sucesso de Startups

O Canvas de Modelo de Negócios é um novo modo de comunicar e suportar a validação iterativa, incremental e empírica de modelos de negócio de startups e novos produtos substituindo o plano de negócios.

Entrevista com Rebecca Parsons Parte 2: Agile Distribuído, Arquitetura vs. Design e SOA

Nesta segunda e última parte de uma entrevista exclusiva para InfoQ Brasil, Rebecca Parsons, CTO da ThoughtWorks, fala sobre o Agile Distribuído e técnicas para definição de arquiteturas.

Entrevista com Rebecca Parsons Parte 1: Agile nas Empresas e Arquitetura Evolucionária

Nessa primeira parte de uma entrevista com a CTO da ThoughtWorks, veja recomendações sobre formas de construir e arquitetar sistemas para obter o máximo de flexibilidade e responsividade a mudanças.

Agile das equipes à organização: o papel do gerente, estratégias e dicas para a adoção

Os gerentes de projetos podem assumir o papel crítico de liderar a introdução do Agile. Vejas conceitos, dicas e técnicas para apoiar esse processo de mudanças.