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.
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 ( ) |
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.