59
Gerência de Configuração Leonardo Gresta Paulino Murta [email protected]ff.br

Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Embed Size (px)

Citation preview

Page 1: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

GerênciadeConfiguração

[email protected]

Page 2: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Introdução•  AEngenhariadeSoBware...

– AbordagemdisciplinadaparaodesenvolvimentodesoBware

– Grandediversidadedemetodologias

•  Pontoemcomumnasmetodologias:–  refinamentossucessivosdeartefatos

LeonardoMurta GerênciadeConfiguração 2

hIp://www.colegiosaofrancisco.com.br

Page 3: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Masondeficamessesartefatos?

LeonardoMurta GerênciadeConfiguração 3

TarefasdeEngenhariade

SoBware

Artefatonovo

Repositório

Artefatomodificado

Artefato

Page 4: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Oquesãorepositórios?•  Repositórios

– Lugarseguroondeversõesdeartefatossãodepositadas

– Permitemarmazenamento,buscaerecuperação

– Servemcomoumpontodereferência

– Apóiamnoaumentodamemóriaorganizacional

LeonardoMurta GerênciadeConfiguração 4

Page 5: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

GerênciadeConfiguração

Desenvolvimento Liberação Implantação Produção

LeonardoMurta GerênciadeConfiguração 5

GerênciadeConfiguração

GerênciadeconfiguraçãodesoBwareéumadisciplinaparaocontroledaevoluçãodesistemasdeso3ware(SusanDart,1991)

Page 6: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 6

Histórico•  Anos50

–  GCparaproduçãodeaviõesdeguerraenavesespaciais•  Anos60e70

–  SurgimentodeGCS(S=SoBware)–  Focoaindaemaplicaçõesmilitareseaeroespaciais

•  Anos80e90–  Mudançadefoco(MILàEIA,IEEE,ISO,etc.)–  Surgimentodasprimeirasnormasinternacionais–  Assimilaçãopororganizaçõesnãomilitares

Page 7: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

SistemadeGerênciadeConfiguração

LeonardoMurta GerênciadeConfiguração 7

Versão1

Versão2

Versão3

Versão4

Versão5

Page 8: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

SistemadeGerênciadeConfiguração

LeonardoMurta GerênciadeConfiguração 8

Versão1

Versão2

Versão3

Versão4

Versão5

Page 9: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

SistemadeGerênciadeConfiguração

LeonardoMurta GerênciadeConfiguração 9

Versão1

Versão2

Versão3

Versão4

Versão5

Page 10: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

SistemadeGerênciadeConfiguração

LeonardoMurta GerênciadeConfiguração 10

Artefatos

ControledeVersões

ConstruçãoeRelease

ControledeModificações

Solicitações

Page 11: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 11

SistemaxFunçõesdeGC

Ambiente de Desenvolvimento de Software

Identificação Controle Contabilização Avaliação Liberação

Controle de Modificações

Controle de Versões

Gerenciamento de Construção

Sistemas:

Processos:

Espaço de trabalho:

Perspectiva de integração

Perspectiva gerencial

Perspectiva de desenvolvimento

Page 12: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Exercício1.  Descrevaas5funçõesdegerênciade

configuração,citandoexemplos

2.  Estudeumaferramentadegerenciamentodeconstruçãoerelease(make,ant,maven,etc.)

3.  Oqueéintegraçãoconhnua?Dêalgumexemplousandoumaferramenta(CruiseControl,ApacheConinuum,Hudson,etc.)

LeonardoMurta GerênciadeConfiguração 12

Page 13: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

SistemadeGerênciadeConfiguração

LeonardoMurta GerênciadeConfiguração 13

Artefatos

ControledeVersões

ConstruçãoeRelease

ControledeModificações

Solicitações

Page 14: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

TiposdeVersão

LeonardoMurta GerênciadeConfiguração 14

Versão

Revisão Variante Cooperação(Rascunho)

