Tópicos
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.
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.
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.
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.
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 White Paper:
Using the RUP for Small Projects: Expanding upon eXtreme Programming.
| |
|