Gerência de Configuração - GC

Slides:



Advertisements
Apresentações semelhantes
Gerenciamento de Projetos
Advertisements

Manutenção em software Conceitos básicos
Gerenciamento do escopo
Engenharia de Software
ISO Processos do Ciclo de Vida do Software
GERENCIAMENTO DE MUDANÇA GERENCIAMENTO DE LIBERAÇÃO
Tipos de sistemas de Lehman
Testando o sistema Teste funcional: o sistema integrado realiza as funções especificadas nos requisitos? Teste de desempenho: os requisitos não-funcionais.
Engenharia de Software
GERENCIAMENTO DE MUDANÇAS EM PROJETOS
Tópicos Motivação para teste Por que algumas empresas não testam
Rational Unified Process(RUP)
Gerenciamento de Configuração
Taxonomias para as Comunidades de Práticas do E&P II Seminário de Pesquisa em Ontologia no Brasil Setembro de 2009.
Gerenciamento da Integração
Implementação de Sistemas
Gestão de Defeitos Vanilson Burégio.
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Gerenciamento de Requisitos com Casos de Uso
Gerência de Configuração
Configuração de manutenção
Gerência de Configuração de Software
Rational Unified Process
José Roberto Blaschek Gerência do Escopo José Roberto Blaschek.
RUPinho Qualidade de Software
Visão Geral PRO.NET.
Fundamentos de Engenharia de SW
Gerenciamento de Configuração
O Fluxo de Implementação
Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
Processos de Desenvolvimento de Software – Parte 2
Projeto: Capacitação em GP
Gestão de Configuração de Software
CMMI – Gerência de Configuração
NBR ISO Diretrizes para planos de qualidade
Gerenciamento da Integração
Objetivos das Atividades de Implementação • Implementar as classes do modelo de projeto em termos de componentes (código fonte ou executável, etc.) •
GESTÃO DE PROJETOS Aula 5 1.
PMBOK: Gerenciamento do Escopo do Projeto
Gerenciamento de Integração.
Disciplina Implantação
ANÁLISE E DESENVOLVIMENTO
Fase de Concepção (Início, Planejamento)
Aluno: Cristiano Levi Arnold Orientador: Alexandre Luís Franco 2009
Processo de Aquisição Adilson de Almeida Cezar Meriguetti
Gestão Completa da Cadeia de Suprimentos
1/113 Contexto para Gerência de Configuração. 2/113 Gerência de Configuração e mudança Objetivo Compreender a importância do uso de mecanismos de gerência.
Gerência de Configuração Autor: Silvio Cortez. Fluxos e papeis Escrever plano Definir ferramentas Escrever plano de gerência de configuração Gerente de.
Processo de Desenvolvimento de Software – PDS C Construção - PAS
Conceitos Básicos Introdução.
Hukarz Open Source Process D01 Alan Kelon, Silvio Meira Recife, 01/12/2006.
Engenharia de Software
Planejamento e Gerência de Projeto Plácido Antonio de Souza Neto
Projeto Piloto do LabPS Teste do Flip
Gestão de projetos de Software GTI-16
Integração.
Gerência de Configuração e Mudança
Métodos Ágeis e Programação Extrema (XP)
Engenharia de Software
Objetivos deste módulo
SISTEMA DE MONITORAMENTO DA TECNOLOGIA DA INFORMAÇÃO.
Processo de Gerência de Mudanças
Gerenciamento de Configuração de Software
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
Introdução – ISO Conceitos relacionados a Norma NBR ISO/IEC 12207; Procedimentos de ciclo de vida e desenvolvimento de software; Objetivos e a estrutura.
Gerenciamento de Escopo
1 Agosto 2013 Processo e Método de Avaliação MPS Treinamento da Equipe para a Avaliação Inicial Treinamento da Equipe para a Avaliação Inicial –2015.
Eduardo C. Nicácio ITIL v3 Foundation Certified.  As melhores práticas do ITIL abrangem cinco processos de suporte a serviços, além do papel do Service.
1 Projeto Piloto Conclusão em Agenda Projeto Piloto –Descrição –Execução da aplicação –Implementação de requisitos funcionais e não- funcionais.
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

Gerência de Configuração - GC José Pina Neto Luis Cardoso de Sousa Sobrinho

Por que GC? Com times grandes surgem grandes problemas de sincronização. Pessoas modificam simultaneamente os mesmos artefatos As pessoas criam cópias, que podem estar dessincronizadas Como juntar duas modificações simultâneas? Como detectar que elas ocorreram?

Mas... o que, então, é GC? GC é a gerência de toda a parte administrativa do processo de desenvolvimento de software que lida com a manutenção e rastreamento dos artefatos produzidos no processo. O processo de GC controla, armazena, relata e dá garantias de persistência para as mudanças feitas nos artefatos.

E como isso funciona? Glossário: Repositório: Local onde se armazenam as configurações. Baseline: Versão estável, controlada, sobre a qual se desenvolvem novas. Check-out: Requisição de modificações sobre algo que está num repositório. Check-in: Atualização do repositório para incorporar modificações feitas no processo de check-out. Versão: Instância de um dado artefato em um ponto no tempo, diferente de outras versões. Ramos (Branches): Versões que seguem linhas de desenvolvimento paralelas à principal. Item: Um artefato gerenciado pelo processo de GC. Construção (Building): Processo de compilar o sistema a partir de itens fonte Release: Versão entregue ao cliente.

