Abstract
This paper deals with deriving a distributed design model from a global requirements model written in the notation of Hierarchical State Machines (HSMs). In this paper, we extend the UML notation of HSMs to describe the roles (components) that participate in the actions of each state of the global behaviour. A simple state represents some local actions, while a hierarchical state usually represents a collaboration between several roles (system components). Our global HSM requirements model describes the sequencing of collaborations and local actions. We compare this notation with other notations such as UML Collaborations, Hierarchical Message Sequence Charts (HMSC), Activity Diagrams, Partial-Order(PO)-Charts and others. Then we explain how a distributed design model, including all required coordination messages between the different system components, can be automatically derived from a global requirements model. We consider the following sequencing constraints between different collaborations: weak or strict sequence, alternatives, weak or strict while loop, and concurrency.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Alur, R., Yannakakis, M.: Model checking of message sequence charts. In: Baeten, J.C.M., Mauw, S. (eds.) CONCUR 1999. LNCS, vol. 1664, pp. 114–129. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48320-9_10
Castejón, H.N., von Bochmann, G., Bræk, R.: On the realizability of collaborative services. Softw. Syst. Model. 12(3), 597–617 (2013)
von Bochmann, G.: Conformance testing with respect to partial-order specifications. In: Wotawa, F., Nica, M., Kushik, N. (eds.) ICTSS 2016. LNCS, vol. 9976, pp. 3–17. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47443-4_1
Object Managment Group: UML 2.5.1 Specification. Technical report (2017)
Pratt, V.: Modeling concurrency with partial orders. Int. J. Parallel Program. 15(1), 33–71 (1986)
Gischer, J.L.: The equational theory of pomsets. Theoret. Comput. Sci. 61(2–3), 199–224 (1988)
Mauw, S., Reniers, M.A.: High-level message sequence charts. In: SDL 1997: Time for Testing, pp. 291–306. Elsevier (1997)
Bochmann, G.V.: Deriving component designs from global requirements. In: CEUR Workshop Proceedings, vol. 503, pp. 55–69 (2008)
Khendek, F., von Bochmann, G., Kant, C.: New results on deriving protocol specifications from service specifications. In: Proceedings of the ACM SIGCOMM 1989, pp. 136–145 (1989)
Gotzhein, R., von Bochmann, G.: Deriving protocol specifications from service specifications including parameters. ACM Trans. Comput. Syst. 8(4), 255–283 (1990)
Al-hammouri, M.F., Bochmann, G.: Realizability of service specifications. In: Khendek, F., Gotzhein, R. (eds.) SAM 2018. LNCS, vol. 11150, pp. 127–143. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-01042-3_8
Barros, A., Dumas, M., Oaks, P.: Standards for web service choreography and orchestration: status and perspectives. In: Bussler, C.J., Haller, A. (eds.) BPM 2005. LNCS, vol. 3812, pp. 61–74. Springer, Heidelberg (2006). https://doi.org/10.1007/11678564_7
Badreddin, O., Lethbridge, T.C., Forward, A., Elaasar, M., Aljamaan, H., Garzon, M.A.: Enhanced code generation from UML composite state machines. In: 2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 235–245. IEEE (2014)
Wikipedia contributors: structured programming, the free encyclopedia (2019). https://en.wikipedia.org/wiki/Structured_programming. Accessed 4 July 2019
Bochmann, G.: Associativity between weak and strict sequencing. In: Amyot, D., Fonseca i Casas, P., Mussbacher, G. (eds.) SAM 2014. LNCS, vol. 8769, pp. 96–109. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11743-0_7
Toqeer, I.: Modeling and performance analysis of distributed systems with collaboration behaviour diagrams. Ph.D. thesis, University of Ottawa (2014). http://hdl.handle.net/10393/30950
Mooij, A., Romijn, J., Wesselink, W.: Realizability criteria for compositional MSC. In: Johnson, M., Vene, V. (eds.) AMAST 2006. LNCS, vol. 4019, pp. 248–262. Springer, Heidelberg (2006). https://doi.org/10.1007/11784180_20
Alur, R., Holzmann, G.J., Peled, D.: An analyzer for message sequence charts. In: Margaria, T., Steffen, B. (eds.) TACAS 1996. LNCS, vol. 1055, pp. 35–48. Springer, Heidelberg (1996). https://doi.org/10.1007/3-540-61042-1_37
Bochmann, G.V.: Deriving protocol specification from service specifications. In: Proceedings of the SIGCOMM 1986, pp. 144–156 (1986)
Ben-Abdallah, H., Leue, S.: Syntactic detection of process divergence and non-local choice in message sequence charts. In: Brinksma, E. (ed.) TACAS 1997. LNCS, vol. 1217, pp. 259–274. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0035393
Gouda, M.G., Yu, Y.T.: Synthesis of communicating finite-state machines with guaranteed progress. IEEE Trans. Commun. 32(7), 779–788 (1984)
Mustafa, N.M.F., Bochmann, G.V.: Transforming dynamic behavior specifications from activity diagrams to BPEL. In: Proceedings - 6th IEEE International Symposium on Service-Oriented System Engineering, SOSE 2011, pp. 305–311 (2011)
Umple, v 1.29.1 (2018). http://www.umple.org
Zakariapour, A.: Model-driven development of distributed systems in umple. Master’s thesis, University Of Ottawa (2018). http://hdl.handle.net/10393/37143
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Al-hammouri, M.F., Bochmann, G.V. (2019). Deriving Distributed Design Models from Global State Machines Requirements. In: Fonseca i Casas, P., Sancho, MR., Sherratt, E. (eds) System Analysis and Modeling. Languages, Methods, and Tools for Industry 4.0. SAM 2019. Lecture Notes in Computer Science(), vol 11753. Springer, Cham. https://doi.org/10.1007/978-3-030-30690-8_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-30690-8_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-30689-2
Online ISBN: 978-3-030-30690-8
eBook Packages: Computer ScienceComputer Science (R0)