Lecture 6 :: Gestão de Configuração de Software
-
Upload
rogerio-p-c-do-nascimento -
Category
Education
-
view
9 -
download
5
Transcript of Lecture 6 :: Gestão de Configuração de Software
Prof. Doutor
Rogério Patrício Chagas do Nascimento
Professor Associado do Departamento de Computação (DCOMP)/UFS
Assessor do Reitor para Cidades Inteligentes, Diretor Científico da EATIS.org
GpESGrupo de Pesquisa em Engenharia de Software
Gestão de Configuração do SoftwareLecture 6
2
Sumário
▪ Introdução– O quê é?– Quem faz?– Porquê é importante?– Qual é o produto?– Como saber se está bem feita?
▪ Conceitos– ECS e Linhas Base– Objetos da Configuração
▪ Processo de GCS
▪ Tarefas de GCS– Controle de versões– Auditorias de configuração – Geração de relatórios
3
Introdução (I)
▪ O quê é?– Conjunto de atividades para controlar as mudanças surgidas nos diversos
produtos do processo de desenvolvimento de software
▪ Quem faz?– Todos os envolvidos no processo de desenvolvimento
▪ Porquê é importante?– Se não controlarmos as mudanças, elas que irão nos controlar…
4
Introdução (II)
▪ Qual o produto?– Plano de Gestão da Configuração
▪ Quando está bem feito?– Quando qualquer mudança puder ser monitorizada e analisada
5
Configuração de Software
▪ conceito: nome coletivo dado à informação derivada do processo de engenharia de software
▪ ECS - Elementos de Configuração de Software– Programas (fonte e executáveis)
– Documentos que descrevem os programas (técnicos e de utilizador)
– Dados (dentro e fora do programa)
▪ o número de ECS cresce à medida que avança o processo de desenvolvimento
o problema é que durante o processo ocorrem muitas mudanças em qualquer momento e por muitas causas
6
Origem das Mudanças
▪ Mudança nos requisitos devido a:– Novos negócios ou condições comerciais
– Novas necessidades do cliente
– Reorganização do negócio
– Restrições de planejamento
7
Linhas Base
▪ Quando todas as partes de um ECS forem revistas, corrigidas e aprovadas– o ECS converte-se numa linha base
▪ Assim, um ECS (especificação ou produto) revisto e aprovado serve como base para o desenvolvimento posterior– e só poderá ser modificado através de procedimentos formais de controle das
mudanças
▪ É o ponto de referência no desenvolvimento de software que fica marcado pelo envio e aprovação de um ou mais ECS em revisões técnicas formais
Somente poder-se-ão fazer mudanças nos ECS depois que estas tenham sido avaliadas e aprovadas.
8
ECS da Linhas Base
Linhas base:Especificação do sistemaRequisitos do softwareEspecificações de desenhoCódigo fontePlanos/ProcedimentosDados de testeSistema de funcionamento
Base de dados do projeto
Tarefas deEngenhariade software
Revisões técnicasformais
modificadaaprovada
armazenada
extraída
Controles GCS
9
Objetos da Configuração
Especificação de desenho
Desenho de dados
Desenho arquitetônico
Desenho de módulos
Desenho de interfaces
Especificação de teste
Plano de testes
Procedimento de testes
Casos de teste
Componente N
Descrição da interface
Descrição do algoritmo
Componente N
Descrição da interface
Descrição do algoritmo
Código fonte
Modelo de dados
10
Processo de GCS- Questões Fundamentais
▪ Como identificar e gerir as diferentes versões existentes de um programa e a sua documentação de forma a introduzir mudanças eficientemente?
▪ Como controlar as mudanças antes e depois da entrega do produto ao cliente?
▪ Quem tem a responsabilidade de aprovar e atribuir prioridades às mudanças?
▪ Como garantir a apropriada realização das mudanças?
▪ Quais os mecanismos para avisar aos outros das mudanças?
11
Tarefas da GCS- Devem ser Adicionadas ao Plano de Gantt…
▪ Identificação dos objetos da configuração– Básicos
▪ uma seção de uma especificação de requisitos, um código fonte de um módulo, um conjunto de casos teste usados para exercitar o código, etc
– Compostos
▪ Especificação de Desenho, Especificação de Testes..
▪ Controle de versões
▪ Auditorias de configuração
▪ Geração de relatórios
12
Controle de Versões
▪ Cada nó é um objeto composto: uma versão completa do software
▪ Cada versão do software é uma coleção de ECS
▪ Cada versão pode estar composta de variantes (cor, monocromático)
1.0 1.1 1.2
1.3 1.4
2.0 2.1
1.1.1 1.1.2
O controle de versões combina procedimentos e ferramentas para gerir as versões dos objetos da configuração criados durante o processo de
software
13
Controle das Mudanças
▪ Reconhece-se a necessidade da mudança
▪ O utilizador subscreve o pedido
▪ O eng de software a avalia
▪ Gera-se um informe de mudanças
▪ ACM decide
Gera-se a OME
Atribuição personalizada dos objetos da configuração
Dar “baixa” aos objetos da configuração
Realização e revisão da mudança
Dar “alta” aos objetos mudados
Estabelecimento de nova linha base para teste
Realização de atividades de garantia da qualidade
Inclusão das mudanças na próxima versão
Distribuição da nova versão
Pedido de mudança é negado
Informa-se ao utilizador
NÃO
SIM
14
Controle de Acesso e Sincronização
alta
baixa
ControleDe acesso
Base de dadosdo projeto
Engenheirode software
Elemento deConfiguraçãomodificado Informação
de auditoria
Elemento deConfiguração(linha base)
Informação de pertinência
Elemento deConfiguraçãoextraído
desbloqueio
bloqueio Elemento deConfiguração(linha base)
15
Auditoria de Configuração
▪ Revisões técnicas formais– Correção técnica do ECS
▪ Auditorias de configuração1. Foi realizado a mudança especificada pela OME?
2. Houve modificações extras?
3. Foi feita uma revisão técnica formal?
4. Foi seguido o processo de software? Aplicaram-se os standards?
5. Tem-se destacado as mudanças no ECS? Especificou-se o autor e a data da modificação?
6. Seguiram-se os procedimentos de GCS para assinalar, registar e divulgar a mudança efectuada?
7. Têm sido atualizados os ECS relacionados?
16
Relatórios de Estado- Normalmente Preenchidos em Ferramentas CASE
▪ O quê se passou?
▪ Quem o fez?
▪ Quando se passou?
▪ Quem foi afetado?
Bons caminhos!
Obrigado pela atenção! Thanks for listening! Merci pour votre attention!
@Patricium