Upload
luna-brandt-quintao
View
215
Download
0
Embed Size (px)
Citation preview
Gerenciamento de Configuração de Software
Alex CaldasIvã Stival
Ivan Stephan
Gerenciamento de Configuracão
É a arte de identificar, organizar e controlar modificações no software que está sendo construído por uma equipe de programação.
Gerenciamento de Configuracão
Por ser abrangente divide-se em:Identificar a mudança.Controlar a mudança.Garantir que a mudança esteja sendo adequadamente implementada.Relatar a mudança a outras pessoas interessadas.
Manutenção de Software X Gerenciamento de Configuração de
Software
Manutenção de Software
É um conjunto de atividades de engenharia de software que acontece depois que o software é entregue ao cliente e posto em operação.
Gerenciamento de Configuração de Software
Conjunto de atividade de controle e rastreamento que começa quando um projeto de desenvolvimento de software se inicia e termina somente quando o software é tirado de operação.
Gerenciamento de Configuração de Software
Resultado do Processo de Engenharia:Programas de computador.Documentação que descreve o programa.Estruturas de dados.
Configuração de Software - Tudo que foi produzido pelo processo de Engenharia de Software.Composto por itens de Configuração de Software (SCI).
Baseline (Linha Básica)
Conceito que nos ajuda a controlar mudanças, sem impedir seriamente as mudanças justificáveis.Marco de referência no desenvolvimento de um software, que é caracterizado pela entrega de um ou mais itens de configuracao e pela aprovação destes.
Baseline ( exemplo )SCI entra baseline (modificação ou foi criado)SCI colocado banco de dados de projetos.Se um engenheiro vai trabalhar com esse SCI.SCI é copiado para o ambiente de trabalho local do engenheiro.Assim que o engenheiro terminou e aprovou o SCI.SCI é atualizado no banco de dados.Em alguns caso o SCI original no banco de dados é bloqueado para que não possa ser atualizado por mais ninguem.
Itens de Configuração de Software (SCI)
Informação que é criada como parte do processo de engenharia de software
Especificação do SistemaPlano de Projeto do SoftwareEspecificação dos Requisitos de SoftwareManual Preliminar do UsuárioEspecificação de ProjetoListagem do Código-FontePlano e Procedimento de Testes
Manuais Operacionais e de Instalação Programa executávelDescriçao do banco de dadosManual feito de acordo com o usuárioDocumentos de manutenção Padrões e procedimentos para engenharia de softwareFerramentas de software sob controle de configuração
Itens de Configuração de Software (SCI)
Ferramentas de software sob controle de configuração(Editores, Compiladores e outras ferramentas)
Ex: Um compilador pode mudar de versão e gerar problemas no código
As várias versões do compilador devem ficar disponíveis
Itens de Configuração de Software (SCI)
Os SCIs são organizados para formar "objetos de configuração”.Assim sabe-se qual a interdependência entre os SCIs no caso de uma alteração.
Itens de Configuração de Software (SCI)
Processo de Gerenciamento de Configuração de Software
Software configuration Management (SCM):garantia de qualidade do software. responsabilidade controlar mudanças.
5 tarefas: Identificação Controle da VersãoControle de mudançasAuditoria de configuraçãoRelato de status
Identificação de Objetos
Os SCIs devem ser nomeados separadamente e depois organizados usando uma abordagem orientada a objetosObjetos básicos - "Unidade de texto" criada pelo engenheiro durante a análise, projeto, codificacao ou teste.
Ex: seção especificação de requisitos, conjunto de casos de teste, classe em c++
Objetos compostos - coleção de objetos básicos.Ex: Especificação do projeto
Identificação de Objetos
Cada objeto tem um conjunto de características distintas:
Nome - cadeia de caracteres que o identifica.
Descrição – lista => tipo de sci + identificador projeto + mudança ou versão.
Registro - entidades fornecidas, processadas consultadas. Ex: funções, variáveis, tipos de dados
Relacionamento que existem entre os objetos.Ex: Diagrama E-R 1.4 <parte-de> modelo de dados
Identificação de Objetos
É irreal imaginar que somente relações de hierarquia existam entre objetos.É mais natural haver inter-relacinamentos. Podem ser representados por"Linguagem de interconexão modular (MIL).
Antes da escolha de uma linha base o software podem sofrer atualizações/versões:
Identificação de Objetos
Controle de Versão
Combina ferrmentas e procedimentos para gerenciar diferentes versões de objetos de configuração criadas durante o processo de engenharia de software.Permite ao usuário especificar configurações alternativas do sistema por meio da escolha de versões apropriadas através da associação de atributos.Atributos:
Numero de versão ligado a cada objeto.Cadeia de variáveis boleanas que indicam os tipos especificos das mudanças aplicadas.
Controle de Versão
Controle de Mudanças
Mudanças descontroladas levem um projeto ao caosO Controlde de Mudanças combina procedimentos humanos e ferramentas automatizadas para proporcionar um mecanismo de controle de mudançasAvalição de mudança:
efeitos colateraisImpacto global sobre outros objetos de configuraçãoCusto
Controle de Mudanças - Fluxo de Controle de acesso e Sincronização
Check-in - controle de acesso - governa quais engenheiros de software tem autoridade para acessar e modificar um objetoCheck-out - controle de sincronização - ajuda a garantir que mudanças paralelas, executadas por duas pessoas, não se sobreponham
Controle de Mudanças - Burocrático?
Auditoria de configuraçãoComo garantir que mudança foi adequada?
Revisões técnicas formais
Avaliação da consistência com outros SCIs, omissões ou potenciais efeitos colaterais
auditoria de configuração de software
Avaliação quanto às características não consideradas durante revisão:
Mudança especificada foi feita?Padrões de engenharia foram seguidos?Procedimentos para anotar as mudanças, documentá-las foram seguidos?Todos SCIs relacionados foram atualizados?
Relato de Status ( Contabilidade de Status )
Responde as seguintes perguntas:O que aconteceu?Quem o fez?Quando aconteceu?O que mais será afetado?
Papel vital no sucesso de um grande projetoRelatórios são gerados regularmente