Gerenciamento do Branch de Versão

Descrição de todas as etapas realizadas durante a "vida útil" de um Branch de Versão, desde a abertura até o fechamento.

Índice

Resumo

O livro "Gerenciamento do Branch de Versão" é composto por três capítulos principais. Cada qual contendo as informações referentes à uma etapa do ciclo de vida do branch da versão. Desde sua criação, passando pela sua manutenção até o processo de fechamento e liberação. Este livro, apesar de ser dirigido à equipe da qualidade, também conta com a participação da equipe de desenvolvimento para a realização de algumas etapas do processo.


Sumário

Abertura do branch de versões

Neste capítulo são tratados os assuntos iniciais à abertura do branch de versões, como criação do caso no mantis, criação do branch no SVN e os detalhes do processo.

Manutenção do branch de versões

Neste capítulo são passadas as informações sobre a manutenção do branch durante sua "vida útil", como relacionar as versões dos módulos que serão liberados e a atualização do código do branch para que esteja sempre atualizado em relação ao trunk.

Fechamento do branch e liberação das versões

O último capítulo diz respeito ao processo de fechamento e liberação do branch de versões, que sem dúvida é a etapa que exige mais atenção e possui mais itens à serem feitos, podemos citar, a atualização dos arquivos altver e config.ini, geração dos executáveis, publicação e etc.

Definição do Processo

Resumo do processo

Em termos de desenvolvimento, um Branch é um galho de um tronco (Trunk), que é o repositório principal do código fonte do sistema. Na prática o Branch é uma cópia do código onde os desenvolvedores farão as correções/implementações necessárias, preservando assim a integridade do código  no Trunk. Se as mudanças funcionarem conforme o planejado, elas serão mescladas de volta para o "tronco principal" (Trunk).

Essa prática é usada o tempo todo durante o desenvolvimento, onde apesar de o Trunk ser o repositório principal do código fonte, todas as alterações devem ser feitas nos Branchs, por isso a nomenclatura Branch de Versão ou Branch de Versão de Trabalho.


Envolvidos no processo

Indiretamente, toda a equipe de desenvolvimento e qualidade fazem parte do gerenciamento do Branch de Versões. Diretamente cada Branch de Versão terá uma dupla responsável por sua abertura, manutenção e fechamento, ou seja, um desenvolvedor e um testador que darão início ao Branch da Versão e o acompanharão até que o mesmo seja finalizado. Arquivo com a programação dos responsáveis pelo branch de cada versão Clique Aqui.


Etapas do processo

Ponto inicial do processo

Por se tratar de um processo cíclico, ou seja, o início do processo de gerenciamento do branch X é iniciado logo após a finalização do processo referente ao branch Y (sendo que Y = X - 1). O seu ponto inicial será sempre após a finalização do fechamento do Branch da Versão anterior, onde a dupla responsável pelo próximo Branch deverá providenciar a abertura do mesmo, repetindo sempre esse ciclo.


Ponto final do processo

A etapa final do gerenciamento do Branch da Versão será a liberação e finalização do fechamento do Branch da Versão, quando o mesmo poderá ser considerado como concluído, dando início à abertura do próximo Branch e repetindo o ciclo.


Resultado esperado

É esperado que com essa estruturação de Trunk, Branch de Versão e Branch por caso (pasta de trabalho de cada desenvolvedor, por caso) mantenha-se a integridade do código fonte do sistema no Trunk e que todas as correções/implementações necessárias não sejam realizadas no Trunk, evitando problemas e garantindo maior segurança nas liberações e entrega das versões aos clientes.

 

Abertura do branch de versões

Detalhamento do processo de como realizar a abertura de um novo Branch de Versão

Abertura do branch de versões

Definição do Processo

Resumo do processo

O processo de gerenciamento do Branch de Versões é um ciclo, onde sempre após o fechamento do Branch atual, deverá ser realizada a abertura de um novo Branch, que passará a ser o atual Branch da Versão ou Branch da Versão de Trabalho, onde o mesmo será utilizado até ser fechado e as versões à ele relacionadas sejam liberadas aos clientes. 

O pré-requisito para abertura/início de um novo Branch de Versão será que o Branch da Versão atual tenha sido finalizado.


Envolvidos no processo

Sempre será uma dupla que ficará responsável pela abertura, manutenção e fechamento do Branch da Versão, sendo um desenvolvedor e um testador.


Etapas do processo

Ponto inicial do processo

Por se tratar de um processo cíclico, ou seja, o início do processo de gerenciamento do branch X é iniciado logo após a finalização do processo referente ao branch Y (sendo que Y = X - 1). O seu ponto inicial será sempre após a finalização do fechamento do Branch da Versão anterior.


Ponto final do processo

Será a criação do novo Branch da Versão no SVN e a publicação desse novo Branch para a equipe de Desenvolvimento e Qualidade.


Resultado esperado

Realizar toda a documentação do novo Branch da Versão, criando os novos casos no Mantis, novo repositório no SVN e publicando os novos casos/repositório para as equipes de Desenvolvimento e Qualidade.

 

Abertura do branch de versões

[padronizar] Criando novos casos para Branch de Versão e versionamento dos módulos (casos pai)

Após a liberação e fechamento de um Branch de Versão sempre será necessário realizar a abertura de um novo Branch e, com isso, abrir os casos no Mantis para documentação e manutenção do mesmo.


Criação do Branch da Versão no Mantis

O primeiro passo será a abertura do novo caso do Branch da Versão no Mantis, para isso deveremos preencher os campos conforme exemplos abaixo:

Tipo do Projeto: "Outros";
Categoria: "Outros";
Resumo: "BRANCH DE VERSÕES XXX - GERENCIAMENTO DE CASOS" (sempre incremental em +1);
Descrição: Adicionar a mensagem padrão:

"Caso para controle e gerenciamento dos casos adicionados ao Branch de Versões.

O Branch de Versões é a centralização dos códigos de todos os módulos que estão sendo trabalhados para liberação (Versões cheias).
Todos os casos testados na versão "Por Caso", serão adicionados no Branch de Versões para ser trabalhado para liberação.

Após os casos passarem por testes e retestes e estarem prontos para liberação, os casos são adicionados no TRUNK da Versão de liberação.
O TRUNK será o repositório apenas dos casos que estão 100% finalizados."

Aplicar marcadores: "BRANCH_ERP" ou "BRANCH_FISCO" e "BRANCH_VERSAO";
Tipo: "Nova Versao".

Abertura_caso_BranchVersao.jpg

Abertura_caso_BranchVersao2.jpg

Após criar o caso, relacioná-lo ao caso 0044448 - Gerenciamento das Versões Correntes:

Gerenciamento_caso_versoes_correntes.jpg

Após a criação do caso do Branch da Versão no SVN, deverá ser copiado o endereço "URL" para o caso no Mantis, no quadro "Informações Adicionais", conforme exemplo:

URL_mantis.jpg

URL_mantis2.jpg

Criação dos casos de versionamento dos módulos (Casos pai)

Assim como após a liberação e fechamento de um Branch de Versão é necessário fazer a abertura de um novo, também é necessário criar novos "casos pai" para os módulos que foram liberados no Branch da Versão anterior.

O processo para abertura dos "casos pai" é basicamente o mesmo do que o da abertura do caso do Branch da Versão, salvo algumas exceções. Para a abertura dos casos pai seguir as regras abaixo:

Tipo do Projeto: Deve ser o tipo de projeto de cada módulo, exemplo "Compras", "Vendas", "Estoque", etc.
Categoria: "Outros";
Resumo: "Versão 4.971 - COMPRAS" (Número da versão incremental em +1 e o módulo referente ao caso pai);
Descrição: "Versão 4.971 - COMPRAS" (repetir o campo "Resumo");
Aplicar marcadores: "Não é necessário aplicar marcadores;
Tipo: "Nova Versao".

Após a abertura dos casos, também relacioná-lo ao caso 0044448 - Gerenciamento das Versões Correntes.

 

 

Abertura do branch de versões

[padronizar] Criação do repositório do Branch de Versão no SVN

Após o caso do Branch da Versão ter sido criado no Mantis, será necessário realizar um "Copy to" no SVN, copiando o Trunk (https://wiki.supersoft.com.br/svn/desenvolvimento/trunk/CodigoBaseSkin) para um novo repositório que será criado para o Branch da Versão.

Essa etapa só poderá ser realizada quando o Branch da Versão anterior já tiver sido vinculado ao Trunk. Portanto antes de realizar essa etapa, confirmar com o desenvolvedor se o Branch já foi vinculado ao Trunk e se pode ser criado o novo Branch de Versão.

O repositório do Branch da Versão deverá ser criado dentro do caminho

ERP:
(https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP)

Fisco:
(https://wiki.supersoft.com.br/svn/desenvolvimento/branches/Versoes/Fisco)

e deverá seguir o modelo:

Número do Branch da Versão+Caso+Número do caso no mantis. Exemplo: "042-Caso-0044323"

Dessa forma o endereço completo do Branch da Versão ficará parecido com:

https://wiki.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/042-Caso-0044323.

Após inserir o caminho de repositório, uma tela de mensagem de log será aberta, e deverá seguir o modelo: 

Número do caso: BRANCH DE VERSÕES + Número do Branch da versão - GERENCIAMENTO DE CASOS. 
Exemplo: "0044760: BRANCH DE VERSÕES 048 - GERENCIAMENTO DE CASOS"

Após a realização de todos os passos, o resultado final deverá ser semelhante a: 

 

image-1616422198821.png

 

Abertura do branch de versões

[padronizar] Publicação do novo Branch da Versão para a equipe de Desenvolvimento e Qualidade

Após o Branch da Versão ter sido criado tanto no Mantis quanto no SVN, é necessário avisar à equipe de Desenvolvimento e Qualidade que o novo Branch está pronto e que deverão passar a utilizá-lo.

Para isso, no comunicador padrão utilizado pela equipe (atualmente é o Rocket Chat), no canal "devs-quali-erp" ou "devs-quali-fisco" deverá ser enviada uma mensagem seguindo o padrão:

Pessoal!
BRANCH 041 foi liberado na data 08/01/2021.

Foi criado o caso e pasta no SVN para o BRANCH 042.
https://wiki.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/042-Caso-0044323
Favor utilizar esse BRANCH a partir de hoje.

Obrigado!

Manutenção do branch de versões

Descrição dos processos de manutenção do branch de versões. Processos que serão realizados após a abertura da versão corrente até o fechamento da mesma.

Manutenção do branch de versões

Definição do Processo

Resumo do processo

Após a abertura de um novo Branch de Versão, durante a "vida útil" do Branch, ou seja, até que ele seja liberado e fechado será necessário realizar algumas rotinas de manutenção para manter o Branch sempre atualizado e evitar erros na hora da liberação da versão.


Envolvidos no processo

Sempre será uma dupla que ficará responsável pela abertura, manutenção e fechamento do Branch da Versão, sendo um desenvolvedor e um testador.


Etapas do processo

Ponto inicial do processo

Inicia-se logo após a abertura do Branch da Versão.


Ponto final do processo

Deverá ser realizado diariamente até o fechamento e liberação  do Branch da Versão.


Resultado esperado

Manter o Branch da Versão atualizado tanto no Mantis quanto no SVN, facilitando para a equipe saber em tempo real quais casos e versões estão relacionados ao mesmo.

 

Manutenção do branch de versões

[padronizar] Etapas de manutenção do Branch da Versão

Após a abertura de um novo Branch de Versão, durante a "vida útil" do Branch, ou seja, até que ele seja liberado e fechado será necessário realizar algumas rotinas de manutenção para manter o Branch sempre atualizado e evitar erros na hora da liberação da versão.

No mantis, conforme os casos de erros/implementações forem relacionados ao branch de versões, deve-se verificar se o caso da versão do respectivo módulo que será liberado com o caso tratado já se encontra relacionado no branch de versões, caso não esteja, então deve-se relacionar.

No SVN, a única rotina que precisará ser feita é a realização de um update, merge e commit diário, de preferência no início do dia, para que o Branch da Versão sempre fique atualizado em relação ao trunk.

Fechamento do branch e liberação de versões

Descrição dos processos à serem realizados para realizar a liberação e fechamento do Branch da Versão corrente.

Fechamento do branch e liberação de versões

Definição do Processo

A decisão de quando um Branch da Versão deve ser fechado deve ser tomada em conjunto com as equipes de Desenvolvimento e Qualidade, levando em consideração:

A liberação das versões é feita semanalmente (segmento ERP na sexta-feira e segmento FISCO na segunda ou terça feira) e com uma quantidade de casos vinculados ao Branch não muito grande, de preferência com até no máximo 15 casos (deve-se levar em consideração a complexidade dos casos, criação de campos, criação de tabelas, etc.) ou até quinze dias após a liberação do Branch anterior, quando a quantidade de casos finalizados e vinculado ao Branch na primeira semana for pequena ou com casos com prioridade baixa para entrega.

O pré-requisito para início do fechamento do Branch da Versão é alinhar com toda a equipe de Desenvolvimento e Qualidade que o mesmo será fechado e, para iniciar de fato o fechamento, todos os casos vinculados ao Branch já devem estar com a revisão de testes feita e com o status "Aguardando liberação de versão".


Envolvidos no processo

Sempre será uma dupla que ficará responsável pela abertura, manutenção e fechamento do Branch da Versão, sendo um desenvolvedor e um testador.


Etapas do processo

Ponto inicial do processo

O início do processo do fechamento do Branch da Versão deverá começar com alguns dias de antecedência em relação à data pretendida para o fechamento do mesmo, a partir dessa decisão, deverá ser comunicado à equipe de Desenvolvimento e Qualidade para que não seja vinculado mais nenhum caso adicional ao Branch. Após todos os casos do Branch terem a revisão de testes realizadas e estarem como "Aguardando liberação de Versão", poderá ser dado início ao fechamento e liberação.


Ponto final do processo

O processo poderá ser considerado como concluído após a publicação dos executáveis e instaladores e a finalização do fechamento do Branch da Versão.


Resultado esperado

Concluir o ciclo de vida útil do Branch da Versão atual, gerando os executáveis e instaladores dos módulos para que possam ser disponibilizados aos clientes.

 

Fechamento do branch e liberação de versões

[padronizar] Decisão do fechamento do Branch da Versão e publicação para a equipe

Avisando a equipe sobre o fechamento do Branch e conferência se o mesmo pode ser fechado

Após ser definido que o Branch da Versão será fechado, deve-se avisar à equipe de Desenvolvimento e Qualidade para que não subam mais nenhum tratamento e/ou façam alterações no Branch. Para isso, no Rocket Chat (ferramenta utilizado internamente para comunicação) no canal "devs-quali-erp" ou "devs-quali-fisco" deve ser enviada uma mensagem padrão, conforme exemplo abaixo:


"Pessoal,

Por favor, não subir mais nenhum tratamento para o Branch XXX.
Irei começar a fazer a liberação dos módulos.

Obrigado!"

Após comunicar a equipe sobre o fechamento da versão, confirmar no Mantis se todos os casos vinculados ao Branch foram realizados os testes e revisão de testes e se estão com o status "Aguardando liberação de versão". Confirmar também se todos os casos do versionamento dos módulos que serão liberados foram vinculados ao caso do Branch, conforme exemplo abaixo:

1.jpg

O quadro em verde está demonstrando todos os casos de versionamento de módulos e que serão liberados no Branch da Versão. Neste exemplo, no Branch 041 serão liberados os módulos Vendas e Compras.

No quadro em vermelho estão todos os casos de erros, solicitações ou melhorias que estão relacionados ao Branch 041 e que serão entregues através dos módulos de Vendas e Compras.

Os casos de versionamento de módulos que serão relacionados ao Branch da Versão dependerão dos casos de erro, solicitação ou melhorias que serão liberados. Se no Branch houver apenas casos do Financeiro, por exemplo, não há necessidade de liberação dos demais módulos, a não ser que para correção de algum destes casos seja necessária alguma correção em uma unit comum, nesta situação precisarão ser liberados todos os módulos que fazem uso da unit em questão.

Casos de versionamento de DLLs também devem ser vinculados ao caso do Branch da Versão.

 

 

 

Fechamento do branch e liberação de versões

[padronizar] Atualização dos arquivos "Config.ini"

Os arquivos "Config.ini" são os arquivos onde informamos o número do caso pai (caso de versionamento das versões), número da versão e data de liberação dos módulos, portanto é necessário atualizar estes arquivos à cada liberação de versão.

Antes de começar a atualizar estes arquivos precisaremos realizar o Update, Merge e Commit do Branch da versão, para saber como realizar cada uma destas etapas, clique aqui e em seguida siga os passos abaixo para atualização dos arquivos:

Na pasta do Branch da Versão (Exemplo "C:\Caso-BranchVersão-0044433"), acessar "WorkingCopies > Sistemas", conforme exemplo:

2.jpg

No quadro "Pesquisar Sistemas" digitar "config.ini" para que sejam filtrados apenas os arquivos que contenham esse nome e extensão:

14.jpg

15.jpg

Selecionar os arquivos de todos os módulos que serão liberados, clicar com o botão direito do mouse e em seguida clicar em "Edit with Notepad++":

Neste exemplo faremos a liberação do Branch 041, portanto serão liberados apenas os módulos de Compras, Vendas e NFe.

16.jpg

Os arquivos serão abertos com o aplicativo do Notepad++, conforme demonstrado abaixo. Em todos os arquivos será necessário atualizar os campos "CasoPai", "DataLiberacao", "Versao1" e "Versao2". Após atualizar os campos clicar no botão "Salvar":

Caso Pai

Caso do versionamento do módulo, no Branch 41 o caso pai do módulo de Vendas é o 0044227, por exemplo.

Data Liberação

Data que serão compilados os executáveis para liberação.

Versao1

Preencher com o número da versão anterior ao "ponto". No exemplo do Branch 041 será liberada a versão 6.555 do Vendas, portanto o campo "Versao1" deve ser preenchido com "6".

Versao2

Preencher com os números após o ponto. No exemplo da versão 6.555, preencher o campo "Versao2" com "555".

17.jpg

Atenção: Somente para o arquivo do módulo NE é necessário preencher também os campos "Versao1Principal" e "Versao2Principal".

O módulo NE utiliza as mesmas configurações do projeto do Vendas, portanto o arquivo "Config.ini" do NE deve apontar qual a versão principal do módulo do Vendas que ele estará vinculado.
No exemplo da liberação do Branch 41, que iremos liberar a versão 6.555 do Vendas, os campos deverão ser preenchidos da seguinte forma:

18.jpg

 

Fechamento do branch e liberação de versões

[padronizar] Atualização dos arquivos Altver.rtf

Geração do arquivo "Altver.rtf"

O que são os arquivos "Altver"?

Os arquivos "Altver" contém as informações do que será liberado em cada versão. Existem versões que apenas trataram ajustes/erros no sistema e outras versões que além de correções de erro, liberam também alguma melhoria do sistema, novo recurso, etc, então os mesmos precisarão ser preenchidos de acordo com essas informações.

Geração dos arquivos:

O arquivo deverá ser criado sempre através do WordPad, devendo conter o número da versão que será liberada e quais as implementações da versão, conforme exemplos abaixo:

Exemplo de arquivo Altver onde foram realizados apenas ajustes ou correções de erro no sistema:

19.jpg

Exemplo de arquivo Altver onde houveram melhorias no sistema:

20.jpg

Para o módulo NFE não é necessário criação do arquivo Altver, pois utilizará o mesmo arquivo que o módulo de Vendas.

Atualização dos arquivos "Altver.rft" no SVN e módulos

Após gerar os arquivos Altver de todos os módulos que serão liberados, será necessário atualizá-los no SVN e no projeto de cada módulo.

Atualização dos arquivos Altver no SVN

Para isso, acessar a pasta do Branch da Versão e em seguida "WorkingCopies > Sistemas > Vendas", por exemplo. Deverá eliminar o arquivo "Altver.rtf" já existente e substituir pelo novo arquivo gerado, mantendo a nomenclatura "Altver.rtf":

1.jpg

Esse processo deverá ser repetido para todos os módulos que serão liberados, exceto o módulo NFE, que utilizará o mesmo arquivo que o módulo Vendas. 
O arquivo "AltverNE.rtf" não deve ser excluído ou substituído.

Atualização dos arquivos Altver nos módulos (projetos)

Após fazer a substituição do arquivo "Altver.rtf" da pasta de cada um dos módulos que serão liberados, será necessário alterar o projeto de cada um dos módulos para que ele passe a "enxergar" o novo arquivo adicionado. Para isso deveremos acessar a pasta "project" e executar o programa "VD.dproj":

2.jpg

O projeto do módulo que executou, "VD.dproj", "CC.dproj", "FN.dproj" (...) será aberto aberto no Delphi:

image-1610106069108.png

Na tela do Delphi, utilizar o comando "CTRL + F12" para abrir a tela de pesquisa de units "Search for units". No campo de pesquisa digite "altver", em seguida selecione a unit "ALTVER1.pas" e clique em "OK". Será aberta a unit "ALTVER1" em uma nova aba:

26.jpg

27.jpg

Clicar na aba "VD", pesquisar novamente por "altver" e agora selecionar a primeira opção, "AltVer.pas". Clicar em "OK" e será aberta uma nova aba com a unit "AltVer":

28.jpg

29.jpg

A ordem de abertura das units sempre devem seguir o padrão "ALTVER1.pas" e depois "AltVer.pas" por motivos relacionados ao código(herança).

Na unit "AltVer" aperte a tecla F12 do teclado e será aberta a tela "Correções e Implementações da Versão Corrente":

Observar que por enquanto o número da versão e as implementações não foram atualizadas. 

30.jpg

Clicar com o mouse dentro do quadro "Correções e Implementações da Versão Corrente" para selecioná-lo e em seguida, nas propriedades do canto inferior esquerdo da tela, clicar no DLG da propriedade "LoadRTF". Será aberta uma tela para buscar o arquivo à ser importado:

31.jpg

Na tela "Selecione um RTF", certifique-se de que está dentro da pasta do projeto correto, ou seja, do mesmo projeto que estiver fazendo as alterações no Delphi e então selecione o arquivo "Altver.rtf" e clique em "Abrir".

32.jpg

Após importar o novo arquivo "Altver.rft", verifique que no quadro "Correções e Implementações da Versão Corrente" o número da versão e o conteúdo serão atualizados conforme o arquivo importado. Clique no botão "Salve All (Shift+Ctrl+S)" para salvar o projeto e em seguida pode fechar o Delphi:

33.jpg

O altver do NE é atualizado dentro do projeto do VD pela parte lateral "PagesControl1" onde tem os dois altver "TS_ALTVER" e "TS_ALTVERNE":

Clipboard - 19 de Julho de 2023 às 08_49.png

É só clicar no "TS_ALTVERNE" e selecionar o arquivo AltverNE.rtf conforme feito nos demais projetos:

Clipboard - 19 de Julho de 2023 às 08_50.png

Fechamento do branch e liberação de versões

[padronizar] Commit das alterações dos arquivos "Config.ini" e "Altver.rft"

Após realizar a atualização dos arquivos "Config.ini" e "Altver.rft" é necessário commitar essas alterações, ou seja, subir as alterações que foram realizadas por enquanto somente em sua máquina para o código fonte do Branch da Versão.

Clique com o botão direito do mouse na pasta do Branch da Versão, exemplo "Caso-BranchVersão-0044433" e em seguida em "SVN Commit":

34.jpg

No quadro das mensagens deverá ser incluída uma mensagem padrão, contendo o Branch da Versão que será liberado, quais casos de versões estão relacionados à ele e quem está realizando o commit (caso esteja utilizando por uma máquina virtual), conforme exemplo abaixo:

35.jpg

No quadro "Changes made" deverão ser selecionados os arquivos que foram modificados e que deverão ser commitados:

Deverão ser selecionados apenas os arquivos com extensões ".dfm", ".Config.ini" e ".rtf".

Dica: Clique no campo "Extension" para que os arquivos sejam ordenados por extensão, assim facilitará selecionar somente os arquivos das extensões ".dfm", ".Config.ini" e ".rtf". 

36.jpg

Após selecionar os arquivos que deverão ser commitados, clicar em "OK". Será aberta a tela abaixo para realização do commit, após finalizar clicar em "OK": 

37.jpg

Pronto, as alterações foram salvas e enviadas ao código fonte do Branch da Versão.

 

 

Fechamento do branch e liberação de versões

Solicitando ao desenvolvedor a inclusão do Branch da versão no Trunk

Após concluir a revisão de teste de todos os casos que foram incluídos no branch da versão e a atualização dos arquivos "config.ini" e "altver.rtf", uma anotação solicitando a inclusão do branch da versão no trunk deverá ser enviada para o desenvolvedor responsável no Mantis. Informando os módulos que foram alterados e os casos que foram tratados. 

A anotação de solicitação deverá seguir o seguinte padrão: 

image-1633029873825.png

A anotação não só ajuda na conferência dos arquivos altver e config.ini antes do commit, como facilita muito a busca por casos no SVN quando necessário buscar um tratamento de uma determinada versão.

 

Fechamento do branch e liberação de versões

[padronizar] Geração de executáveis para liberação das versões

Compilando os executáveis

Para gerar os executáveis que faremos a liberação, deveremos acessar a pasta do projeto dentro do Branch da Versão, exemplo (C:\Caso-BranchVersão-0044433\WorkingCopies\Sistemas\SSVendas\project) e em seguida abrir o arquivo ".dproj":

1.jpg

Será aberto o Delphi, digitar "Shift+F9" para abrir a tela "Configurações de Compilação". Selecione qual a Empresa (ambiente) será gerado o executável e confira se os campos "Caso Pai", "Data de liberação" e "Versão" estão corretos. No quadro "Diretório" selecione onde o executável deverá ser salvo e então clique em "OK (F5)":

39.jpg

Será exibida a tela "Information". Clique em "Yes to All" e em seguida em "OK":

40.jpg41.jpg

Será iniciada a compilação do executável:

42.jpg

Quando a compilação for finalizada, no canto inferior esquerdo será exibida a mensagem "Sucess" e o tempo de compilação:

43.jpg

Verifique que o executável terá sido gerado dentro do diretório indicado anteriormente. Confirmar se o executável foi gerado corretamente de acordo com as opções selecionadas, observando as informações de "Data de modificação", "Marcas Registradas", "Nome do produto" e "Versão do produto":

44.jpg

Até aqui fizemos a compilação do executável do Vendas apenas para o ambiente Nooven, então precisaremos compilá-lo ainda para o ambiente SuperSoft e depois compilar os executáveis das demais versões que serão liberadas. Para não perder os executáveis que já geramos e ir fazendo a separação, é aconselhável criar os diretórios "SS", "NV" e "EC" e ir alocando os executáveis gerados em cada uma dessas pastas, conforme o ambiente do executável:

45.jpg

Recortar o executável e colá-lo dentro da pasta do ambiente correspondente. Neste exemplo, "NV":

46.jpg

Agora compilaremos o executável do Vendas para o ambiente Supersoft. Voltar no Delphi, digitar "Shift+F9", selecionar a empresa "SuperSoft" e clicar em "OK (F5)" e seguir os passos:

47.jpg

49.jpg50.jpg

48.jpg

43.jpg

Observar que agora terá sido gerado o executável do ambiente "SuperSoft". Recortar e colar o executável dentro da pasta do diretório correspondente:

51.jpg

Os passos acima deverão ser realizados para todos os executáveis que serão liberados.

O módulo NE estará dentro do projeto do Vendas, para compilá-lo deverá executar o arquivo "NE.dproj".

Para os módulos "NE" e "FN" é necessário compilar também os executáveis para o ambiente E-Contab.

Observação: Caso tenha o Delphi instalado em sua máquina e não esteja fazendo a compilação por uma máquina virtual, no quadro "Compactador" pode assinalar a opção "AsPack" (se tiver o programa instalado na máquina) para que os executáveis já sejam compilados compactados.


Validação das informações dos executáveis

Conferência dos executáveis

Após todos os executáveis terem sido compilados, se o processo tiver sido realizado pela máquina virtual será necessário copiar estes executáveis para sua máquina local para que possa compactá-los.

Copie as pastas referentes à cada ambiente que foram criadas na máquina virtual e que estão com os executáveis que foram gerados e cole em sua máquina local.

Máquina virtual:
52.jpg

Máquina local:
53.jpg


Validação das informações na abertura dos executáveis

Copiar os executáveis para o local da instalação dos sistemas SuperSoft e executá-lo para abertura do sistema:

54.jpg

Verifique se a versão que será exibida e se nome, ambiente e versão do sistema estarão corretos:

55.jpg

Após atualizar o sistema, acessar o menu "Ajuda > Sobre" e verificar se o número da versão, data da liberação e número do caso pai estarão corretos (dados do arquivo "Config.ini"):

56.jpg

Em seguida acesse o menu "Ajuda > Correções e Implementações da Versão" e confira se a versão e as implementações/melhorias estão corretas (dados do arquivo "Altver.rtf"):

57.jpg

Validação das informações do executável (propriedades)

Clique com o botão direito do mouse no executável e em seguida clique me "Propriedades". Será aberta a tela com as propriedades do executável:

58.jpg

59.jpg

Clique na aba "Detalhes" e confira se os dados "Descrição do arquivo", "Versão do arquivo", "Nome do produto", "Versão do produto", "Direitos autorais" e "Marcas registradas" estarão corretos:

Exemplo de dados das propriedades do módulo Vendas do ambiente Supersoft.

60.jpg

Exemplo de dados das propriedades do módulo Vendas do ambiente Nooven.

61.jpg

62.jpg

Os passos acima deverão ser realizados para todos os módulos que serão liberados e para todos os ambientes.

Após conferir os executáveis de todos os módulos e se todos estiverem certos, ou seja, se não houver a necessidade de compilar nenhum dos executáveis novamente, deverá ser adicionada uma anotação no Mantis, no caso do Branch da Versão solicitando ao desenvolvimento que subam o Branch da Versão para o Trunk. Na anotação devem ser listados todos os casos relacionados ao Branch, ou seja, todos os "casos pai (casos de versionamento dos módulos)" e todos os casos que serão liberados de correção, melhoria e/ou solicitação:

63.jpg

Seguir a estrutura:
Casos pai (versionamento do módulo)
  Casos filho (casos relacionados ao módulo acima e que serão entregues através da liberação do módulo)

 
Incluindo Branch da versão no Trunk

    Desenvolvedor, fazer a Inclusão Branch da versão no Trunk

    Compactação dos executáveis

    Depois de conferir todos os executáveis gerados, caso tenha feito a compilação por uma máquina virtual será necessário compactá-los.

    Para isso deverá abrir o programa "ASPack" e clicar em "Open" para selecionar os executáveis que serão compactados:

    64.jpg

    Ao clicar em "Open" será aberta a tela "Select file to compress". Se os executáveis estiverem organizados nas pastas de cada ambiente, conforme instruções anteriores, selecione a pasta "SS", por exemplo, e dentro dela selecione todos os módulos e clique em "Abrir":

    65.jpg

    O programa começará a compactar os arquivos. Aguardar até que a compactação seja finalizada (quando finalizar o programa "ASPack" será encerrado automaticamente):

    66.jpg

    Quando o aplicativo do "ASPack" for finalizado, verificar que o tamanho dos executáveis terá diminuído significativamente.

    Esse processo deverá ser executado para todos os módulos de todos os ambientes que serão liberados.

    Assinando os executáveis

    Após ter compactado todos os executáveis será necessário assiná-los. Para isso precisará ter em mãos o certificado digital da SuperSoft, portanto, caso não esteja com ele, deverá pegá-lo (normalmente estará com a equipe da qualidade ERP ou Fisco).

    Com o certificado já plugado na máquina, execute o programa "Assinador de Arquivos", disponível no caminho (\\ss\qualidade\Compilador\Assinador de exe):

    67.jpg

    Clique no botão "Add Arquivos" e será aberta a tela "Arquivos Executáveis". Selecione todos os executáveis e clique em "Abrir":

    Os executáveis do ambiente E-Contab NÃO devem ser assinados!

    68.jpg

    Todos os executáveis que foram selecionados serão listados, então clique no botão "Assinar" para iniciar a assinatura:

    69.jpg

    O sistema irá solicitar a senha do certificado para que os executáveis sejam assinados. Preencher a senha "sS2019"

    70.jpg

    Após assinar os executáveis, o programa "Assinador de arquivos" adicionará um "OK" na frente de cada um dos executáveis selecionados e que foram assinados:

    71.jpg

    Para conferir se todos os executáveis foram assinados corretamente, verifique se nas "Propriedades" de cada um dos executáveis foi adicionada a aba "Assinaturas Digitais":

    72.jpg

     

    Fechamento do branch e liberação de versões

    [padronizar] Geração dos instaladores (setups) das versões

    Após todos os executáveis terem sido compilados, conferido se as informações estão corretas, compactados e assinados, deverão ser gerados os setups de instalação dos executáveis.

    Atenção! Se houver a necessidade de atualização ou criação de algum arquivo padrão para a instalação dos sistemas (setup), é necessário disponibilizar o arquivo no caminho (\\131.72.202.226\centralop\INNO_FIREDAC) antes de iniciar a geração dos instaladores.

    Acessar o caminho "\\ss\qualidade\FERRAMENTAS" e abrir o programa "GeradorSetupVersao2":

    73.jpg

    Clicar no "DLG" para abrir a tela de pesquisa "Abrir Executável". Selecione o primeiro executável para geração do setup de instalação e então clique em "Abrir":

    74.jpg

    75.jpg

    As informações referentes ao módulo que foi selecionado serão preenchidas, confira se tudo está correto e então clique em "Processar":

    76.jpg

    Será aberta a tela:

    77.jpg

    Aguardar até que seja exibida a mensagem abaixo. O executável será salvo no caminho indicado no campo "Caminho para geração da instalação":

    78.jpg

    Os setups de instalação deverão ser gerados para todos os módulos dos ambientes SuperSoft e E-Contab. Para o ambiente Nooven não há necessidade de geração dos setups.

    Para os executáveis ERP, durante a liberação do Branch da Versão NUNCA clique na opção "Publicar", pois este comando fará a publicação na Central de Operações.

    Assinatura dos instaladores

    Após todos os instaladores terem sido gerados, será necessário assiná-los. É o mesmo processo que vimos no tópico "Assinado os executáveis", alterando apenas que agora ao invés de selecionar os executáveis, selecionaremos os instaladores.

    O setup do módulo "AP - Preços" não fica como "assinado", então não é necessário assiná-lo.

    Para os instaladores do ambiente E-Contab NÃO deve ser feita a assinatura.

     

    Fechamento do branch e liberação de versões

    [padronizar] Publicação dos executáveis e instaladores

    Após todos os executáveis e instaladores dos módulos que serão liberados terem sido gerados e assinados, será necessário publicá-los no Mantis, FTP e no diretório da Qualidade.

    Publicação no diretório da Qualidade (\\ss\qualidade\LIBERADO_VERSOES_EXECUTAVEIS):

    Primeiramente deverá ser criada uma pasta para cada módulo que será liberado, seguindo o padrão "Número do caso pai_Versão_Número da Versão_liberado_data da liberação", conforme exemplo: "0044227_Versão_6.555_liberado_08-01-2021". Dentro dessa pasta deverão ser criadas uma pasta para cada ambiente que será liberado, no exemplo do módulo de Vendas, uma pasta "SS" e outra pasta "NV":

    79.jpg

    O arquivo "Altver" referente ao módulo também deverá ser incluído nesta pasta, com o padrão "Altver+módulo (neste exemplo, AltverVD)":

    80.jpg

    Dentro da pasta de cada ambiente deverá ser salvo o executável correspondente:

    81.jpg

    82.jpg

    Este processo deverá ser realizado para todos os módulos que serão liberados.

    Após os passos acima serem realizados, copiar a pasta de cada um dos módulos que foram criadas, acessar o caminho "\\ss\qualidade\LIBERADO_VERSOES_EXECUTAVEIS" e colá-las dentro das pastas dos respectivos módulos:

    83.jpg

    84.jpg

    Publicação no FTP

    Renomear as pastas dos módulos para o padrão "Módulo_Versão", conforme exemplo: "VENDAS_6.555":

    85.jpg

    Em seguida, em todas as pastas delete o arquivo "Altver" de cada uma delas:

    86.jpg

    Em seguida, na pasta de cada um dos ambientes deverá ser incluído o Setup de instalação (quando houver) e renomear os executáveis:

    87.jpg

    88.jpg

    Os executáveis deverão respeitar o padrão:
    Executáveis SS: Manter apenas a abreviatura do módulo, exemplo: VD, CC, FN, etc.
    Executáveis NV: Abreviatura do módulo_sigla NV, exemplo: VD_NV, CC_NV, FN_NV, etc.
    Executáveis EC: Abreviatura do módulo_sigla EC, exemplo: NE_EC e FN_EC.

    Após realizar os passos acima para todos os módulos, copiar as pastas e acessar o caminho "ftp://ftp.supersoft.com.br:2021/pub/SISTEMAS/". Deletar as pastas já existentes dos módulos que serão liberados e substituí-las pelas pastas com as novas versões:

    89.jpg

    Publicação no Mantis

    No Mantis a publicação dos módulos liberados deverá ser apontada em cada um dos casos pai (casos de versionamento dos módulos) que estão vinculados ao Branch que está sendo liberado.

    Nos casos do Mantis deverão ser anexados os executáveis de cada um dos ambientes de cada módulo e os instaladores, seguindo o padrão de mensagem:

    *Adicionar usuários do Suporte, Projetos, Comercial e Qualidade na anotação

    MÓDULO XX.XXX (Número da versão)
    Data de liberação: DD/MM/AAAA
    Ambientes: SuperSfot / Nooven (Adicionar E-Contab quando for liberação dos módulos NE e FN).

    ** VERSÃO NÃO LIBERADA NA CENTRAL DE OPERAÇÕES **

    Executáveis disponíveis em:

    - ftp://ftp.supersoft.com.br:2021/pub/Sistemas/
    - Anexo ao caso

    Suporte, Projetos e Comercial,

    Favor verificar os casos vinculados a versão e atualizar os clientes que necessitam da atualização.

    Obrigado.

    *Anexar os executáveis e instaladores (detalhar à qual ambiente se referem).

    Abaixo segue exemplo de preenchimento no Mantis (caso 44228):

    90.jpg

    Observação: Quando houver casos onde foram criadas ou alteradas DLLs de algum cliente, é necessário vincular o caso de versionamento da DLL ao caso do Branch e seguir o mesmo procedimento de publicação para o caso de versionamento da DLL. Abaixo exemplo da mensagem de publicação em casos de DLL:

    *Adicionar usuários do Suporte, Projetos, Comercial e Qualidade na anotação

    CustomXX Nome_do_Cliente (XX = módulo, exemplo CustomVD, CustomFN, CustomCE, etc).
    Versão: 5.00 (sempre incremental a partir de 5.00)
    Data de liberação: DD/MM/AAAA

    Liberar em conjunto com: SSmodulo XX.XXX (Módulo e versão do módulo que deverá ser atualizado em conjunto).

    DLL disponível em:

    - \\ss\transfer\SISTEMAS\DLLS_NOVO_SKIN (colar a DLL neste caminho, dentro da pasta do respectivo cliente)
    - Anexo ao caso.

    Qualquer duvida estou a disposição.

    Obrigado.

    Publicação nos comunicadores (Atualmente é utilizado o Rocket Chat)

    No comunicador que estiver sendo utilizado pelos setores (atualmente é o Rocket Chat, no canal "entrega-versoes"), deverá ser enviada uma mensagem avisando os usuários sobre a liberação das versões e relacionando os casos que estão sendo liberados. Abaixo segue exemplo do padrão da mensagem à ser seguido:

    Suporte, Projetos e Comercial

    Seguem as versões e casos liberados na data de DD/MM/AAAA.
    Executáveis disponíveis no FTP e anexo aos casos.

    0044227: Versão 6.555 - VENDAS
    0044228: Versão 2.655 - NFE
      0043362: De Paulo - Sistema apresenta mensagem "Ativado o modo de cálculo manual dos tributos dos itens."         indevidamente.
      0044128: OASIS (Carina) Ao importar itens de outro documento, sistema está duplicando os itens
      0044048: OASIS (Manuela) Ao emitir NFE com CFOP 6.118-000, sistema deve abrir outra NFE 6.923-000 para Remessa por Conta e Ordem
      0043550: Expet (Taxa de Conversão do produto no Mobile)
      0044115: Expet (Taxa de Conversão do produto no Mobile)

    0044220: Versão 4.970 - COMPRAS
      0044029: STILETTO - Ao visualizar OC, sistema apresenta data de vencimento errada.

    Qualquer dúvida estou a disposição.

    Obrigado.

    Publicação na Central de Operações

    Para o segmento ERP os módulos liberados no Branch NÃO devem ser publicados na Central de Operações. A publicação na Central deverá ser feita mensalmente, em análise com o Gerente/Supervisor do setor de Suporte para verificar qual versão "estável" deverá ser publicada.

    Para publicação dos módulos na Central de Operações utilizaremos o programa "GeradorSetupVersao2", que já vimos anteriormente para a geração dos executáveis.

    A diferença é que para realizar a publicação na Central de Operações deveremos selecionar o módulo à ser publicado e então clicar no botão "Publicar". O executável deverá ser buscado no caminho "\\ss\qualidade\LIBERADO_VERSOES_EXECUTAVEIS", deverá ser confirmado se os dados do executável estão corretos e em seguida clicar no botão "Publicar", conforme exemplo:

    91.jpg

    Este processo deverá ser realizado para todos os módulos e para cada um dos ambientes que será realizada a publicação na Central de Operações.

    Após realizar a publicação de todos os módulos e ambientes, conferir se em "\\ss\transfer\SISTEMAS\ASSINADOS", dentro da pasta de cada módulo e cada ambiente, se o executável foi atualizado com a data de liberação do mesmo:

    92.jpg

    Conferir também se em  "\\ss\transfer\SISTEMAS\INSTALADORES", dentro da pasta de cada módulo e cada ambiente, se o instalador foi gerado com a data da publicação:

    93.jpg

    Se tudo estiver correto, copiar o arquivo "Altver" de cada um dos módulos que foram publicados e colá-los no caminho
    "\\ss\transfer\SISTEMAS\ASSINADOS":

    94.jpg

    A conferência da geração dos executáveis, instaladores e cópia dos arquivos Altver deverão ser realizadas para cada um dos ambientes publicados.

    Após publicar as versões é necessário acessar o link Comunicados Delphi e cadastrar as novas versões.

    Liberando versão para todas as empresas.

    image.png

    Selecione a opção Considerar esta versão para o Dashboard para que a nova versão apareça na central de operações do cliente.

    Entregando versão para um cliente específico.

    image.png

    1 - Colocar o modulo que será enviado para o cliente especifico em: H:\centralop\INNO_FIREDAC\SISTEMAS\(EC ou NV ou SS)\EXES_ESPECIFICOS

    2 - NÃO selecione a opção Considerar esta versão para o Dashboard.

    3 - Selecione a opção Liberar versão para clientes específicos? e digitar o número do CNPJ/CPF e clicar no "+", dessa forma, a versão aparecerá automáticamente na central de operções apenas desses clientes.

    Fechamento do branch e liberação de versões

    [padronizar] Finalização do fechamento do Branch da Versão

    Após terem sido realizadas todas as etapas anteriores, agora é necessário apenas fechar todos os casos relacionados ao Branch da Versão (caso de erro/melhoria/customizações e casos de versionamento das versões) para que em seguida possamos fechar o caso do Branch.

    Para isso basta acessar cada um dos casos, começando pelos casos que foram tratados dentro do Branch da Versão em questão e seguir os passos abaixo:

    95.jpg

    96.jpg

    97.jpg

    98.jpg

    Após fechar todos os casos tratados no Branch, o caso do Branch da Versão passará a demonstrar:

    99.jpg

    Repetir o processo acima para os "casos pai (Versionamento dos módulos)" e depois fechar também o caso do Branch da Versão.

    Depois que todos os casos do Mantis e o Branch da Versão for fechado, no Trello mover os casos da coluna "Aguardando Liberação" para a coluna "Entregues":

    100.jpg

    Sempre após um Branch da Versão ser encerrado é obrigatório realizar o processo da criação de um novo Branch da Versão e criação dos novos "Casos pai (Versionamento dos módulos)".

    Fechamento do branch e liberação de versões

    [padronizar] Geração de Customizações (DLLs) para liberação das versões

    Compilando uma Custom

    Localizando a pasta das Customizações

    Para a compilação de uma Custom será necessário baixar a pasta específica dela que fica em "https://svn.supersoft.com.br/svn/desenvolvimento/outros/DLLs/EmFireDac Skin" com o nome do módulo + o nome do cliente, exemplo "CustomVDOasis":

    image-1684245788082.png

    Para compilar será necessário copiar essa pasta do EmFireDac Skin para o trunk -> CodigoBaseSkin -> WorkingCopies -> Sistemas, e colar:

    image-1684245947113.png

    Após isso abrir a CustomVD.dproj (sempre será o nome do módulo da custom que está sendo compilada) que está dentro da Custom -> Project:

    image-1684247717109.png

    Atualização da versão dentro da Custom

    Ao abrir, antes de compilar será necessário ajustar o número da verão em da custom, ir em "Project -> Options -> Version Info" e corrigir para o número da versão que será liberada, e clicar em OK:

    image-1684247625792.png

    Na pagina inicial, abaixar a barra e corrigir o número da versão e conferir o nome da Custom:

    image-1684247840484.png

    Após isso crie uma pasta em: \\ss\qualidade\LIBERADO_DLLs + o nome do cliente + o nome do projeto da custom, exemplo: "\\ss\qualidade\LIBERADO_DLLs\Oasis\CustomVD"

    Pasta das Customizações

    Crie uma pasta com o número do caso + versão + data de liberação, assim sempre terá as versão antigas salvas

    image-1684254498813.png

    Antes de compilar será necessário ajustar o caminho para salvar a dll em "Project -> Options -> Delphi Compiler -> Output directory" e clicar em OK:

    image-1684248169511.png

    Salve o projeto:

    image-1684248319119.png

    Compilando a Custom

    Digitar "Shift+F9" para iniciar o processo de compilação, será exibido no canto inferior esquerdo será exibida a mensagem "Sucess" e o tempo de compilação:image-1684248344813.png

    Commit da Custom

    Depois acesse novamente a pasta em que foi compilado o projeto e copie os arquivos .dpr e .dproj:

    image-1684249123487.png

    E cole (clique em SIM para substituir) dentro da pasta "EmFireDac Skin" -> nome do projeto -> Project:

    image-1684249185806.png

    Após isso é só clicar com o botão direito na tela TortoiseSVN -> Commit, como padrão sempre usamos o resumo do caso:

    image-1684249350744.png

    Depois ao dar o showlog na pasta será possível ver a alteração na versão da Custom:

    image-1684249438175.png


    Validação das informações das Custom

    Após a custom ser compilada será necessário conferir se foi gerada a versão correta, acesse o caminho em que foi compilada:

    image-1684254657480.png

    Selecione ela, clique com o botão direito e vá em "Propriedades" -> "Detalhes" e veja se a versão do arquivo está correta:

    image-1684249706458.png

    Compactação das Customizações

    Depois de conferir a Custom gerada será necessário compactá-la. Para isso deverá abrir o programa "ASPack" e clicar em "Open" para selecionar a custom que será compactada e clicar em "Abrir":

    image-1684249846527.png

    O programa começará a compactar os arquivos. Aguardar até que a compactação seja finalizada (quando finalizar o programa "ASPack" pode fecha-lo):

    image-1684249909608.png

    Após isso é só deletar o arquivo .bak que gerou na pasta da dll:

    image-1684249969539.png


    Liberação da Custom no Mantis

    Após os procedimentos acima será necessário copiar a pasta da custom gerada para o transfer "\\ss\Trasnfer\SISTEMAS\DLLS_NOVO_SKIN" + Cliente + Projeto:

    image-1684250166888.png

    image-1684250208791.png

    Por ultimo deverá ser adicionada uma anotação no Mantis referente a publicação das Dlls liberada deverá ser apontada em cada um dos casos pai (casos de versionamento dos módulos) que estão vinculados ao Branch que está sendo liberado + sistema (se houver alterações no módulo que necessitam da Custom)  

    Nos casos do Mantis mencionar a versão da custom, seguindo o padrão de mensagem:

    [b]CustomCP Rodaleve[/b]
    Versão: 5.00
    Data de liberação: 11/04/2023

    *Adicionar usuários do Suporte, Projetos, Comercial e Qualidade na anotação

    CustomXX XXXXXX (Projeto e nome do cliente)
    Versão: X.XX (Número da versão)
    Data de liberação: XX/XX/XXXX

    Liberar em conjunto com: Não há necessidade de atualização do executável.

    DLL disponível em:
    - \\ss\transfer\SISTEMAS\DLLS_NOVO_SKIN

    Qualquer duvida estou a disposição.

    Obrigada.

    Abaixo segue exemplo de preenchimento no Mantis caso 0048457:

    image-1684255393373.png

    Depois disso os casos podem ser fechados.

     

    Subprocessos Dependentes

    Subprocessos Dependentes

    [padronizar] Programação dos responsáveis pelo branch das versões

    ERP:

    Atualizado dia: 02/03/2021

    Até branch: 055

    Fisco:

    Atualizado dia: 12/05/2021

    Até branch: 023

    Resumo do processo

    Cada Branch de Versão terá uma dupla responsável por sua abertura, manutenção e fechamento, ou seja, um desenvolvedor e um testador que darão início ao Branch da Versão e o acompanharão até que o mesmo seja finalizado.

    O arquivo em anexo nesta página, é uma programação para os próximos branchs e com seus responsáveis.

    Responsáveis por gerar a programação:

    - Ainda a decidir, exemplo ERP em anexo gerado por Mateus Joia(Qualidade).

    Manutenção da página

    No topo da página terá informações relativas a atualização do documento. Quando o mesmo for atualizado, deve-se atualizar essas informações.

    Quanto ao anexar o documento, deverá "substituir" o já existente referente ao seu departamento.

    Exemplo:

    - Editar página

    - Clicar no canto direito em Anexos

    53.png

    - Na tela que abre, clicar em Editar, desta forma conseguiremos substituir o arquivo mas sem alterar nome ou forma lista grande de anexos, já que até o momento o botão Excluir não está funcionando.

    54.png

    - Arraste para área indicada, o novo arquivo atualizado com a programação, após clique em Salvar

    Certifique-se de estar substituindo o arquivo correto de acordo com o departamento.

    55.png

    Subprocessos Dependentes

    Incluindo Branch da versão no Trunk (desenvol)

    Resumo do processo

    Passar as alterações trabalhadas no branch da versão, para o Trunk.

    - Update e Clean Up nas pastas locais C:\Codigo Fonte e pasta da versão.
    - Verificar se a pasta da versão está atualizada com Trunk, isso pode ser feito comparando último log do Trunk com última atualização no branch da versão.
    - Caso estiver desatualizada, atualize fazendo Merge.
    - Copie os arquivos dentro da pasta da versão (sem utilizar CTRL + A para não selecionar o arquivo oculto do .svn), cole dentro de C:\Codigo Fonte.
    - Simule o Commit, aperte em None por segurança, deixe marcado a opção "Show unversioned files" para aparecer os arquivos criados na versão.
    - Coloque no log a mensagem de liberação da versão.
    - Faça as comparações de alterações necessárias.
    - Se tudo certo, então aperte em OK.

    Envolvidos no processo

    Dupla responsável pelo branch da versão, porém processo realizado pelo Dev.

    Etapas do processo

    Baixar a pasta a seguir para o computador através de um Checkout usando o endereço:

    Ou caso já tenha em sua máquina,  atualizar o Trunk local com Update.
    Faça o processo de Merge na sua pasta local, com as seguintes alterações:

    URL to merge from: Colocar endereço no branch da versão atual
      Ex: https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/048-Caso-0044760
    Merge depth: Working copy Importante essa parte!

    56_.png

    57.png

    Fazer um Commit com as seguintes informações:

    Nas Units com Status “modified(property change only)” dar um Revert

    58.png

    Utilizar como mensagem padrão a seguinte estrutura:

    Seguir a estrutura:
    Resumo do caso pai do branch da versão
    Casos pai (versionamento do módulo)
      Casos filho (casos relacionados ao módulo acima e que serão entregues através da liberação do módulo)

    52.png

    Ponto inicial do processo

    Pedido vindo da qualidade através do caso pai, para que seja incluído no Trunk as alterações do branch da versão.

    Ponto final do processo

    Avisar no mesmo caso que o código já está no Trunk e avisar na ferramenta de comunicação (Atualmente Rocket) que foi feita a inclusão das alterações e que podem iniciar abertura do casos do próximo branch da versão.

    Resultado esperado

    Passar para o Trunk o código trabalhado por versão, validado e testado, mantendo a integridade do Trunk para uma eventual versão de urgência "B Erro" no fluxograma.