(Conradi and Westfechtel 1998)

Page 15: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Revisões

LeonardoMurta GerênciadeConfiguração 15

Gerações do iMac (1998 – 2013)

Page 16: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Variantes

LeonardoMurta GerênciadeConfiguração 16

Hatchback

Coupe

Sedan

Honda Civic

Page 17: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Cooperação(versõesrascunho)

LeonardoMurta GerênciadeConfiguração 17

Espaço de trabalho do João

Espaço de trabalho da Maria

Espaço de trabalho do Pedro

Versão base

Page 18: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Versõesderascunhopodemsercombinadas(operaçãodemerge)

LeonardoMurta GerênciadeConfiguração 18

João Maria Pedro

Revisões

Page 19: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Conflitospodemocorrerduranteomerge

LeonardoMurta GerênciadeConfiguração 19

João Paulo

Revisões

Page 20: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Outrasduasoperaçõesimportantes…

…paraguardar,transferirecompreenderversões.LeonardoMurta GerênciadeConfiguração 20

Diff =

Patch =

Page 21: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Versõesnomundoreal•  Infinidadederevisõesevariantesjuntas(semcontarversõesrascunho)

LeonardoMurta GerênciadeConfiguração 21

Histórico do Git

Page 22: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Masafinal,paraqueservemversões?

•  Sincronizarequipes•  Reproduzirconfiguraçõespassadas•  Explorarpossibilidades•  Segregardesenvolvedores•  Customizarprodutos(LPS)•  Rastrearaintroduçãodebugs(bisect)•  EntenderaevoluçãodesoBware(MSR)•  Auditarmudanças(annotate)•  Etc.

LeonardoMurta GerênciadeConfiguração 22

Page 23: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Controledeversões

LeonardoMurta GerênciadeConfiguração 23

Armazenamento?Colaboração?Consulta?

Topologia?Artefato?

Page 24: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Artefato

LeonardoMurta GerênciadeConfiguração 24

Diretório Arquivo

ElementoFS

ArquivoBinário ArquivoTexto Linha

Page 25: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Topologia

LeonardoMurta GerênciadeConfiguração 25

Repositório

EspaçodeTrabalho

Centralizado Distribuído

chec

k-in

/ co

mm

it

check-out / update Repositório

EspaçodeTrabalhoch

eck-

in

check-out / update

Repositório

EspaçodeTrabalho

clone / pull

push

Page 26: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Armazenamento

LeonardoMurta GerênciadeConfiguração 26

v.3

v.2

v.1

Completo

delta1à2

v.1

Forward

delta2à3

delta3à2

v.3

Reverse

delta2à1

In-line

v.1 v.2/3

v.1/2 v.3

Page 27: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Colaboração

LeonardoMurta GerênciadeConfiguração 27

m.3

m.2

m.1

Pessimista

junção

m.1

Otimista Misto

m.2 m.3

junção

m.1 m.2 m.3

Page 28: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Consulta

LeonardoMurta GerênciadeConfiguração 28

Repositório(versão1)Artefato1(versão1)Artefato2(versão1)Artefato3(versão1)

Repositório(versão2)Artefato1(versão2)Artefato2(versão1)Artefato3(versão1)

Repositório(versão0)Repositório(versão3)Artefato1(versão2)Artefato2(versão3)Artefato3(versão1)Artefato4(versão3)

Repositório(versão4)Artefato1(versão4)Artefato2(versão3)Artefato3(versão4)Artefato4(versão3)

Artefato1Versão1Versão2Versão4

Artefato2Versão1Versão3

Artefato3Versão1Versão4

Artefato4Versão3

Consultaporartefato1ªmodificação

2ªmodificação4ªmodificação3ªmodificação

Page 29: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Consulta

LeonardoMurta GerênciadeConfiguração 29

Repositório(versão1)Artefato1(versão1)Artefato2(versão1)Artefato3(versão1)

