{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,21]],"date-time":"2026-05-21T19:42:37Z","timestamp":1779392557516,"version":"3.53.1"},"reference-count":33,"publisher":"Elsevier BV","issue":"3","license":[{"start":{"date-parts":[[1987,6,1]],"date-time":"1987-06-01T00:00:00Z","timestamp":549504000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2013,7,17]],"date-time":"2013-07-17T00:00:00Z","timestamp":1374019200000},"content-version":"vor","delay-in-days":9543,"URL":"https:\/\/www.elsevier.com\/open-access\/userlicense\/1.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Science of Computer Programming"],"published-print":{"date-parts":[[1987,6]]},"DOI":"10.1016\/0167-6423(87)90035-9","type":"journal-article","created":{"date-parts":[[2002,7,26]],"date-time":"2002-07-26T00:09:22Z","timestamp":1027642162000},"page":"231-274","source":"Crossref","is-referenced-by-count":4373,"title":["Statecharts: a visual formalism for complex systems"],"prefix":"10.1016","volume":"8","author":[{"given":"David","family":"Harel","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"78","reference":[{"key":"10.1016\/0167-6423(87)90035-9_bib1","series-title":"Internal Report","article-title":"The languages of STATEMATE1","year":"1987"},{"key":"10.1016\/0167-6423(87)90035-9_bib2","series-title":"Using statecharts for describing the communication between complex systems","author":"Bar-Tur","year":"1986"},{"key":"10.1016\/0167-6423(87)90035-9_bib3","series-title":"Seminar on Concurrency","article-title":"The ESTEREL synchronous programming language and its mathematical semantics","volume":"197","author":"Berry","year":"1985"},{"key":"10.1016\/0167-6423(87)90035-9_bib4","article-title":"Functional specification and description language (SDL)","volume":"Vol. VI","year":"1981","journal-title":"Recommendations Z.101-Z.104"},{"key":"10.1016\/0167-6423(87)90035-9_bib5","doi-asserted-by":"crossref","first-page":"244","DOI":"10.1145\/5397.5399","article-title":"Automatic verification of finite state concurrent systems using temporal logic specifications","volume":"8","author":"Clarke","year":"1986","journal-title":"ACM Trans. Prog. Lang. Syst."},{"key":"10.1016\/0167-6423(87)90035-9_bib6","series-title":"Using statecharts for hardware description","author":"Drusinsky","year":"1985"},{"key":"10.1016\/0167-6423(87)90035-9_bib7","series-title":"Computer Hardware Description Languages and their Applications","first-page":"55","article-title":"The synthesis of digital systems using ASM design techniques","author":"Edwards","year":"1983"},{"key":"10.1016\/0167-6423(87)90035-9_bib8","first-page":"242","article-title":"State machines and their semantics in software engineering","author":"Ferrentino","year":"1977","journal-title":"Proc. IEEE COMPSAC '77 Conference"},{"key":"10.1016\/0167-6423(87)90035-9_bib9","doi-asserted-by":"crossref","first-page":"399","DOI":"10.1016\/S0020-7373(77)80010-2","article-title":"Transition diagram-based CAI\/HELP systems","volume":"9","author":"Feyock","year":"1977","journal-title":"Internat. J. Man-Machine Studies"},{"key":"10.1016\/0167-6423(87)90035-9_bib10","doi-asserted-by":"crossref","first-page":"3","DOI":"10.1080\/01449298208914433","article-title":"Pictures of programs and other processes, or how to do things with lines","volume":"1","author":"Green","year":"1982","journal-title":"Behavior Inform. Tech."},{"key":"10.1016\/0167-6423(87)90035-9_bib11","doi-asserted-by":"crossref","first-page":"9","DOI":"10.1109\/TSE.1976.233798","article-title":"Higher order software\u2014A methodology for defining software","volume":"2","author":"Hamilton","year":"1976","journal-title":"IEEE Trans. Software Engrg."},{"key":"10.1016\/0167-6423(87)90035-9_bib12","series-title":"Statecharts: A visual approach to complex systems","author":"Harel","year":"1984"},{"key":"10.1016\/0167-6423(87)90035-9_bib13","unstructured":"D. Harel, A visual formalism and its applications, in preparation."},{"key":"10.1016\/0167-6423(87)90035-9_bib14","series-title":"Logics and Models of Concurrent Systems","first-page":"477","article-title":"On the development of reactive systems","author":"Harel","year":"1985"},{"key":"10.1016\/0167-6423(87)90035-9_bib15","article-title":"On the formal semantics of statecharts","author":"Harel","year":"1987","journal-title":"Proc. 2nd IEEE Symposium on Logic in Computer Science"},{"key":"10.1016\/0167-6423(87)90035-9_bib16","doi-asserted-by":"crossref","first-page":"666","DOI":"10.1145\/359576.359585","article-title":"Communicating sequential processes","volume":"21","author":"Hoare","year":"1978","journal-title":"Comm. ACM"},{"key":"10.1016\/0167-6423(87)90035-9_bib17","series-title":"Introduction to Automata Theory, Languages and Computation","author":"Hopcroft","year":"1979"},{"key":"10.1016\/0167-6423(87)90035-9_bib18","series-title":"System Development","author":"Jackson","year":"1983"},{"key":"10.1016\/0167-6423(87)90035-9_bib19","doi-asserted-by":"crossref","first-page":"259","DOI":"10.1145\/2163.358093","article-title":"Using formal specifications in the design of a human-computer interface","volume":"26","author":"Jacob","year":"1983","journal-title":"Comm. ACM"},{"key":"10.1016\/0167-6423(87)90035-9_bib20","series-title":"Master's Thesis","author":"Kahana","year":"1986"},{"key":"10.1016\/0167-6423(87)90035-9_bib21","series-title":"Diagramming Techniques for Analysts and Programmers","author":"Martin","year":"1985"},{"key":"10.1016\/0167-6423(87)90035-9_bib22","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","DOI":"10.1007\/3-540-10235-3","article-title":"A Calculus of Communicating Systems","author":"Milner","year":"1980"},{"key":"10.1016\/0167-6423(87)90035-9_bib23","first-page":"379","article-title":"On the use of transition diagrams in the design of a user interface for an interactive computer system","author":"Parnas","year":"1969","journal-title":"Proc. ACM Conference"},{"key":"10.1016\/0167-6423(87)90035-9_bib24","first-page":"46","article-title":"The temporal logic of programs","author":"Pnueli","year":"1977","journal-title":"Proc. 18th IEEE Symposium on Foundations of Computer Science"},{"key":"10.1016\/0167-6423(87)90035-9_bib25","series-title":"Petri Nets: An Introduction","author":"Reisig","year":"1985"},{"key":"10.1016\/0167-6423(87)90035-9_bib26","doi-asserted-by":"crossref","first-page":"16","DOI":"10.1109\/TSE.1977.229900","article-title":"Structured analysis (SA): A language for communicating ideas","volume":"3","author":"Ross","year":"1977","journal-title":"IEEE Trans. Software Engrg."},{"key":"10.1016\/0167-6423(87)90035-9_bib27","first-page":"446","article-title":"Temporal logic specification of distributed systems","author":"Schwartz","year":"1981","journal-title":"Proc. 2nd IEEE International Conference on Distributed Computer Systems"},{"key":"10.1016\/0167-6423(87)90035-9_bib28","doi-asserted-by":"crossref","first-page":"460","DOI":"10.1109\/TSE.1982.235736","article-title":"Specification and verification of communication protocols in AFFIRM using state transition models","volume":"8","author":"Sunshine","year":"1982","journal-title":"IEEE Trans. Software Engrg."},{"key":"10.1016\/0167-6423(87)90035-9_bib29","series-title":"Computer Networks","author":"Tanenbaum","year":"1981"},{"key":"10.1016\/0167-6423(87)90035-9_bib30","doi-asserted-by":"crossref","first-page":"198","DOI":"10.1109\/TSE.1986.6312936","article-title":"The transformation schema: An extension of the data flow diagram to represent control and timing","volume":"12","author":"Ward","year":"1986","journal-title":"IEEE Trans. Software Engrg."},{"key":"10.1016\/0167-6423(87)90035-9_bib31","doi-asserted-by":"crossref","first-page":"699","DOI":"10.1109\/TSE.1985.232519","article-title":"Extending state transition diagrams for the specification of human-computer interaction","volume":"11","author":"Wasserman","year":"1985","journal-title":"IEEE Trans. Software Engrg."},{"key":"10.1016\/0167-6423(87)90035-9_bib32","doi-asserted-by":"crossref","first-page":"591","DOI":"10.1145\/355598.362773","article-title":"Transition network grammers for natural language analysis","volume":"13","author":"Woods","year":"1970","journal-title":"Comm. ACM"},{"key":"10.1016\/0167-6423(87)90035-9_bib33","doi-asserted-by":"crossref","first-page":"10","DOI":"10.1145\/2363.2365","article-title":"A distributed alternative to finite-state-machine specifications","volume":"7","author":"Zave","year":"1985","journal-title":"ACM Trans. Prog. Lang. Syst."}],"container-title":["Science of Computer Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:0167642387900359?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:0167642387900359?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2019,4,12]],"date-time":"2019-04-12T13:50:54Z","timestamp":1555077054000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/0167642387900359"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1987,6]]},"references-count":33,"journal-issue":{"issue":"3","published-print":{"date-parts":[[1987,6]]}},"alternative-id":["0167642387900359"],"URL":"https:\/\/doi.org\/10.1016\/0167-6423(87)90035-9","relation":{},"ISSN":["0167-6423"],"issn-type":[{"value":"0167-6423","type":"print"}],"subject":[],"published":{"date-parts":[[1987,6]]}}}