Professional Documents
Culture Documents
Page 1 of 12
Introduction:
The main purpose of this report is to consider the benefits of developing changes in the
old-platform of Greer John Wealth Management Pty Ltd and shifting from Monolithic to
Microservices architecture. This company is famous for it’s customers satisfaction. But there
are some factors that need the attention of executive leadership team in order to review the
technology strategy of the company. Company requires some areas to be improved in order to
make it successful. Many factors are considered in this report which will show the importance
of shifting the old platform towards Microservices Architecture.This report shows the
importance of bringing cloud-based solutions to the problems raised in the company.
A comparison between monolithic and Microservices architecture is given which
shows some pros and cons of these two architectures. There are certain key element of service
design for the Microservices. Different considerations will be discussed in the report when
splitting Monolithic to Microservices architecture. Services modelling has it’s own benefits as it
keeps the company in latest platform. Some of it’s advantages are also written in the report.
DevOps is another essential part of this report. Moreover, there is also a part of typical build
and test process which is required for the implementation of DevOps. There has been
highlighted the changes which a company needs in order to increase the productive rate of it’s
company. There are six phases of the implementation of DevOps. At last, a complete life cycle
of DevOps is also discussed here.
Page 2 of 12
Below is a comparison between these two architectures:
Page 3 of 12
Key Elements of Service Design of Microservices:
If we have a look at the Service Design of this Microservices Architecture then there are
many key elements in this regard. Every element needs to be considered for changing the
architecture. Handling all of these elements related to service designing of Microservices
becomes highly challenging sometimes. There is need to get handle on these elements. Below
is a list of some of the key elements:
1. Design of the actual Micorservices components
2. Autonomous services
3. Implementation of system having large number of small services
4. Size of Microservices
5. Dealing with data persistence
6. Data sharing problem
7. Mistake in optimal sizing
8. Cross-service coupling
9. Independent deployability
10. Transaction modeling
Page 4 of 12
customers of this architecture. The automation of design, documents and development of API
is highly required so that the application can be delivered at a speed.
Page 5 of 12
Changes in the Company:
Although Greer John Wealth Management Pty Ltd is a very fine company with a
successful record. But there are certain factors of the company which require changes.
Changes are always a good idea in order to make the organization successful. There are many
benefits in regard to bring changes in the company. Different opportunities are created and
improvements are made in the company. In any company, nothing is permanent except
change. While bringing changes to different sectors of the company or team members etc, the
environment of the company is very much improved. If this company has shifted from
Monolithic to Microservices Architecture then this is a very productive change in the company.
This will directly affect the progress rate, team members, internal and external environment.
This will be a positive change in the company and this will help in increase the customer’s
satisfaction needs.
DevOps:
DevOps is a combination of two words Dev for Development and Op for Operations. In the
context of Microservices, the operations means the IT operations. It’s main goal is to develop
and operate the rapid provision of smoothly running Microservices. DevOp uses continuous
delivery method (Ebert, Gallardo, Hernantes, & Serrano, 2016). Basically, it has a tool chain,
Page 6 of 12
special techniques and procedure to automate software deployment. The DevOps teams
actually encapsulate each piece of functionality in the Microservices Architecture. Then the
team build larger systems by composition of Microservices Architecture. Through DevOps,
companies can enjoy continuous integration and continuous delivery. It is also used to drive
Microservices deployments.
DevOps are much better when used with Microservices as shown in Figure 2. Microservices
is emerged from a common set of DevOps which has made these two better together. All of
the companies which have successfully used and implemented Microservices architecture will
surely use DevOps as they see them a good team to work together. Microservices and DevOps
are performing a great role in bringing changes in the company and application development
systems. They provide better deployability, reliability, availability, scalability and modifiability
together.
Page 7 of 12
Figure 3. DevOps Implementation Services (“Veritis transcend”, n.d.)
3. Use Containerization:
In this the reliability of software is ensured while traversing different processes.
Actually, each part of the software runs independently and can run on any environment
without any kind of dependency.
Page 8 of 12
This step helps in the detection, prioritization and isolation of defects in the
application. It also checks the root causes of these kinds of defects.
2. Continuous Testing:
In this, the developed software is tested continuously in order to detect any kind of bugs
or errors. For this purpose, automation tools are used which test the software. Tools can be
Selenium, TestNG etc. Basically, automation testing saves a lot of time and effort.
3. Continuous Integration:
This is the core part of the whole life cycle. After testing, developers commit changes to
the source code frequently. Code is build in this step and it is also reviewed. Integration testing
and packaging is also occurred in this phase.
4. Continuous Deployment:
At this part of the life cycle, code is deployed to the production servers. One must make
sure that the whole code is deployed correctly at correct servers. Containerization tools
perform a significant role in this context.
5. Continuous Monitoring:
At last, the whole application is monitored. This is a very crucial step of the life cycle as
the whole application is taken into consideration for the purpose of continuous monitoring.
Different popular tools are also used here like Splunk, Nagios etc.
Conclusion:
Hence from above discussion it is concluded that Microservices Architecture are most
preferred way of development of software. Many companies have shifted from Monolithic to
Microservices architectures due to it’s multiple independent services. Greer John Wealth
Page 9 of 12
Management Pty Ltd company need to be shifted towards Microservices as well. There are
many factors because of which companies are shifting towards this architecture. The key
elements of service designing had a great effect on the design of the application or the system
related to Microservices. Some aspects are required to be noticed when shifting from old to
new architecture. Moreover, DevOps is the latest way for the development. It works best
when used with the Microservices. The life cycle of the DevOps is essential to implement while
working with it. There are also some build and test processes which are needed for the
implementation of DevOps.
There are certain recommendations for shifting to another or latest platform. The
company should always check the pros and cons before the shifting of platform. This will help
the company to achieve a higher success rate than all of the competitors. The work team and
production team must be given confident related to adoption of the latest architecture. The
whole internal environment of the company will go through a big change once it is shifted. At
last, Microservices is the latest trend among the companies whole are always looking for
success and high production rates. This architecture will completely change the company while
working with another latest technology called DevOps.
References
Balalaie, A., Heydarnoori, A., & Jamshidi, P. (2016). Microservices architecture enables devops:
Migration to a cloud-native architecture. Ieee Software, 33(3), 42-52. Retrieved from
https://spiral.imperial.ac.uk/bitstream/10044/1/40557/8/SO_SWSI-2015-10-
0149.R1_Balalaie.pdf
Page 10 of 12
Bucchiarone, A., Dragoni, N., Dustdar, S., Larsen, S. T., & Mazzara, M. (2018). From monolithic
to microservices: An experience report from the banking domain. Ieee Software, 35(3), 50-55.
Retrieved from
https://dsg.tuwien.ac.at/Staff/sd/papers/Zeitschriftenartikel_2018_S_Dustdar_From_Monolit
hic.pdf
Ebert, C., Gallardo, G., Hernantes, J., & Serrano, N. (2016). DevOps. Ieee Software, 33(3), 94-
100. Retrieved from
https://assets.vector.com/cms/content/consulting/publications/DevOpsTechnologies_Ebert_S
errano_IEEESoftware_2016.pdf
Muratkar, A. (2019). What is DevOps Lifecycle? How to Manage Yours. Cuelogic. Retrieved
from https://www.cuelogic.com/blog/devops-lifecycle.
Naily, M. A., Setyautami, M. R. A., Muschevici, R., & Azurat, A. (2017, September). A
framework for modelling variable microservices as software product lines. In International
Conference on Software Engineering and Formal Methods (pp. 246-261). Springer, Cham.
Retrieved from http://fmse.di.unimi.it/faacs2017/papers/paperMSE4.pdf
Villamizar, M., Garcés, O., Castro, H., Verano, M., Salamanca, L., Casallas, R., & Gil, S. (2015,
September). Evaluating the monolithic and the microservice architecture pattern to deploy
web applications in the cloud. In 2015 10th Computing Colombian Conference (10CCC) (pp.
583-590). IEEE. Retrieved from
https://www.researchgate.net/profile/Mario_Villamizar/publication/
304317852_Evaluating_the_monolithic_and_the_microservice_architecture_pattern_to_depl
oy_web_applications_in_the_cloud/links/5b3ad04ca6fdcc8506ea541b/Evaluating-the-
monolithic-and-the-microservice-architecture-pattern-to-deploy-web-applications-in-the-
cloud.pdf
Page 11 of 12
Page 12 of 12