YAKINDU Statechart Tools

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 comprises a 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 with standard and professional editions, with no-cost licenses for non-commercial resp. academic usage.[2] Users are coming from both industry[3][4] and academia.[5][6][7]

YAKINDU Statechart Tools
Developer(s)YAKINDU team at itemis AG
Initial release2008; 16 years ago (2008)
Stable release
3.5.5 / 18 June 2019; 5 years ago (2019-06-18)
Written inJava
Operating systemCross-platform, binaries for Microsoft Windows, Linux and macOS available
PlatformEclipse
Available inEnglish
LicenceProprietary, parts Eclipse Public License
Websitewww.itemis.com/en/yakindu/statechart-tools/

Concepts

edit

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

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.

Functionality

edit

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)

Extensibility

edit

YAKINDU Statechart Tools provides 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.

History

edit

The first version of YAKINDU Statechart Tools was released in 2008 as part of the research project MDA for Embedded.[10] 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.

Change of licensing model

edit

With release 3.0 of the standard edition[11] in July and of the professional edition[12] 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 version. Students and Educators 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.

Award

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

Literature and Sources

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

References

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-08-06. 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-16. Retrieved 2016-09-15.
  4. ^ Stephane Maag (2013-05-23). "Final Security Testing Techniques" (PDF, 3.91 MB). DIAMONDS Consortium. Archived (PDF) from the original on 2017-01-18. Retrieved 2017-01-17.
  5. ^ Maryam Rahmaniheris; Yu Jiang; Lui Sha (2016-10-21). "Model-Driven Design of Clinical Guidance Systems". arXiv:1610.06895 [cs.CY].
  6. ^ Rafael Mota Gregorut (December 2015). "Synthesising formal properties from statechart test cases" (PDF). University of São Paulo. Archived from the original (PDF, 1.35 MB) on 2017-01-17. Retrieved 2017-01-17.
  7. ^ Claudia Picoco; Valentin Rychkov; Tunc Aldemir (November 2020). "A framework for verifying Dynamic Probabilistic Risk Assessment models" (PDF). Reliability Engineering & System Safety. 203. Retrieved 2020-07-10.
  8. ^ Harel, David (1984). "Statecharts: A Visual Formalism For Complex Systems" (PDF). Science of Computer Programming. 8 (3). North Holland: 231–274. doi:10.1016/0167-6423(87)90035-9. Archived (PDF) from the original on 2013-10-12.
  9. ^ OMG (February 2009). "OMG Unified Modeling Language (OMG UML), Superstructure Version 2.2". p. 525. Archived from the original on 2012-09-02. Retrieved 2016-06-17.
  10. ^ "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-09-16. Retrieved 2013-02-19.
  11. ^ Terfloth, Axel (2017-07-18). "Introducing YAKINDU Statechart Tools 3.0 Standard Edition". itemis AG. Archived from the original on 2018-01-13. Retrieved 2018-01-12.
  12. ^ 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-13. Retrieved 2018-01-12.
  13. ^ "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-07-31. Retrieved 2016-06-17.