Repositório(versão2)Artefato1(versão2)Artefato2(versão1)Artefato3(versão1)

Repositório(versão0)

1ªmodificação

2ªmodificação

Repositório(versão3)Artefato1(versão2)Artefato2(versão3)Artefato3(versão1)Artefato4(versão3)

Repositório(versão4)Artefato1(versão4)Artefato2(versão3)Artefato3(versão4)Artefato4(versão3)

4ªmodificação3ªmodificação

1ªmodificaçãoArtefato1adicionadoArtefato2adicionadoArtefato3adicionado

2ªmodificaçãoArtefato1modificado

3ªmodificaçãoArtefato2modificadoArtefato4adicionado

Consultapormodificação

4ªmodificaçãoArtefato1modificadoArtefato3modificado

Page 30: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Tratamentodevariantesemramos(branches)

•  Versõesquenãoseguemalinhaprincipaldedesenvolvimento

•  Fornecemisolamentoparaoprocessodedesenvolvimento–  Ramosusualmentesãomigradosparaalinhaprincipaldedesenvolvimento

–  Amigraçãopodesercomplicadanocasodeisolamentolongo•  Caracterísicasdosramossecomparadosaespaçosdetrabalho–  Sãocomparilhadosporoutraspessoas(espaçosdetrabalhosãoisolados)

–  Residemnoservidor(espaçosdetrabalhoresidemnocliente)–  Sãohistóricos(espaçosdetrabalhosãomomentâneos)

LeonardoMurta GerênciadeConfiguração 30

Page 31: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 31

EstratégiabásicadeRamificação•  Manutençãoemsérie

–  Ramoprincipal:evolução–  Ramosauxiliares:correções

•  Foco–  Desenvolvimentoin-house–  Clienteúnico(e.g.:aplicaçõesWeb)

•  Dificuldadedemanutençãodeváriasliberaçõesemparalelo

Sistema

Rel. 1 1.0 1.1 1.2

Rel. 2 2.0 2.1

Verif. Verif.

1.0 RC 2.0 RC Evolução Evolução Desenv.

Correção Correção Correção

Page 32: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Merge•  Espaçosdetrabalho•  Ramos

LeonardoMurta GerênciadeConfiguração 32

ABCDEFGHI

JKLDEF

ABCouJKL?DEFGHIounada?

2-waymerge

Page 33: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Merge•  Espaçosdetrabalho•  Ramos

LeonardoMurta GerênciadeConfiguração 33

ABCDEFGHI

JKLDEF

ABCDEF

JKLDEFGHI

3-waymerge

Page 34: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

GerênciadeConfiguração 34

Exemplo(mergenoEclipse)

LeonardoMurta

Page 35: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Principaissistemasdecontroledeversãoopen-source

LeonardoMurta GerênciadeConfiguração 35

Page 36: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

SistemadeGerênciadeConfiguração

LeonardoMurta GerênciadeConfiguração 36

Artefatos

ControledeVersões

ConstruçãoeRelease

ControledeModificações

Solicitações

Page 37: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Baseline•  ConfiguraçãorevisadaeaprovadaqueservecomobaseparaumapróximaetapadedesenvolvimentoequesomentepodesermodificadaviaprocessoformaldeGCS

•  Sãoestabelecidasaofinaldecadafasededesenvolvimento– Análise(funcional)–  Projeto(allocated)–  Implementação(product)

•  Momentodecriar:balanceamentoentrecontroleeburocracia

LeonardoMurta GerênciadeConfiguração 37

Page 38: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Baseline(níveisdecontrole)

LeonardoMurta GerênciadeConfiguração 38

Coordenaçãoc/auditoria Controle

Prébaseline:• Informal• Semrequisição• Semaprovação• Semverificação• Ágil• Ad-hoc

Pósbaseline:• Formal• Comrequisição• Comaprovação• Comverificação• Burocráico• PlanejadoeControlado

