gerÊncia de configuraÇÃo lílian simão oliveira

33
GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Upload: internet

Post on 17-Apr-2015

119 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

GERÊNCIA DE CONFIGURAÇÃO

Lílian Simão Oliveira

Page 2: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira
Page 3: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Itens de configuração

O que é um item de configuração?

“Os itens que compreendem toda a informação

produzida como parte do processo de software

são chamados coletivamente de configuração de

software.”

Page 4: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Configuração

Então, o que é configuração?

“É a designação geral para o conjunto de itens de

configuração de um projeto de software.”

Page 5: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Itens de Configuração de Software É a informação criada como parte do

processo de engenharia de software. (Pressman, 2006)

É a designação geral de qualquer artefato ou produto de software mantido sob gestão de configuração/mudança.

Page 6: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Itens de Configuração de Software Em geral é:

Um produto de software ou Um produto de desenvolvimento de

software Deve possuir uma identificação

única Regras de Nomenclatura devem ser

utilizadas

Page 7: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Itens de Configuração de Software Exemplos:

um plano de projeto um cronograma uma especificação de caso de uso um modelo ou parte de um modelo código-fonte um módulo executável ou componente, um arquivo de help um script de teste

Page 8: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Itens de Configuração

Muitas organizações colocam também ferramentas de software sob controle de configuração. Ex: Versões específicas de editores Compiladores Navegadores Outras ferramentas...

Page 9: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Gestão de Configuração de Software

Controla os itens de configuração

Page 10: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Versionamento

Versionamento é a disciplina através da qual são preservadas as versões de um artefato, de modo sistemático e seguro, não limitado em número de versões.

A cada alteração consolidada no repositório uma nova versão do item deve ser gerada.

Todas as versões devem ser armazenadas e identificadas.

Revisões = versões individuais de cada item.

Page 11: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Versionamento

Versão: Estado definido de um objeto num dado

momento. “Fotografia” do objeto.

Page 12: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Versionamento

Page 13: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Árvore de Versionamento

Page 14: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Versionamento

Deve ser possível recuperar versões anteriores de um item.

Além de artefatos, podemos versionar configurações completas ou parciais de um software

É, portanto, aceitável falar-se em: Versão de um artefato (documento,

cronograma, modelo, programa, etc) Versão de um sistema

Page 15: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Repositório

Page 16: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Repositório

Page 17: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Repositório

É o conjunto de mecanismos e estruturas de dados que permite a uma equipe de software gerir modificação de modo efetivo

É um local sob controle de acesso onde são armazenados os itens de configuração

Page 18: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Repositório

Deve permitir: Controle de acesso O versionamento dos elementos Representar marcos de projeto ou

versões de produção específicas Pistas de auditoria das modificações

O que, quando, quem e por que.

Page 19: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Ferramentas de Controle de Versão Existem diversas ferramentas de

mercado: Rational ClearCase CVS (Concurrent Versions System) Subversion (SVN) Git

Page 20: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Espaço de Trabalho (workspace)

Page 21: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Workspace

Um lugar onde o desenvolvedor possa trabalhar isoladamente sobre os seus artefatos enquanto ele finaliza uma tarefa sem interferências externas.

Utilizado para: Criação/edição de artefatos Operações de gerenciamento Consultas

Page 22: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Workspace

Page 23: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Funções:

Centralizado Distribuído Descrição

checkout clone

criação da cópia de trabalho/repositório

commit commit

envia alterações para o repositório, criando uma revisão

update update

atualiza a cópia/área de trabalho em uma revisão

pullimporta revisões feitas em outro repositório

pushenvia revisões locais para outro repositório

Page 24: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

(1) Duas cópias de trabalho são criadas a partir do comando checkout. As duas iniciam no mesmo estado.

Page 25: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

(2) Os dois desenvolvedores executam modificações nas suas cópias de trabalho, mas Aline publica antes no repositório.

Page 26: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

(3) Roberto tenta publicar suas alterações, mas o controle de versão recusa justificando que as alterações foram baseadas em arquivos desatualizados. No caso, um ou mais arquivos alterados por Roberto já haviam sido alterados por Aline antes

Page 27: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

(4) Na atualização da cópia de trabalho, o controle de versão já mescla automaticamente as revisões.

Page 28: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

(5) Após conferir se a atualização e a mesclagem produziram o resultado desejado, Roberto envia as mudanças ao repositório. Enquanto isso, Aline já trabalha em outra tarefa, executando novas alterações.

Page 29: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Baseline

É uma configuração formalmente aprovada para servir de referência para o desenvolvimento posterior do sistema.

“Uma especificação ou produto que foi formalmente revisto e aprovado, o qual daí em diante serve como base para o desenvolvimento futuro e que pode ser modificado apenas por meio de procedimentos formais de controle de modificação.“ (IEEE Std no. 610.12-1990)

Page 30: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Baseline

Page 31: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

Subversion (SVN)

1. The essential Subversion lifecycle is the following:

2. Check out a project (a directory path) from a repository.In that project directory, create or edit files and subdirectories.

3. Update your local copy from the repository, picking up changes your team members may have made since your last update.

4. Go to step 2. If you're ready to commit your changes, go to step 5.

5. Commit your changes to the repository. Go to step 2.

Page 32: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

SVN – Alguns Conceitos

Trunk: É o repositório de trabalho dos desenvolvedores, nele fica armazenado a versão “suja” de desenvolvimento, onde a qualquer momento podem acontecer mudanças, caracteriza-se pela versão menos estável. Mas a partir do Trunk geramos Branches e também Tags detalhadas a seguir.

Branches: São ramificações do seu projeto, ou seja, antes de iniciar o desenvolvimento de um novo módulo, é recomendado que seja criado um Branche, para separar essas modificações até que elas estejam estáveis o suficiente para serem integradas ao Trunk, usando o recurso de Merge.

Page 33: GERÊNCIA DE CONFIGURAÇÃO Lílian Simão Oliveira

SVN – Alguns Conceitos

Tags: São na teoria versões estáveis do software, as tags podem ser originadas de um branche ou do trunk, a nomenclatura para as Tags seguem um padrão do tipo “1.2.3″, isso corresponde a:1.2.3: Versão reescrita na integra do projeto, entre uma versão 1.0 e 2.0 necessariamente deve ter sido reconstruído partes significativas do software.1.2.3: Corresponde a implementação de novos módulos.1.2.3: São versões de correção de bugs ou pequenos ajustes.