Skip to content

Plano de Gerenciamento de Configuração

Jeferson Alves edited this page Sep 13, 2017 · 25 revisions

Histórico de modificações

Data Versão Descrição Autor
21/03/2017 1.0 Adicionando template Jeferson Alves

Sumário

  1. Introdução
  2. Itens de configuração
  3. Ferramentas
  4. Gerenciamento de repositórios de código
    1. Política de Commits
    2. Política de Branches
    3. Utilização das Branches
    4. Política de aprovação
    5. Uso das issues
  5. Gerenciamento repositórios de documentação
    1. Política de Commits
    2. Política de Branches
    3. Versionamento do documento
  6. Monitoramento e controle
  7. Referências

1 - Introdução

Obtiva-se com este documento orientar a todos que buscam contribuir com o repositório, apresentando padrões, políticas, ferramentas, instruindo sobre o ambiente de desenvolvimento e qualquer atividade de configuração necessária.

2 - Itens de configuração

Serão tratados como itens de configuração para este projeto o código e a documetação que o acompanha. Descrimina-se abaixo os itens de configuração para os quais fará-se a manutenção e gerenciamento.

2.1 - Documento

Arquivo de texto contendo planejamentos, descrição do produto e projeto, relatos de reunião ou do fluxo de projeto.

2.2 - Código

Artefato composto por um conjunto de arquivos de texto, contendo código de uma ou mais linguagens de programação ou marcação.

3 - Ferramentas

No curso do deste projeto serão usadas ferramentas para apoiar no desenvolvimento e configuração. A tabela a seguir relaciona as ferramentas utilizadas e seu respectivo uso.

Ferramenta Logotipo Descrição de Uso
Git [[images/gcs-images/git-logo.png height = 100px]]
Github [[images/gcs-images/github-logo.png height = 100px]]
Docker [[images/gcs-images/docker-logo.png height = 100px]]
Travis CI [[images/gcs-images/travis-logo.png height = 100px]]

4 - Gerenciamento de repositórios de código

4.1 - Política de Commits

Adota-se para este projeto padrões para o comentário e execução dos commits. O idioma padrão para efetuar commits neste reositório é o inglês. As mensagens devem ser suscintas e expressarem de forma clara e objetiva a ação do commit.

Como exemplo, considere o trabalho da construção de uma tela inicial da aplicação. O commit deverá ser efetuado como segue:

git commit -m "Create new home Screen"

Atente ainda para os seguintes aspectos:

  • O commit deve iniciar com letras maiúsculas.
  • O commit deve iniciar com verbo no infinitivo.

Caso o trabalho tenha sido realizado por mais de um autor. O commit deverá possuir a assinatura das pessoas envolvidas. Nestes casos deve-se utilizar a flag --author ou a opção siggned-off-by, de maneira que o trabalho de todos desenvolvedores possa ser reflletido por sua contribuição. Como exemplo, veja as instruções:

git commit --author
git commit -s

4.2 - Política de Branches

O repositório possui uma branch master, que possui objetivo de manter a versão estável do projeto. Possui também uma branch para desenvolvimento chamada devel, cujo objetivo é manter-se atualizada. Desta forma nenhum commit deve ser efetuado diretamente nestas branchs. As alterações devem ser criadas inicialmente em branchs de funcionalidades, toda branch de funcionalidade deve ser criada a partir da branch devel.

A imagem a seguir, ilustra como deve ser a organização das branchs e os eventos de criação e merge. Como pode ser visto, após a etapa de desenvolvimento em uma branch de funcionalidade ser concluída, deve ser submetido um pull request antes do merge da mesma. O pull request deve ser conferido e se, estiver em conformidade e a build do Travis CI obter status passing, então o pull request é aceito.

Os serviços do Travis CI serão configurados nas branchs master e devel. Caso falhe algum teste unitário ou a build não obtenha o status desejado, não será feito o merge nas branchs em questão.

4.3 - Utilização das Branches

Padrão para Casos de Uso:

Padrão para Histórias de Usuário:

4.4 - Política de aprovação

4.5 - Uso das Issues

5 - Gerenciamento repositórios de documentação

5.1 - Política de Commits

5.2 - Política de Branches

5.3 - Versionamento do documento

6 - Monitoramento e controle

Clone this wiki locally