Advertisement

Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

Model based verification of dynamically evolvable service oriented systems

基于模型的动态可演化面向服务架构验证方法

Abstract

Dynamic evolution is highly desirable for service oriented systems in open environments. For the evolution to be trusted, it is crucial to keep the process consistent with the specification. In this paper, we study two kinds of evolution scenarios and propose a novel verification approach based on hierarchical timed automata to model check the underlying consistency with the specification. It examines the procedures before, during and after the evolution process, respectively and can support the direct modeling of temporal aspects, as well as the hierarchical decomposition of software structures. Probabilities are introduced to model the uncertainty characterized in open environments and thus can support the verification of parameter-level evolution. We present a flattening algorithm to facilitate automated verification using the mainstream timed automata based model checker–UPPAAL (integrated with UPPAAL-SMC). We also provide a motivating example with performance evaluation that complements the discussion and demonstrates the feasibility of our approach.

摘要

创新点

针对开放环境下面向服务架构的动态演化问题, 文章提出了一种基于扩展的层次式时间自动机的验证方法, 该方法可以对时间相关属性, 层次结构特征, 状态及演化行为进行直接的建模。通过引入概率转移可对开放环境下的不确定性进行建模, 结合应用统计模型检验技术, 从而支持对概率相关规约进行分析验证; 针对结构型的演化类别, 通过传统的时序逻辑进行规约描述, 且可以从演化前、演化中及演化后分别进行验证; 针对参数型的演化类别, 可以采用概率时序逻辑进行规约描述并进行验证, 为说明方法的有效性, 通过一个经典的电子商务系统范例展示了所提方法针对这两种演化类型的验证。

This is a preview of subscription content, log in to check access.

