You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
One of the drawbacks of the microservice concept is that it is difficult to design a distributed microservice architecture right at the start of a project, and mistakes made at this stage can be very expensive. For this reason, the most common advice is to start with the monolith and then divide it into target microservices.
66
+
67
+
Overall Concept
68
+
69
+
task management system for a hypothetical support team
70
+
71
+
task management system
72
+
73
+
- User Management
74
+
Access to the system functionality should be possible only for logged in users. That is why we will need a module enabling user management and an authentication system.
75
+
76
+
- Task Management
77
+
We will implement the basic functionality of the ticketing system, i.e. creating tasks with a name and description and changing the status of the task to "completed."
78
+
79
+
- Knowledge Base
80
+
It is worth to make the knowledge base available to users - as articles available after logging into the system.
81
+
82
+
- REST API
83
+
All functionalities listed above should be available via the REST API.
84
+
Thanks to this, it will be possible to create dedicated applications facilitating the use of the system. It can be a web application available through a browser or a dedicated mobile application.
85
+
86
+
- Web Application
87
+
Our system should be available through a web browser, so we will add an element that is a simple web application.
88
+
89
+
- Sending Notifications of New Tasks
90
+
Creating a new task should cause sending a notification to all users. We will use for this purpose the API made available by Slack.
91
+
92
+
93
+
Thanks to these features, the prototype building process can be limited to the coding of the task module and web app, while the remaining functionalities will be implemented using ready-made Cricket modules. This will significantly reduce the time it takes to create a prototype, and that is what we are looking for.
94
+
95
+
The overall architecture of the monolithic application is based on the hexagonal architecture of the Cricket platform. The assumed functionalities are implemented by dedicated adapters.
96
+
97
+
The target system will consist of a set of separate microservices, each of which will be responsible for a specific functionality.
0 commit comments