Evaluating Granularity of Microservices-oriented System Based on Bounded Context
Author:
Affiliation:

Fund Project:

National Natural Science Foundation of China (61572251); State Key Laboratory for Novel Software Technology (Nanjing University) (KFKT2017A13)

  • Article
  • | |
  • Metrics
  • |
  • Reference [23]
  • |
  • Related [20]
  • | | |
  • Comments
    Abstract:

    During recent years, DevOps gains its popularity. As the support of DevOps, microservices architecture has become a hot spot of software industry for its agility, flexibility, and scalability. However, finding the adequate granularity of microservices is a big challenge. Microservices architecture still lacks the criteria for evaluating its granularity. To cope with this problem, this paper designs four evaluation metrics based on several principles of best microservices practice to quantitatively measure the rationality of microservice decomposition. Based on that, a granularity evaluation approach of microservices based on bounded context is proposed. By implementing a tool prototype, evaluation results can be automatically calculated. A case study is used to evaluate the decomposition of a microservices-oriented system and compare the results with the architects' expectations. The results prove that the proposed approach can be applied to evaluate the granularity of microservices-oriented system.

    Reference
    [1] Kalske M, Mäkitalo N, Mikkonen T. Challenges when moving from monolith to microservice architecture. In:Proc. of the Int'l Conf. on Web Engineering (ICWE 2017):Current Trends in Web Engineering. 2018. 32-47.
    [2] Newman S, Wrote; Cui LQ, Zhang Y, Trans. Building Microservices:Designing Fine-grained Systems. 2nd ed., O'Reilly Media, 2015. 2-3, 9, 16, 32, 47(in Chinese).
    [3] Jamshidi P, Pahl C, Mendonça NC, Tilkov S. Microservices:The journey so far and challenges ahead. IEEE Software, 2018, 35(3):24-35.
    [4] Ma Q, Zhou NJ, Zhu YF, Wang H. Evaluating service identification with design metrics on business process decomposition. In:Proc. of the Int'l Conf. on Services Computing. IEEE, 2009. 160-167.
    [5] Hassan S, Bahsoon R. Microservices and their design trade-offs:A self-adaptive roadmap. In:Proc. of the Int'l Conf. on Services Computing. IEEE, 2016.
    [6] Evans E, Wrote; Zhao L, Sheng HY, Liu X, Trans. Domain-driven Design:Tracking Complexity in the Heart of Software. Pearson Education, 2003. 30(in Chinese).
    [7] Tyszberowicz S, Heinrich R, Liu B, Liu ZM. Identifying microservices using functional decomposition. 2018. https://www.researchgate.net/publication/326901590_Identifying_Microservices_Using_Functional_Decomposition
    [8] Richardson C. Pattern:Micro service architecture. 2017. http://microservices.io/patterns/microservices.html
    [9] Gysel M, KÖlbener L, Giersche W, Zimmermann O. Service Cutter:A systematic approach to service decomposition. In:Proc. of the Service-oriented and Cloud Computing. Springer-Verlag, 2016. 185-200.
    [10] Baresi L, Garriga M, De Renzis A. Microservices identification through interface analysis. In:Proc. of the European Conf. on Service-oriented & Cloud Computing. 2017. 19-33.
    [11] Chen R, Li SS, Li Z. From Monolith to microservices:A dataflow-driven approach. In:Proc. of the Asia-Pacific Software Engineering Conf. IEEE, 2018. 466-475.
    [12] Zdun U, Na E, Leymann VF. Ensuring and assessing architecture conformance to microservice decomposition patterns. In:Proc. of the Service-oriented Computing. 2017. 411-429.
    [13] Selic B. Tutorial:An overview of UML 2.0. In:Proc. of the Int'l Conf. on Software Engineering. 2004. 1069-1070.
    [14] Daghaghzadeh M, Dastjerdi AB, Daghaghzadeh H. A metric for measuring degree of service cohesion in service oriented designs. In:Proc. of the Int'l Journal of Computer Science Issues. 2011. 83-89.
    [15] Erradi A, Kulkarni N, Maheshwari P. Service design process for reusable services:Financial services case study. In:Proc. of the Int'l Conf. on Service-Oriented Computing. Springer-Verlag, 2007. 606-617.
    [16] Teorey TJ, Wei GP, Bolton DL, Koenig JA. ER model clustering as an aid for user communication and documentationin database design. Communication of the ACM, 1989,975-987.
    [17] Jaeschke P, Oberweis A, Stucky W. Extending ER model clustering by relationship clustering. In:Proc. of the Int'l Conf. on Conceptual Modeling. 1993. 451-462.
    [18] Akoka J, Comyn-Wattiau I. Entity-relationship and object-oriented model automatic clustering. Data & Knowledge Engineering Journal, 1996,87-117.
    [19] Nadareishvili I, Mitra R, McLarty M, Amundsen M. Microservice Architecture:Aligning Principles, Practices, and Culture. O'Reilly Media, 2016. 18.
    [20] Martin RC. Agile Software Development:Principles, Patterns, and Practices. Prentice Hall PTR, 2003.
    附中文参考文献:
    [2] Newman S,著;崔力强,张骏,译.微服务设计.北京:人民邮电出版社,2016.2~3,9,16,32,47.
    [6] Evans E,著;赵俐,盛海艳,刘霞,译.领域驱动设计——软件核心复杂性应对之道.北京:清华大学出版社,2003.30.
    Cited by
    Comments
    Comments
    分享到微博
    Submit
Get Citation

钟陈星,李杉杉,张贺,章程.限界上下文视角下的微服务粒度评估.软件学报,2019,30(10):3227-3241

Copy
Share
Article Metrics
  • Abstract:4426
  • PDF: 7540
  • HTML: 3695
  • Cited by: 0
History
  • Received:September 01,2018
  • Revised:October 31,2018
  • Online: May 24,2019
You are the first2034048Visitors
Copyright: Institute of Software, Chinese Academy of Sciences Beijing ICP No. 05046678-4
Address:4# South Fourth Street, Zhong Guan Cun, Beijing 100190,Postal Code:100190
Phone:010-62562563 Fax:010-62562533 Email:jos@iscas.ac.cn
Technical Support:Beijing Qinyun Technology Development Co., Ltd.

Beijing Public Network Security No. 11040202500063