Engenharia de Software

Slides:



Advertisements
Apresentações semelhantes
Manutenção em software Conceitos básicos
Advertisements

Contexto para Gerência de Configuração
Gerência de Configuração
GERENCIAMENTO DE MUDANÇA GERENCIAMENTO DE LIBERAÇÃO
Tipos de sistemas de Lehman

Gerenciamento de Projetos
Processos de Software Introdução
Rational Unified Process(RUP)
Desenvolvimento Global de Software
Gerenciamento de Configuração
Professora: Aline Vasconcelos
O que é ? Subversion (ou svn) é um sistema de controle de versão criado para substituir o CVS. Ele permite que você recupere versões antigas de seus arquivos,
Central de Serviços de TI
Configurando Subversion no Windows
Gestão de Defeitos Vanilson Burégio.
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Análise e Gerenciamento de Requisitos com Casos de Uso
Gerenciamento de Requisitos com Casos de Uso
Controle de Versão SVN e Tortoise SVN
Gerência de Configuração
Configuração de manutenção
Gerência de Configuração de Software
MANUTENÇÃO DE SOFTWARE
Gerenciamento de Configuração
PMBOK 5ª Edição Capítulo 3
Concurrent Versions System Leandro Augusto de Oliveira
Projeto: Capacitação em GP
Gestão de Configuração de Software
CMMI – Gerência de Configuração
Módulo: Gerenciamento de Incidentes e
Gerência de Configuração - GC
Configurando Subversion no Windows. TortoiseSVN Cliente gráfico para gerenciamento de repositórios usando SVN
Aluno: Cristiano Levi Arnold Orientador: Alexandre Luís Franco 2009
Paulo Oliveira – phslfo Victor Acioli - vaca 11/05/2010.
Gerencia de configuração e mudança de software
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.
S ISTEMA DE C ONTROLE DE V ERSÃO : B AZAAR Carolina Ramalho Priscilla Gonçalves.
Gestão e Automação de Documentos
Controle de versão. Política trava-modifica-destrava Nessa política, o sistema de controle de versão permite que apenas um desenvolvedor por vez altere.
André Silva Rodrigues Diretor de Tecnologia. O que é subversion? Como subversion funciona? 12/4/2015WorkSet Indo 2 Introdução.
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.
Conceitos Básicos Introdução.
Hukarz Open Source Process D01 Alan Kelon, Silvio Meira Recife, 01/12/2006.
Planejamento e Gerência de Projeto Plácido Antonio de Souza Neto
Concurrent Versions System (CVS) Alexandre Monteiro.
José de Arimatea - jarn José Luiz - jlcn 20/01/2013.
Gerência de configuração e Evolução de Software
Gerenciamento de Configuração
Gerência de Configuração e Mudança
Prof. Paulo Fernando da Silva Infra TIC Capítulo 02 – ITIL.
Grid Versioning Service (GVS) left | Version Date:
Controle de Versão com SubVersion
CVS – Gerenciamento de Versões
Objetivos deste módulo
Processo de Gerência de Mudanças
Diagnóstico Técnico Situacional versão preliminar 29/7/2015.
Linguagem Técnica II SCM Software Configuration Management Aula 03 Prof. Renato Novais
Ferramentas e Tecnologias para o Trabalho Distribuído e Colaborativo
Ferramentas para Sistema Web Sistemas de Informação Aula 9 – 08/05/2013.
Gerenciamento de Configuração de Software
Prof. Paulo Fernando da Silva Infra TIC Capítulo 02 – ITIL.
Utilizando subversion como controle de versão
Felipe Buarque, Felype Santiago, Liliane Sheyla. Justificativa  Alguém já sobrescreveu o código de outra pessoa por acidente e acabou perdendo as alterações?
Metodologia de Desenvolvimento de Software Alexandre Vasconcelos, André Santos, Augusto Sampaio, Hermano Moura, Paulo Borba © Centro de Informática Universidade.
Análise de Desempenho dos sistemas de controle de versão SVN e Git
Metodologia de Desenvolvimento de Software
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
Subversion- Treinamento Básico Controle de versões de Arquivos na Acropolis Atualizado em
Gerência de Configuração
Transcrição da apresentação:

