Gerencia de Configuracao e Mudancas

download Gerencia de Configuracao e Mudancas

of 24

Transcript of Gerencia de Configuracao e Mudancas

  • Engenharia de SoftwareGerncia de Configurao e Mudanas

  • 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!!

  • 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?

  • Isso acontece?- J fiz aquela mudana que voc pediu.- Mas eu no pedi mudana nenhuma.- Bem, algum deve ter pedido

  • DefiniesGerncia de Configurao a disciplina que trata da realizao de mudanas de forma planejada e sistemticado controle formal da integridade de artefatos e atividades

  • BenefciosEstabilidadeConfiabilidadeTomada de decises mais segurasPadronizao

  • MitosGC reativoGC um gargaloGC custosoGC atrasa a resoluo de problemas (liberao de patches)

  • Sem Gerncia de ConfiguraoAtrasos no projetoFalta de visibilidade das mudanasAltos custos de manutenoSurpresas desagradveisFalta de qualidade nos serviosEterna dependncia dos donos do sistema

  • Gerenciamento de MudanasConceitosBaselineUma verso estvel e aprovada do sistemaChange Request (CR) / Requisio de MudanasUm pedido formal para que uma mudana em uma baseline seja realizadaConfiguration Control Board (CCB)Grupo que analisa a viabilidade, prioridade e necessidade das mudanas solicitadas, autoriza a criao de baselines etc.

  • Processo de MudanasPergunta fundamental: a mudana afeta baselines?Sim: tratamento formalNo: tratamento informal (no sinnimo de baguna!!)

  • Requisio informal de mudanaRequisio formal de mudanaAnlise informal de impactoAnlise formal de impactoAprovao do CCBComunicao informal da mudanaComunicao formal da mudanaRealizao da mudanaAlterao em baselineSem alterao em baseline

  • Ferramentas para gerenciamento de mudanasBugzillaMantisRequest TrackerClear QuestJiraEasyTrackPlanilha eletrnica

  • Problemas tratados pelo Controle de VersesAtualizaes simultneasVrias pessoas atualizando os mesmos artefatosNotificaes limitadasModificaes so realizadas, mas as pessoas afetadas no so comunicadasMltiplas versesLidar com vrias verses de artefatos e do prprio sistema

  • Controle de versesItem de configurao: produto ou conjunto de produtos de trabalho gerenciado pelo processo de Gerncia de ConfiguraoRepositrio central: repositrio, normalmente localizado em um servidor, onde as mudanas efetuadas nos repositrios locais so consolidadasRepositrio local: repositrio, normalmente localizado nos clientes, onde as mudanas so realizadas antes de serem enviadas ao repositrio central

  • Controle de versesMdulo: conjunto de itens de configurao. Em geral, corresponde ao diretrio mais externo da rvore de diretrios do projeto e possui submdulos que correspondem aos subdiretriosImport: adio de um mdulo ao repositrio centralCheckout: fazer o download de um mdulo do repositrio central para o repositrio local

  • Controle de versesCommit: atualizar o repositrio central com os arquivos modificados no repositrio localUpdate: atualizar o repositrio local com a verso mais recente do repositrio centralTag: um label que identifica um conjunto de itens de configurao com suas respectivas verses. Uma fotografia do repositrio em um dado momento

  • Controle de versesTronco, tronco principal: principal galho da rvore de verses., principal linha de desenvolvimento Branch: um galho, uma linha alternativa de desenvolvimentoMerge: consolidao de duas verses diferentes do mesmo arquivo, preservando as alteraes feitas em cada uma das versesConflito: possvel conseqncia de um merge, quando no possvel preservar as alteraes feitas em ambos os arquivos

  • Controle de versesConsolidao CentralizadaModificaes Distribudas

  • Controle de VersesServidor (Repositrio Central)Cliente(Repositrio Local)Novo itemClienteImportCheckout

  • Controle de VersesAtualizao de item

  • Aplicao dos conceitosbranchtagVersao_4_0mergeconflito?Ateno:No confundir verso do item com verso do produto

  • DicasUpdates 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.

  • Ferramentas de controle de versesCVSVSSPVCSSubVersionClearCaseConfuso de diretrios, backups...

  • Responsabilidades do Gerente de ConfiguraoConfigurar, manter e dar suporte ao uso de ferramentas de configuraoCriar e manter estrutura de diretrios e controle de acessoCriar e manter um processo de build, de preferncia automatizadoCriar e manter branches e tagsEstabelecer baselinesPreparar e liberar releasesFazer auditorias de configurao