Skip to main content
Log in

Model based verification of dynamically evolvable service oriented systems

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

  • Research Paper
  • Published:
Science China Information Sciences Aims and scope Submit manuscript

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 via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  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

    Article  Google Scholar 

  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

    Google Scholar 

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

    Article  Google Scholar 

  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

    Article  Google Scholar 

  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

    Google Scholar 

  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

    Article  MATH  Google Scholar 

  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

    Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

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

    Article  Google Scholar 

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

    Article  Google Scholar 

  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

    Google Scholar 

  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

    Google Scholar 

  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

    Article  Google Scholar 

  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

    Article  Google Scholar 

  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

    Google Scholar 

  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

    Google Scholar 

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

    Article  Google Scholar 

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

    Article  Google Scholar 

  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

    Article  Google Scholar 

  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

    Google Scholar 

  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

    Chapter  Google Scholar 

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

    Article  Google Scholar 

  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

    Article  MATH  Google Scholar 

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

    MATH  Google Scholar 

  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

    Chapter  Google Scholar 

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

  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

    Google Scholar 

  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

    Article  Google Scholar 

  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

    Google Scholar 

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

    Article  Google Scholar 

  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

    Article  Google Scholar 

  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

    Chapter  Google Scholar 

  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

    Google Scholar 

  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

    Article  Google Scholar 

  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

    Article  Google Scholar 

  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

    Google Scholar 

  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

    Article  Google Scholar 

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

    Article  Google Scholar 

  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

    Article  Google Scholar 

  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

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yu Zhou.

Rights and permissions

Reprints and permissions

About this article

Check for updates. 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

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s11432-015-5332-8

Keywords

关键词

Navigation