Engenharia de Software Gerência de Configuração e Mudanças Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Isso acontece? Como assim? Você não tem como recuperar aquela versão do sistema do mês passado? Onde está aquele relatório que eu criei ontem? Quem foi que mudou essa tela? Ei, aquele defeito que a gente tinha consertado apareceu de novo!! Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Isso acontece? A funcionalidade mudou? Quem mandou mudar? Ah, o cliente... Por que ninguém me avisou? Mas vai dar um trabalhão pra mudar esse negócio!! Não, não, não salva agora não!!! Vai sobrescrever meu arquivo! Ops, a mudança não deu certo. Como é que isso estava antes mesmo? Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Isso acontece? - Já fiz aquela mudança que você pediu. - Mas eu não pedi mudança nenhuma. - Bem, alguém deve ter pedido Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Definições Gerência de Configuração é a disciplina que trata da realização de mudanças de forma planejada e sistemática do controle formal da integridade de artefatos e atividades Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Benefícios Estabilidade Confiabilidade Tomada de decisões mais seguras Padronização Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Mitos GC é reativo GC é um gargalo GC é custoso GC atrasa a resolução de problemas (liberação de patches) Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Sem Gerência de Configuração Atrasos no projeto Falta de visibilidade das mudanças Altos custos de manutenção Surpresas desagradáveis Falta de qualidade nos serviços Eterna dependência dos “donos” do sistema Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Gerenciamento de Mudanças Conceitos Baseline Uma versão estável e aprovada do sistema Change Request (CR) / Requisição de Mudanças Um pedido formal para que uma mudança em uma baseline seja realizada Configuration Control Board (CCB) Grupo que analisa a viabilidade, prioridade e necessidade das mudanças solicitadas, autoriza a criação de baselines etc. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Processo de Mudanças Pergunta fundamental: a mudança afeta baselines? Sim: tratamento formal Não: tratamento informal (não é sinônimo de bagunça!!) Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Requisição informal de mudança Alteração em baseline Requisição informal de mudança Sem alteração em baseline Requisição formal de mudança Análise formal de impacto Análise informal de impacto Aprovação do CCB Realização da mudança Comunicação formal da mudança Comunicação informal da mudança Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Ferramentas para gerenciamento de mudanças Bugzilla Mantis Request Tracker Clear Quest Jira EasyTrack Planilha eletrônica Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Problemas tratados pelo Controle de Versões Atualizações simultâneas Várias pessoas atualizando os mesmos artefatos Notificações limitadas Modificações são realizadas, mas as pessoas afetadas não são comunicadas Múltiplas versões Lidar com várias versões de artefatos e do próprio sistema Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle de versões Item de configuração: produto ou conjunto de produtos de trabalho gerenciado pelo processo de Gerência de Configuração Repositório central: repositório, normalmente localizado em um servidor, onde as mudanças efetuadas nos repositórios locais são consolidadas Repositório local: repositório, normalmente localizado nos clientes, onde as mudanças são realizadas antes de serem enviadas ao repositório central Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle de versões Módulo: conjunto de itens de configuração. Em geral, corresponde ao diretório mais externo da “árvore” de diretórios do projeto e possui submódulos que correspondem aos subdiretórios Import: adição de um módulo ao repositório central Checkout: fazer o “download” de um módulo do repositório central para o repositório local Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle de versões Commit: atualizar o repositório central com os arquivos modificados no repositório local Update: atualizar o repositório local com a versão mais recente do repositório central Tag: um “label” que identifica um conjunto de itens de configuração com suas respectivas versões. Uma “fotografia” do repositório em um dado momento Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle de versões Tronco, tronco principal: principal “galho” da “árvore” de versões., principal linha de desenvolvimento Branch: um “galho”, uma linha alternativa de desenvolvimento Merge: consolidação de duas versões diferentes do mesmo arquivo, preservando as alterações feitas em cada uma das versões Conflito: possível conseqüência de um merge, quando não é possível preservar as alterações feitas em ambos os arquivos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle de versões Consolidação Centralizada Modificações Distribuídas Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle de Versões Novo item Cliente Servidor (Repositório Central) Import Cliente Servidor (Repositório Central) Cliente (Repositório Local) Checkout Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle de Versões Atualização de item Servidor (Repositório Central) Cliente (Repositório Local) Update Commit Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Aplicação dos conceitos tag 1.1 branch Versao_4_0 1.2 1.2.1 1.2.2 1.3 1.2.3 Atenção: Não confundir versão do item com versão do produto conflito? 1.4 merge 1.5 Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Dicas Updates e commits constantes. Cópias locais muito desatualizadas causam um número grande de conflitos. Resolver conflitos com a participação de todos os interessados. Não criar muitos branches. Em especial, não criar muitos níveis de branches. Não “comitar” código instável. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Ferramentas de controle de versões CVS VSS PVCS SubVersion ClearCase Confusão de diretórios, backups... Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Responsabilidades do Gerente de Configuração Configurar, manter e dar suporte ao uso de ferramentas de configuração Criar e manter estrutura de diretórios e controle de acesso Criar e manter um processo de “build”, de preferência automatizado Criar e manter branches e tags Estabelecer baselines Preparar e liberar releases Fazer auditorias de configuração Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho