An object-oriented framework for implementing UML state machines.
The North State Framework™ (NSF™) is
an object-oriented framework for implementing state machines based designs. Following
the UML 2.3 specification, NSF allows for highly modular and extensible designs
by supporting state machine inheritance and composition. It includes an application
framework and execution engine which make it easy to translate UML state machine
diagrams into fully functional code. The framework is available in C# and C++, and
is currently deployed in over 800 devices world-wide.
NSF simplifies the process of implementing UML state machines.
The framework classes map directly to UML diagram elements, so that working executable
code can be created in a straightforward, methodical fashion. NSF is perfect for
hand-coding UML model based designs or embedding into UML based modeling tools.
In short, the North State Framework bridges the gap between
UML and code, enabling you to build better solutions, faster.
- State Machines - semantically correct, fully functional, and extensible
- States - including initial, choice, composite, deep history, and shallow history
- Delegates - dynamically add or remove state entry, state exit, or transitions actions
- Events - simple and payload carrying
- Transitions - including internal, local, and external
- Regions - implement concurrent behaviors
- Fork/Join - synchronize current behaviors
- Threads - assign one or more state machines to run on a thread
- Timers - schedule an event or execution of an action
- Inheritance - easily extend base state machine behavior
- Composition - plug one state machine into another
- Trace Logging - record state machine history
Click here for detailed documentation.»
The North State Framework is available under a dual license model, offering both open source
and closed source development options.
- If you wish to use the open source license (GPLv2) for NSF, you must contribute
your source code to the open source community, and give them rights to share
- If you wisth to have a closed source solution, you can purchase a commercial license
from North State Software, which waives your obligation to publish your source
Click here for commercial licensing options.»