YAKINDU Statechart Tools
   HOME

TheInfoList



OR:

YAKINDU Statechart Tools (YAKINDU SCT) is a tool for the specification and development of reactive, event-driven systems with the help of
finite-state machine A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
s. 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. Users are coming from both industry and academia.


Concepts

YAKINDU Statechart Tools implement the concept of statecharts as invented by
David Harel David Harel ( he, דוד הראל; born 12 April 1950) is a computer scientist, currently serving as President of the Israel Academy of Sciences and Humanities. He has been on the faculty of the Weizmann Institute of Science in Israel since 1980, ...
in 1984. Statecharts have been adopted by the UML later. The software can be used to model
finite-state machine A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
s. Important theoretical models for finite-state machines are
Mealy machine In the theory of computation, a Mealy machine is a finite-state machine whose output values are determined both by its current state and the current inputs. This is in contrast to a Moore machine, whose output values are determined solely by its cu ...
s and
Moore machine In the theory of computation, a Moore machine is a finite-state machine whose current output values are determined only by its current state. This is in contrast to a Mealy machine, whose output values are determined both by its current state and ...
s. YAKINDU Statechart Tools can be used to model both these types.


Functionality

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 Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
, C, and
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
(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

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 Domain specificity is a theoretical position in cognitive science (especially modern cognitive development) that argues that many aspects of cognition are supported by specialized, presumably evolutionarily specified, learning devices. The posit ...
statecharts is defined. This makes it possible to use statecharts as reusable language modules.


History

The first version of YAKINDU Statechart Tools was released in 2008 as part of the research project ''MDA for Embedded''. 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 An eclipse is an astronomical event that occurs when an astronomical object or spacecraft is temporarily obscured, by passing into the shadow of another body or by having another body pass between it and the viewer. This alignment of three c ...
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

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


Change of licensing model

With release 3.0 of the standard edition in July and of the professional edition in August 2017, itemis changed licensing away from
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized so ...
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

* Germany – Land of Ideas 2008: Model-based generative software development for embedded systems


Literature and Sources

* * * * *


External links


Project homepage

Source code on Github


References

{{Reflist Eclipse (software) Free integrated development environments Formerly free software