References

  1. 1

    Yang F, Lü J, Mei H. Technical framework for Internetware: an architecture centric approach. Sci China Ser-F: Inf Sci, 2008, 51: 610–622

  2. 2

    Wang H, Wu W, Mao X, et al. Growing construction and adaptive evolution of complex software system (in Chinese). Sci Sin Inform, 2014, 44: 743–761

  3. 3

    Fu J M, Tao F, Wang D, et al. Software behavior model based on system objects. J Softw, 2011, 22: 2716–2728

  4. 4

    Wang Q X, Shen J R, Wang X, et al. A component-based approach to online software evolution. J Softw Maint Evol-Res Pract, 2006, 18: 181–205

  5. 5

    Oreizy P, Medvidovic N, Taylor R. Runtime software adaptation: framework, approaches, and styles. In: Companion of the 30th International Conference on Software Engineering, Leipzig, 2008. 899–910

  6. 6

    Lü J, Ma X X, Tao X P, et al. On environment-driven software model for Internetware. Sci China Ser-F: Inf Sci, 2008, 51: 683–721

  7. 7

    Kazhamiakin R, Pandya P, Pistore M. Timed modelling and analysis in web service compositions. In: Proceedings of 1st International Conference on Availability, Reliability and Security, Vienna, 2006. 840–846

  8. 8

    Alur R, Dill D. A theory of timed automata. Theor Comput Sci, 1994, 126: 183–235

  9. 9

    Calinescu R, Ghezzi C, Kwiatkowska M, et al. Self-adaptive software needs quantitative verification at runtime. Commun ACM, 2012, 55: 69–77

  10. 10

    Dong J S, Hao P, Qin S C, et al. Timed automata patterns. IEEE Trans Softw Eng, 2008, 34: 844–859

  11. 11

    Zhou Y, Ge J D, Zhang P C. Hierarchical timed automata based verification of dynamic evolution process in open environments. In: Proceedings of the International Conference on Software and System Process, Nanjing, 2014. 144–148

  12. 12

    Song W, Tang J H, Zhang G X, et al. Substitutability analysis of WS-BPEL services (in Chinese). Sci Sin Inform, 2012, 42: 264–279

  13. 13

    Zeng J, Sun H L, Liu X D, et al. Dynamic evolution mechanism for trustworthy software based on service composition. J Softw, 2010, 21: 261–276

  14. 14

    Zhou Y, Ma X X, Gall H. A middleware platform for the dynamic evolution of distributed component-based systems. Computing, 2014, 96: 725–747

  15. 15

    Hartmanns A, Hermanns H. A modest approach to checking probabilistic timed automata. In: Proceedings of 6th International Conference on Quantitative Evaluation of Systems, Budapest, 2009. 187–196

  16. 16

    Legay A, Delahaye B, Bensalem S. Statistical model checking: an overview. In: Proceedings of First International Conference on Runtime Verification, St. Julians, 2010. 122–135

  17. 17

    Baresi L, Di Nitto E, Ghezzi C. Toward open-world software: issue and challenges. Computer, 2006, 39: 36–43

  18. 18

    Kramer J, Magee J. The evolving philosophers problem: dynamic change management. IEEE Trans Softw Eng, 1990, 16: 1293–1306

  19. 19

    Vandewoude Y, Ebraert P, Berbers Y, et al. Tranquility: a low disruptive alternative to quiescence for ensuring safe dynamic updates. IEEE Trans Softw Eng, 2007, 33: 856–868

  20. 20

    Epifani I, Ghezzi C, Mirandola R, et al. Model evolution by run-time parameter adaptation. In: Proceedings of 31st International Conference on Software Engineering, Vancouver, 2009. 111–121

  21. 21

    Behrmann G, David A, Larsen K. A tutorial on Uppaal. In: Proceedings of Formal Methods for the Design of Real-Time Systems, Bertinoro, 2004. 200–236

  22. 22

    David A, Larsen K, Legay A, et al. Uppaal SMC tutorial. Int J Softw Tools Technol Transfer, 2015, 17: 397–415

  23. 23

    Zhou Y, Baresi L, Rossi M. Towards a formal semantics for UML/MARTE state machines based on hierarchical timed automata. J Comput Sci Technol, 2013, 28: 188–202

  24. 24

    Milner R. Communicating and Mobile Systems: the Pi Calculus. Cambridge: Cambridge University Press, 1999

  25. 25

    Behrmann G, Larsen K, Rasmussen J. Priced timed automata: algorithms and applications. In: Proceedings of International Symposium on Formal Methods for Components and Objects, Amsterdam, 2005. 162–182

  26. 26

    OMG. Specification. Unified Modeling Language: Superstructure Version 2.2. OMG Formal Document, 2009

  27. 27

    Cavallaro L, Di Nitto E, Pradella M. An automatic approach to enable replacement of conversational services. In: Proceedings of the International Conference on Service-Oriented Computing, Stockholm, 2009. 159–174

  28. 28

    Huang G, Mei H, Yang F Q. Runtime software architecture based on reflective middleware. Sci China Ser-F: Inf Sci, 2004, 47: 555–576

  29. 29

    Ma X X, Zhou Y, Pan J, et al. Constructing self-adaptive systems with polymorphic software architecture. In: Proceedings of International Conference on Software Engineering and Knowledge Engineering, Boston, 2007. 2–8

  30. 30

    Baresi L, Ghezzi C, Mottola L. Loupe: verifying publish-subscribe architectures with a magnifying lens. IEEE Trans Softw Eng, 2011, 37: 228–246

  31. 31

    Chen H B, Yu J, Hang C Q, et al. Dynamic software updating using a relaxed consistency model. IEEE Trans Softw Eng, 2011, 37: 679–694

  32. 32

    Hayden C, Magill S, Hicks M, et al. Specifying and verifying the correctness of dynamic software updates. In: Proceedings of International Confernece on Verified Software: Theories, Tools, Experiments. Berlin: Springer, 2012. 278–293

  33. 33

    Zhang J, Cheng B. Model-based development of dynamically adaptive software. In: Proceedings of 28th International Conference on Software Engineering, Shanghai, 2006. 371–380

  34. 34

    Zhang P C, Leung H, Li W R, et al. Web services property sequence chart monitor: a tool chain for monitoring BPEL-based web service composition with scenario-based specifications. IET Softw, 2013, 7: 222–248

  35. 35

    David A, Du D, Larsen K, et al. An evaluation framework for energy aware buildings using statistical model checking. Sci China Inf Sci, 2012, 55: 2694–2707

  36. 36

    Xu C, Liu Y P, Cheung S C, et al. Towards context consistnecy by concurrent checking for Internetware applications. Sci China Inf Sci, 2013, 56: 082105

  37. 37

    Calinescu R, Grunske L, Kwiatkowska M, et al. Dynamic QoS management and optimization in service-based systems. IEEE Trans Softw Eng, 2011, 37: 387–409

  38. 38

    Hölscher K, Ziemann P, Gogolla M. On translating UML models into graph transformation systems. J Vis Lang Comput, 2006, 17: 78–105

  39. 39

    Xu H Z, Zeng G S, Chen B. Conditional hypergraph grammars and its analysis of dynamic evolution of software architectures. J Softw, 2011, 22: 1210–1223

  40. 40

    Ma X X, Baresi L, Ghezzi C, et al. Version-consistent dynamic reconfiguration of component-based distributed systems. In: Proceedings of 19th Symposium on Foundations of Software Engineering, Hungary, 2011. 245–255

Download references

Author information

Correspondence to Yu Zhou.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Zhou, Y., Ge, J., Zhang, P. et al. Model based verification of dynamically evolvable service oriented systems. Sci. China Inf. Sci. 59, 32101 (2016). https://doi.org/10.1007/s11432-015-5332-8

Download citation

Keywords

  • dynamic evolution
  • verification
  • model checking
  • service oriented systems
  • timed automata

关键词

  • 动态演化
  • 验证
  • 模型检验
  • 面向服务系统
  • 时间自动机