Gerência de Configuração A GC tem como objetivo responder as seguintes perguntas: O que mudou e quando? Por que mudou? Quem fez a mudança? Podemos reproduzir esta mudança?

GC do Ponto de Vista das Ferramentas

Controle de Versão É a espinha dorsal de toda a gerência de configuração, apoiando as atividades de controle de mudança e integração contínua.Fornece os seguintes serviços: Identificação, armazenamento e gerenciamento dos itens de configuração e de suas versões durante todo o ciclo de vida do software; Histórico de todas as alterações efetuadas nos itens de configuração; Criação de rótulos e ramificações no projeto; Recuperação de uma configuração em um determinado momento desejado do tempo.

Integração Contínua O objetivo é garantir que as mudanças no projeto são construídas, testadas e relatadas tão logo quanto possível depois de serem introduzidas. Em projetos de software, a construção do software é feita pela recuperação da configuração correta no sistema de controle de versão e a construção dos arquivos executáveis e de instalação do produto. Este processo é executado geralmente após cada mudança publicada no sistema de controle de versão ou em intervalos de tempo pré-definidos.

Integração Contínua Geralmente, são combinadas duas ferramentas separadas: uma que faz a construção do software e outra que monitora alterações no controle de versão e dispara a primeira para a construção.

Ferramentas de Apoio

Gerência de Mudanças Contexto: Desenvolvimento iterativo / incremental Novos conjuntos de requisitos, detalhados a cada iteração Mudanças em estratégias de negócio motivadas pelas mais diversas fontes: mercado, cultura, leis, etc

Gerência de Mudanças Problemas: Controle do escopo do projeto: Ampliação de funcionalidades e aumento significativo do custo do projeto; Análise de Impacto viabiliza que: Mudanças de grande impacto possam ser comunicadas a interessados; Análises de custo x benefício; Atrasos em entregas planejadas ; Priorização de mudanças; Mudança pode ser rejeitada se perceber que o custo será mais caro que o benefício percebido;

Gerência de Mudanças Problemas: Controle de consistência dos artefatos: Uma mudança aparentemente localizada pode causar muito mais impacto do que o previsto. Retrabalho.

Gerência de Mudanças O controle de mudança é uma das atividades necessárias da Gerência de Configuração. Seu papel principal é registrar, avaliar e rastrear todas as mudanças aplicadas ao projeto, desde o momento em que são propostas, até o momento em que são implementadas (ou não) nos itens de configuração. Mudanças aprovadas são implementadas nos itens de configuração e nos dados e documentos relacionados

Gerência de Mudanças Objetivos: Garantir que os artefatos do sistema tenham e mantenham uma estrutura definida através do seu ciclo de vida; Definir procedimentos e documentação necessários para realizar modificações; Prover os mecanismos necessários para conduzir mudanças de uma maneira controlada;

Gerência de Mudanças Benefícios: Controle sobre o escopo do projeto Mais produtividade Cada solicitação será tratada de forma coordenada; Redução dos problemas de comunicação entre membros da equipe; Mais qualidade, uma vez que cada mudança, antes de ser realizada, tem seu impacto avaliado;

Gerência de Mudanças Comparação entre Ferramentas de Controle de Mudança : Os critérios de avaliação serão baseados nas Funcionalidades de Controle de Mudança. Verificar se as ferramentas apresentam algumas funcionalidades fundamentais e outras desejáveis que uma ferramenta de controle de mudança deve ter.

Gerência de Mudanças Funcionalidades de Controle de Mudança: Acompanhamento do ciclo de vida do pedido de mudança. PROPOSTA -> AVALIAÇÕES -> ACEITAÇÃO -> IMPLEMENTAÇÃO Rastreamento da mudança É importante existir uma amarração bi-direcional entre a mudança publicada no repositório e o pedido que a gerou. Funcionalidade altamente dependente da integração com controle de versão. Anexação de arquivos ao pedido Necessidade de anexar algum arquivo para facilitar o entendimento do problema ou complementar a especificação.

Gerência de Mudanças Funcionalidades de Controle de Mudança: Configuração do fluxo de trabalho Os estados pelos quais um pedido passa durante o seu ciclo de vida. Depende do processo de desenvolvimento utilizado no projeto. É desejável que a ferramenta possibilite configurar o fluxo de trabalho de acordo com a necessidade de cada projeto. Notificações para acompanhamento da evolução do pedido Manter informado todos os envolvidos com um pedido de mudança sobre alterações recebidas durante seu ciclo de vida. (e- mail).

Gerência de Mudanças Funcionalidades de Controle de Mudança: Relatórios Personalizados As ferramentas costumam oferecer relatórios específicos. Entrentanto, às vezes é necessário criar e disponibilizar determinado relatório para uma necessidade específica.

Gerência de Mudanças Quadro Comparativo:

Gerência de Mudanças Ferramentas: Track (Python)‏ Mantis (PHP)‏ BugZilla (Perl)‏ Scarab (Java)‏

Conclusão GC é necessário para coordenar projetos e times grandes GC já é uma prática bem estabelecida, padronizada e muito utilizada É (ou deveria ser) parte de qualquer projeto de software

Dúvidas?