Skip to content

Latest commit

 

History

History
52 lines (37 loc) · 2.91 KB

File metadata and controls

52 lines (37 loc) · 2.91 KB

SOLUCIÓN

La solución que planteé fue entregar poco a poco valor al proyecto, de esta manera simulé que tenía pases a producción. A través de uso de HU, Tasks, y gitflow para llevar a cabo todos los cambios.

RAMAS Y SU HU

  1. feature/basic-creation-transaction HU - Creación del servicio para guardar una transacción en la base de datos
  2. chore/test-configuration FIX - The unit test was corrected and DevOps folder was created
  3. feature/basic-retrieve-transaction HU - Creación del servicio para recuperar una transacción de la base de datos
  4. feature/cache-transaction HU - Almacenar en cache data que se recupera de la base de datos
  5. feature/event-transaction HU - Creación de componentes de mensajería y agregación en la capa service para enviarlo al microservicio de anti fraude para el análisis de las transacciones
  6. feature/event-validate-transaction HU - Creación de componentes de mensajería y agregación en la capa service para evaluar las transacciones que llegan como evento y retornar el estado de la validación
  7. chore/readme TASK - Creación de README
  8. develop RELEASE 0.0.1 - Proyecto local
  9. chore/docker-image HU - Contenedorización del microservicio de transacciones financieras
  10. chore/docker-image HU - Contenedorización del microservicio de anti fraude
  11. develop RELEASE 0.0.2 - Proyecto contenedorizado
  12. chore/contract-first HU - Creación de contratos
  13. feat/exception-handlers HU - Manejo de errores
  14. chore/properties-prd-tested HU - Configuración de propiedades para PRD
  15. develop RELEASE 0.0.3 - Propiedades PRD

REPOSITORIOS

Trabajé dentro de mi cuenta en donde se podrá visualizar el árbol de ramas, los commits y los tags|releases

MS FINANCIAL TRANSACTION

https://github.com/CiprianoBryan/ms-financial-transaction/releases

MS ANTIFRAUD

https://github.com/CiprianoBryan/ms-antifraud/releases

USO DEL PROYECTO

  • Puede utilizar el tag 0.0.1 si desea el proyecto totalmente local
  • Puede utilizar el tag 0.0.2 si desea el proyecto dockerizado
  • Puede utilizar el tag 0.0.3 si lleva el proyecto a Kubernetes y utiliza los valores de producción necesarios para cumplir con la alta transaccionalidad

PUNTOS DE MEJORA

  • En un primer planteamiento tenía pensado utilizar CQRS para optimizar más el tiempo de respuesta, utilizando una base de datos principal y otra réplica, por el tiempo nos quedamos con tener únicamente una base de datos
  • Agregar los tests unitarios, el cuál por tiempo tampoco se pudo dar
  • Utilizar Quarkus para aprovechar aún más Kubernetes y tener el proyecto más optimizado

TENER EN CUENTA

  • Usar Reactividad podría generar conflictos por lo que no se recomendaría
  • Tener dashboard para monitorear la aplicación (En alguna de las herramientas de observabilidad Dynatrace, New Relic, entre otros)
  • Se está agregando los archivos de cada repositorio en este fork junto al .git para que lo pueda descargar y visualizar todo lo trabajado