Refinement of Structured Interactive Systems

  • Denisa Diaconescu
  • Luigia Petre
  • Kaisa Sere
  • Gheorghe Stefanescu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8687)


The refinement concept provides a formal tool for addressing the complexity of software-intensive systems, by verified stepwise development from an abstract specification towards an implementation. In this paper we propose a novel notion of refinement for a structured formalism dedicated to interactive systems, that combines a data-flow with a control-oriented approach. Our notion is based on scenarios, extending to two dimensions the trace-based definition for the refinement of classical sequential systems. We illustrate our refinement notion with a simple example and outline several extensions to include more sophisticated distributed techniques.


scenario-based refinement interactive systems integration of data flow and control flow coordination programming languages trace semantics stuttering equivalence 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abrial, J.-R.: The B-Book: Assigning Programs to Meanings. Cambridge University Press (1996)Google Scholar
  2. 2.
    Abrial, J.-R., Butler, M., Hallerstede, S., Hoang, T.S., Mehta, F., Voisin, L.: Rodin: An Open Toolset for Modelling and Reasoning in Event-B. International Journal on Software Tools for Technology Transfer 6, 447–466 (2010)CrossRefGoogle Scholar
  3. 3.
    Abrial, J.-R.: Modeling in Event-B: System and Software Design. Cambridge University Press (2010)Google Scholar
  4. 4.
    Back, R.J., Kurki-Suonio, R.: Decentralization of process nets with centralized control. In: PODC 1983, pp. 131-142. ACM (1983)Google Scholar
  5. 5.
    Back, R.J., Wright, J.V.: Refinement Calculus: A Systematic Introduction. Springer, Heidelberg (1998)CrossRefzbMATHGoogle Scholar
  6. 6.
    Back, R.J., Wright, J.V.: Trace Refinement of Action Systems. In: Jonsson, B., Parrow, J. (eds.) CONCUR 1994. LNCS, vol. 836, pp. 367–384. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  7. 7.
    Banu-Demergian, I.T., Paduraru, C.I., Stefanescu, G.: A new representation of two-dimensional patterns and applications to interactive programming. In: Arbab, F., Sirjani, M. (eds.) FSEN 2013. LNCS, vol. 8161, pp. 183–198. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  8. 8.
    Banu-Demergian, I.T., Stefanescu, G.: Towards a formal representation of interactive systems. Fundamenta Informaticae 131, 313–336 (2014)MathSciNetzbMATHGoogle Scholar
  9. 9.
    Bergstra, J.A., Ponse, A., Smolka, S.A. (eds.): Handbook of Process Algebra. Elsevier (2001)Google Scholar
  10. 10.
    Broy, M.: Compositional refinement of interactive systems. Journal of the ACM 44, 850–891 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Broy, M., Olderog, E.R.: Trace-oriented models of concurrency. In: [9], pp. 101–196Google Scholar
  12. 12.
    Broy, M., Stefanescu, G.: The algebra of stream processing functions. Theoretical Compututer Science 258, 99–129 (2001)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Bryans, J.W., Wei, W.: Formal Analysis of BPMN Models Using Event-B. In: Kowalewski, S., Roveri, M. (eds.) FMICS 2010. LNCS, vol. 6371, pp. 33–49. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  14. 14.
    Diaconescu, D., Leustean, I., Petre, L., Sere, K., Stefanescu, G.: Refinement Preserving Translation from Event-B to Register-Voice Interactive Systems. TUCS Technical Reports No. 1028 (December 2011),
  15. 15.
    Diaconescu, D., Leustean, I., Petre, L., Sere, K., Stefanescu, G.: Refinement-Preserving Translation from Event-B to Register-Voice Interactive Systems. In: Derrick, J., Gnesi, S., Latella, D., Treharne, H. (eds.) IFM 2012. LNCS, vol. 7321, pp. 221–236. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  16. 16.
    Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall International (1976)Google Scholar
  17. 17.
    Dragoi, C., Stefanescu, G.: AGAPIA v0.1: A programming language for interactive systems and its typing systems. In: FINCO 2007. ENTCS, vol. 203, pp. 69–94 (2008)Google Scholar
  18. 18.
    Dragoi, C., Stefanescu, G.: On compiling structured interactive programs with registers and voices. In: Geffert, V., Karhumäki, J., Bertoni, A., Preneel, B., Návrat, P., Bieliková, M. (eds.) SOFSEM 2008. LNCS, vol. 4910, pp. 259–270. Springer, Heidelberg (2008)Google Scholar
  19. 19.
    Salehi Fathabadi, A., Rezazadeh, A., Butler, M.: Applying Atomicity and Model Decomposition to a Space Craft System in Event-B. In: Bobaru, M., Havelund, K., Holzmann, G.J., Joshi, R. (eds.) NFM 2011. LNCS, vol. 6617, pp. 328–342. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  20. 20.
    Milner, R., Parrow, J., Walker, D.: A Calculus of Mobile Processes I and II. Information and Computation 100, 1–77 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Misra, J., Cook, W.R.: Computation Orchestration. Software and System Modeling 6, 83–110 (2007)CrossRefGoogle Scholar
  22. 22.
    Morgan, C.: Programming from Specifications. Prentice-Hall (1998)Google Scholar
  23. 23.
    Olszewski, M., Back, R.-J.: Agile Development with Stepwise Feature Introduction. In: ENASE 2012, pp. 161–166 (2012)Google Scholar
  24. 24.
    Petri, C.A., Reisig, W.: Petri net. Scholarpedia 3(4), 6477Google Scholar
  25. 25.
    Popa, A., Sofronia, A., Stefanescu, G.: High-level structured interactive programs with registers and voices. Journal of Universal Computer Science 13, 1722–1754 (2007)MathSciNetGoogle Scholar
  26. 26.
    Stefanescu, G.: Network algebra. Springer (2000)Google Scholar
  27. 27.
    Stefanescu, G.: Interactive systems with registers and voices. Draft, School of Computing, National University of Singapore (July 2004)Google Scholar
  28. 28.
    Stefanescu, G.: Interactive systems with registers and voices. Fundamenta Informaticae 73, 285–306 (2006)MathSciNetzbMATHGoogle Scholar
  29. 29.
    Stefanescu, G.: Towards a Floyd logic for interactive rv-systems. In: ICCP 2006, Technical University of Cluj-Napoca, pp. 169–178 (2006)Google Scholar
  30. 30.
  31. 31.
    Walden, M., Sere, K.: Reasoning About Action Systems Using the B-Method. Formal Methods in Systems Design 13, 5–35 (1998)CrossRefGoogle Scholar
  32. 32.
    Wegner, P.: Interactive foundations of computing. Theoretical Computer Science 192, 315–351 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  33. 33.

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Denisa Diaconescu
    • 1
  • Luigia Petre
    • 2
  • Kaisa Sere
    • 2
  • Gheorghe Stefanescu
    • 1
  1. 1.Department of Computer ScienceUniversity of BucharestRomania
  2. 2.Department of Information TechnologiesÅbo Akademi UniversityFinland

Personalised recommendations