170 likes | 267 Vues
Gestão da Configuração do Software. Aula 30. Sumário. Introdução O quê é? Quem faz? Porquê é importante? Qual é o produto? Como saber se está bem feita? Conceitos ECS e Linhas Base Objectos da Configuração Processo de GCS Tarefas de GCS Controlo de versões
E N D
Sumário • Introdução • O quê é? • Quem faz? • Porquê é importante? • Qual é o produto? • Como saber se está bem feita? • Conceitos • ECS e Linhas Base • Objectos da Configuração • Processo de GCS • Tarefas de GCS • Controlo de versões • Auditorias de configuração • Geração de relatórios
Introdução (I) • O quê é? • Conjunto de actividades 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…
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
Configuração de software • conceito: nome colectivo dado à informação derivada do processo de engenharia de software • ECS - Elementos da 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
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 planeamento
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 controlo 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.
ECS da Linhas Base Base de dados do projecto aprovada modificada Tarefas de Engenharia de software Revisões técnicas formais armazenada Linhas base: Especificação do sistema Requisitos do software Especificações de desenho Código fonte Planos/Procedimentos Dados de teste Sistema de funcionamento Controlos GCS extraída
Objectos da configuração Modelo de dados Especificação de desenho Desenho de dados Desenho arquitectónico Desenho de módulos Desenho de interfaces Componente N Componente N Descrição da interface Descrição do algoritmo Descrição da interface Descrição do algoritmo Especificação de teste Plano de testes Procedimento de testes Casos de teste Código fonte
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?
Tarefas da GCS- devem ser adicionadas ao Plano de Gantt… • Identificação dos objectos da configuração • Básicos • uma secçã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.. • Controlo de versões • Auditorias de configuração • Geração de relatórios
1.3 1.4 1.0 1.1 1.2 2.0 2.1 1.1.1 1.1.2 Controlo de versões • Cada nó é um objecto composto: uma versão completa do software • Cada versão do software é uma colecção de ECS • Cada versão pode estar composta de variantes (cor, monocromático) O controlo de versões combina procedimentos e ferramentas para gerir as versões dos objectos da configuração criados durante o processo de software
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 Controlo das mudanças • Gera-se a OME • Atribuição personalizada dos objectos da configuração • Dar “baixa” aos objectos da configuração • Realização e revisão da mudança • Dar “alta” aos objectos mudados • Estabelecimento de nova linha base para teste • Realização de actividades de garantia da qualidade • Inclusão das mudanças na próxima versão • Distribuição da nova versão SIM NÂO • Pedido de mudança é negado • Informa-se ao utilizador
Controlo de acesso e sincronização alta Elemento de Configuração modificado Elemento de Configuração (linha base) Informação de auditoria desbloqueio Controlo De acesso Base de dados do projecto Engenheiro de software Informação de pertinência bloqueio Elemento de Configuração (linha base) Elemento de Configuração extraído baixa
Revisões técnicas formais Correcção técnica do ECS Auditorias de configuração Foi realizado a mudança especificada pela OME? Houve modificações extras? Foi feita uma revisão técnica formal? Foi seguido o processo de software? Aplicaram-se os standards? Tem-se destacado as mudanças no ECS? Especificou-se o autor e a data da modificação? Seguiram-se os procedimentos de GCS para assinalar, registar e divulgar a mudança efectuada? Têm sido actualizados os ECS relacionados? Auditoria da Configuração
Relatórios de estado- normalmente preenchidos em ferramentas CASE • O quê se passou? • Quem o fez? • Quando se passou? • Quem foi afectado?