Architecture Design Assessment
Architecture Design Assessment
Architecture Design Assessment
It would begin by analyzing the design of the application at the level of components or modules, work groups,
integrations and tests.
The modules are analyzed and organized to generate the microservices of the solution. These microservices
will allow independent development and deployment.
Development teams are generated for each identified microservice, as well as test teams and integration
teams.
Each microservice will be deployed in docker containers so that they can also be scaled and deployed
independently.
The progress and delivery dates will be defined according to priorities of the functional and non-functional
requirements.
The repositories and branches of code controls will be defined to avoid conflicts of versioning of the
advances of the teams.
After uploading changes to the development branch, they would go to certification for validation by the
testing and integration team.
The deployments will be carried out applying the Blue Green strategy, which consists of having two parallel
production environments (one called blue and the other called green) where the new versions of the
applications are deployed alternatively. That is, if blue has Version 1 of our application installed, then green
will have Version 2 installed, and when the next version (Version 3) is deployed the blue environment will be
used again, and the alternate sequence continues indefinitely.
The monitoring of the tasks of each team would be carried out by Kanban boards
The application will be hosted in the cloud. The benefits of deploying an application in a cloud are that the
cloud provider takes care of the infrastructure, security, scaling, availability, speed, application encryption,
etc. to allow us to worry only about our business requirements.
It reduces costs for the maintenance of infrastructure on premise.
● Demonstrate design using diagrams that you would use to explain your high-level
architecture to your software engineering and DevOps teams.
To obtain the list of Azure and Ebay Products, Message Broker will be used to handle messages, retries
and asynchronous processing, using RabbitMQ. If a component crashes, messages are not lost as they are
persisted by RabbitMQ, which provides retries and asynchronous communication.
Frontend components
Backend Microservices
Receiver to get sales of Amazon and Ebay
Component Level
Logical View
Physical View
Configure
QA PROD
DEV
Team
Trigger
Update Version
Build
Publish
Solution
Repository Release
Automation Ops
Use Approve
artifacts
● What technologies would you use? Why?
● The service is a huge success and we now need to scale to ten times the current customer traffic and
larger amounts of data. How will you scale the application to take the additional load?
● Be prepared to discuss extending functionality of the product and adding new features.
This is common in project development. The main thing is to understand the user's requirement and to know
in which part of the system these changes would affect. Carry out the functional analysis and review of the
modules involved.