Conceitos: Gerenciamento de Configuração e de Controle de Mudanças
Os principais aspectos de um Sistema CM são:
O cubo abaixo ilustra os principais aspectos de um Sistema CM, como também indica a interdependência existente entre esses aspectos.
- CRM (Gerenciamento de Controle de Mudanças) - trata da infra-estrutura
organizacional necessária para avaliar o custo e planejar o impacto de uma alteração
solicitada para o produto existente. O Gerenciamento de Controle de Mudanças envolve o trabalho
da Equipe de Revisão de Mudanças ou do Conselho de Controle de Mudanças.
- Contabilidade do Status de Configuração (Medida) - é utilizada para descrever
o 'estado' do produto com base no tipo, no número, na taxa e na gravidade
dos defeitos localizados e corrigidos durante o desenvolvimento do produto. As métricas desses aspectos são obtidas por meio de auditorias ou de dados brutos e são úteis para determinar o status geral de conclusão do projeto.
- CM (Gerenciamento de Configuração) - descreve
a estrutura do produto e identifica os itens de sua configuração que são
tratados como entidades de uma única versão no processo de gerenciamento de configuração. O CM trata das definições de configurações, da criação, identificação e obtenção de artefatos de versão utilizados nos conjuntos de componentes, como também da rastreabilidade entre as versões.
- Rastreamento de Mudanças - descreve o que é feito nos elementos, o
motivo e o horário. Funciona como um histórico e um relatório das mudanças.
Ele independe da avaliação do impacto causado pelas mudanças propostas, como descrito em 'Gerenciamento de Controle de Mudanças'.
- Seleção de Versão - a finalidade de uma boa 'seleção de versão'
é assegurar que as versões corretas dos itens de configuração sejam selecionadas para alteração
ou implementação. A seleção de versão baseia-se na 'identificação da configuração'.
- Manufatura de Software - aborda a necessidade de automatização das etapas para
compilar, testar e compactar o software para distribuição.
O Rational Unified Process descreve um Sistema CM abrangente que aborda todos os aspectos de CM.
A finalidade é obter um processo CM eficiente que:
- seja incluído no processo de desenvolvimento do software
- ajude a gerenciar o progresso dos produtos de trabalho para o desenvolvimento de software
- permita aos desenvolvedores executarem tarefas de CM com uma interferência mínima no processo de desenvolvimento
Uma das metas do processo CM da Rational é encorajar o controle de versão dos artefatos utilizados nas ferramentas de desenvolvimento e desencorajar a produção ineficaz de recursos de documentação impressa.
Outra meta é garantir que o nível de controle aplicado a cada artefato se baseie no nível de maturidade do produto em questão.
À medida que os produtos de trabalho amadurecem, a autorização para as mudanças passa do implementador para o integrador de subsistema ou sistema, para o coordenador de projeto e, por fim, para o cliente.
Para manter a eficiência do processo, é importante garantir que a carga burocrática associada ao processo de Gerenciamento de Controle de Mudanças seja compatível com a maturidade do produto.
Por exemplo, durante as iterações iniciais, o processo CRM (Gerenciamento de Controle de Mudanças) pode ser relativamente informal.
Nas fases posteriores do ciclo de vida do desenvolvimento, o processo CRM pode ser mais rigoroso para garantir que os recursos de teste e documentação possam tratar das mudanças, como também da possível instabilidade causada pela mudança.
Um projeto que não possa adaptar o nível de
controle durante o processo de desenvolvimento não será tão bem
executado.
| |
|