PTRF
Índice
Informações Gerais
Ambientes utilizados
Ambiente | URL de Acesso | Credenciais Admin |
---|---|---|
Testes | http://192.168.10.22:59231/ | admin / 123456 |
Homologação Interna | http://cfrepasse.mstech.com.br/ | admin / 123456 |
Homologação Externa | http://h-ptrf.sme.prefeitura.sp.gov.br/ | Informação exclusiva do Devops/GTI |
Produção | http://ptrf.sme.prefeitura.sp.gov.br/ | Informação exclusiva do Devops/GTI |
Repositório de Versionamento
Ambiente: GITLab - Git
Nome: ptrf
Caminho: https://gitlab.com/smecotic/ptrf
Estrutura dos branches: Branches develop e master.
Visão de Componentes
Apresente um diagrama básico dos módulos do sistema, bem como suas fronteiras. Descreva sucintamente cada módulo que compõe o produto, seu objetivo e como foi construído (linguagens usadas, bancos de dados, etc.).
Decisões de Arquitetura
Descrever os seguintes itens:
Persistência de dados: Utilizando o ORM Entity Framework persistindo os dados no banco SQL Server.
Tecnologias de Integração: Possui integração com a API trafegando dados no formato json ptrf-integracao-api, por sua vez integra-se diretamente com os bancos de dados do CoreSSo e Gestão Pedagógica através de sinônimos e views.
Log: : É utilizado a biblioteca log4net para persistir os logs em duas tabelas em banco relacional dentro do próprio PTRF, LogError onde é salvo todas as exceções de erro e a LogActivity onde é salvo todas as atividades do sistema, inclusão, alteração e remoção. A consulta dos logs é feita através da página "Log de ação". Na arquitetura, a log é tratada por uma camada específica do sistema chamada Log.cs que implementa a biblioteca log4net.
Padrão de Arquitetura utilizado: Se houve planejamento anterior, qual o padrão utilizado? Domain Driven Design (DDD) usando a estrutura MVC? Usa Webforms com outra arquitetura? Front-end e back-end são separados?
Tecnologia de Front-end: Se houver separação, qual tecnologia/framework foi empregada para o projeto? AngularJS, VUE, JQuery, uma composição deles? Qual padrão de codificação (estrutura de pastas, camadas) está sendo usado no projeto? Quais fatores levaram à decisão do framework e arquitetura definidas?
Tecnologia de Back-End: qual tecnologia/framework foi empregada para o projeto? ASP.NET, Java, NodeJS, uma composição deles? Qual padrão de codificação (estrutura de pastas, camadas) está sendo usado no projeto? Quais fatores levaram à decisão do framework e arquitetura definidas?
Framework de CSS: Está sendo utilizada uma ferramenta SASS? Qual framework está sendo usado? Bootstrap 3, Bootstrap 4, Foundation?
Configurações de Otimização de deploy: O código é minificado? O código está com ofuscação? No ASP.NET foi habilitado o bundle no web.config? Quais configurações para otimizar o código são feitas?
Outros aspectos: Fique à vontade para descrever outras considerações, o importante é deixar as decisões tomadas e padrões adotados bem documentados!
Fundamentações das decisões tomadas
Nesta seção, coloque todas as considerações das tomadas de decisão realizadas para o produto. Porque foi usada tal arquitetura? Porque essa separação de componentes? Porque houve refatoração? Descreva o máximo possível nesta seção para que o histórico das decisões seja armazenado para consultas futuras.