- Adding value to the customer.
- Self service / Automation where possible.
- Use Open source component, reuse before a buy or a build.
- Technology Independent. Avoid a vendor lock-in.
- Easy to use and maintain.
After analysing the problem statement and current application architecture of Penultimate Electronics, its identified that the current system is a monolith, and some key functionalities do not work reliably.
The Purposed Architecture is to break the current monolith into microservices architecture.
Key Architectural Points
- Current application will be divided into multiple microservices.
- Reuse the services where possible. The existing component to microservice mapping can be found here
- Ticket assignment service is re-designed as Expert Selection microservice based on UBER model, details can be found here
- Message Broker queues and guaranteed delivery will be used for inter-service communication.
- Migration would be done via a series of MVPs which will gradually migrate the entire application to the new microservice-based architecture.
- Create robust regression test suite to have confidence in moved, changed and newly created services.
- On demand scaling of microservices to achieve high availability.
- Disaster recovery of the system will be handled by Active-Passive deployment. Details are here.
- Purposed business process changes
- Purposed responsibilities addition to the manager role for some corner case scenario's
- Expert will commit to the customer visit himself, rather than assigned.