Microservices Architecture
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971655_1&mode=reset 1/6
MODULE 2 TOPIC 2 RESOURCES AND ACTIVITIESMODULE 2 TOPIC 2 RESOURCES AND ACTIVITIES
Splitting the monolith
Introduction:
As monoliths grow over time, they can become large and unwieldy – and this can
materially slow down development cycles and prevent an organisation from being
competitive as it stalls in bringing new capability to market. It is recognised that a
microservices architecture allows an organisation to be nimbler however untangling
the monolith is also understood to be a task that requires deliberate design, clear
systems thinking and patient ‘untangling’. Newman (2015) outlines several di�erent
tactics that can be used to isolate services which can be teased out from the monolith
though the identi�cation of seams, bounded contexts and transactions. It is well
recognised that this migration is an epic journey as decisions are taken about which
capability to decouple �rst and how to progressively migrate services from the
monolith. This clearly is a complex decomposition task, which depends on decoupling
the correct services. This requires an examination of the current code base to
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971655_1&mode=reset 2/6
determine what seams exist that may make for logical boundaries to services that can
be isolated. However, this is not the only criteria to be considered – team capability is
also an important decisions point (we will discuss this further in Module 3). Pay
attention to both the tools that Newman o�ers, as well as the four reasons that he
gives as to why it makes sense to split the monolith despite the challenges inherent in
decomposition of the existing monolith and the required refactoring. Pay close
attention to the challenges identi�ed by McKendrick (2019) – while it is clear that
there are very many bene�ts to moving from monoliths to microservices architecture,
this is not a simple process and needs to be undertaken with care and deliberation
with every e�ort to be taken to mitigate the challenges.
References
Newman, S. (2015). Building microservices: Designing �ne-grained systems. California, USA: O’Reilly Media. Retrieved from https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?docID=1938300
McKendrick, J. (2019, March 8). They say that breaking up monolithic systems is hard to do.
ZDNet. Retrieved from https://www.zdnet.com/article/they-say-that-breaking-up- monolithic-systems-is-hard-to-do/
Resources and Activities:
Splitting the monolith
Please watch the following video from the DevOps foundations:
Microservices series:
4.Microservices by examples: Splitting the monolith (3m 47s)
In this short video clip, the presenter walks you through a practice-based
example of how a team analysed a monolith to �nd new ways to structure
future microservices. Please note how they not only looked at the existing
code base to isolate seams of code that could be treated in isolation, but
also paid attention to bounded contexts to identify service boundaries and
also team capability in arriving at logical splits.
Reference:
Stone, L. (2019, February 27). Microservices by examples: Splitting the
monolith. [Video �le]. Retrieved from https://www.linkedin.com/learning-
login/share?
forceAccount=false&redirect=https%3A%2F%2Fwww.linkedin.com%2Flearning%
foundations-microservices%3Ftrk%3Dshare_ent_url&account=56744473
https://ebookcentral-proquest-com.ezproxy.laureate.net.au/lib/think/reader.action?docID=1938300
https://www.zdnet.com/article/they-say-that-breaking-up-monolithic-systems-is-hard-to-do/
https://www.linkedin.com/learning-login/share?forceAccount=false&redirect=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fdevops-foundations-microservices%3Ftrk%3Dshare_ent_url&account=56744473
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971655_1&mode=reset 3/6
(https://www.linkedin.com/learning-login/share?
forceAccount=false&redirect=https%3A%2F%2Fwww.linkedin.com%2Flearning%
foundations-microservices%3Ftrk%3Dshare_ent_url&account=56744473)
Splitting the monolith
Please read pp. 79 – 80. Decomposing a monolith is a challenging process –
and in this reading Newman o�er tools and perspectives about how this
can be done successfully. Pay close attention to how Newman identi�es the
concept of ‘seams’ and how this relates to the concept of a ‘bounded
contexts’ and how these o�er a means to identify service boundaries.
Reference:
Newman, S. (2015). Building microservices: Designing �ne-grained systems.
California, USA: O’Reilly Media. Retrieved from https://ebookcentral-
proquest-com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=1938300&ppg=99 (https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=1938300&ppg=99)
Reasons to split the monolith
Please read pp. 81 –82. In this section, Newman outlines four reasons to
split the monolith: pace of change, team structure, security and technology.
He makes important notes about how these reasons for splitting the
monolith may in fact be guiding principles in how the monolith should be
decomposed.
Reference:
Newman, S. (2015). Building microservices: Designing �ne-grained systems.
California, USA: O’Reilly Media. Retrieved from https://ebookcentral-
proquest-com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=1938300&ppg=101 (https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=1938300&ppg=101)
Tangled dependencies
https://www.linkedin.com/learning-login/share?forceAccount=false&redirect=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fdevops-foundations-microservices%3Ftrk%3Dshare_ent_url&account=56744473
https://ebookcentral-proquest-com.ezproxy.laureate.net.au/lib/think/reader.action?docID=1938300&ppg=99
https://ebookcentral-proquest-com.ezproxy.laureate.net.au/lib/think/reader.action?docID=1938300&ppg=101
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971655_1&mode=reset 4/6
Please read pp. 82 -88. After identifying bounded contexts, seams
– tangled dependencies still present challenges. Pay close
attention to how Newman recommends developing an
understanding of the problem (Getting to Grips), and how breaks can be
staged to allow for services to be further decomposed into autonomous
parts. Also, pay close attention to his description of transactional
boundaries and how these may impact on how services may be
decomposed.
Reference:
Newman, S. (2015). Building microservices: Designing �ne-grained systems.
California, USA: O’Reilly Media. Retrieved from https://ebookcentral-
proquest-com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=1938300&ppg=102 (https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=1938300&ppg=102)
They say that breaking up monolithic systems is hard to do
This article gives practical and industry-based insights into how challenging
the process of splitting the monolith can be and how the complexity of the
process requires careful and speci�c management of the transition
process.
Reference:
McKendrick, J. (2019, March 8). They say that breaking up monolithic
systems is hard to do. ZDNet. Retrieved from
https://www.zdnet.com/article/they-say-that-breaking-up-monolithic-
systems-is-hard-to-do/ (https://www.zdnet.com/article/they-say-that-
breaking-up-monolithic-systems-is-hard-to-do/)
Additional Learning Resources
If you would like to learn more about the topics covered in this module, here are
some additional resources. These resources will contribute to further develop
understanding of the topics covered. However, these resources are not essential
to complete this module or the assessments associated with this subject.
https://ebookcentral-proquest-com.ezproxy.laureate.net.au/lib/think/reader.action?docID=1938300&ppg=102
https://www.zdnet.com/article/they-say-that-breaking-up-monolithic-systems-is-hard-to-do/
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971655_1&mode=reset 5/6
The next generation of Health IT
This article gives insight into the value that microservices architecture can
o�er within the context of Health IT systems. The aim is to ground your
understanding within a practice-based context.
Reference:
Nichol, P.B. (20017, February). Monolithic vs. microservices architectures for
innovation. CIO. Retrieved from
https://www.cio.com/article/3163169/monolithic-vs-microservice-
architectures-for-innovation.html
(https://www.cio.com/article/3163169/monolithic-vs-microservice-
architectures-for-innovation.html)
Learning Activity 1: Interactive Knowledge check
Learning Activity 2: Splitting the Monolith - Discussion forum post
Collaborative learning activity - The Process of Splitting a Monolith
Note: The Learning activities above are not part of summative/graded assessment;
however they are designed to prepare you for incremental graded assessment and
expand your learning.
These activities encourage a community learning experience between peers, and
provide opportunities for facilitators to o�er formative feedback, throughout a
module, to the student cohort.
https://www.cio.com/article/3163169/monolithic-vs-microservice-architectures-for-innovation.html
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971655_1&mode=reset 6/6