North State Software - UML State Machine Code Generators

Learn about:

..:: UML State Machine Framework

Success Stories:

..:: Robotics
..:: Booklet Maker
..:: Microscopy


..:: 8/1/2011
NSF V2.0 Release

..:: 2/24/2013
NSF Lower Cost

..:: 8/13/2014
NSF Open Source

Real Time State Machine Controlled Robot

Parata Systems is a young, dynamic and fast-growing innovator of pharmacy automation systems. Parata's robotic dispensing systems automate prescription dispensing with 100 percent accuracy. Parata offers a complete line of retail pharmacy automation, from semi-automated counting systems to compliance packaging and self-service prescription pickup.

Customer Testimonial

“NSF saved us hundreds of development hours. Our engineers were able to quickly build robust, extensible C# code that was easy to debug and reuse throughout our enterprise. NSF’s straightforward mapping from state machine diagram elements to object classes provided trouble-free code that simplified the complex behaviors found in our systems.”

-- David Newcomb, Director of Systems, Parata Systems

Learn more about the NSF UML state machine framework. >>


Parata required a solution that would enable its engineers to design robust architectures to marry the physical aspects of its machines with its control systems software. The control systems software needed to be able to manage and synchronize input from multiple moving parts on the machine, while still running on a cost-effective, PC-based operating system. In addition, the rapidly growing customer base and evolving requirements dictated a solution that was easy to modify and maintain going forward. Parata also needed a design methodology that would enable its engineers to communicate how the machines function to a widely distributed group of service technicians, without extensive training sessions or written documentation.

Solution and Results

Parata selected the North State Framework™ solution as the design and development standard for its control systems.

Use of UML State Machine diagrams during the design phase enables Parata engineers to architect the control systems software at a much higher level of abstraction than traditional design methodologies. This abstraction allows engineers to create more robust software by identifying opportunities for reuse before the software is written. The event-driven nature of state machines is particular well-suited to Parata’s control systems environment, as the software must receive and send commands between multiple, physical moving parts on the machine, and then synchronize those commands and parts when appropriate.
Parata benefits from NSF’s one-to-one mapping between diagram elements and classes. Rather than coding being a complex and labor intensive operation, it becomes a turnkey process that can be completed quickly with few errors. When debugging is needed, NSF’s built-in trace logging facilities reduce the effort. NSF’s utility classes for such commonly used functions as threading and timers further reduce Parata’s development effort, freeing its engineers to focus on Parata-specific control logic.

NSF’s true object-oriented classes enable Parata to build complex systems in a simple fashion, leveraging both class inheritance and composition. NSF's highly extensible code reduces Parata’s cost for code modifications and maintenance, and enables its engineers to easily reuse common, but complex components across a diverse line of machines.

Finally, state machine diagrams allow Parata to effectively communicate the inner workings of the machines to quality assurance and service staff, without extensive documentation or training. The actual workings of the systems are reflected in the latest state machine diagrams.

NSF saved Parata hundreds of development hours and provided a framework for extensive reuse and maintainability. NSF is now an integral part of every Parata control systems project.

Contact us to discuss your application. >>