Beruflich Dokumente
Kultur Dokumente
Configurao
1/113
Gerncia de Configurao e
mudana
Objetivo
Compreender a importncia do uso de
mecanismos de gerncia de configurao e de
mudana, seus mtodos, processos e ferramentas.
Fornecer os principais conceitos relacionados a
GC.
Criar uma viso geral de como GC pode ser
aplicada a um projeto de software.
2/113
Desenvolvedor B
Desenvolvedor C
3/113
Problema da Quebra de
Comunicao (continuao)
Vocabulrios incompatveis
Culturas de desenvolvimento diferentes
Distncia geogrfica
Dificuldade de expresso
Programa de A
A1
A2
A3
Desenvolvedor B
Componente
Compartilhado
Programa de B
B1
B2
B3
5/113
Soluo simplista:
cada desenvolvedor trabalha em uma cpia
local do componente
resolve o Problema dos Dados Compartilhados,
mas cria um novo problema
7/113
Programa de A
A1
A2
A3
Componente
Compartilhado
Verso de A do
Componente
Compartilhado
Desenvolvedor B
Componente
Compartilhado
Verso de B do
Componente
Compartilhado
Programa de B
B1 B2 B3
8/113
Desenvolvedor A
Desenvolvedor B
Componente
Compartilhado
Programa de A
A1
A2
A3
Verso de A do
Componente
Compartilhado
Verso de B do
Componente
Compartilhado
Programa de B
B1 B2 B3
10/113
Problema da Atualizao
Simultnea Cenrio 1
Problema da Atualizao
Simultnea Cenrio 2
Como Resolver?
13/113
14/113
Objetivos de GC
Benefcios
16/113
Conceitos Bsicos
17/113
Configurao
Item de Configurao
Configurao de Software
item
fluxo de desenvolvimento
tempo
20/113
Baseline
Baseline
item
fluxo de desenvolvimento
tempo
22/113
Baselines importantes
24/113
Repositrio
Desenvolvedor
Repositrio
25/113
Lock
26/113
Check-Out
Check-out
cliente
Repositrio
27/113
Check-Out (continuao)
Escrita
Verifica que ningum detm o lock do item de
configurao
Obtm o lock do item
Cria uma cpia, para edio, no cliente
Leitura
Verifica que algum j detm o lock
Cria uma cpia, apenas para leitura, no cliente
28/113
Check-In
Check-in
cliente
Repositrio
29/113
Check-In (continuao)
Ao de inserir/atualizar um item de
configurao no repositrio
Verifica o lock do item de configurao, caso o
mesmo j exista
Verifica e incrementa a verso do item
Registra informaes das mudanas (autor,
data, hora, comentrios)
Inclui/atualiza o item
30/113
Build
31/113
Os Problemas na Gerao de
Builds
32/113
Os Problemas na Gerao de
Builds
Os Problemas na Gerao de
Builds
34/113
35/113
Release
Tipos de release
Externos
Tags
38/113
Tags Cenrio 1
raiz
file2
file3
subdir1
file1
file4
file6
subdir2
tag1
tag2
file5
file7
file8
file9
39/113
Tags Cenrio 2
1.1
1.2
1.3
release_1
Histrico
de um
arquivo
1.4
release_2
tag
40/113
Branch
41/113
Branch (continuao)
42/113
Branch (exemplo)
Maria
hello.c
hello.h
Jos
hello.c
hello.h
2.m.1
3
2
2.m.2
hello.c
3.j.1
hello.h
2.j.1
6
4
3.j.2
3.j.3
2.j.2
43/113
Merge
44/113
Merge (exemplo)
Maria
hello.c
hello.h
Jos
hello.c
hello.h
2.m.1
hello.c
3.j.1
hello.h
2.j.1
2.m.2
4
3.j.2
3.j.3
3.j.4
2.j.2
2.j.3
45/113
rel
_1
_ fi
x
Branch
1.1
1.2.2.1
1.2
tag
1.2.2.2
1.3
1.4
release_2
release_1
Tronco principal
de
desenvolvimento
tag
Merge
46/113
Automao de processo
Artefatos
Componentes
Construo de builds
Gerao de releases
Testes
Integrao
Controle de Mudanas
48/113
Contexto
Desenvolvimento iterativo/incremental
Novos conjuntos de requisitos, detalhados a
cada iterao
Mudanas em estratgias de negcio
motivadas pelas mais diversas fontes:
mercado, cultura, leis, etc
49/113
Problemas
51/113
52/113
Benefcios
53/113
Controle do caos
Controle de mudanas
Solicitao de mudana
Projeto
Organizao
54/113