Microservice Architecture Design for DTGOV Travel Booking Application
VerifiedAdded on 2023/01/05
|8
|2099
|56
Report
AI Summary
This report analyzes the microservice architecture of the DTGOV travel and accommodation booking application. It identifies stable and frequently changing modules within the application, such as the Search Engine, Cart, Travel Requirements, and Account Administration. The report discusses the need for refactoring specific modules like Account Administration and Travel Requirements to improve performance, especially during peak usage. It proposes a phased transformation to microservices, highlighting the benefits of increased availability and scalability. The report details how microservices can optimize application architecture, improve code efficiency, and leverage container deployment. It also includes a microservice-based architecture diagram and references relevant literature to support the analysis and recommendations for the DTGOV travel booking application.
Contribute Materials
Your contribution can guide someone’s learning journey. Share your
documents today.

Running head: MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
Microservice Architecture of DTGOV Application
Student Name
University Name
Note by the Author
Microservice Architecture of DTGOV Application
Student Name
University Name
Note by the Author
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

1MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
Question 1: Module Assessment
1.1 Modules being stable
The Search Engine, Cart, Travel Requirements and Account Administration modules in the
Travel Booking Application of DTGOV are identified to remain stable compared to the other
modules. This can be due to the regular usage of these modules by the DTGOV customers who are
repeatedly accessing the application of DTGOV without deciding on any particular product or
service and proceeding further to enter checkout or completing transactions (Lou, Tian & Koh,
2017). In general, the above discussed modules are extensively used by the customers in all travel
booking applications for doing research based and price specific calculations in order to help in
planning for their upcoming travel trips.
1.2 Modules with frequent changes
Search Engine, Travel Recommendation Engine and the Accommodation Recommendation
engine end up being those modules requiring regular modifications. This results from the several
services and facilities offered by DTGOV like travel booking, hotel booking, registration for
packaged tours and others along with the associated vendors and specifications they select which
are to be mapped. Time and again newer services, products and travel packages get included into
this application of DTGOV for purchase by customers, some of these have newer features sets and
functionalities that need modifications to keyword configurations and filters of the search engine
(Li et al., 2016). Recommendation based modules of the DTGOV application need serious research
be conducted by DTGOV regarding the travel and interest related information of their customers
and curated offers so requires frequent updates.
1.3 Modules experiencing peak usage loads
Modules experiencing heaviest usage loads are Travel and Accommodation processing engine,
Search Engine, Cart, Travel requirements and account administration modules. As every one of the
above modules serve a crucial role in enabling customers to complete the process of purchasing a
Question 1: Module Assessment
1.1 Modules being stable
The Search Engine, Cart, Travel Requirements and Account Administration modules in the
Travel Booking Application of DTGOV are identified to remain stable compared to the other
modules. This can be due to the regular usage of these modules by the DTGOV customers who are
repeatedly accessing the application of DTGOV without deciding on any particular product or
service and proceeding further to enter checkout or completing transactions (Lou, Tian & Koh,
2017). In general, the above discussed modules are extensively used by the customers in all travel
booking applications for doing research based and price specific calculations in order to help in
planning for their upcoming travel trips.
1.2 Modules with frequent changes
Search Engine, Travel Recommendation Engine and the Accommodation Recommendation
engine end up being those modules requiring regular modifications. This results from the several
services and facilities offered by DTGOV like travel booking, hotel booking, registration for
packaged tours and others along with the associated vendors and specifications they select which
are to be mapped. Time and again newer services, products and travel packages get included into
this application of DTGOV for purchase by customers, some of these have newer features sets and
functionalities that need modifications to keyword configurations and filters of the search engine
(Li et al., 2016). Recommendation based modules of the DTGOV application need serious research
be conducted by DTGOV regarding the travel and interest related information of their customers
and curated offers so requires frequent updates.
1.3 Modules experiencing peak usage loads
Modules experiencing heaviest usage loads are Travel and Accommodation processing engine,
Search Engine, Cart, Travel requirements and account administration modules. As every one of the
above modules serve a crucial role in enabling customers to complete the process of purchasing a

2MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
service, these get heavily stressed during peak use of DTGOV’s application. When peak use of the
application is seen from users, it can be known that the users are not just browsing through the
services but also completing transactions and thus use of all the above critical modules which
support the process step by step.
Question 2: Phased manner of Transformation
2.1 First set of modules that need to be refactored
Initial batch of modules in DTGOV application which has to get refactored will be the
modules going by the names Account Administration and Travel Requirements modules. These
modules are the ones that get used most heavily and even get to experience highest workloads when
the application sees peak loads of usage. Adding products and services to the cart as well as other
cart specific services can exist in several instances for the application. Among these wish lists of the
customers as well as services offered by the modules (Xu & Huang, 2015). Travel requirements can
use catalogues and other classification features for which the products and services a user is adding
to their cart should be mapped with this module. Data associated with the cart and products or
services listed in it occupy substantial memory space and this gets multiplied owing to the number
of items as well as the total users who are choosing them. Thus by introducing microservices for the
modules Travel Requirements and Account Administration, the performance and functionalities of
the Cart module can be greatly improved as this module is deeply inter-related with the modules
selected for refactoring. This is how the cloud computing based resources can turn extremely
beneficial for DTGOV.
2.2 Shifting towards Microservices
Travel requirements and Account Administration are the two modules that can immensely
benefit DTGOV by embracing microservices (Villamizar et al., 2016). Each of the two modules are
heavily interconnected with the services, products and facilities being offered to the customers who
needs to add these to their respective carts first. Thus, adoption of microservices for the selected
service, these get heavily stressed during peak use of DTGOV’s application. When peak use of the
application is seen from users, it can be known that the users are not just browsing through the
services but also completing transactions and thus use of all the above critical modules which
support the process step by step.
Question 2: Phased manner of Transformation
2.1 First set of modules that need to be refactored
Initial batch of modules in DTGOV application which has to get refactored will be the
modules going by the names Account Administration and Travel Requirements modules. These
modules are the ones that get used most heavily and even get to experience highest workloads when
the application sees peak loads of usage. Adding products and services to the cart as well as other
cart specific services can exist in several instances for the application. Among these wish lists of the
customers as well as services offered by the modules (Xu & Huang, 2015). Travel requirements can
use catalogues and other classification features for which the products and services a user is adding
to their cart should be mapped with this module. Data associated with the cart and products or
services listed in it occupy substantial memory space and this gets multiplied owing to the number
of items as well as the total users who are choosing them. Thus by introducing microservices for the
modules Travel Requirements and Account Administration, the performance and functionalities of
the Cart module can be greatly improved as this module is deeply inter-related with the modules
selected for refactoring. This is how the cloud computing based resources can turn extremely
beneficial for DTGOV.
2.2 Shifting towards Microservices
Travel requirements and Account Administration are the two modules that can immensely
benefit DTGOV by embracing microservices (Villamizar et al., 2016). Each of the two modules are
heavily interconnected with the services, products and facilities being offered to the customers who
needs to add these to their respective carts first. Thus, adoption of microservices for the selected

3MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
modules - travel requirements and the Account Administration reduces hefty processing load from
the cart module. Traditionally all the three different modules are allocated large chunks of resources
which often ends up getting inefficiently distributed in practise and this slows down the the
application performance gradually leading to application down times as the Trael and Booking
Application becomes unavailable to many of the customers.
Question 3: Achieving high availability through Microservices
Microservice specific features make DTGOV able to deploy the travel and booking
application independently while also allowing resources scaling functionalities (Hasselbring, 2016).
Adoption of microservices is essential as this application sets out to offer a variety of application
specific functions to better serve their respective customers which can be catalogue, user profiles
search function and others among the rest. All these are important software side functions that
greatly improve the user experience in application usage and ushering convenience of operating
through the application. This is why most businesses try to accommodate them in their applications
and DTGOV is no exception. However, these features consume substantial resources and can freeze
the application when demand peaks. It is here that DTGOV can significantly benefit from
microservices. When microservices are adopted the data is stored is the clients used by the
customers instead of the servers of DTGOV and thereby eliminates the hardware limitations.
Business applications like the Travel and Booking Application of DTGOV can be optimized
through microservices in five key methods. These five different methods are:
Optimizing Application Architecture: The most important aspect of optimizing applications
through microservices is by getting the architecture done right (Dragoni et al., 2017).
Running too many microservices, use of poor API designs and excess network hardware can
affect efficient communication.
Increasing Efficiency in Codes: Microservices aid developers in writing better and efficient
programming codes as the process is made easier by breaking services into smaller sub
modules - travel requirements and the Account Administration reduces hefty processing load from
the cart module. Traditionally all the three different modules are allocated large chunks of resources
which often ends up getting inefficiently distributed in practise and this slows down the the
application performance gradually leading to application down times as the Trael and Booking
Application becomes unavailable to many of the customers.
Question 3: Achieving high availability through Microservices
Microservice specific features make DTGOV able to deploy the travel and booking
application independently while also allowing resources scaling functionalities (Hasselbring, 2016).
Adoption of microservices is essential as this application sets out to offer a variety of application
specific functions to better serve their respective customers which can be catalogue, user profiles
search function and others among the rest. All these are important software side functions that
greatly improve the user experience in application usage and ushering convenience of operating
through the application. This is why most businesses try to accommodate them in their applications
and DTGOV is no exception. However, these features consume substantial resources and can freeze
the application when demand peaks. It is here that DTGOV can significantly benefit from
microservices. When microservices are adopted the data is stored is the clients used by the
customers instead of the servers of DTGOV and thereby eliminates the hardware limitations.
Business applications like the Travel and Booking Application of DTGOV can be optimized
through microservices in five key methods. These five different methods are:
Optimizing Application Architecture: The most important aspect of optimizing applications
through microservices is by getting the architecture done right (Dragoni et al., 2017).
Running too many microservices, use of poor API designs and excess network hardware can
affect efficient communication.
Increasing Efficiency in Codes: Microservices aid developers in writing better and efficient
programming codes as the process is made easier by breaking services into smaller sub
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

4MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
modules (Derakhshanmanesh & Grieger, 2016). This makes it easier to identify redundant
functions but require active effort from the organization’s end.
Utilizing other programming languages: Using multiple microservices enables them to be
coded in different languages making them easier to overlook (Guidi et al., 2017). Use of
suitable languages for specific services can thus improve performance of overall application.
Container Deployment: Use of containers for microservice based applications increases
efficiency in consumption of resources (Kratzke, 2017). This additional feature is adopted to
squeeze every bit of performance optimization for the respective application.
Effective Monitoring: Microservices oriented applications are very different from ordinary
applications and they need to be monitored (Hasselbring, 2016). In these applications every
microservices need to be monitored separately to ensure an effective monitoring activity.
This is necessary because dependencies between the different microservices need to be
understood.
Other important ways of improving application performance through microservices are by
turning the CRUD operations into microserices like on-boarding of users (De Alwis et al., 2018).
Here the microservices can be for entities requiring create, retrieve, update and delete CRUD. When
operating with these entities, only a single entity is entertained at a time and thus only single
microservices call is required.
Also, apart from the CRUD style API, improved performance based on microservices can be
provided to group of multiple entities in the form of Batch APIs. In here, instead of just exposing
any GET API function - used for retrieving any one user, an API is also provided which obtains the
sets of identifiers of users so as to return a dictionary for those particular users.
Travel Requirements and Account Administration use the above mentioned features such as
these catalogues, lists for every user, on-boarding of users who have registered to the DTGOV’s
application (Yoganathan et al., 2018). These features help users get better experience in availing
facilities offered by the Travel and Booking Application while even presents users history of
modules (Derakhshanmanesh & Grieger, 2016). This makes it easier to identify redundant
functions but require active effort from the organization’s end.
Utilizing other programming languages: Using multiple microservices enables them to be
coded in different languages making them easier to overlook (Guidi et al., 2017). Use of
suitable languages for specific services can thus improve performance of overall application.
Container Deployment: Use of containers for microservice based applications increases
efficiency in consumption of resources (Kratzke, 2017). This additional feature is adopted to
squeeze every bit of performance optimization for the respective application.
Effective Monitoring: Microservices oriented applications are very different from ordinary
applications and they need to be monitored (Hasselbring, 2016). In these applications every
microservices need to be monitored separately to ensure an effective monitoring activity.
This is necessary because dependencies between the different microservices need to be
understood.
Other important ways of improving application performance through microservices are by
turning the CRUD operations into microserices like on-boarding of users (De Alwis et al., 2018).
Here the microservices can be for entities requiring create, retrieve, update and delete CRUD. When
operating with these entities, only a single entity is entertained at a time and thus only single
microservices call is required.
Also, apart from the CRUD style API, improved performance based on microservices can be
provided to group of multiple entities in the form of Batch APIs. In here, instead of just exposing
any GET API function - used for retrieving any one user, an API is also provided which obtains the
sets of identifiers of users so as to return a dictionary for those particular users.
Travel Requirements and Account Administration use the above mentioned features such as
these catalogues, lists for every user, on-boarding of users who have registered to the DTGOV’s
application (Yoganathan et al., 2018). These features help users get better experience in availing
facilities offered by the Travel and Booking Application while even presents users history of

5MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
previous orders and trips as well as wish lists containing the ones the user is seeking to get in the
near future. These different services needs to be broken down and a sub category of such services
should be mapped to their parent service category for example the parent category service Account
Administration for the subcategory services Profiles, Previous Orders and Wish lists. Resource
consumption by each of the services may be the same but can vary time to time. Hence through
scaling the allocation of resources for these service as per requirements depending on the period of
time, the efficient consumption of resources can be ensured.
Question 4: DTGOV Travel Booking Application with Microservices
Figure 1: Microservice based architecture of DTGOV Travel Booking Application
previous orders and trips as well as wish lists containing the ones the user is seeking to get in the
near future. These different services needs to be broken down and a sub category of such services
should be mapped to their parent service category for example the parent category service Account
Administration for the subcategory services Profiles, Previous Orders and Wish lists. Resource
consumption by each of the services may be the same but can vary time to time. Hence through
scaling the allocation of resources for these service as per requirements depending on the period of
time, the efficient consumption of resources can be ensured.
Question 4: DTGOV Travel Booking Application with Microservices
Figure 1: Microservice based architecture of DTGOV Travel Booking Application

6MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
References
De Alwis, A. A. C., Barros, A. P., Fidge, C. J., & Polyvyanyy, A. (2018). Using business object
patterns for discovery of microservices in enterprise systems.
Derakhshanmanesh, M., & Grieger, M. (2016). Model-Integrating Microservices: A Vision Paper.
In Software Engineering (Workshops) (pp. 142-147).
Dragoni, N., Giallorenzo, S., Lafuente, A. L., Mazzara, M., Montesi, F., Mustafin, R., & Safina, L.
(2017). Microservices: yesterday, today, and tomorrow. In Present and ulterior software
engineering (pp. 195-216). Springer, Cham.
Guidi, C., Lanese, I., Mazzara, M., & Montesi, F. (2017). Microservices: a language-based
approach. In Present and Ulterior Software Engineering (pp. 217-225). Springer, Cham.
Hasselbring, W. (2016). Microservices for Scalability (Keynote Presentation).
Hasselbring, W. (2016, March). Microservices for scalability: keynote talk abstract. In Proceedings
of the 7th ACM/SPEC on International Conference on Performance Engineering (pp. 133-
134). ACM.
Kratzke, N. (2017). About microservices, containers and their underestimated impact on network
performance. arXiv preprint arXiv:1710.04049.
Li, B., Lai, W., Yang, C., & Zheng, S. (2016, July). The Design and Implementation of the APP of
Experiencing Guangxi Folk Custom. In 2016 International Conference on Economics and
Management Innovations. Atlantis Press.
Lou, L., Tian, Z., & Koh, J. (2017). Tourist Satisfaction Enhancement Using Mobile QR Code
Payment: An Empirical Investigation. Sustainability, 9(7), 1186.
Villamizar, M., Garces, O., Ochoa, L., Castro, H., Salamanca, L., Verano, M., ... & Lang, M. (2016,
May). Infrastructure cost comparison of running web applications in the cloud using AWS
References
De Alwis, A. A. C., Barros, A. P., Fidge, C. J., & Polyvyanyy, A. (2018). Using business object
patterns for discovery of microservices in enterprise systems.
Derakhshanmanesh, M., & Grieger, M. (2016). Model-Integrating Microservices: A Vision Paper.
In Software Engineering (Workshops) (pp. 142-147).
Dragoni, N., Giallorenzo, S., Lafuente, A. L., Mazzara, M., Montesi, F., Mustafin, R., & Safina, L.
(2017). Microservices: yesterday, today, and tomorrow. In Present and ulterior software
engineering (pp. 195-216). Springer, Cham.
Guidi, C., Lanese, I., Mazzara, M., & Montesi, F. (2017). Microservices: a language-based
approach. In Present and Ulterior Software Engineering (pp. 217-225). Springer, Cham.
Hasselbring, W. (2016). Microservices for Scalability (Keynote Presentation).
Hasselbring, W. (2016, March). Microservices for scalability: keynote talk abstract. In Proceedings
of the 7th ACM/SPEC on International Conference on Performance Engineering (pp. 133-
134). ACM.
Kratzke, N. (2017). About microservices, containers and their underestimated impact on network
performance. arXiv preprint arXiv:1710.04049.
Li, B., Lai, W., Yang, C., & Zheng, S. (2016, July). The Design and Implementation of the APP of
Experiencing Guangxi Folk Custom. In 2016 International Conference on Economics and
Management Innovations. Atlantis Press.
Lou, L., Tian, Z., & Koh, J. (2017). Tourist Satisfaction Enhancement Using Mobile QR Code
Payment: An Empirical Investigation. Sustainability, 9(7), 1186.
Villamizar, M., Garces, O., Ochoa, L., Castro, H., Salamanca, L., Verano, M., ... & Lang, M. (2016,
May). Infrastructure cost comparison of running web applications in the cloud using AWS
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

7MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION
lambda and monolithic and microservice architectures. In 2016 16th IEEE/ACM
International Symposium on Cluster, Cloud and Grid Computing (CCGrid) (pp. 179-182).
IEEE.
Xu, Y., & Huang, J. S. (2015). Factors influencing cart abandonment in the online shopping
process. Social Behavior and Personality: an international journal, 43(10), 1617-1627.
Yoganathan, S., Sherburn, N., Halupka, V., & Li, J. (2018). Pedagogy, practice, participation:
Reimagining edtech onboarding. In 29th Australasian Association for Engineering
Education Conference 2018 (AAEE 2018) (p. 705). Engineers Australia.
lambda and monolithic and microservice architectures. In 2016 16th IEEE/ACM
International Symposium on Cluster, Cloud and Grid Computing (CCGrid) (pp. 179-182).
IEEE.
Xu, Y., & Huang, J. S. (2015). Factors influencing cart abandonment in the online shopping
process. Social Behavior and Personality: an international journal, 43(10), 1617-1627.
Yoganathan, S., Sherburn, N., Halupka, V., & Li, J. (2018). Pedagogy, practice, participation:
Reimagining edtech onboarding. In 29th Australasian Association for Engineering
Education Conference 2018 (AAEE 2018) (p. 705). Engineers Australia.
1 out of 8
Related Documents

Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
© 2024 | Zucol Services PVT LTD | All rights reserved.