We also seek to enhance the analyser to make it
more automatic, e.g. to automatically detect more
persistent stores. Perhaps the analyser could sug-
gest when some microservice resilience patterns, like
bulkhead or load balancer, are implemented to reduce
criticality? Finally we would like to investigate the
potential of combining static MDSR analysis with dy-
namic SDG analysis.
REFERENCES
Cabot, J. (2018). Wordpress: A content management
system to democratize publishing. IEEE Software,
35(3):89–92.
Cooper, R. (2014). BBC online outage on saturday 19th july
2014. https://www.bbc.co.uk/blogs/internet/entries/
a37b0470-47d4-3991-82bb-a7d5b8803771.
Cristian, F. (1991). Understanding fault-tolerant distributed
systems. Comm. ACM, 34(2):56–78.
Ghirotti, S. E., Reilly, T., and Rentz, A. (2018). Tracking
and controlling microservice dependencies. Comm.
ACM, 61(11):98–104.
Google (2021). Hipster-shop microservices demo.
https://github.com/GoogleCloudPlatform/
microservices-demo.
Gupta, D. and Palvankar, M. (2020). Pitfalls and challenges
faced during a microservices architecture implemen-
tation. Technical report.
Hasselbring, W. and Steinacker, G. (2017). Microservice
architectures for scalability, agility and reliability in
e-commerce. In IEEE Intl Conf on Software Architec-
ture Workshops, pages 243–246.
Heorhiadi, V., Rajagopalan, S., Jamjoom, H., Reiter, M. K.,
and Sekar, V. (2016). Gremlin: Systematic resilience
testing of microservices. In IEEE 36th Intl Conf on
Distributed Computing Systems, pages 57–66.
IBM (2021). Microservices in the enterprise, 2021: Real
benefits, worth the challenges. Technical report, Tech-
nical report, IBM.
Jamshidi, P., Pahl, C., Mendonc¸a, N. C., Lewis, J., and
Tilkov, S. (2018). Microservices: The journey so far
and challenges ahead. IEEE Software, 35(3):24–35.
Lewis, J. and Fowler, M. (2015). Microservices: A defini-
tion of a new architectural term. https://martinfowler.
com/articles/microservices.html.
Ma, S.-P., Fan, C.-Y., Chuang, Y., Lee, W.-T., Lee, S.-J., and
Hsueh, N.-L. (2018). Using service dependency graph
to analyze and test microservices. In IEEE 42nd An-
nual Computer Software and Applications Conf, vol-
ume 2, pages 81–86.
Meng, Y., Zhang, S., Sun, Y., Zhang, R., Hu, Z., Zhang,
Y., Jia, C., Wang, Z., and Pei, D. (2020). Localizing
failure root causes in a microservice through causality
inference. In IEEE/ACM 28th Intl Symp on Quality of
Service (IWQoS), pages 1–10.
Montalenti, A. (2015). Kafkapocalypse: a post-
mortem on our service outage. https://blog.parse.ly/
kafkapocalypse/.
Nikolaidis, E., Chen, S., Cudney, H., Haftka, R. T., and
Rosca, R. (2004). Comparison of probability and pos-
sibility for design against catastrophic failure under
uncertainty. J. Mech. Des., 126(3):386–394.
Offutt, A. J., Harrold, M. J., and Kolte, P. (1993). A soft-
ware metric system for module coupling. J. Systems
and Software, 20(3):295–308.
Omer, A. M. and Schill, A. (2011). Automatic management
of cyclic dependency among web services. In 2011
14th IEEE Intl Conf on Computational Science and
Engineering, pages 44–51.
Patel, S. K., Rathod, V., and Prajapati, J. B. (2011). Per-
formance analysis of content management systems-
joomla, drupal and wordpress. Intl J. Computer Ap-
plications, 21(4):39–43.
Power, A. and Kotonya, G. (2018). A microservices archi-
tecture for reactive and proactive fault tolerance in IoT
systems. In IEEE 19th Intl Symposium on” A World
of Wireless, Mobile and Multimedia Networks”, pages
588–599.
Rossi, D. (2018). Consistency and availability in microser-
vice architectures. In Intl Conf on Web Information
Systems and Technologies, pages 39–55.
Rudrabhatla, C. K. (2018). Comparison of event choreogra-
phy and orchestration techniques in microservice ar-
chitecture. Intl J. Advanced Computer Science and
Applications, 9(8):18–22.
Salah, T., Zemerly, M. J., Yeun, C. Y., Al-Qutayri, M., and
Al-Hammadi, Y. (2016). The evolution of distributed
systems towards microservices architecture. In Proc.
11th Intl Conf for Internet Technology and Secured
Transactions, pages 318–325.
Soldani, J., Tamburri, D. A., and Van Den Heuvel, W.-J.
(2018). The pains and gains of microservices: A sys-
tematic grey literature review. J. Systems and Soft-
ware, 146:215–232.
Taibi, D. and Lenarduzzi, V. (2018). On the definition of
microservice bad smells. IEEE Software, 35(3):56–
62.
Taibi, D., Lenarduzzi, V., and Pahl, C. (2018). Architec-
tural patterns for microservices: A systematic map-
ping study. In CLOSER, pages 221–232.
Toffetti, G., Brunner, S., Bl
¨
ochlinger, M., Dudouet, F.,
and Edmonds, A. (2015). An architecture for self-
managing microservices. In Proceedings of the 1st
Intl Workshop on Automated Incident Management in
Cloud, pages 19–24.
Wolff, E. (2018). Why microservices fail: An experience
report. Technical report.
Wu, A. (2017). Taking the cloud-native approach with mi-
croservices. Ma-genic/Google Cloud Platform.
Zhou, X., Peng, X., Xie, T., Sun, J., Ji, C., Li, W., and
Ding, D. (2018). Fault analysis and debugging of mi-
croservice systems: Industrial survey, benchmark sys-
tem, and empirical study. IEEE Trans. on Software
Engineering.
Zimmermann, O. (2017). Microservices tenets. Computer
Science-Research and Development, 32(3):301–310.
WEBIST 2022 - 18th International Conference on Web Information Systems and Technologies
32