Microservices Architecture All MIS603

profilemyeazyassignment
Module2a063X00001ZrEuZQAVPart2.pdf

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 1/6

MODULE 2 TOPIC 1 RESOURCES AND ACTIVITIESMODULE 2 TOPIC 1 RESOURCES AND ACTIVITIES

Designing services

Introduction:

Designing microservices leverages systems thinking, design and a capability to

manage complexity. In fact, microservices architectures, as discussed in the module

introduction have arisen as a philosophy in response to business conditions that give

rise to rapidly evolving complexity. Which encourages smaller services that support a

plethora of moving parts. Neil Hunt, Chief Product O�cer at Net�ix describes this as

achieving a ‘more nimble architecture’ that ‘improves ‘productivity and scalability’.

So…. how is this achieved?

Newman (2015) outlines several service modelling concepts such as ‘loose coupling’

and ‘high cohesion’. As Microservices architecture is more broadly a philosophy rather

than a method, it is important to note and understand these concepts and how they

guide the de�nition of bounded contexts. Both how these may be de�ned for a new

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

systems as well as established within an existing monolith by identify seams or breaks

within the code that may be sheered into a number of services which align to

bounded services.

The approach shared in Nadareishvili, Mitra, McLarty and Amundsen (2016) includes a

model consisting of �ve parts to guide the process of service design. While the service

itself is the primary concern of this module, in further modules we will review

processes and tools, organisation and culture. Please pause on the element of

solutions architecture – it is important to note that while this role is vital to support a

good overall understanding of services, this role is not involved in the microservices

design or architecture, but in the broader view of how these di�erent services come

together at a macro level. This di�erentiation is important to note. (Please note: there

are a number of ‘architect’ roles in IS, and it important not to confuse their roles and

responsibilities).

The process shown by Nadareishvili et al. (2016) in �gure 3.2 o�ers a practice-based

framework for the process of design and allows for iteration to ensure that

complexities are explored, and opportunities are taken to consider and resolve

complexities as best as possible in addressing constraints and context. Non-essential

complexity is to be avoided, with an emphasis being placed on iteration where

observations lead to adjustments.

References

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/detail.action?

docID=4602504

Resources and Activities:

How to model services

Please read pp. 29-38. There are several important service modelling

concepts that you need to understand in this section. Firstly, the concepts

of ‘loose coupling’ and ‘high cohesion’ are important to achieving successful

microservices outcomes. Also, of vital importance is understanding the

bounded context of domains within which functionality will sit – pay close

attention to the example given, it will give you a clear understanding of how

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

a bounded context assist with the decomposition into services. Note the

cautionary elements in the section that speaks to modules and services

based on the risks associated with premature decomposition.

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=50 (https://ebookcentral-proquest-

com.ezproxy.laureate.net.au/lib/think/reader.action?

docID=1938300&ppg=50)

The Systems Approach to Microservices

Please read section pp. 25 - 33. In this short reading you are introduced to

the systems approach that needs to be taken to develop applications with

microservices. It has an interesting section highlighted in Figure 3-1. To

which you should pay particular attention. It shows the �ve parts of the

microservice design model. Please ensure that you read about each part to

ensure that you can orient yourself in understanding how the parts of this

model work together as we explore each component further.

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/detail.action?docID=4602504

(https://ebookcentral-proquest-

com.ezproxy.laureate.net.au/lib/think/detail.action?docID=4602504)

A Microservices Design Process

Please read pp. 33- 38. The model shown in Figure 3-2 is key to your

understanding of the design process. Please note that as microservices

architecture is more of a philosophy than a set of ‘hard and fast’ rules that

can be applied to any and all organisations, it is likely that this will be a

process that is iterative with carefully balanced trade-o�s to achieve

optimization goals. It is up to the design team to arrive at development

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

principles which they will use to guide their design, to sketch out how they

believe the system should be, followed by implementation and observation

to identify areas of improvement for steady adjustment.

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/detail.action?docID=4602504

(https://ebookcentral-proquest-

com.ezproxy.laureate.net.au/lib/think/detail.action?docID=4602504)

Service Design

Please read pp. 61 - 66. Pay close attention to the discussion of the design

of microservices components and the sizing of these microservices

especially when it comes to avoiding sharing data across services, which is

not ideal. A primary concern is the avoidance on non-essential complexity.

Much of how these decisions relates to speci�c, detailed elements of the

system. In this short reading you are introduced to the concepts of

microservices boundaries and domain-driven design which rely on the

decomposition of existing services into smaller discrete parts where the

domain drives the boundaries of the system. This leads to the concept of

using bounded contexts to aid in the identi�cation of smaller components

which are compatible with sems that indicate where the boundaries may

logically occur for microservices.

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/detail.action?docID=4602504

(https://ebookcentral-proquest-

com.ezproxy.laureate.net.au/lib/think/detail.action?docID=4602504)

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

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

to complete this module or the assessments associated with this subject.

Net�ix to hand infrastructure heavy lifting to AWS

This article discusses how Net�ix has moved from hosting their own data

centres into an AWS environment to focus on their core service. It details

how they will be moving to focus their e�orts on microservices with over

500 microservices that will allow teams to iterate faster through continuous

deployment with a more agile approach.

Reference:

Barbaschow, A. (2016, December 1). Net�ix to hand infrastructure heavy

lifting to AWS. ZDNet. Retrieved from https://www.zdnet.com/article/net�ix-

to-hand-infrastructure-heavy-lifting-to-aws/

(https://www.zdnet.com/article/net�ix-to-hand-infrastructure-heavy-lifting-

to-aws/)

Learning Activity 1: Loosely Bounded and High Cohesion -

Discussion forum post

Collaborative learning activity – Microservices Design Process

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.

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