Skip to main content
Log in

On the realizability of collaborative services

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

This paper considers compositional specifications of services using UML 2 collaborations, activity and interaction diagrams, and addresses the realizability problem for such specifications: given a global specification, can we construct a set of communicating system components whose joint behavior is precisely the specified global behavior? We approach the problem by looking at how the sequencing of collaborations and local actions may be described using UML activity diagrams. We identify the realizability problems for each of the sequencing operators, such as strong and weak sequence, choice of alternatives, loops, and concurrency. The nature of these realizability problems and possible solutions are discussed. This brings a new look at already known problems: we show that given some conditions, certain problems can already be detected at an abstract level, without looking at the detailed interactions of the collaborations, provided that we know the components that initiate and terminate the different collaborations.

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. Abadi, M., Lamport, L., Wolper, P.: Realizable and unrealizable specifications of reactive systems. In: Proceedings of 16th International Colloquium on Automata, Languages and Programming (ICALP’89). Springer, London, pp. 1–17 (1989)

  2. Alur R., Holzmann G.J., Peled D.: An analyzer for message sequence charts. Softw. Concepts Tools 17(2), 70–77 (1996)

    Google Scholar 

  3. Alur, R., Yannakakis, M.: Model checking of message sequence charts. In: Proceedings of 10th International Conference on Concurrency Theory (CONCUR’99), LNCS, vol. 1664, pp. 114–129. Springer, Berlin (1999)

  4. Alur, R., Etessami, K., Yannakakis, M.: Inference of message sequence charts. In: Proceedings of 22nd International Conference on Software Engineering (ICSE’00) (2000)

  5. Alur R., Etessami K., Yannakakis M.: Realizability and verification of MSC graphs. Theor. Comput. Sci. 331(1), 97–114 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  6. Amyot D.: Introduction to the user requirements notation: learning by example. Comput. Netw. 42(3), 285–301 (2003)

    Article  Google Scholar 

  7. Baker, P., Bristow, P., Jervis, C., King, D., Thomson, R., Mitchell, B., Burton, S.: Detecting and resolving semantic pathologies in UML sequence diagrams. In: Proceedings of 10th ESEC/13th ACM SIGSOFT FSE Conference, pp. 50–59. ACM Press, New York (2005)

  8. Baudru, N., Morin, R.: Safe implementability of regular message sequence chart specifications. In: Proceedings of ACIS 4th International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD’03), pp. 210–217 (2003)

  9. Ben-Abdallah, H., Leue, S.: Syntactic detection of process divergence and non-local choice in message sequence charts. In: Proceedings of 2nd International Workshop on Tools and Algorithms for the Construction and Analysis of Systems (TACAS’97) (1997)

  10. Bochmann G.: Finite state description of communication protocols. Comput. Netw. 2, 361–372 (1978)

    Google Scholar 

  11. Bravetti, M., Zavattaro, G.: Contract compliance and choreography conformance in the presence of message queues. In: Proceedings of 7th International Workshop on Web Services and Formal Methods, LNCS, vol. 5387. Springer, Berlin (2009)

  12. Bræk, R.: Unified system modeling and implementation. In: Proceedings of International Switching Symposium (ISS), Paris, May (1979)

  13. Bræk, R.: Using roles with types and objects for service development. In: Proceedings of IFIP 5th International Conference on Intelligence in Networks (SMARTNET’99), IFIP Conference Proceedings, vol. 160. Kluwer, Dordrecht (1999)

  14. Broy, M., Krüger, I.H., Meisinger, M.: A formal model of services. ACM Trans. Softw. Eng. Methodol. (TOSEM), 16(1) (2007)

  15. Castejón, H.N.: Collaborations in service engineering: modeling, analysis and execution, PhD thesis. Norwegian University of Science and Technology (NTNU) (2008)

  16. Castejón, H.N., Bræk, R.: A collaboration-based approach to service Specification and detection of implied scenarios. In: Proceedings of 5th ICSE International Workshop on Scenarios and State Machines: Models, Algorithms and Tools (SCESM’06). ACM Press, New York (2006)

  17. Castejón, H.N., Bræk, R.: Formalizing collaboration goal sequences for service choreography. In: Proceedings of 26th IFIP WG 6.1 International Conf. on Formal Methods for Networked and Distributed Systems (FORTE’06), LNCS, vol. 4229, Springer, Berlin (2006)

  18. Castejón, H.N., von Bochmann, G., Bræk, R.: Investigating the realizability of collaboration-based service specifications, Technical report, Avantel 3/2007 (NTNU). ISSN 1503–4097 (2007)

  19. Castejón, H.N., von Bochmann, G., Bræk, R.: Direct realizability, Unpublished technical report (2009). http://www.site.uottawa.ca/~bochmann/dsrg/PublicDocuments/Publications/Cast09.pdf

  20. Chen, C.-A., Kalvala, S., Sinclair, J.: Race conditions in message sequence charts. In: Proceedings of 3rd Asian Symposium on Programming Languages and Systems (APLAS’05), LNCS, vol. 3780, pp. 195–211. Springer, Berlin (2005)

  21. Decker, G., Weske, M.: Local enforceability in interaction Petri nets. In: Proceedings of 5th International Conference on Business Process Management. Springer, Berlin (2007)

  22. Erl, T.: Service Oriented Architecture: Concepts, Technology and Design. Prentice Hall, Upper Saddle River. ISBN 0-13-185858-0

  23. Fisler, K., Krishnamurthi, S.: Modular verification of collaboration-based software designs. In: Proceedings of 8th European Software Engineering Conference. ACM Press, New York (2001)

  24. Fournet, C., Hoare, T., Rajamani, S.K., Rehof, J.: Stuck-free Conformance. In: Proceedings of 16th International Conference on Computer Aided Verification (CAV’04), LNCS, vol. 3114. Springer, Berlin (2004)

  25. Genest B., Muscholl A., Seidl H., Zeitoun M.: Infinite-state high-level MSCs: model-checking and realizability. J. Comput. Syst. Sci. 72(4), 617–647 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  26. Gouda M.G., Yu Y.-T.: Synthesis of communicating finite state machines with guaranteed progress. IEEE Trans. Commun. Com-32(7), 779–788 (1984)

    Article  Google Scholar 

  27. Haugen, Ø., Husa, K.E., Runde, R.K., Stølen, K.: Why Timed Sequence Diagrams Require Three-Event Semantics, Research report 309. University of Oslo (2006)

  28. Hélouët, L., Jard, C.: Conditions for synthesis of communicating automata from HMSCs. In: Proceedings of 5th International Workshop on Formal Methods for Industrial Critical Systems (FMICS’00), Berlin, GMD FOKUS (2000)

  29. Hélouët, L.: Some pathological message sequence charts, and how to detect them. In: Proceedings of 10th International SDL Forum, LNCS, vol. 2078, pp. 348–364. Springer, Berlin (2001)

  30. IUT-T: Specification and Description Language (SDL), Recommendation Z.100 (2000)

  31. IUT-T: Message Sequence Charts (MSC), Recommendation Z.120 (1998)

  32. Kant C., Higashino T., von Bochmann G.: Deriving protocol specifications from service specifications written in LOTOS. Distributed Comput. 10(1), 29–47 (1996)

    Article  Google Scholar 

  33. Kathayat, S.B., Bræk, R., Le, H.N.: Automatic derivation of components from choreographies—a case study. In: Proceedings of Annual International Conference on Software Engineering (2010)

  34. Kathayat, S.B., Bræk, R.: From flow-global choreography to component types. In: Proceedings of 7th Workshop on System Analysis and Modeling, LNCS, vol. 6598, Springer, Berlin (2011)

  35. Khendek, F., Zhang, X.J.: From MSC to SDL: overview and an application to the autonomous shuttle transport system. In: Proceedings of 2003 Dagstuhl Workshop on Scenarios: Models, Transformations and Tools, LNCS, vol. 3466 (2005)

  36. Kraemer F.A., Såtten V., Herrmann P.: Tool support for the rapid composition, analysis and implementation of reactive services. J. Syst. Softw. 82(12), 2068–2080 (2009)

    Article  Google Scholar 

  37. Krüger, I.: Capturing overlapping, triggered and preemptive collaborations using MSCs. In: Proceedings of 6th International Conference on Fundamental Approaches to Software Engineering (FASE’03), LNCS, vol. 2621, Springer, Berlin (2003)

  38. Krüger, I., Mathew, R.: Component synthesis from service specifications. In: Proceedings of International Dagstuhl Workshop on Scenarios: Models, Transformations and Tools, LNCS, vol. 3466. Springer, Berlin(2003)

  39. Laamarti, F.: Derivation of component designs from global specifications, Master Thesis, SITE, University of Ottawa (2010). http://www.site.uottawa.ca/~bochmann/dsrg/Docs/Master-theses/Laamarti%20-%20Derivation-of-Component-Designs-from-Global-Specifications.pdf

  40. Lohmann, N., Wolf, K.: Realizability is controllability. In: Proceedings of 6th International Conference on Web Services and Formal Methods, Springer, Berlin (2010)

  41. Lohrey M.: Realizability of high-level message sequence charts: closing the gaps. Theor. Comput. Sci. 309(1–3), 529–554 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  42. Magee J., Kramer J.: Concurrency: State Models & Java Programs, 2nd edn. Wiley, New York (2006)

    Google Scholar 

  43. Mitchell B.: Resolving race conditions in asynchronous partial order scenarios. IEEE Trans. Softw. Eng. 31(9), 767–784 (2005)

    Article  Google Scholar 

  44. Mooij, A.J., Goga, N., Romijn, J.: Non-local choice and beyond: intricacies of MSC choice nodes. In: Proceedings of International Conference on Fundamental Approaches to Software Engineering (FASE’05), LNCS, vol. 3442, Springer, Berlin (2005)

  45. Mooij, A.J., Romijn, J., Wesselink, W.: Realizability criteria for compositional MSC. In: Proceedings of 11th International Conference on Algebraic Methodology and Software Technology (AMAST’06), LNCS, vol. 4019, Springer, Berlin (2006)

  46. Mousavi, A., et al.: Strong safe realizability of message sequence chart specifications. In: Proceedings of International Symposium on Fundamentals of Software Engineering, LNCS, vol. 4767. Springer, Berlin (2007)

  47. Mukund, M., Kumar, K.N., Sohoni, M.A.: Synthesizing distributed finite-state systems from MSCs. In: Proceedings of 11th International Conference on Concurrency Theory (CONCUR’00), LNCS, vol. 1877, pp. 521–535. Springer, Berlin (2000)

  48. Object Management Group: UML 2.2 Superstructure Specification, February (2009). http://www.omg.org/cgi-bin/doc?formal/09-02-02.pdf

  49. Object Management Group: UML 2.0 Superstructure Specification, July (2005) http://www.omg.org/spec/UML/2.0/Superstructure/PDF/

  50. Qiu, Z., Zhao, X., Cai, C., Yang, H.: Towards the theoretical foundation of choreography. In: Proceedings of 16th International Conference on World Wide Web (2007)

  51. Reenskaug T., Andersen E.P., Berre A.J., Hurlen A., Landmark A., Lehne O.A., Nordhagen E., Ness-Ulseth E., Oftedal G., Skaar A.L., Stenslet P.: OORASS: seamless support for the creation and maintenance of object-oriented systems. J. Object Oriented Programm. 5(6), 27–41 (1992)

    Google Scholar 

  52. Reenskaug T., Wold P., Lehne O.A.: Working With Objects: The OOram Software Engineering Method. Prentice Hall, Upper Saddle River (1995)

    Google Scholar 

  53. Roohi, N., Salaün, G.: Realizability and dynamic reconfiguration of chor specifications. Informatica (2011, in press)

  54. Uchitel S., Kramer J., Magee J.: Incremental elaboration of scenario-based specifications and behavior models using implied scenarios. ACM Trans. Softw. Eng. Methodol. (TOSEM) 13(1), 37–85 (2004)

    Article  Google Scholar 

  55. von Bochmann, G., Gotzhein, R.: Deriving protocol specifications from service specifications. In: Proceedings of ACM SIGCOMM Symposium, pp. 148–156 (1986)

  56. von Bochmann, G.: Deriving component designs from global requirements. In: Proceedings of International Workshop on Model Based Architecting and Construction of Embedded Systems (ACES), Toulouse, Sept. (2008)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Humberto Nicolás Castejón.

Additional information

Communicated by Dr. Heiko Dörr.

A preliminary version of this paper appeared in the proceedings of the 14th Asia-Pacific Soft. Eng. Conf. (APSEC’07), IEEE Computer Society Press, pp. 73–80, 2007. This work was partially supported by a grant from the Natural Sciences and Engineering Research Council of Canada.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Castejón, H.N., von Bochmann, G. & Bræk, R. On the realizability of collaborative services. Softw Syst Model 12, 597–617 (2013). https://doi.org/10.1007/s10270-011-0216-x

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-011-0216-x

Keywords

Navigation