Tópicos

IntroduçãoPara o início da página

O importante para alcançar o sutil equilíbrio entre a entrega de um software de qualidade e a rapidez nessa entrega (o paradoxo do software!) é compreender os elementos essenciais do processo e seguir determinadas diretrizes para sua adaptação, a fim de satisfazer, da melhor maneira possível, as necessidades específicas do projeto. Esse procedimento deve ser realizado de acordo com as melhores práticas testadas e aprovadas na indústria, ajudando assim os projetos de desenvolvimento de software a serem bem-sucedidos.

Definição de "Projeto Pequeno"Para o início da página

Pequeno pode se referir ao número de pessoas envolvidas no projeto, ao tempo de duração do projeto ou ao volume de software que está sendo desenvolvido. Para as finalidades deste roteiro, um "Projeto Pequeno" é definido como um projeto com:

  • 3 a 10 pessoas
  • duração menor que um ano.

Características de um Processo de Projeto Pequeno Para o início da página

Uma das principais características da maioria dos projetos pequenos é um nível menor de formalidade. Embora existam exceções, quanto maior for o número de pessoas no projeto e quanto maior e mais complexo for o produto, maior será a necessidade de um processo formal. Por exemplo, se o projeto for composto por uma equipe de 100 pessoas distribuídas geograficamente ou se ele trabalhar simultaneamente em vários produtos com vários clientes e subcontratantes, você precisará de um processo muito mais formal do que a típica equipe de cinco pessoas. Da mesma forma, um sistema de direcionamento de mísseis requer artefatos mais formais que a atualização de um sistema de inventário.

Afinal, por que ter um processo? Um processo permite que práticas bem-sucedidas sejam repetidas e práticas malsucedidas sejam eliminadas ou aprimoradas. O RUP fornece especificamente:

  • orientação sobre as melhores práticas
  • um conjunto de atividades, papéis e artefatos que o processo pode precisar levar em consideração, com orientação sobre quando eles são necessários
  • uma grande quantidade de informações detalhadas que podem ajudar a aplicar de forma eficaz as técnicas definidas como apropriadas para o projeto. Por exemplo, se você estiver criando um modelo de design em UML, descobrirá quais diagramas são os mais apropriados e qual a melhor forma de estruturar o modelo. Além disso, se você estiver usando ferramentas da Rational, receberá diretrizes adicionais sobre como utilizá-las de forma eficiente, como parte do processo geral.
  • orientação sobre como adaptar o processo, a fim de abordar problemas específicos dele. Por exemplo, se o projeto tiver muitos requisitos variáveis, você poderá beneficiar-se da orientação sobre como gerenciar requisitos de forma eficaz.

A maioria dos mesmos artefatos e atividades do RUP são necessários em projetos pequenos e grandes, as diferenças estão mais em termos de formatos dos artefatos e no nível de formalidade, detalhes e esforços aplicados a cada atividade. Para as finalidades deste roteiro, um "processo de pequeno projeto" terá como foco os projetos que requerem pouca formalidade. Eis algumas características desse processo de projeto pequeno:

  • O número de documentos tende a ser menor e menos detalhados. Em vez de Planos de Gerenciamento de Riscos e Planos de Aceitação do Produto, os projetos pequenos podem reservar alguns parágrafos para esses tópicos no Plano de Desenvolvimento de Software. O Plano de Teste para cada iteração pode se resumir a alguns parágrafos no Plano de Iteração.
  • Projetos pequenos quase sempre começam com o mínimo de ferramentas de desenvolvimento de software. À medida que um projeto cresce e tem êxito (que é o objetivo de todos os projetos pequenos bem-sucedidos!), é importante incluir ferramentas eficientes para ajudar a automatizar a implementação das boas práticas da equipe.
  • As revisões formais podem ser substituídas por reuniões e discussões informais.
  • Muitos dos artefatos podem ser captados informalmente. Uma lista de riscos pode ser criada em um quadro branco, e as avaliações de status podem se resumir a alguns parágrafos em um e-mail.

Como IniciarPara o início da página

Para definir o processo de um projeto pequeno, você deve primeiro revisar os seguintes itens básicos do RUP:

Em seguida, avalie os processos existentes que estejam sendo direcionados por esses elementos essenciais e concentre as revisões nos pontos fracos. Muitos projetos preferem adotar ferramentas e processos novos gradativamente, usando no início apenas pequenas partes do RUP.

O Cenário: Um Projeto Pequeno Adota o RUP, fornece um exemplo de como um projeto pequeno pode abranger a definição de um processo. É fornecida orientação detalhada, para definir e documentar um processo de desenvolvimento de software para um projeto, pela Atividade: Adaptar o Processo ao Projeto, incluindo mentores de ferramentas que descrevem como criar um processo adaptado utilizando o RUP Builder.

Os mentores de ferramentas descrevem como selecionar e cancelar a seleção de componentes do processo RUP para realizar uma adaptação comum do processo e executar um ajuste mais fino com visualizações do processo, que envolve incluir as diretrizes específicas de seu projeto. Observe que o RUP Builder inclui uma configuração de gabarito de processo Projeto Pequeno. Esta é uma configuração menor do RUP que inclui gabaritos "informais" e exclui orientação aplicável a projetos maiores e mais formais. Os projetos pequenos devem iniciar com este gabarito e aplicar sua própria adaptação específica do projeto.

Adaptação Adicional do ProcessoPara o início da página

Em particular, os projetos menores podem querer adotar práticas e técnicas associadas a "Processos Dinâmicos". Isso é discutido em Conceitos: Práticas Dinâmicas no RUP e em ../papers/smproj.htm -- This hyperlink in not present in this generated websiteWhite Paper: Using the RUP for Small Projects: Expanding upon eXtreme Programming.

Rational Unified Process   2003.06.15