Introdução à Gerência de configuração de Software

Preview:

Citation preview

UNIFOR – Engenharia de Software

Definições

Processo que controla a EVOLUÇÃO do

software

Controla e notifica as inúmeras

correções, extensões e adaptações

aplicadas ao longo do processo de

desenvolvimento

Gerência de dependências

Definições de linhas de base

Cenário

Itens de Configuração - IC

Artefato a ser versionado e controlado

pela Gerência de Configuração (GC)

Documentos do Projeto

Planos

Requisitos

Casos de Uso

Documento de Arquitetura

Código fonte

Atividades e Ferramentas

Controle de versões

Controle de modificações

Controle de gerenciamento de

construção.

Atividades e Ferramentas -

Controle de versões

Permitem que os artefatos sob Gerência de

Configuração evoluam de forma distribuída,

concorrente e disciplinada, evitando perdas

ou sobreposições durante o

desenvolvimento e a manutenção do

artefato

Exemplos: Git (github, BitBucket) SVN,

CSV, Tortoise

Git

http://nvie.com/posts/a-successful-git-branching-model/

Atividades e Ferramentas -

Controle de Modificações

O sistema de controle de modificações

armazena todas as informações geradas

durante o andamento das solicitações de

modificação e relata essas informações aos

participantes interessados e autorizados

Ferramentas de Issue Tracking: Bugzilla, Jira

Atividades e Ferramentas -

Controle de construção

Automatiza o processo de transformação

dos diversos artefatos do software que

compõem um projeto em um sistema

executável

Maven, Ant (...Jenkins, Travis CI)

Gerenciadores de Dependências:

Composer, Maven, Gradle, Bower

Versionamento - Exemplo

Versionamento Semântico

Todas as versões são compostas da

seguinte forma:

○ MAJOR.MINOR.PATCH

○ versão Maior(MAJOR) : quando fizer

mudanças incompatíveis na API,

○ versão Menor (MINOR): quando adicionar

funcionalidades mantendo compatibilidade, e

○ versão de Correção (PATCH): quando corrigir

falhas mantendo compatibilidade.

http://semver.org/lang/pt-BR/

Recommended