Você está na página 1de 24

Faculdade 7 de Setembro Sistemas de Informao

Engenharia de Software Prof. Ciro Coelho


Engenharia de Software
Gerncia de Configurao
e Mudanas
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Isso acontece?
Como assim? Voc no tem como
recuperar aquela verso do sistema do
ms passado?
Onde est aquele relatrio que eu criei
ontem?
Quem foi que mudou essa tela?
Ei, aquele defeito que a gente tinha
consertado apareceu de novo!!
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Isso acontece?
A funcionalidade mudou? Quem mandou
mudar? Ah, o cliente... Por que ningum me
avisou?
Mas vai dar um trabalho pra mudar esse
negcio!!
No, no, no salva agora no!!! Vai
sobrescrever meu arquivo!
Ops, a mudana no deu certo. Como que
isso estava antes mesmo?
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Isso acontece?
- J fiz aquela mudana que voc pediu.
- Mas eu no pedi mudana nenhuma.
- Bem, algum deve ter pedido
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Definies
Gerncia de Configurao a disciplina
que trata
da realizao de mudanas de forma
planejada e sistemtica
do controle formal da integridade de artefatos
e atividades

Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Benefcios
Estabilidade
Confiabilidade
Tomada de decises mais seguras
Padronizao
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Mitos
GC reativo
GC um gargalo
GC custoso
GC atrasa a resoluo de problemas
(liberao de patches)
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Sem Gerncia de Configurao
Atrasos no projeto
Falta de visibilidade das mudanas
Altos custos de manuteno
Surpresas desagradveis
Falta de qualidade nos servios
Eterna dependncia dos donos do
sistema
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Gerenciamento de Mudanas
Conceitos
Baseline
Uma verso estvel e aprovada do sistema
Change Request (CR) / Requisio de
Mudanas
Um pedido formal para que uma mudana em uma
baseline seja realizada
Configuration Control Board (CCB)
Grupo que analisa a viabilidade, prioridade e
necessidade das mudanas solicitadas, autoriza a
criao de baselines etc.
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Processo de Mudanas
Pergunta fundamental: a mudana afeta
baselines?
Sim: tratamento formal
No: tratamento informal (no sinnimo de
baguna!!)
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Requisio informal
de mudana
Requisio formal de
mudana
Anlise informal de
impacto
Anlise formal de
impacto
Aprovao do
CCB
Comunicao
informal da mudana
Comunicao formal
da mudana
Realizao da
mudana
Alterao em
baseline
Sem alterao em
baseline
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Ferramentas para
gerenciamento de mudanas
Bugzilla
Mantis
Request Tracker
Clear Quest
Jira
EasyTrack
Planilha eletrnica
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Problemas tratados pelo
Controle de Verses
Atualizaes simultneas
Vrias pessoas atualizando os mesmos
artefatos
Notificaes limitadas
Modificaes so realizadas, mas as pessoas
afetadas no so comunicadas
Mltiplas verses
Lidar com vrias verses de artefatos e do
prprio sistema
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Controle de verses
Item de configurao: produto ou conjunto de
produtos de trabalho gerenciado pelo processo
de Gerncia de Configurao
Repositrio central: repositrio, normalmente
localizado em um servidor, onde as mudanas
efetuadas nos repositrios locais so
consolidadas
Repositrio local: repositrio, normalmente
localizado nos clientes, onde as mudanas so
realizadas antes de serem enviadas ao
repositrio central
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Controle de verses
Mdulo: conjunto de itens de configurao. Em
geral, corresponde ao diretrio mais externo da
rvore de diretrios do projeto e possui
submdulos que correspondem aos
subdiretrios
Import: adio de um mdulo ao repositrio
central
Checkout: fazer o download de um mdulo do
repositrio central para o repositrio local
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Controle de verses
Commit: atualizar o repositrio central com os
arquivos modificados no repositrio local
Update: atualizar o repositrio local com a
verso mais recente do repositrio central
Tag: um label que identifica um conjunto de
itens de configurao com suas respectivas
verses. Uma fotografia do repositrio em um
dado momento
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Controle de verses
Tronco, tronco principal: principal galho da
rvore de verses., principal linha de
desenvolvimento
Branch: um galho, uma linha alternativa de
desenvolvimento
Merge: consolidao de duas verses diferentes do
mesmo arquivo, preservando as alteraes feitas
em cada uma das verses
Conflito: possvel conseqncia de um merge,
quando no possvel preservar as alteraes
feitas em ambos os arquivos
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Controle de verses
Consolidao Centralizada
Modificaes Distribudas
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Controle de Verses
Servidor
(Repositrio Central)
Cliente
(Repositrio Local)
Novo item
Cliente
Import
Checkout
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Controle de Verses
Servidor
(Repositrio Central)
Cliente
(Repositrio Local)
Update
Commit
Atualizao de item
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Aplicao dos conceitos
1.1
1.2
1.3
1.4
1.5
1.2.1
1.2.2
1.2.3
branch
tag
Versao_4_0
merge
conflito?
Ateno:
No confundir verso
do item com verso
do produto
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Dicas
Updates e commits constantes. Cpias locais
muito desatualizadas causam um nmero
grande de conflitos.
Resolver conflitos com a participao de todos
os interessados.
No criar muitos branches. Em especial, no
criar muitos nveis de branches.
No comitar cdigo instvel.
Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Ferramentas de controle de
verses
CVS
VSS
PVCS
SubVersion
ClearCase
Confuso de diretrios, backups...

Faculdade 7 de Setembro Sistemas de Informao
Engenharia de Software Prof. Ciro Coelho
Responsabilidades do Gerente
de Configurao
Configurar, manter e dar suporte ao uso de
ferramentas de configurao
Criar e manter estrutura de diretrios e controle
de acesso
Criar e manter um processo de build, de
preferncia automatizado
Criar e manter branches e tags
Estabelecer baselines
Preparar e liberar releases
Fazer auditorias de configurao

Você também pode gostar