From the Publisher:
The only in-depth guide to Statecharts,the most popular approach forthe development of real-time and reactive systems. For systems engineers,software engineers,and electrical engineers in all fields,here at last is complete information on the concepts behind the Statemate toolset developed by I-Logix,Inc.,the fullest and most powerful approach to the modeling of reactive systems. This guide first describes the dominant Statecharts,which are used to describe system behavior,and then explores the hierarchical language of Activity-charts,which describe the system's activities and the data that flows between them. It then shows how to use these two synergistic languages to develop a conceptual model of the system,which can then be combined with a physical or structural model using the third language of Module-charts. These languages and the subsequent Statemate toolset constitute a breakthrough approach in requirements analysis,specification,and high-level design. They also provide a powerful method for inspecting,testing,and analyzing models. Author David Harel invented Statecharts,and he and coauthor Michal Politi co-developed the other two languages in the set. Ms Politi also headed the Statemate development team for more than a decade. Their work has earned them the Most Influential Paper Award from the International Conference on Software Engineering,and Harel's work on the language of Statecharts has won him the Stevens Award in Software Development Methods in 1996 and the first Israel Prime Minister's Prize for Software in 1997. No authors are more highly qualified to describe the syntax and semantics of these intricate languages precisely and rigorously—and withextensive examples based on a model early warning system. No book provides better guidance than Modeling Reactive Systems with Statecharts
Cited By
- Barros F (2024). HyFlow: formalism, semantics, and applications, Discrete Event Dynamic Systems, 34:1, (95-124), Online publication date: 1-Mar-2024.
- André É, Liu S, Liu Y, Choppy C, Sun J and Dong J (2023). Formalizing UML State Machines for Automated Verification – A Survey, ACM Computing Surveys, 55:13s, (1-47), Online publication date: 31-Dec-2024.
- Türker U, Hierons R, Barlas G and El-Fakih K (2023). Incomplete Adaptive Distinguishing Sequences for Non-Deterministic FSMs, IEEE Transactions on Software Engineering, 49:9, (4371-4389), Online publication date: 1-Sep-2023.
- Núñez M, Hierons R and Lefticaru R (2023). Implementation relations and testing for cyclic systems, Robotics and Autonomous Systems, 165:C, Online publication date: 1-Jul-2023.
- De Sanctis M, Di Salle A, Iovino L and Rossi M (2023). A technology transfer journey to a model-driven access control system, International Journal on Software Tools for Technology Transfer (STTT), 25:1, (49-74), Online publication date: 1-Feb-2023.
- Taş M, Kaya K and Yenigün H (2021). Synchronizing billion-scale automata, Information Sciences: an International Journal, 574:C, (162-175), Online publication date: 1-Oct-2021.
- McColl C, Estivill-Castro V, Gilmore E, McColl M and Hexel R Enabling Modern Application Development with Swift on the Nao/Pepper Robots RoboCup 2021: Robot World Cup XXIV, (15-27)
- Dey P, Sinha B and Amin M (2021). Supporting asynchronous learners with multiple representations, Journal of Computing Sciences in Colleges, 36:2, (108-116), Online publication date: 1-Oct-2020.
- Lee J and Henschen L Design Interface and Modeling Technique Human-Computer Interaction. Design and User Experience, (97-111)
- García S, Pelliccione P, Menghi C, Berger T and Bures T High-level mission specification for multiple robots Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering, (127-140)
- Rodrigues V, Donetti S and Damiani F (2019). Certifying delta-oriented programs, Software and Systems Modeling (SoSyM), 18:5, (2875-2906), Online publication date: 1-Oct-2019.
- Alshareef A and Sarjoughian H Metamodeling activities for hierarchical component-based models Proceedings of the Theory of Modeling and Simulation Symposium, (1-12)
- Basin D, Debois S and Hildebrandt T On Purpose and by Necessity: Compliance Under the GDPR Financial Cryptography and Data Security, (20-37)
- Seidewitz E A development environment for the Alf language within the MagicDraw UML tool (tool demo) Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering, (217-220)
- Hierons R and Türker U (2017). Parallel Algorithms for Generating Distinguishing Sequences for Observable Non-deterministic FSMs, ACM Transactions on Software Engineering and Methodology, 26:1, (1-34), Online publication date: 31-Jan-2017.
- Lamprecht A and Turner K (2016). Scientific workflows, International Journal on Software Tools for Technology Transfer (STTT), 18:6, (575-580), Online publication date: 1-Nov-2016.
- Zhang H, Jiang Y, Liu H, Zhang H, Gu M and Sun J Model driven design of heterogeneous synchronous embedded systems Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, (774-779)
- Alshareef A, Sarjoughian H and Zarrin B An approach for activity-based DEVS model specification Proceedings of the Symposium on Theory of Modeling & Simulation, (1-8)
- Sarjoughian H and Gholami S (2015). Action-level real-time DEVS modeling and simulation, Simulation, 91:10, (869-887), Online publication date: 1-Oct-2015.
- Seidewitz E (2014). UML with meaning, ACM SIGAda Ada Letters, 34:3, (61-68), Online publication date: 26-Nov-2014.
- Güniçen C, İnan K, Türker U and Yenigün H (2014). The relation between preset distinguishing sequences and synchronizing sequences, Formal Aspects of Computing, 26:6, (1153-1167), Online publication date: 1-Nov-2014.
- Harel D and Katz G Scaling-Up Behavioral Programming Proceedings of the 4th International Workshop on Programming based on Actors Agents & Decentralized Control, (95-108)
- Seidewitz E and Cuccuru A Agile programming with executable models Proceedings of the companion publication of the 2014 ACM SIGPLAN conference on Systems, Programming, and Applications: Software for Humanity, (39-40)
- Seidewitz E UML with meaning Proceedings of the 2014 ACM SIGAda annual conference on High integrity language technology, (61-68)
- Buzhinsky I, Chivilikhin D, Ulyantsev V and Tsarev F Improving the quality of supervised finite-state machine construction using real-valued variables Proceedings of the Companion Publication of the 2014 Annual Conference on Genetic and Evolutionary Computation, (1037-1040)
- Gutiérrez C, García-Magariño I, Serrano E and Botía J (2013). Robust design of multi-agent system interactions, Engineering Applications of Artificial Intelligence, 26:9, (2093-2104), Online publication date: 1-Oct-2013.
- Bainomugisha E, Carreton A, Cutsem T, Mostinckx S and Meuter W (2013). A survey on reactive programming, ACM Computing Surveys, 45:4, (1-34), Online publication date: 1-Aug-2013.
- Buzhinsky I, Ulyantsev V, Tsarev F and Shalyto A Search-based construction of finite-state machines with real-valued actions Proceedings of the 15th annual conference companion on Genetic and evolutionary computation, (199-200)
- Sinha B, Dey P, Amin M and Badkoobehi H (2013). Software complexity measurement using multiple criteria, Journal of Computing Sciences in Colleges, 28:4, (155-162), Online publication date: 1-Apr-2013.
- Clark J, Dan H and Hierons R (2013). Semantic mutation testing, Science of Computer Programming, 78:4, (345-363), Online publication date: 1-Apr-2013.
- Coleman R, Estivill-Castro V, Hexel R and Lusty C Visual-trace simulation of concurrent finite-state machines for validation and model-checking of complex behaviour Proceedings of the Third international conference on Simulation, Modeling, and Programming for Autonomous Robots, (52-64)
- Gomes A, Mota A, Sampaio A, Ferri F and Watanabe E (2012). Constructive model-based analysis for safety assessment, International Journal on Software Tools for Technology Transfer (STTT), 14:6, (673-702), Online publication date: 1-Nov-2012.
- Dey P, Amin M, Romney G, Sinha B, Gonzales R, Farahani A and Badkoobehi H (2012). Relating automata to other fields, Journal of Computing Sciences in Colleges, 27:4, (168-173), Online publication date: 1-Apr-2012.
- Pastor E, Royo P, Santamaria E, Batlle M, Barrado C and Prats X An architecture to automate UAS operations in non-segregated airspace Proceedings of the 1st International Conference on Application and Theory of Automation in Command and Control Systems, (5-14)
- Billington D, Estivill-Castro V, Hexel R and Rock A Modelling behaviour requirements for automatic interpretation, simulation and deployment Proceedings of the Second international conference on Simulation, modeling, and programming for autonomous robots, (204-216)
- Hierons R (2010). Checking experiments for stream X-machines, Theoretical Computer Science, 411:37, (3372-3385), Online publication date: 1-Aug-2010.
- Roubtsova E, Joosten S and Wedemeijer L Behavioural model for a business rules based approach to model services Proceedings of the Second International Workshop on Behaviour Modelling: Foundation and Applications, (1-8)
- Ipate F (2010). Bounded sequence testing from deterministic finite state machines, Theoretical Computer Science, 411:16-18, (1770-1784), Online publication date: 1-Mar-2010.
- de Roever W, Lüttgen G and Mendler M What is in a step Time for verification, (370-399)
- Hierons R (2010). Canonical finite state machines for distributed systems, Theoretical Computer Science, 411:2, (566-580), Online publication date: 1-Jan-2010.
- GüleşIr G, Berg K, Bergmans L and Akşit M (2009). Experimental evaluation of a tool for the verification and transformation of source code in event-driven systems, Empirical Software Engineering, 14:6, (720-777), Online publication date: 1-Dec-2009.
- Risco-Martín J, De La Cruz J, Mittal S and Zeigler B (2009). eUDEVS, Simulation, 85:11-12, (750-777), Online publication date: 1-Nov-2009.
- Wingrave C, Laviola J and Bowman D (2009). A natural, tiered and executable UIDL for 3D user interfaces based on Concept-Oriented Design, ACM Transactions on Computer-Human Interaction, 16:4, (1-36), Online publication date: 1-Nov-2009.
- Haschemi S Model transformations to satisfy all-configurations-transitions on statecharts Proceedings of the 6th International Workshop on Model-Driven Engineering, Verification and Validation, (1-10)
- Mamoun S, Torres L and Frydman C Validating interaction-based systems behavior via simulation and detecting implied scenarios Proceedings of the 2009 Summer Computer Simulation Conference, (156-163)
- Abadi M and Feldman Y Refactoring of statecharts Proceedings of the 7th international conference on Next generation information technologies and systems, (50-62)
- Serrano E, Botia J and Cadenas J Infrastructure for forensic analysis of multi-agent based simulations Proceedings of the 7th international conference on Programming multi-agent systems, (185-200)
- Rampersad N, Santean N, Shallit J and Ravikumar B (2009). State complexity of unique rational operations, Theoretical Computer Science, 410:24-25, (2431-2441), Online publication date: 1-May-2009.
- Ayed L and Daly Y (2009). Translating STATEMATE models into FNLOG for the verification of safety requirements in reactive systems, International Journal of Internet Technology and Secured Transactions, 1:3/4, (236-271), Online publication date: 1-Mar-2009.
- Harel D (2009). Statecharts in the making, Communications of the ACM, 52:3, (67-75), Online publication date: 1-Mar-2009.
- Arantes A, Vijaykumar N, de Santiago Junior V and Guimarães D WEB-PerformCharts Proceedings of the 10th International Conference on Information Integration and Web-based Applications & Services, (374-381)
- Hayes I Towards reasoning about teleo-reactive programs for robust real-time systems Proceedings of the 2008 RISE/EFTS Joint International Workshop on Software Engineering for Resilient Systems, (87-94)
- Höfig E and Deussen P Document-based network and system management Proceedings of the 2nd International Conference on Autonomic Computing and Communication Systems, (1-10)
- Liu G, Martin-Vide C, Salomaa A and Yu S (2008). State complexity of basic language operations combined with reversal, Information and Computation, 206:9-10, (1178-1186), Online publication date: 1-Sep-2008.
- McNeile A and Roubtsova E CSP parallel composition of aspect models Proceedings of the 2008 AOSD workshop on Aspect-oriented modeling, (13-18)
- Venky R, S. U, Kulkarni A and Bokil P STATEMATE to SCADE model translation Proceedings of the 1st India software engineering conference, (145-146)
- Auguston M and Trakhtenbrot M Synthesis of monitors for real-time analysis of reactive systems Pillars of computer science, (72-86)
- White D and Lüttgen G (2008). Embedded systems programming, EURASIP Journal on Embedded Systems, 2008, (1-17), Online publication date: 1-Jan-2008.
- Harel D Statecharts in the making Proceedings of the third ACM SIGPLAN conference on History of programming languages, (5-1-5-43)
- Nejati S, Sabetzadeh M, Chechik M, Easterbrook S and Zave P Matching and Merging of Statecharts Specifications Proceedings of the 29th international conference on Software Engineering, (54-64)
- Wimmer R, Herbstritt M and Becker B Optimization techniques for BDD-based bisimulation computation Proceedings of the 17th ACM Great Lakes symposium on VLSI, (405-410)
- Roscoe A and Wu Z Verifying statemate statecharts using CSP and FDR Proceedings of the 8th international conference on Formal Methods and Software Engineering, (324-341)
- Wimmer R, Herbstritt M, Hermanns H, Strampp K and Becker B Sigref Proceedings of the 4th international conference on Automated Technology for Verification and Analysis, (477-492)
- Bellebia D and Douin J Applying patterns to build a lightweight middleware for embedded systems Proceedings of the 2006 conference on Pattern languages of programs, (1-13)
- Trowitzsch J and Zimmermann A Using UML state machines and petri nets for the quantitative investigation of ETCS Proceedings of the 1st international conference on Performance evaluation methodolgies and tools, (34-es)
- Peikenkamp T, Cavallo A, Valacca L, Böde E, Pretzer M and Hahn E Towards a unified model-based safety assessment Proceedings of the 25th international conference on Computer Safety, Reliability, and Security, (275-288)
- Vijaykumar N, Carvalho S, Andrade V and Abdurahiman V (2006). Introducing probabilities in Statecharts to specify reactive systems for performance analysis, Computers and Operations Research, 33:8, (2369-2386), Online publication date: 1-Aug-2006.
- Mokhati F, Boudiaf N, Badri L and Badri M (2006). Generating Maude formal specifications from AUML diagrams, Journal of Computational Methods in Sciences and Engineering, 6:5,6 Supplement 1, (73-89), Online publication date: 1-Apr-2006.
- Banci M, Fantechi A and Gnesi S (2006). Statecharts Composition To Model Topologically Distributed Applications, Journal of Integrated Design & Process Science, 10:1, (1-15), Online publication date: 1-Jan-2006.
- Bontemps Y, Heymans P and Schobbens P (2005). From Live Sequence Charts to State Machines and Back, IEEE Transactions on Software Engineering, 31:12, (999-1014), Online publication date: 1-Dec-2005.
- Crane M and Dingel J UML vs. classical vs. rhapsody statecharts Proceedings of the 8th international conference on Model Driven Engineering Languages and Systems, (97-112)
- Trakhtenbrot M Use of Verification for Testing and Debugging of Complex Reactive Systems Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods, (13-22)
- Banci M and Fantechi A Instantiating generic charts for railway interlocking systems Proceedings of the 10th international workshop on Formal methods for industrial critical systems, (134-143)
- Martínez J and Harbour M RT-EP Proceedings of the 10th Ada-Europe international conference on Reliable Software Technologies, (180-195)
- Tamai T A pedagogical view on software modeling and graph-structured diagrams Proceedings of the 2005 international conference on Software Engineering Education in the Modern Age, (59-70)
- Hierons R (2004). Testing from a Nondeterministic Finite State Machine Using Adaptive State Counting, IEEE Transactions on Computers, 53:10, (1330-1342), Online publication date: 1-Oct-2004.
- Hierons R and Harman M (2004). Testing conformance of a deterministic implementation against a non-deterministic stream X-machine, Theoretical Computer Science, 323:1-3, (191-233), Online publication date: 14-Sep-2004.
- Hierons R (2004). A flexible environment to evaluate state-based test techniques, ACM SIGSOFT Software Engineering Notes, 29:5, (1-3), Online publication date: 1-Sep-2004.
- Kim H and Sheldon F (2004). Testing Software Requirements with Z and Statecharts Applied to an Embedded Control Systemt0t1, Software Quality Journal, 12:3, (231-264), Online publication date: 1-Sep-2004.
- Chen C, Jia W and Zhou W (2004). A reactive system architecture for building fault-tolerant distributed applications, Journal of Systems and Software, 72:3, (401-415), Online publication date: 1-Aug-2004.
- Eshuis R and Wieringa R (2004). Tool Support for Verifying UML Activity Diagrams, IEEE Transactions on Software Engineering, 30:7, (437-447), Online publication date: 1-Jul-2004.
- Siewiorek D, Chillarege R and T. Kalbarczyk Z (2004). Reflections on Industry Trends and Experimental Research in Dependability, IEEE Transactions on Dependable and Secure Computing, 1:2, (109-127), Online publication date: 1-Apr-2004.
- Bichler L, Radermacher A and Schürr A (2004). Integrating Data Flow Equations with UML/Realtime, Real-Time Systems, 26:1, (107-125), Online publication date: 1-Jan-2004.
- Paurobally S, Cunningham J and Jennings N Ensuring consistency in the joint beliefs of interacting agents Proceedings of the second international joint conference on Autonomous agents and multiagent systems, (662-669)
- Harel D and Marelly R (2003). Specifying and executing behavioral requirements, Software and Systems Modeling (SoSyM), 2:2, (82-107), Online publication date: 1-Jul-2003.
- Backes M, Pfitzmann B and Waidner M Security in business process engineering Proceedings of the 2003 international conference on Business process management, (168-183)
- Marelly R, Harel D and Kugler H (2002). Multiple instances and symbolic variables in executable sequence charts, ACM SIGPLAN Notices, 37:11, (83-100), Online publication date: 17-Nov-2002.
- Marelly R, Harel D and Kugler H Multiple instances and symbolic variables in executable sequence charts Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (83-100)
- Griss M, Fonseca S, Cowan D and Kessler R Using UML state machine models for more precise and flexible JADE agent behaviors Proceedings of the 3rd international conference on Agent-oriented software engineering III, (113-125)
- Thimbleby H Reflections on symmetry Proceedings of the Working Conference on Advanced Visual Interfaces, (28-33)
- Sims S, Cleaveland R, Butts K and Ranville S Automated Validation of Software Models Proceedings of the 16th IEEE international conference on Automated software engineering
- Harman M, Hierons R, Fox C, Danicic S and Howroyd J Pre/Post Conditioned Slicing Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
- Shalyto A and Tukkel' N (2001). SWITCH Technology, Programming and Computing Software, 27:5, (260-276), Online publication date: 1-Sep-2001.
- Damm W and Klose J (2001). Verification of a Radio-Based Signaling System Using the STATEMATE Verification Environment, Formal Methods in System Design, 19:2, (121-141), Online publication date: 1-Sep-2001.
- Winkelmann K (2001). Formal Methods in Designing Embedded Systems—the SACRES Experience, Formal Methods in System Design, 19:1, (81-110), Online publication date: 1-Jul-2001.
- Damm W and Harel D (2001). LSCs, Formal Methods in System Design, 19:1, (45-80), Online publication date: 1-Jul-2001.
- DeLoach S Specifying agent behavior as concurrent tasks Proceedings of the fifth international conference on Autonomous agents, (102-103)
- Gomaa H, Menascé D and Shin M Reusable component interconnection patterns for distributed software architectures Proceedings of the 2001 symposium on Software reusability: putting software reuse in context, (69-77)
- Karsai G, Ledeczi A, Sztipanovits J, Peceli G, Simon G and Kovacshazy T An approach to self-adaptive software based on supervisory control Proceedings of the 2nd international conference on Self-adaptive software: applications, (24-38)
- Gomaa H, Menascé D and Shin M (2001). Reusable component interconnection patterns for distributed software architectures, ACM SIGSOFT Software Engineering Notes, 26:3, (69-77), Online publication date: 1-May-2001.
- Murthy P, Cohen E and Rowland S System canvas Proceedings of the ninth international symposium on Hardware/software codesign, (54-59)
- Shalyto A (2001). Logic Control and “Reactive” Systems, Automation and Remote Control, 62:1, (1-29), Online publication date: 6-Feb-2001.
- Harel D (2001). From Play-In Scenarios to Code, Computer, 34:1, (53-60), Online publication date: 1-Jan-2001.
- Lüttgen G, von der Beeck M and Cleaveland R A compositional approach to statecharts semantics Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications, (120-129)
- Lüttgen G, von der Beeck M and Cleaveland R (2000). A compositional approach to statecharts semantics, ACM SIGSOFT Software Engineering Notes, 25:6, (120-129), Online publication date: 1-Nov-2000.
- Padawitz P Swinging UML Proceedings of the 3rd international conference on The unified modeling language: advancing the standard, (162-177)
- Lindemann C, Thümmler A, Klemm A, Lohmann M and Waldhorst O Quantitative system evaluation with DSPNexpress 2000 Proceedings of the 2nd international workshop on Software and performance, (12-17)
- Harel D and Yashchin G An algorithm for blob hierarchy layout Proceedings of the working conference on Advanced visual interfaces, (29-40)
- Garibay I Generating text with a theorem prover Proceedings of the ANLP-NAACL 2000 workshop on Student research, (13-18)
- Milde H, Guckenbiehl T, Malik A, Neumann B and Struss P (2000). Integrating model-based diagnosis techniques into current work processes --- three case studies from the INDIA project, AI Communications, 13:2, (99-123), Online publication date: 1-Apr-2000.
- Kabous L and Nebel W Modeling hard real time systems with UML the OOHARTS approach Proceedings of the 2nd international conference on The unified modeling language: beyond the standard, (339-355)
- Harel D On the behavior of complex object-oriented systems Proceedings of the 2nd international conference on The unified modeling language: beyond the standard, (324-329)
- Lauber J, Steger C and Weiss R Applied probabilistic AI for online diagnosis of a safety-critical system based on a quality assurance program Proceedings of the 1999 ACM symposium on Applied computing, (25-30)
- Steffen B and Margaria T METAFrame in Practice Correct System Design, Recent Insight and Advances, (to Hans Langmaack on the occasion of his retirement from his professorship at the University of Kiel), (390-415)
- Harel D and Gery E (1997). Executable Object Modeling with Statecharts, Computer, 30:7, (31-42), Online publication date: 1-Jul-1997.
Recommendations
QoS modelling and analysis with UML-statecharts: the StoCharts approach
The UML is an influential and widespread notation for high-level modelling of information processing systems. UML statechart diagrams are a graphical language to describe system behaviour. They consitute one of the most intensively-used formalisms ...
Automated testing support for reactive domain-specific modelling languages
SLE 2016: Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language EngineeringDomain-specific modelling languages (DSML) enable domain users
to model systems in their problem domain, using concepts and
notations they are familiar with. The process of domain-specific
modelling (DSM) consists of two stages: a language ...
Hybrid MARTE statecharts
The specification of modeling and analysis of real-time and embedded systems (MARTE) is an extension of the unified modeling language (UML) in the domain of real-time and embedded systems. Even though MARTE time model offers a support to describe both ...