YAKINDU Statechart Tools

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
YAKINDU Statechart Tools
YAKINDU Statechart Tools logo
YAKINDU Statechart Tools executing a statechart in simulation mode
YAKINDU Statechart Tools executing a statechart in simulation mode
Developer(s)YAKINDU team at itemis AG
Initial release2008; 11 years ago (2008)
Stable release
3.4.3 / 12 November 2018; 2 months ago (2018-11-12)
Written inJava
Operating systemCross-platform, binaries for Microsoft Windows, Linux and macOS available
Available inEnglish
LicenceProprietary, parts Eclipse Public License

YAKINDU Statechart Tools (YAKINDU SCT) is a tool[1] for the specification and development of reactive, event-driven systems with the help of finite-state machines. It consists of an easy-to-use tool for the graphical editing of statecharts and provides validation, simulation, and source code generators for various target platforms and programming languages. YAKINDU Statechart Tools are available as a standard and as a professional edition, with no-cost licenses for non-commercial resp. academic usage.[2] Users are coming from both industry[3][4] and academia.[5][6][7][8][9][10][11][12][13][14][15][16][excessive citations]


YAKINDU Statechart Tools implement the concept of statecharts as invented by David Harel in 1984.[17] Statecharts have been adopted by the UML later.[18]

The software can be used to model finite-state machines. Important theoretical models for finite-state machines are Mealy machines and Moore machines. YAKINDU Statechart Tools can be used to model both these types.


The main features of YAKINDU Statechart Tools are:

  • smart combination of textual and graphical modeling
  • syntactic and semantic validation of the modeled state machines
  • executable statechart models via the simulation engine
  • source code generators for Java, C, and C++ (plus beta-state source code generators for Python, Swift, and TypeScript), enabling the integration of generated state machines into custom applications
  • testing framework SCTUnit
  • coverage analysis (SCov)


YAKINDU Statechart Tools provide open APIs, allowing for adaptions to specific requirements to a large extent. Not only are the code generators expandable; the developer can also specify his own statechart dialect. For this purpose, the concept of domain-specific statecharts is defined. This makes it possible to use statecharts as reusable language modules.


The first version of YAKINDU Statechart Tools was released in 2008 as part of the research project MDA for Embedded.[19] In this research project, model-based development processes for the development of embedded systems based on the Eclipse project were developed. Since mid-2010 the YAKINDU team, consisting mainly of employees of itemis AG, a company in Lünen, Germany, has been working on Version 2.0. The first official version was released together with Eclipse version Juno.

  • Release 2.9 is compatible to Eclipse versions 4.5 (Mars) and 4.6 (Neon). Starting with this release, it is possible to run code generators from the command-line resp. in a continuous integration system.

Introduction of professional edition[edit]

In December 2016, itemis released a professional edition of the software for a fee, providing additional functionalities:

  • Seamless integration with the C programming language
  • Advanced capabilities for simulating statecharts (breakpoints, snapshots)

Change of licensing model[edit]

With release 3.0 of the standard edition[20] in July and of the professional edition[21] in August 2017, itemis changed licensing away from open-source to a proprietary license model. Licenses are still available at no cost for non-commercial users of the standard edition. Academic users can obtain the professional edition for free.

YAKINDU Statechart Tools' last open-source release 2.9.3 is still available from YSCT's GitHub repository.


  • Germany – Land of Ideas 2008: Model-based generative software development for embedded systems[22]

Literature and Sources[edit]

  • Mülder, Andreas; Nyßen, Alexander (2011). "TMF meets GMF". Eclipse Magazin (in German). Frankfurt am Main: Software & Support Media GmbH (Nr. 3): S. 74–78. ISSN 1861-2296. Archived from the original (PDF) on 2016-06-20. Retrieved 2016-06-20.
  • Mülder, Andreas; Unger, Andreas (2012). "Yakindu ist auch eine Stadt". Eclipse Magazin (in German). Frankfurt am Main: Software & Support Media GmbH (Nr. 3). ISSN 1861-2296.
  • Alexander Nyßen (2011). "TMF meets GMF – Combining Graphical & Textual Modeling". EclipseCon Europe 2011. Archived from the original (PDF) on 2016-06-17. Retrieved 2016-06-17.
  • Nyßen, Alexander; Terfloth, Axel (2012). "YAKINDU SCT – Domain-Specific Statecharts". EclipseCon 2012. Archived from the original on 2012-09-15. Retrieved 2012-09-15.
  • Terfloth, Axel (2011-07-12). "Modellgetriebene Entwicklung mit der Yakindu Workbench: Vortrag auf dem BAIKEM Netzwerktreffen Embedded Systems" (in German). Bayern Innovativ. Archived from the original (PDF) on 2016-09-15. Retrieved 2016-09-15.

