{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,9,13]],"date-time":"2023-09-13T17:33:39Z","timestamp":1694626419640},"reference-count":23,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2006,12,1]],"date-time":"2006-12-01T00:00:00Z","timestamp":1164931200000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Form. Asp. Comput."],"published-print":{"date-parts":[[2006,12]]},"abstract":"<jats:title>Abstract<\/jats:title>\n          <jats:p>\n            An important use of the Unified Modelling Language (UML) is modelling\n            <jats:italic>synchronous<\/jats:italic>\n            object-oriented software systems. State diagrams are used to model interesting object behaviour, including method invocation. However, almost all previous work formalising state diagrams has assumed\n            <jats:italic>asynchronous<\/jats:italic>\n            communication. We show that UML\u2019s \u201crun to completion\u201d semantics leads to anomalous behaviour in the synchronous case, and in particular that it is not possible to model recursive calls, in which an object receives a second synchronous message whilst still in the process of reacting to the first. We propose a solution using state diagrams in two complementary ways.\n          <\/jats:p>","DOI":"10.1007\/s00165-006-0003-6","type":"journal-article","created":{"date-parts":[[2006,8,25]],"date-time":"2006-08-25T16:29:04Z","timestamp":1156523344000},"page":"397-420","source":"Crossref","is-referenced-by-count":4,"title":["On modelling recursive calls and callbacks with two variants of Unified Modelling Language state diagrams"],"prefix":"10.1145","volume":"18","author":[{"given":"Jennifer","family":"Tenzer","sequence":"first","affiliation":[{"name":"Laboratory for Foundations of Computer Science, School of Informatics, University of Edinburgh, JCMB, King\u2019s Buildings, Mayfield Road, EH9 3JZ, Edinburgh, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Perdita","family":"Stevens","sequence":"additional","affiliation":[{"name":"Laboratory for Foundations of Computer Science, School of Informatics, University of Edinburgh, JCMB, King\u2019s Buildings, Mayfield Road, EH9 3JZ, Edinburgh, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","reference":[{"key":"e_1_2_1_2_1_2","doi-asserted-by":"crossref","unstructured":"Alur R Etessami K Yannakakis M (2001) Analysis of recursive state machines. In: Proceedings of computer aided verification CAV\u201901. LNCS; vol 2102. Springer; Berlin Heidelberg New York pp 207\u2013220","DOI":"10.1007\/3-540-44585-4_18"},{"key":"e_1_2_1_2_2_2","unstructured":"The Argo UML Project. Website at http:\/\/argouml.tigris.org\/"},{"key":"e_1_2_1_2_3_2","unstructured":"B\u00f6rger E Cavarra A Riccobene E (2002) A precise semantics of UML state machines: making semantic variation points and ambiguities explicit. In: Proceedings of semantic foundations of engineering design languages SFEDL Satellite workshop of ETAPS\u201902"},{"key":"e_1_2_1_2_4_2","doi-asserted-by":"crossref","unstructured":"Benedikt M Godefroid P Reps TW (2001) Model checking of unrestricted hierarchical state machines. In: Proceedings of automata languages and programming ICALP\u201901. LNCS; vol 2076; Springer; Berlin Heidelberg New York pp 652\u2013666","DOI":"10.1007\/3-540-48224-5_54"},{"key":"e_1_2_1_2_5_2","volume-title":"The unified modeling language user guide","author":"Booch G","year":"1998"},{"key":"e_1_2_1_2_6_2","unstructured":"Gamma E Helm R Johnson R Vlissides J (1995) Design patterns: elements of reusable object-oriented software . Addison Wesley Reading"},{"key":"e_1_2_1_2_7_2","unstructured":"Grosu R Liu YA Smolka SA Stoller SD Yan J (2001) Automated software engineering using concurrent class machines . In: Proceeding\u2018s of automated software engineering ASE\u201901. IEEE Los Alamitos"},{"key":"e_1_2_1_2_8_2","unstructured":"Gogolla M Parisi-Presicce F (1998) State diagrams in UML: a formal semantics using graph transformations . In: Proceedings of the workshop on precise semantics for modeling techniques PSMT\u201998. Technische Universit\u00e4t M\u00fcnchen TUM-I9803"},{"key":"e_1_2_1_2_9_2","doi-asserted-by":"publisher","DOI":"10.5555\/291225"},{"key":"e_1_2_1_2_10_2","first-page":"31","article-title":"Executable object modeling with statecharts","volume":"30","author":"Gruntz D","year":"2002","journal-title":"IEEE Comput"},{"key":"e_1_2_1_2_11_2","doi-asserted-by":"publisher","DOI":"10.1109\/2.596624"},{"key":"e_1_2_1_2_12_2","doi-asserted-by":"crossref","unstructured":"Kuske S (2001) A formal semantics of UML state machines based on structured graph transformation. In: Proceedings of the 4th international conference on the unified modeling language UML\u201901. LNCS vol 2185. Springer Berlin Heidelberg Newyork pp 241\u2013256","DOI":"10.1007\/3-540-45441-1_19"},{"key":"e_1_2_1_2_13_2","doi-asserted-by":"crossref","unstructured":"Latella D Majzik I Massink M (1999) Towards a formal operational semantics of UML statechart diagrams . In: Proceedings of formal methods for open object-based distributed systems FMOODS\u201999 IFIP vol 139 Kluwer Dordrecht","DOI":"10.1007\/978-0-387-35562-7_25"},{"key":"e_1_2_1_2_14_2","doi-asserted-by":"crossref","unstructured":"Mikhajlov L Sekerinski E Laibinis L (1999) Developing components in the presence of re-entrance . In: Proceedings of formal methods \u2014FM\u201999. LNCS vol 1709 . Springer Berlin Heidelberg Newyork pp 1301\u20131320","DOI":"10.1007\/3-540-48118-4_19"},{"key":"e_1_2_1_2_15_2","unstructured":"Object Management Group OMG (2003) Unified modeling language specification version 1.5 March 2003. Available from http:\/\/www.omg.org\/uml\/ as formal\/03-03-01"},{"key":"e_1_2_1_2_16_2","unstructured":"Object Management~Group OMG (2004) UML2.0 superstructure specification October 2004. Available from http:\/\/www.omg. org\/uml\/ as ptc\/04-10-02"},{"key":"e_1_2_1_2_17_2","unstructured":"Utwo Partners (2003) Unified modeling language 2.0 proposal version 2.0 April 2003. Available from http:\/\/www.u2-partners.org\/."},{"key":"e_1_2_1_2_18_2","doi-asserted-by":"crossref","unstructured":"Reggio G Astesiano E Choppy C Hussmann H (2000) Analysing UML active classes and associated state machines \u2014a lightweight formal approach. In: Proceedings of fundamental approaches to software engineering FASE\u201900. LNCS vol 1783. Springer Berlin Heidelberg Newyork pp 127\u2013146","DOI":"10.1007\/3-540-46428-X_10"},{"key":"e_1_2_1_2_19_2","unstructured":"Szyperski C (1998) Component software: beyond object-oriented programming . ACM Press Addison Wesley Reading"},{"key":"e_1_2_1_2_20_2","doi-asserted-by":"crossref","unstructured":"Tenzer J Stevens P (2003) Modelling recursive calls with UML state diagrams. In: Proceedings of fundamental approaches to software engineering. LNCS vol 2621. Springer Berlin Heidelberg Newyork pp 135\u2013149","DOI":"10.1007\/3-540-36578-8_10"},{"key":"e_1_2_1_2_21_2","doi-asserted-by":"crossref","unstructured":"von der Beeck M (2001) Formalization of UML-statecharts. In: Proceedings of the 4th international conference on the unified modeling language UML\u201901. LNCS vol 2185. Springer Berlin Heidelberg Newyork pp 406\u2013421","DOI":"10.1007\/3-540-45441-1_30"},{"key":"e_1_2_1_2_22_2","unstructured":"Warmer J Kleppe A (1999) The object constraint language: precise modeling with UML . Addison Wesley"},{"key":"e_1_2_1_2_23_2","unstructured":"Stevens P Pooley R (1999) Using UML: software engineering with objects and components (updated edition) . Addison Wesley Longman Essex"}],"container-title":["Formal Aspects of Computing"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s00165-006-0003-6.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s00165-006-0003-6\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1007\/s00165-006-0003-6","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,1,6]],"date-time":"2022-01-06T15:44:19Z","timestamp":1641483859000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1007\/s00165-006-0003-6"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2006,12]]},"references-count":23,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2006,12]]}},"alternative-id":["10.1007\/s00165-006-0003-6"],"URL":"https:\/\/doi.org\/10.1007\/s00165-006-0003-6","relation":{},"ISSN":["0934-5043","1433-299X"],"issn-type":[{"value":"0934-5043","type":"print"},{"value":"1433-299X","type":"electronic"}],"subject":[],"published":{"date-parts":[[2006,12]]}}}