Essas orientações descrevem como implementar processo e ferramentas em um projeto de desenvolvimento de
software executando as atividades descritas na disciplina de Ambiente. Discutem também a disciplina de
gerenciamento do projeto, que lida com o planejamento do projeto, identificando os riscos e gerenciando, monitorando e
avaliando o projeto.
É importante compreender que existem diferentes formas de implementar processo e ferramentas, conforme descrito na
seção "Abordagens para Implementar Processo e Ferramentas".
A abordagem que você escolher depende do estado atual do projeto e de sua organização circundante, portanto, faça uma
avaliação do projeto e de sua organização circundante (consulte Produto de Trabalho: Avaliação da Organização do
Desenvolvimento).
Essas orientações descrevem algumas abordagens possíveis para implementar um processo em um projeto. Além disso,
Conceito: Práticas de Ambiente descreve algumas práticas fundamentais que são
úteis para implementar o ambiente de um projeto de software. Para obter informações adicionais sobre os aspectos
de adaptação do processo de uma implementação de processo, consulteAdaptando
o RUP.
Essas orientações gerais se aplicam a quase todo projeto:
-
Antes de iniciar o projeto: Antes de realmente iniciar o projeto, as pessoas que trabalham como engenheiro
de processo, especialista de ferramenta e coordenador de projeto devem ser treinadas no RUP (Rational Unified
Process). Isso é fundamental para o sucesso do projeto. Se os membros do projeto não sabem o que fazer,
provavelmente não serão bem-sucedidos.
-
Fase de Iniciação: Durante essa fase, você normalmente procura conhecer como melhorar o modo de gerenciar os
requisitos (disciplina Requisitos) e como gerenciar o projeto (disciplina Gerenciamento do Projeto).
-
Fase de Elaboração: No final da fase de Elaboração, todo processo e ferramentas já estão no lugar. A parte
mais crítica dessa fase é, muitàs vezes, executar a configuração e o gerenciamento de mudanças porque na fase de
Construção, o trabalho é executado pelas equipes de desenvolvimento que trabalham em paralelo.
-
Fase de Construção: Nenhum processo novo ou ferramenta é introduzido nesta fase. O foco aqui é produzir o
produto, portanto o ambiente de desenvolvimento deve ser estável. Na fase de Construção, a motivação é conseguir
novas pessoas na aceleração do projeto.
-
Fase de Transição: Nenhum processo novo ou ferramenta é introduzido. Na fase de Transição, o foco passa do
ambiente do processo específico ao projeto para post-mortems do projeto, reunindo experiências do projeto atual,
resumindo-as e compactando-as em um formato no qual os projetos futuros possam utilizar. Essas experiências
reunidas servem como entrada para melhorar processos e ferramentas para desenvolvimento da próxima evolução do
produto.
A cerimônia de processo varia muito em diferentes organizações de desenvolvimento. Algumas são muito maduras em termos
de processo e colocam grupos de processo para procurar a definição e aprimoramentos do processo por toda a organização.
Outras estão apenas preocupadas com a adaptação específica do projeto.
A abordagem para adaptar o processo para o projeto depende muito da cerimônia do processo da organização, assim como de
vários outros fatores. Por exemplo:
Para obter informações adicionais sobre fatores que afetam a implementação do processo, consulte Orientações:Distinções do Processo.
A seguir estão abordagens básicas de como implementar processo e ferramentas em um projeto de desenvolvimento de
software:
-
"Alterar tudo". Significa que o projeto adota o RUP inteiro e um conjunto
completo de novas ferramentas.
-
"Melhorar processo e ferramentas". Significa que no projeto
decide-se por melhorar algumas áreas do processo e ferramentas adotando partes do RUP e ferramentas de suporte.
O quanto do RUP adotar e quantas ferramentas você decide implementar em um projeto específico depende de vários
fatores. Esses fatores estão descritos emOrientações:Distinções do Processo. Esses são fatores que geralmente são
revelados durante a avaliação do projeto e de sua organização circundante. Essas informações estão capturadas em Produto de Trabalho: Avaliação da Organização de Desenvolvimento.
Num projeto pode-se decidir adotar o RUP completo e iniciar o uso de um novo conjunto de ferramentas por um ou vários
dos seguintes motivos:
-
Não há processo ou ferramentas no lugar e o projeto precisa de tudo, de um processo completo e de todas as
ferramentas.
-
Todas, ou quase todas, as pessoas são novos inquilinos e raramente aceitam o modo como o trabalho está.
-
O projeto mudará para uma nova tecnologia para a organização, o que significa que o processo existente e as
ferramentas se tornarão obsoletas.
Se você decidir introduzir o RUP completo e ferramentas em seu projeto, então é importante implementar incrementalmente
o processo e as ferramentas. Implementar o processo e as ferramentas em um procedimento passo a passo, torna-se mais
fácil de gerenciar os riscos e as alterações sobrecarregam menos as pessoas no projeto. O diagrama a seguir ilustra
quando diferentes produtos de trabalho de Ambiente podem ser desenvolvidos sobre o ciclo de vida de um projeto.
A evolução dos produtos de trabalho do Ambiente em um projeto em que "tudo é novo".
Comentários sobre o plano:
-
Geral: A disciplina de modelo de negócios é mantida completamente.
-
Iniciação: Focalizada em introduzir as disciplinas de Requisitos e Gerenciamento do projeto. Para reduzir o
número de novos fatores, as partes da interface com o usuário dos Requisitos não são introduzidas. O coordenador de
projeto decide quais partes da disciplina de gerenciamento do projeto utilizar.
-
Iteração de elaboração E-1: Análises & Design e Arquitetura são mais importantes na fase de Elaboração.
Teste Automatizado e Configuração & Gerenciamento de Alterações não são tão fundamentais neste início de
projeto porque o número de membros do projeto é relativamente baixo. Isso pode ser introduzido posteriormente no
projeto.
-
Iteração da elaboração E-2: As ferramentas de teste e processo são introduzidas para automatizar o teste.
Rational RequisitePro é introduzido para gerenciar os requisitos de alteração.
-
Iteração da elaboração E-3: Na fase de Construção, o trabalho será executado pelas equipes de
desenvolvimento, trabalhando em paralelo. Portanto, é fundamental ter a disciplina de Configuração &
Gerenciamento de Alterações no lugar no final da fase de Elaboração. O gerenciador de implementação decide como
executar a disciplina na disciplina de Implementação.
-
Construção: Nada novo é introduzido. Desde a perspectiva do Ambiente, o foco durante a fase de Construção é
obter todas as novas pessoas na aceleração do projeto.
-
Transição: Nada novo é introduzido. O processo e ferramentas são aperfeiçoados conforme necessário.
As pessoas, diante de um projeto em uma organização em que um processo e as ferramentas estão no local, apresentam a
capacidade de desenvolver um sistema. Essas pessoas possuem uma maneira comum de trabalhar, que é um processo mais ou
menos bem documentado.
O objeto a longo prazo pode ser adotar o RUP completo e um conjunto completo de novas ferramentas. Entretanto, o
objetivo a curto prazo é melhorar um ou mais áreas do processo e suporte de ferramentas. Essas devem ser áreas que
apresentam alto potencial de aprimoramento.
O diagrama abaixo mostra um exemplo de um projeto que decidiu adotar a disciplina Requisitos juntamente com
ferramentas, tais como RequisitePro e Rational Rose, para melhorar o modo como os requisitos são gerenciados. O projeto
também decidiu introduzir a disciplina Análise e Design.
A evolução dos produtos do trabalho Ambiente aprimorando os Requisitos e Análise e Design.
É importante compreender que o diagrama acima é apenas um exemplo. As partes do processo que você decidir melhorar
serão diferentes entre os projetos, dependendo dos problemas e das necessidades de um projeto particular. Você precisa
avaliar o projeto e sua organização circundante para descobrir quais partes do processo melhorar ou quais ferramentas
deseja introduzir.
A seguir está um exemplo de uma iteração na fase de Iniciação em que a disciplina Requisitos é introduzida. Cada
entrada no gráfico Gantt está descrita detalhadamente após o diagrama.
Exemplo de uma iteração na fase de Iniciação.
O fluxo de trabalho básico descrito para Iniciação Clássica do RUP aplica-se com essas variações e extensões.
Gerenciamento do Projeto
Traz o projeto a partir do núcleo inicial de uma idéia para um ponto em que uma decisão razoável pode ser tomada
para continuar ou abandonar o projeto. Os principais resultados são rascunhos iniciais de Produto de Trabalho: Caso de Negócios, Produto de Trabalho: Plano de Desenvolvimento do Software,
e Produto de Trabalho: Lista de Riscos.
Identificar os riscos no projeto, incluindo aqueles riscos associados com a implementação do novo processo e novas
ferramentas. O resultado é Produto de Trabalho: Lista de Riscos.
Planejar as fases. O resultado principal está na seção intitulada Plano de Projeto no Plano de Desenvolvimento de Software. Inclui o Plano de Fase em
que você encontrará os principais marcos com seus Critérios de realização, incluindo os critérios para a disciplina
de Ambiente.
Nota: O Processo de Desenvolvimento adaptado apresenta um impacto
maior sobre o Plano de Desenvolvimento do Software, e vice-versa. Portanto, o
desenvolvimento do plano do projeto e a adaptação do processo precisam ser coordenados.
Planejar a iteração detalhadamente, inclusive a disciplina Ambiente e todas as outras disciplinas. O resultado
principal é um Produto de Trabalho: Plano de Iteração, com todos os detalhes da
atividade e tarefas da disciplina Ambiente, assim como todas as outras disciplinas do processo.
O uso do processo e das ferramentas é avaliado como parte da avaliação da iteração. Os resultados são:
O coordenador de projeto monitora o trabalho diário, inclusive o processo e as ferramentas.
No final da iteração, os riscos são reavaliados, inclusive os riscos associados ao processo e às ferramentas.
Alguns riscos são eliminados durante a iteração e novos riscos são identificados. O resultado primário é umaProduto de Trabalho: Lista de Riscos atualizada.
Requisitos
Nenhuma alteração específica.
Teste
Alguns aspectos logísticos daProduto de Trabalho: Estratégia do Teste definiu-se que fornecerá
os motivos iniciais para originar os esforços do teste.
O designer do teste e uma pequena equipe de testadores verificam que os principais elementos da abordagem de teste
e trabalharão contra o Produto de Trabalho: Prova de Conceito Arquitetural e seleções de
componentes de terceiros são marcadas como sendo testáveis.
Ambiente
Avaliar o estado atual da organização e decidir em quais partes do processo e em quais ferramentas focalizar as
primeiras iterações. Neste caso no projeto decidiu-se, de acordo com a avaliação, iniciar implementando o processo
e as ferramentas.
Nota: O Plano de Desenvolvimento de Software apresenta um impacto
maior sobre o Processo de Desenvolvimento adaptado e vice-versa. Portanto,
a adaptação do processo e o desenvolvimento do plano do projeto precisam estar coordenados.
Os resultados são:
Preparar o processo e ferramentas para a disciplina de Requisitos ao mesmo tempo que a ferramentas de suporte de
modo que as pessoas no projeto possam começar a utilizá-las. (Logicamente, outras disciplinas podem ser
preparadas). Consulte Tarefa: Adaptar o Processo de Desenvolvimento para o Projeto .
Certifique-se de que as pessoas no projeto compreendem como usar o processo de desenvolvimento, as orientações de
modelo de caso de uso e as ferramentas. Além disso para padronizar os cursos de treinamento, recomendamos que você
organize um workshop de um dia no qual os membros do projeto possam ter um treinamento prático. ConsulteTarefa: Lançar o Processo de Desenvolvimento.
Os resultados de desempenhar a atividade são:
O administrador do sistema suporta o desenvolvedor durante a iteração.
Treinamento
-
Todos os membros do projeto devem assistir a um curso que ofereça uma visão geral do
RUP para terem uma visão geral do ciclo de vida do projeto.
-
As pessoas que trabalham na disciplina RUP que está sendo "rolled out"
devem assistir a um curso em que aprendam os detalhes da disciplina.
Aconselhamento
O Aconselhamento é a chave para uma implementação de processo bem-sucedida. Em geral, os seguintes mentores são
necessários:
-
Mentor de Processo 50%. Alguém que atua como um engenheiro de processo
para oferecer suporte ao coordenador de projeto e ouras pessoas no projeto para utilizar e configurar o processo.
-
<Mentor Específico à Disciplina> 50%. Alguém que facilita o
trabalho específico à disciplina, conduzindo workshops, revendo os resultados e respondendo perguntas específicas.
Para obter informações adicionais sobre o aconselhamento, consulteConceito:
Aconselhamento. |