Skip to main content

Sismic Interactive State Machine Interpreter and Checker

Project description

https://travis-ci.org/AlexandreDecan/sismic.svg https://coveralls.io/repos/AlexandreDecan/sismic/badge.svg?branch=master&service=github https://landscape.io/github/AlexandreDecan/sismic/master/landscape.svg?style=flat https://badge.fury.io/py/sismic.svg https://readthedocs.org/projects/sismic/badge

Sismic Interactive State Machine Interpreter and Checker

Statecharts are a well-known visual language for modeling the executable behavior of complex reactive event-based systems. The Sismic library for Python >= 3.4 provides a set of tools to define, validate, simulate, execute and debug statecharts. More specifically, Sismic provides:

  • An easy way to define and to import statecharts, based on the human-friendly YAML markup language

  • A statechart interpreter offering a discrete, step-by-step, and fully observable simulation engine

  • Synchronous and asynchronous simulation, in real time or simulated time

  • Support for communication between statecharts and co-simulation

  • Built-in support for expressing actions and guards using regular Python code

  • A design-by-contract approach for statecharts

  • A unit testing framework for statecharts, including generation of test scenarios

Installation

Sismic can be installed using pip as usual: pip install sismic. This will install the latest stable version.

You can also install Sismic from this repository by cloning it. The development occurs in the master branch, the latest stable distributed version is in the stable branch.

Sismic requires Python >=3.4 but should also work with Python 3.3.

Documentation

The latest version of the documentation is available at sismic.readthedocs.org. The documentation can also be directly built from the docs directory using Sphinx. Many examples are available in docs/examples.

Changelog

See CHANGELOG.rst.

Credits

The Sismic library for Python (version 3.4 or higher) is developed at the Software Engineering Lab of the University of Mons as part of an ongoing software modeling research project.

Sismic is released publicly under the GNU Lesser General Public Licence version 3.0 (LGPLv3).

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

sismic-0.16.0-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

Details for the file sismic-0.16.0-py3-none-any.whl.

File metadata

File hashes

Hashes for sismic-0.16.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e425d236567ff28f368743aeb72c27395b1f5f965bfe1467ad3cdf49a25c756b
MD5 2cf66a5f81c4ad0b39de5667a96ba9c4
BLAKE2b-256 2c39a256115b8f2524eeb2d8b3d60cb4f01264fb566d583894d981333f028ae4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page