Ir para o conteúdo principal

[ETP] Remarcação de férias paralisadas

Autores:
José Lucas da Silva Costa,
João Pedro Rocha Brito,
Jônatas Neves Legal


1 - Introdução

O SID (Sistema Integrado de Descanso) é responsável pelo controle de férias dos servidores do poder executivo do Estado De Rondônia.  O fluxo principal deste sistema funciona basicamente todos os anos no mês de setembro, onde todos os servidores devem indicar suas preferências de período de férias para o ano subsequente. O time Titãs assumiu a responsabilidade das manutenções referente ao SID e vem fazendo correções de extrema importância para que não aconteçam imprevistos durante seu uso. O objetivo deste estudo é realizar uma análise técnica a respeito das férias paralisadas dentro do sistema SID.


2 - Complexidade de cada funcionalidade

O cenário atual para férias paralisadas é um pouco crítico, a ação para remarcar férias paralisadas não foi projetada para funcionar nas mesmas regras de solicitações comuns. Uma das soluções encontradas e já em fase de implementação foi separar essas solicitações de férias paralisadas de solicitações de férias comuns, para que sigam seu fluxo normalmente, mas mantendo a integridade de suas respectivas regras. É possível reforçar ainda, que a falta de tratamento para essa regra vem causando vários chamados, o maior relato por parte dos usuários é a perda de seus períodos de férias que não foram paralisados, devido o SID não está atendendo essa necessidade ainda. Para solução dessa demanda, foi dividida as necessidade em histórias de usuários para analisar sua complexidade, vejamos:

User Story (5pts) Eu como Titãs, preciso que as solicitações de remarcação para períodos paralisados sigam o mesmo quantitivo limitador da solicitação original, o servidor não pode remarcar mais que duas vezes ao ano em solicitações normais, as solicitações de remarcação de períodos paralisados devem seguir essa regra observando a solicitação de origem, se a solicitação de origem já excede esse limite então deve refletir esse mesmo limitador a essas novas remarcações.
User Story (2pts) Eu como Titãs, preciso que não seja possível aprovar uma solicitação de paralisação quando já existir uma "Aguardando aprovação".
User Story (3pts) Eu como Titãs, preciso que a solicitação de origem que possua períodos paralisados a ser remarcados, não seja alterada o status para remarcada, ressalve-se o seguinte: Se o pai é uma solicitação com forma de período comum e se o pedido é uma remarcação de paralisação então o pai não deve ser remarcado para que as duas solicitações sigam normalmente o seu fluxo.
User Story (2pts) Eu como titãs, preciso alterar a regra do limitador de férias para as solicitações normais, a alteração consiste em incluir um código que não seja contabilizado as solitações de remarcação de paralisação, já que seu fluxo segue em paralelo e com suas próprias verificações.
Débito técnico (1pts) Eu como titãs, preciso alterar acrescentar na tabela de período do banco de dados o seguinte campo: PeriodoDeFeriasInalteravel, necessário para que as solicitações normais não tenha períodos paralisados que possam ser modificados já que seu fluxo segue em outra solicitação.
Débito técnico (1pts) Eu como titãs, preciso que a rota de MarcarFeriasPendentes seja desabilitada temporariamente, após análise técnica foi visto que é bem improvável que ela seja utilizada, a razão é devido sua implementação de regras não contemplar a demanda de paralisação e talvez gerar problemas de inconsistência no banco de dados. 
User Story (3pts) Eu como titãs, preciso criar uma validação na área de remarcação para verificar se os períodos de férias que não podem ser mexidos estão intactos por meio do novo atributo "PeriodoDeFeriasInalteravel"


3 - Possíveis problemas

O tempo de carregamento é o tempo que leva para o aplicativo iniciar. Em aplicativos com massa de dados grande, por exemplo o SID, os ciclos de descompactação e compactação podem fazer com que o sistema e os serviços demorem mais do que o normal para iniciar, principalmente . O teste de desempenho é essencial para detectar esse problema. Por fim, a falta de desempenho no SID na tela de férias de servidores poderá ocasionar falta de gerência nas férias de alguns colaboradores. Pois a lentidão evita geração de portaria, acompanhamento de histórico e dentre outras funcionalidades atreladas a este tela.


4 - Valor agregado

A melhoria de desempenho no SID poderá proporcionar agilidade na geração de portarias, melhor acompanhamento de histórico e dentre outras funcionalidades atreladas a esta. É necessário no problema específico das férias de servidores aplicar uma estratégia de paginação para listar os servidores, somente essa aplicação seria possível melhorar dentro de 70~80% o desempenho.

5 - 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 IMEDIATA INTERVENÇÃO TÉCNICA PARA MELHORIA DE DESEMPENHO NO SID por meio da implementação de paginação na área de férias de servidores, uma vez que foram considerados potenciais problemas que afetem a disponibilidade do serviço. Em complemento, os contratempos identificados são administráveis, pelo que RECOMENDAMOS o prosseguimento da demanda.