A cloud-native microservices architecture for the coffee ecommerce market

Bookmark (0)
Please login to bookmark Close

Esta tesis presenta el ciclo de vida completo de desarrollo de una plataforma de comercio electrónico nativa de la nube, especializada en productos de café, que conecta directamente a productores locales con los consumidores. El trabajo incluye la especificación de requisitos, el diseño arquitectónico de alto nivel y la interacción de microservicios de un Producto Mínimo Viable (MVP), el cual fue parcialmente diseñado en detalle, desarrollado e implementado utilizando tecnologías nativas de la nube como Docker y Kubernetes. El proyecto se centra en los sistemas de back-end, mostrando un enfoque para construir una arquitectura de microservicios confiable, escalable y mantenible.
Los requisitos se capturaron mediante historias de usuario y criterios de aceptación. El diseño del sistema se basó en técnicas de software ampliamente utilizadas, incluyendo Diseño dirigido por el dominio y Arquitectura Hexagonal.
Para construir un sistema confiable, escalable y de alto rendimiento, se implementaron múltiples patrones de nube, como comunicación basada en eventos, CQRS, Saga y Circuit Breaker. Además, se incluyó una aplicación de monitoreo en tiempo real para identificar cuellos de botella y problemas de rendimiento.
Para confirmar que el sistema puede manejar cargas elevadas manteniendo su capacidad de respuesta, se realizaron pruebas de rendimiento en múltiples funcionalidades de un prototipo basado en casos de uso representativos.
En general, el proyecto demuestra cómo construir software nativo de la nube, desde su concepción hasta su implementación, utilizando las mejores prácticas empleadas actualmente en la industria.
–ABSTRACT–
This thesis presents the full development lifecycle of a cloud-native e-commerce platform specialized in coffee products, which connects local producers directly with consumers. The work includes requirements specification, high-level architectural design, and microservices interaction of a Minimum Viable Product, which was partially designed in detail, developed, and deployed using cloud-native technologies such as Docker and Kubernetes. The project focuses on the back-end system, showing an approach to building a reliable, scalable, and maintainable microservice architecture.
The requirements were captured through user stories and acceptance criteria. The system design was based on widely used software techniques, including Domain-Driven Design and Hexagonal Architecture.
To build a reliable, scalable, and high-performing system, multiple cloud patterns were implemented, such as event-driven communication, CQRS, Saga, and Circuit Breaker. Furthermore, a real-time monitoring application was included to identify performance bottlenecks and issues.
To confirm that the system can handle high loads while maintaining its responsiveness, performance tests were conducted on multiple functionalities of a prototype based on representative use cases.
Overall, the project demonstrates how to build a cloud-native software, from conception to deployment, using the best practices currently employed in the industry.

​Esta tesis presenta el ciclo de vida completo de desarrollo de una plataforma de comercio electrónico nativa de la nube, especializada en productos de café, que conecta directamente a productores locales con los consumidores. El trabajo incluye la especificación de requisitos, el diseño arquitectónico de alto nivel y la interacción de microservicios de un Producto Mínimo Viable (MVP), el cual fue parcialmente diseñado en detalle, desarrollado e implementado utilizando tecnologías nativas de la nube como Docker y Kubernetes. El proyecto se centra en los sistemas de back-end, mostrando un enfoque para construir una arquitectura de microservicios confiable, escalable y mantenible.
Los requisitos se capturaron mediante historias de usuario y criterios de aceptación. El diseño del sistema se basó en técnicas de software ampliamente utilizadas, incluyendo Diseño dirigido por el dominio y Arquitectura Hexagonal.
Para construir un sistema confiable, escalable y de alto rendimiento, se implementaron múltiples patrones de nube, como comunicación basada en eventos, CQRS, Saga y Circuit Breaker. Además, se incluyó una aplicación de monitoreo en tiempo real para identificar cuellos de botella y problemas de rendimiento.
Para confirmar que el sistema puede manejar cargas elevadas manteniendo su capacidad de respuesta, se realizaron pruebas de rendimiento en múltiples funcionalidades de un prototipo basado en casos de uso representativos.
En general, el proyecto demuestra cómo construir software nativo de la nube, desde su concepción hasta su implementación, utilizando las mejores prácticas empleadas actualmente en la industria.
–ABSTRACT–
This thesis presents the full development lifecycle of a cloud-native e-commerce platform specialized in coffee products, which connects local producers directly with consumers. The work includes requirements specification, high-level architectural design, and microservices interaction of a Minimum Viable Product, which was partially designed in detail, developed, and deployed using cloud-native technologies such as Docker and Kubernetes. The project focuses on the back-end system, showing an approach to building a reliable, scalable, and maintainable microservice architecture.
The requirements were captured through user stories and acceptance criteria. The system design was based on widely used software techniques, including Domain-Driven Design and Hexagonal Architecture.
To build a reliable, scalable, and high-performing system, multiple cloud patterns were implemented, such as event-driven communication, CQRS, Saga, and Circuit Breaker. Furthermore, a real-time monitoring application was included to identify performance bottlenecks and issues.
To confirm that the system can handle high loads while maintaining its responsiveness, performance tests were conducted on multiple functionalities of a prototype based on representative use cases.
Overall, the project demonstrates how to build a cloud-native software, from conception to deployment, using the best practices currently employed in the industry. Read More