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; 10 years ago (2008)
Stable release
3.4.3 / 12 November 2018; 8 days ago (2018-11-12)
Written inJava
Operating systemCross-platform, binaries for Microsoft Windows, Linux and macOS available
PlatformEclipse
Available inEnglish
LicenceProprietary, parts Eclipse Public License
Websitehttps://www.itemis.com/en/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 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]

Concepts[edit]

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.

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 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.

History[edit]

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.

Award[edit]

  • 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]

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-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.
  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.