External links[edit]


  1. ^ Neumann, Alexander (2009-03-05). "itemis stellt Statechart-Tools unter die Eclipse-Lizenz". Heise Developer (in German). Archived from the original on 2016-06-17. Retrieved 2016-06-17.
  2. ^ "YAKINDU Statechart Tools (YAKINDU SCT)". itemis AG. Retrieved 2018-01-11.
  3. ^ "Improved AUTOSAR tool chain with YAKINDU – Case Study: Leopold Kostal GmbH & Co. KG". itemis AG. Archived from the original on 2016-09-15. Retrieved 2016-09-15.
  4. ^ Stephane Maag (2013-05-23). "Final Security Testing Techniques". DIAMONDS Consortium. Archived from the original (PDF, 3.91 MB) on 2017-01-17. Retrieved 2017-01-17.
  5. ^ Maryam Rahmaniheris; Yu Jiang; Lui Sha (2016-10-21). "Model-Driven Design of Clinical Guidance Systems" (PDF, 1.19 MB). University of Illinois. Retrieved 2017-01-17.
  6. ^ Rafael Mota Gregorut (December 2015). "Synthesising formal properties from statechart test cases". University of São Paulo. Archived from the original (PDF, 1.35 MB) on 2017-01-17. Retrieved 2017-01-17.
  7. ^ Marina Machado (2015-10-24). "MODUS – Generation of Interfaces based on Models". Universidade do Minho. Archived from the original (PDF, 5.55 MB) on 2017-01-17. Retrieved 2017-01-17.
  8. ^ Rogerio Atem de Carvalho; Hudson Silva; Rafael Ferreira Toledo; Milena Silveira de Azevedo (2015-08-03). "TDD for Embedded Systems: A Basic Approach and Toolset" (PDF, 417 KB). Instituto Federal Fluminense (IFF). Retrieved 2017-01-17.
  9. ^ João Henrique Correia Pimentel (2015-02-27). "Systematic design of adaptive systems – control-based framework" (in Portuguese). Universidade Federal de Pernambuco. Archived from the original (PDF, 10.3 MB) on 2017-01-17. Retrieved 2017-01-17.
  10. ^ Joel Greenyer (2014-10-28). "Formal Methods in Software Engineering". Leibniz-Universität Hannover. Archived from the original (PDF, 667 KB) on 2017-01-17. Retrieved 2017-01-17.
  11. ^ Christian Motika (2014-06-27). "SCCharts-Editor based on Yakindu". Christian-Albrechts-Universität zu Kiel. Archived from the original on 2016-09-14. Retrieved 2016-09-14.
  12. ^ Jabier Martinez; Tewfik Ziadi; Jacques Klein; Yves le Traon (2014-05-13). "Identifying and Visualising Commonality and Variability in Model Variants". University of Luxembourg. Archived from the original (PDF, 878 KB) on 2017-01-17. Retrieved 2017-01-17.
  13. ^ Josip Bozic; Dimitris E. Simos; Franz Wotawa (2014-03-10). "Attack Pattern-Based Combinatorial Testing". Graz University of Technology, SBA Research. Archived from the original (PDF, 249 KB) on 2017-01-17. Retrieved 2017-01-17.
  14. ^ Mohamad Sbeiti. "Simulation-based Performance Evaluation of PASER". Technische Universität Dortmund. Archived from the original on 2012-12-17. Retrieved 2012-07-05.
  15. ^ A. Topalidou-Kyniazopoulou, N. I. Spanoudakis2, M. G. Lagoudakis (2012-03-04). "A CASE Tool for Robot Behavior Development". Technical University of Crete. Archived from the original (PDF, 762 kB) on 2016-09-14. Retrieved 2016-09-14.CS1 maint: Multiple names: authors list (link)
  16. ^ Erik Kamsties, Burkhard Igel (2011-03-16). "Vorlesung "Einführung in die modellbasierte Softwareentwicklung"" (in German). Fachhochschule Dortmund. Archived from the original on 2016-09-14. Retrieved 2016-09-14.
  17. ^ Harel, David (1984). "Statecharts: A Visual Formalism For Complex Systems". Science of Computer Programming. North Holland. 8: 231–274. Archived from the original (PDF) on 2016-06-17.
  18. ^ OMG (February 2009). "OMG Unified Modeling Language (OMG UML), Superstructure Version 2.2". p. 525.
  19. ^ "Tutorial: Statechart Editor mit GMF erstellen". Forschungsprojekt MDA for Embedded (in German). itemis AG, Ingenieurbüro Dr. Kahlert, Nachrichtentechnik FH Dortmund. 2008-07-16. Archived from the original on 2016-06-17.
  20. ^ Terfloth, Axel (2017-07-18). "Introducing YAKINDU Statechart Tools 3.0 Standard Edition". itemis AG. Archived from the original on 2018-01-12. Retrieved 2018-01-12.
  21. ^ Mülder, Andreas (2017-08-07). "YAKINDU Statechart Tools 3.0 Professional Edition – New and Noteworthy". itemis AG. Archived from the original on 2018-01-12. Retrieved 2018-01-12.
  22. ^ "365 Orte: Lünen 2008". Deutschland – Land der Ideen (in German). Deutschland – Land der Ideen Management GmbH. 2009-03-05. Archived from the original on 2016-06-17. Retrieved 2016-06-17.