Fluxo de engenharia documentado

ElementoPadrão consolidado
Branches principaisdev para desenvolvimento, rc para homologação e main para produção.
Branches auxiliaresfeature/*, bugfix/* e hotfix/* associadas à demanda.
Pull requestBranches principais recebem mudança por PR e aprovação.
VersionamentoSemVer com pre-releases -dev e -rc.
QualidadeSonarQube for IDE/SonarLint, testes unitários e revisão antes do commit.
CI/CDBuild, testes, análise estática e release por ambiente no Azure Pipelines.
RastreabilidadeTag da versão, log de release e vínculo com a demanda.

Mudança segura no legado

  1. 1
    Reproduzir e delimitar

    Identifique regra, versão AGHU, perfil, massa sintética e componente afetado.

  2. 2
    Criar teste de caracterização

    Registre o comportamento atual antes de alterar código legado.

  3. 3
    Corrigir no menor escopo

    Evite refatoração ampla junto a hotfix assistencial.

  4. 4
    Testar integrações

    Inclua dblec, AGHU, LDAP, impressão e relatórios conforme impacto.

  5. 5
    Analisar qualidade

    Execute testes, análise estática e revisão de segurança.

  6. 6
    Homologar o fluxo completo

    Valide entrada, transições, logs e regressão, não apenas a tela corrigida.

  7. 7
    Publicar e observar

    Use pipeline, tag, janela e monitoramento pós-implantação.

Proposta de modernização encontrada

O repositório contém um estudo que sugere separar frontend e backend e atualizar a plataforma. Ele é uma proposta, não o estado atual.

AspectoVigente documentadoProposta
BackendJava 8, JSF/EJB no WildFly 20Java 21 + Spring Boot 3
FrontendXHTML/Facelets acopladoAngular 20 ou Flutter Web
Integração internaChamadas no monólito e JPAAPI REST com contrato OpenAPI
DeployWAR e serviços da VMContainers Docker e possível orquestração futura
TestesPráticas a ampliar no legadoJUnit 5, Mockito e automação como base
AutenticaçãoLDAP/AGHU para usuárioJWT/OAuth2 a definir por contexto

Estratégia incremental recomendada pela proposta

  • Mapear funcionalidades, entidades e regras críticas do legado.
  • Definir contratos, responsabilidades e autenticação antes de codificar.
  • Criar uma base de backend com persistência, APIs e testes.
  • Construir o frontend escolhido consumindo contratos versionados.
  • Automatizar containers e CI/CD.
  • Migrar módulo a módulo, com testes e validação do negócio.
  • Preservar interoperabilidade com AGHU e histórico de auditoria durante a transição.

Checklist antes do PR

  • Regra de negócio vinculada à fonte ou demanda.
  • Código formatado e sem credenciais, endpoints internos ou dados de produção.
  • Teste novo para classe nova e para comportamento alterado.
  • SQL legível, parametrizado e sem SELECT * quando desnecessário.
  • Análise estática executada e alertas relevantes corrigidos.
  • Compatibilidade AGHU v10/v11 considerada quando a query toca a integração.
  • Plano de rollback e evidência de homologação anexados ao canal apropriado.