603 ASSG 1 MICRO SERVICES
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971654_1&mode=reset 1/7
MODULE 1 TOPIC 2 RESOURCES AND ACTIVITIESMODULE 1 TOPIC 2 RESOURCES AND ACTIVITIES
Principles and key concepts of microservices
Introduction:
British software development specialists Martin Fowler and James Lewis describe
microservices architecture as:
“In short, the microservice architectural style is an approach to developing a single
application as a suite of small services, each running in its own process and
communicating with lightweight mechanisms, often an HTTP resource API. These
services are built around business capabilities and independently deployable by fully
automated deployment machinery. There is a bare minimum of centralized
management of these services, which may be written in di�erent programming
languages and use di�erent data storage technologies.” (Fowler,2014)
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971654_1&mode=reset 2/7
It is fair to note that microservices architecture is a developing �eld, and in some ways
might be considered more of a philosophy for software engineering than a fully
de�ned and developed methodology now. However, there is consensus on the
characteristics of applications built using microservices architecture principles:
1. Size – they are smaller than service-oriented architecture and much smaller than monoliths
2. Communications – they rely on messaging to call information from other microservices
3. Context – is bounded, most often by de�ned functionality of the microservices
4. Autonomous – the are developed to meet a speci�c purpose sharing as little as possible with other services
5. Deployment – does not rely on any other service and is therefore independent
Microservices architecture evolved through the pursuit of software engineering that
allowed speed of change, safety of change – at scale – and in harmony.
There is a clear value proposition:
1. Teams do not depend on each other for delivery and can develop and ship code faster by being freed from interdependencies
2. As teams are not independent, various services can be developed in parallel
3. Without interdependencies, the tech stack of technologies, languages and frameworks can di�er from one service to another and can be selected on best suitability for the service in question rather than seeking a middle ground uni�ed approach
4. Because it is easy to simply replace an independent service, code can become ‘disposable’ – what doesn’t work can be easily replaced
In this module we will work through some of the fundamental philosophies, concepts
and principles of microservices architecture before we progress into developing our
deeper understanding of how microservices has changed many di�erent facets of
software engineering.
References
Fowler, M. (2014, March 25). Microservices – A de�nition of this new architectural term.
Retrieved from https://martinfowler.com/articles/microservices.html
Resources and Activities:
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971654_1&mode=reset 3/7
The concepts behind microservices
Please watch the following video from the DevOps foundations:
Microservices series:
1.Microservices in production: The concepts behind microservices (3m 6s)
In this short video clip, you are introduced to the key concepts of
microservices. Note how microservices can be very broad and diverse and
so not easily de�ned. Note how the presenter illustrates that services
should be organised around a real-world domain and enforced by bounded
contexts. Note how teams developing are not split according to function
but rather by business capability with the various skill sets blended into a
team.
Reference:
Stone, L. (2019, February 27). Microservices in production: The concepts
behind microservices. [Video File]. 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://www.linkedin.com/learning-login/share?
forceAccount=false&redirect=https%3A%2F%2Fwww.linkedin.com%2Flearning%
foundations-microservices%3Ftrk%3Dshare_ent_url&account=56744473)
Microservices
Please watch the following video from the Cloud architecture: Advanced
concepts series:
1.Advanced architecture patterns: Microservices (5m 40s)
In this short video clip, you are introduced to how microservices is a new
way to de�ne services. It has an interesting section where the facilitator
discusses how microservices are a decomposition of prior services that are
of a more coarse-grained nature in the interests of creating services that
are more useable. Pay particular attention to the de�nition of how di�erent
architectures in�uence how autonomous and independent services may be
from one another and the bene�ts this creates. Note how he discusses how
many, even thousands, or microservices may exist to do the job of what a
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971654_1&mode=reset 4/7
monolithic application would have done in the past. From the 3:00 minute
mark of the video, Linthicum shares a diagram that illustrates how
decomposition of monolithic and service-oriented architected systems
leads to �ner grained services. This creates discrete and independent
services.
Reference:
Linthicum, D. (2019, January 23). Advanced architecture patterns:
Microservices. [Video File]. Retrieved from
https://www.linkedin.com/learning-login/share?
forceAccount=false&redirect=https%3A%2F%2Fwww.linkedin.com%2Flearning%
architecture-advanced-concepts-
2%3Ftrk%3Dshare_ent_url&account=56744473
(https://www.linkedin.com/learning-login/share?
forceAccount=false&redirect=https%3A%2F%2Fwww.linkedin.com%2Flearning%
architecture-advanced-concepts-
2%3Ftrk%3Dshare_ent_url&account=56744473)
Microservices
Please read pp. 1 – 8. This will give you a clear idea of what the philosophy
of microservices architecture is and its de�ning characteristics. Please pay
particular attention to the primary characteristics: Small and autonomous.
Understanding these de�ning characteristics is pivotal to your further
understanding of this philosophy. Thereafter take careful note of the 7
bene�ts that a microservices architecture philosophy o�ers software
engineers.
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=21 (https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=1938300&ppg=21)
The Microservices Way
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971654_1&mode=reset 5/7
Please read pp. 4 – 11. Pay close attention to the three concepts that are
outlined as de�nitive to microservices architecture as a style. From page 6
the authors ask and answer a series of questions about what sets
microservices architecture apart from service-oriented architecture and the
key characteristics. They de�ne this as ‘The Microservices Way’ and avoid
deep diving into the technologies used, while rather speaking to the
philosophy. While Newman et al. have focussed on ‘small and autonomous’
Nadareishvili et al. focus on speed, safety and harmony. It is important to
note that as this is a philosophy, these ideologies do not con�ict with each
other, but rather extend philosophical understanding.
Reference:
Nadareishvili, I., Mitra, R., McLarty, M., & Amundsen, M. (2016). Microservice
architecture: Aligning principles, practices, and culture. California, USA:
O’Reilly. Retrieved from https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=4602504&ppg=19 (https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=4602504&ppg=19)
The Microservices Value Proposition
Please read pp. 13 - 16. Nadareishvili et al. Lay out bene�ts of microservices
architecture – these are like those laid out by Newman (2015) but do have
some subtle di�erences while remaining largely philosophically aligned.
Please pay attention to the businesses that they use as examples because it
o�ers you a contextual understanding of which businesses are at the
forefront of the microservices vanguard and how it allows their business to
bene�t. Pay speci�c attention to the 6 ways in which speed contributes to
business value – this will be important for your assignment.
Reference:
Nadareishvili, I., Mitra, R., McLarty, M., & Amundsen, M. (2016). Microservice
architecture: Aligning principles, practices, and culture. California, USA:
O’Reilly. Retrieved from https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=4602504&ppg=29 (https://ebookcentral-proquest-
com.ezproxy.laureate.net.au/lib/think/reader.action?
docID=4602504&ppg=29)
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971654_1&mode=reset 6/7
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.
To be a microservice: How smaller parts of bigger applications could remake IT
This resource o�ers you insights int the main ideas that are driving
microservices and the value they can create. It is an ‘easy-read’ trade-based
article to o�er you a nutshell view of how the industry is viewing
microservices architecture as a potential solution to o�er more responsive
systems development in a rapidly changing world.
Reference:
Fulton, S. (2018, September 7). To be a microservice: How smaller parts of
bigger applications could remake IT. ZDNet. Retrieved from
https://www.zdnet.com/article/to-be-a-microservice-how-smaller-parts-of-
bigger-applications-could-remake-it/ (https://www.zdnet.com/article/to-be-
a-microservice-how-smaller-parts-of-bigger-applications-could-remake-it/)
Learning Activity 1: Interactive Knowledge check
Learning Activity 2: Characteristics of Microservices architecture -
Discussion forum post
Collaborative learning activity - Bene�ts of monolithic and
microservices architecture
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.
6/3/2020 Laureate International Universities
https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971654_1&mode=reset 7/7
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.