Níveldecontrole

Page 39: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Baseline(níveisdecontrole)

Req. Análise Projeto Análise Projeto Análise Projeto 1 Inform. - Formal Inform. Formal Formal 2 - - Inform. - Formal Inform.

LeonardoMurta GerênciadeConfiguração 39

Requisito1 Análise ProjetoBaseline1:

• An.Req.1

Requisito2 Análise Projeto

Tempo

Baseline2:• An.Req.1• Pr.Req.1• An.Req.2

Page 40: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Controledemodificações•  Tarefas

– Solicitaçãodemodificação– Classificaçãodamodificação– Análisedamodificação– Avaliaçãodamodificação–  Implementaçãodamodificação– Verificaçãodamodificação– Geraçãodebaseline

LeonardoMurta GerênciadeConfiguração 40

Page 41: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 41

Controledemodificações

[Leon,2000]Requisiçãodemodificação

Page 42: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 42

Controledemodificações

[White,2000]JaneladecriaçãodeformuláriosdoClearQuest

Page 43: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 43

Controledemodificações•  OcritériodeclassificaçãodamodificaçãodeveestarexplicitadonoplanodeGC

•  Aclassificaçãovisapriorizarmodificaçõesmaisimportantes(críicas,fatais,nãofatais,cosméicas)

•  Aanálisevisarelatarosimpactosemcusto,cronograma,funcionalidades,etc.daimplementaçãodamodificação

•  Casoaanáliseconcluaquenãoexistechancedeaprovaramodificação(casosextremos),podeocorrerrejeiçãoantesdaavaliaçãoparapouparcustosnoprocesso

Page 44: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 44

Controledemodificações

[Leon,2000]Análisedemodificação

Page 45: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 45

Controledemodificações•  Aavaliaçãouilizaráarequisiçãodemodificaçãoeolaudoda

análiseparatomaradecisão

–  Arequisiçãopodeseraceita,rejeitadaouadiada•  Aimplementaçãodeveserseguidaportestesdeunidade•  Duranteaverificação,devemseraplicadostestesdesistema•  Apósageraçãodanovabaseline,deveserdecididoseelaserá

consideradaumanovaliberação

Page 46: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Controledemodificações•  Casoespecial:Correçõesemergenciais

– Nocasodecorreçõesemergenciais,podemsercriadosramossemanecessidadedoprocessoformal

– Emalgummomentoessesramosdeverãosofrerjunçãoparaalinhaprincipaldedesenvolvimento

– Esseprocedimentodeveestarexplicitadonoprocesso!

LeonardoMurta GerênciadeConfiguração 46

Page 47: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Controledemodificações•  Casoespecial:Defeitos

– Algunssistemastratamdefeitosdeformadiferentedasdemaisrequisições

– Acorreçãodedefeitoséumtratamentosintomáico– Éimportantedescobrirorealmoivoparaoacontecimentododefeitoparapossibilitaraprevençãodedefeitosfuturos

– Aanálisedecausaéúilparadescobrirfalhasnoprocessodedesenvolvimento(e.g.faltadetreinamento,padrõesinadequados,ferramentasinadequadas)

LeonardoMurta GerênciadeConfiguração 47

Page 48: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 48

Contabilizaçãodasituação•  Tarefas

–  Armazenamentodasinformaçõesgeradas

–  Propagaçãodessasinformaçõesaosinteressadosatravésderelatórios

•  Metáforadecontabancáriaparaitemdeconfiguração

•  Permitequemétricassejamuilizadascomointuitodemelhoriadoprocessoeesimaivadecustosfuturos

•  Fornecerelatóriosgerenciaisad-hoc

Page 49: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 49

Contabilizaçãodasituação

Resultado do relatório no modo tabular no Bugzilla

Page 50: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 50

Contabilizaçãodasituação

Resultado da consulta sobre séries no Bugzilla

