bookmark

Physhun - J2EE Finite State Machine Framework


Description

Physhun is a framework for modeling, building and executing processes as Finite State Models in J2SE and J2EE environments. It allow complex processes to be layed out and managed graphically which promotes rapid development and ease of maintenance. Physhun is lightweight enough to run in simple standalone applications, but flexible and powerful enough to be used for orchestration in SOA. Physhun allows processes to be long lived, persistent and transactional. Processes can be purely synchronous, or can be interacted with asynchronously as is common in Workflow processes.

The Physhun framework uses the Spring framework, and exposes all of the value added services provided by Spring, including inversion of control (IOC), aspect-oriented programming (AOP) and transaction management. Process control with Physhun is accomplished by defining processes as state models. A state model is defined as a Spring bean, comprised of States, Transitions, Conditions and Actions, all of which are also defined as Spring beans. Actions contain the implementation of the behavior that is executed on state transitions. Similarly, conditions contain the implementation that codifies the conditions that must be met for a state transition to occur. Predefined Actions and Conditions are provided in the Physhun framework and the Physhun-XML packages, or the user can easily define custom Actions and Conditions as necessary. Furthermore, the framework is built in such a way that things like state machine rules, process storage, caching and lookup, etc can be customized and plugged in. State models can be defined programatically, by writing XML defining the state model, or graphically using an editor like freely available Physhun Modeler. Physun Modeler is a free GUI that can be used to graphically define state models. PhyshunModeler software is provided free of charge, but is not open source software.

Preview

Tags

Users

  • @gresch

Comments and Reviews