Estratégia de Reutilização

Versão do documento: 1.1, 26/02/2020

Visão Geral

A Basis utiliza o Element para gestão de seus ativos reutilizáveis. O Element é composto de duas ferramentas principais:

  • Um grupo de repositórios no Git para armazenar o código fonte dos reutilizáveis.

  • Uma ferramenta de Gestão de Ativos, o Nexus

A ferramenta de Integração Contínua Jenkins é utilizada para compilar, integrar, testar, validar, gerenciar releases e publicar os ativos reutilizáveis. Os mesmos passam pela ferramenta Sonar para avaliação da qualidade.

Gerência de ativos

O acompanhamento deverá acontecer de forma trimestral, onde deverá ser levantado as informações abaixo sobre todos ativos, e se houver, sobre novos ativos.

Data do Acompanhamento:

Ativos acompanhados:

Houve ativo que não foi utilizado nos últimos 12 meses? Se sim, qual?

Foi avaliado as versões dos Ativos?

Houve modificação em algum ativo? Caso sim, comunicar por e-mail.

Há ativos candidatos? Se sim, executar processo de novo ativo.

Definição de Ativos Reutilizáveis

Considera-se um ativo reutilizável qualquer componente de software que atenda aos critérios de aceitação definidos. As categorias de componentes reutilizáveis de código no momento são:

  • Componentes de Apresentação

  • Componentes Server-Side

  • Componentes para Testes

  • Geradores

  • Definições de Componentes/Arquétipos

  • Serviços reutilizáveis

Critérios para inclusão de ativos reutilizáveis

No projeto em andamento o Gerente de Reuso verifica no Check-list de Avaliação de Requisitos preenchido pelo Desenvolvedor se houve a identificação de algum candidato a Reuso. (Se oportuno, essa identificação pode ocorrer durante toda execução dos projetos)

Neste caso, existem duas situações distintas:

  • O componente é novo e deverá ser criado um novo ativo

  • O componente pode ser adicionado a ou melhorar um ativo existente

Caso tenha sido identificado um novo ativo, o Gerente de Reuso deve ser acionado, para dar inicio ao registro desse novo ativo. Isso é feito com a abertura de uma ocorrência no SGO para o Departamento: Arquitetura, Objeto da Tarefa: Componente e Ação: criar.

No caso de acréscimo ou atualização de um ativo existente, o desenvolvedor pode fazer a solicitação via SGO, conforme parágrafo anterior, ou via um Merge Request no repositório do ativo existente. O uso de Merge Request permite agilizar a inclusão de um novo componente no Element mas não dispensa a verificação com Check-list de Avaliação de Requisitos.

Para que novos componentes reutilizáveis sejam disponibilizados na base de reuso, estes devem atender aos critérios abaixo relacionados: O componente soluciona uma necessidade estratégica de negócio ou "para fábrica"?

  • O componente encapsula funções com propósitos bem-definidos e a solução é limitada ao propósito?

  • O componente tem potencial para reutilização em projetos futuros?

  • O componente é independente ou, se dependente, depende apenas de outros ativos reutilizáveis?

Critério para descontinuidade de ativos

Durante o Acompanhamento da base de ativos, pode-se identificar a possibilidade de descontinuar um ativo reutilizável. O mesmo deve ser descontinuado se teve menos de 1 utilização em um ano, ou por decisão estratégica de lideranças internas. Ao descontinuar um componente o mesmo é movido para o Sótão (grupo Sotao no Repositório)

Procedimentos de atualização de projeto

O gerente de reuso atualiza o repositório Element da base de ativos com o nome do projeto que irá reutilizar o ativo.

Todas as alterações efetuadas nos ativos reutilizáveis são refletidas no Painel de Controle do repositório do Element.

Instruções de armazenamento dos ativos reutilizáveis

Os ativos reutilizáveis devem ser armazenados no repositório Git grupo Element, de forma que a versão dos códigos fonte sejam controladas.

Todas as alterações efetuadas nos ativos reutilizáveis no grupo Element aparecem no Painel de Controle.

Histórico de Revisões

Tabela 1. Histórico de Revisões
Data Versão Autor Revisor Observação

09/08/2018

1.0

Cédric Lamalle

Geraldo Palmeira

Versão inicial do Documento

26/02/2020

1.1

Cédric Lamalle

Guilherme Peres

Refinamento nos critérios para inclusão de ativos reutilizáveis

Template de Avaliação de Ativos Reutilizáveis

Versão do documento: 1.0, 09/08/2018

Instruções

Todas as avaliações de Ativos Reutilizáveis deverão seguir o modelo abaixo:

  • Para cada critério avaliado preencher a coluna resultado com "X" em algumas das opções: "Sim", "Não" ou "N/A".

  • É obrigatório o preenchimento dos campos data e Responsável no primeiro registro e sempre que houver atualização nos critérios.

Critérios de Avaliação

Critério Resultado

O componente soluciona uma necessidade estratégica de negócio ou "para fábrica"?

Sim ( ) Não ( ) N/A ( )

O componente tem potencial para reutilização em projetos futuros?

Sim ( ) Não ( ) N/A ( )

O componente é independente ou, se dependente, depende apenas de outros ativos reutilizáveis?

Sim ( ) Não ( ) N/A ( )

Histórico de Revisões

Tabela 2. Histórico de Revisões
Data Versão Autor Revisor Observação

09/08/2018

1.0

Cédric Lamalle

Geraldo Palmeira

Versão inicial do Documento

Template de Registro de Ativos Reutilizáveis

Versão do documento: 1.0, 09/08/2018

Instruções

Todos os registros de Ativos Reutilizáveis deverão ser registrados no repositório Element com Objeto Registro de Ativos Reutilizáveis e seguir o modelo abaixo:

Nome do Ativo: preencher nome do ativo

Tecnologia:

Preencher a tecnologia do ativo. Exemplo: JAVA, .NET, PHP, Typescript

Categoria:

Preencher de acordo com as categorias definidas na Estratégia de Reutilização .

Projetos Envolvidos:

Relacionar ocorrência do ativo as de Sistemas

Versão/Build:

X.Y.Z - Arquivo Changelog no repositório

Data da Disponibilização:

XX/XX/XXXX - Arquivo Changelog no repositório

Descrição de como utilizar o ativo:

Arquivo README no repositório

Essas informações têm que existir mais o formato poderá variar de ativo para ativo em função por exemplo da tecnologia.

Histórico de Revisões

Tabela 3. Histórico de Revisões
Data Versão Autor Revisor Observação

09/08/2018

1.0

Cédric Lamalle

Geraldo Palmeira

Versão inicial do Documento

Assistente virtual
Olá! Como posso te ajudar?