Page 51: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 51

Exemplodeferramentasdecontroledemodificações

•  Livre–  Bugzilla–  Manis–  Redmine–  Trac

•  Comercial–  ClearQuest(IBMRaional)–  JIRA(Atlassian)–  StarTeam(Borland)–  Synergy/Change(Telelogic)–  TeamTrack(Serena)–  TeamFoundaionServer(MicrosoB)

Page 52: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

SistemadeGerênciadeConfiguração

LeonardoMurta GerênciadeConfiguração 52

Artefatos

ControledeVersões

ConstruçãoeRelease

ControledeModificações

Solicitações

Page 53: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 53

Auditoriadaconfiguração

•  Deveocorreraomenosantesdeumaliberação(release)

•  Tarefas–  Verificaçãofuncional,assegurandoqueabaselinecumpreoquefoiespecificado

–  Verificação�sica,assegurandoqueabaselineécompleta(todosositensdeconfiguraçãoespecificados)

•  Auditoriasservemparagaranirqueosprocedimentosepadrõesforamaplicados

Page 54: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 54

Auditoriadaconfiguração•  Aauditoriafuncionalocorreatravésdarevisãodosplanos,dados,

metodologiaeresultadodosteste,paraverificarsesãosaisfatórios

•  AauditoriaAsicaexaminaaestruturadetodosositensdeconfiguraçãoquecompõemabaseline

•  Aauditoria�sicaéefetuadaapósaauditoriafuncional

•  PodemocorrerauditoriasnoprópriosistemadeGCpelosmantenedoresdoplanodeGC,paraverificarseaspolíicaseprocedimentosestãosendocumpridos

Page 55: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 55

Gerenciamentodereleases•  Descriçãodecomoconstruir,liberareentregarosistema

–  Linguagemnatural(conhecimento)

–  Linguagemcomputacional(automação)

–  Manterosdescritoresedocumentossobgerênciadeconfiguração!

•  Definiçãodassituaçõesondeoprocessopodesertemporariamentedesviado

•  Cuidado:Releasesmuitocurtaspodemlevaracírculo-viciosodedefeitos...

Page 56: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

Gerenciamentodereleases

Releases Curtas +

Testes manuais +

Equipe pequena Baixa cobertura

dos testes

Defeitos no produto final

Necessidade de novas releases

Solicitações de correção dos defeitos

LeonardoMurta GerênciadeConfiguração 56

Page 57: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

LeonardoMurta GerênciadeConfiguração 57

Exemplodeferramentasdecontroledeconstruçãoeliberação

•  Livre– Ant– NAnt– Make– Maven– Rake

•  Comercial– ClearMake(IBMRaional)– MSBuild(MicrosoB)– Synergy/CMObjectMake(Telelogic)

Page 58: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

PrincipaisReferênciasBibliográficas•  AlexisLeon,“AGuidetoSoBwareConfiguraionManagement”,ArtechHousePublishers,2000.

•  AnneHass,“ConfiguraionManagementPrinciplesandPracices”,Boston,MA,PearsonEducaion,Inc.

•  Conradi,R.andWes�echtel,B.VersionModelsforSoBwareConfiguraionManagement.ACMCompuingSurveys,v.30,n.2,p.232-282,1998.

•  Dart,S.,1991,“ConceptsinConfiguraionManagementSystems”,InternaionalWorkshoponSoBwareConfiguraionManagement(SCM),Trondheim,Norway(June),pp.1-18.

•  Pressman,R.S.(1997).“SoBwareEngineering:APraciioner'sApproach”,McGraw-Hill.

LeonardoMurta GerênciadeConfiguração 58

Page 59: Gerência de Configuração - ic.uff.brleomurta/courses/2015.2/es2/aula5.pdf · Sistema x Funções de GC Ambiente de Desenvolvimento de Software Identificação Controle Contabilização

GerênciadeConfiguração

[email protected]