[ETP] Impactos da descontinuação de determinados dados no SAURON
ESTUDO TÉCNICO PRELIMINAR - ETP
A SETIC fornece vários serviços e cada um com sua responsabilidade, foi identificado que a API do SAURON será descontinuada. Atualmente a API fornece mais dados do que deveria. Desta maneira será necessário a averiguação dos sistemas sob responsabilidade do time TITÃS para saber se será necessário uma intervenção técnica.
2 - O QUE É NECESSÁRIO PARA ATENDER A NECESSIDADE
O levantamento de impactos de tal mudança é essencial, no SID este trabalho de isolar dados que não seja de responsabilidade do demandante já foi realizado, pois a própria equipe identificou de forma antecipada que não era necessário utilizar todos os dados fornecidos pela rota do SAURON, vejamos:
using Microsoft.AspNetCore.Http;
using SID.Extensions;
using SID.Interfaces;
using System.Security.Claims;
namespace SID.Services
{
public class UserService : IUserService
{
private readonly ClaimsPrincipal user;
public UserService(IHttpContextAccessor httpContextAccessor)
{
this.user = httpContextAccessor.HttpContext.User;
}
public int ObterQuantidadePerfis() => user.BuscarPerfis().Count;
public string ObterCpfCnpj() => user.CpfCnpjSauron();
public bool VerificarSePossuiPerfilChefeImediato() => user.PossuiPerfilChefeImediato();
public bool VerificarSePossuiPerfilTitularDaPasta() => user.PossuiPerfilTitularDaPasta();
}
}
A utilização do SAURON em sua maneira tradicional, viola um dos princípios do design orientado a objetos, que preza pela responsabilidade única em suas funcionalidades, em resumo o SAURON não pode entregar informações ao solicitante que não seja da sua área de responsabilidade.
Alguns sistemas não exploram o SAURON em sua totalidade, o que é bom pois nesses caso se usa atributos que não seja de sua responsabilidade, mas o SKALA que é um dos sistemas que está sob responsabilidade do time TITÃS merece certa atenção quanto a essa demanda, o sistema possui integração com o SAURON e em prévia análise se utiliza de atributos que possivelmente serão descontinuados.
Por fim, para atendimento deste tipo de demanda é necessário fazer um relatório que levante todos os sistemas dependentes do SAURON e que aborde a prioridade de migração de cada um, para que o trabalho seja realizado pela equipe de forma eficiente e de objetiva.
3 - COMPLEXIDADE DE CADA FUNCIONALIDADE
4 - POSSÍVEIS PROBLEMAS
5 - VALOR AGREGADO
A melhor maneira de arruinar a reputação de um sistema é manter uma péssima documentação da API ou manter a codificação sem revisão ou atualizada. A documentação por exemplo, é uma janela para os produtos da SETIC. Documentos que detalham recursos obsoletos ou não mencionam atualizações importantes, serão vistos como sinais de alerta de que o código dos produtos não estão funcionando ou estão em conformidade. Mas muitas vezes a documentação falha por causa da má comunicação. Manter o código atualizado e os bons princípios de desenvolvimento parece bobagem burocrática, mas funciona. E não há relação com manuais, na verdade o que há é esclarecimento de padrões. Cada desenvolvedor pode manter a documentação e o código em um padrão de qualidade diferente, por isso é vital que todos estejam na mesma linha de raciocínio.
6 - CONCLUSÃO DO ESTUDO
O presente ESTUDO TÉCNICO PRELIMINAR, elaborado pelos integrantes TÉCNICOS do time TITÃS, considerando a análise dos desafios técnicos envolvidos e citados, conclui PELA ABORDAGEM DOS IMPACTOS DA DESCONTINUAÇÃO DE ALGUNS DADOS FORNECIDOS PELA SAURON, uma vez que foram considerados a análise técnica do serviço envolvido. Em complemento, os contratempos identificados são administráveis, pelo que RECOMENDAMOS A REVISÃO E SUBSTITUIÇÃO DOS ATRIBUTOS QUE SERÃO DESCONTINUADOS, uma vez que, os projetos podem parar de funcionar.