History is a software case study, which is implemented in State Chart XML (SCXML) and PauWare. PauWare is a Java engine for executing Harel's Statecharts in general.

Application Programming Interface (API): Javadoc.


This case study aims at illustrating the functioning of deep (H*) and shallow (H) history states in PauWare. For testing purposes, in History.java, _A.shallow_history(); can be uncommented while _History_state_machine.deep_history(); can be commented (and vice versa). Note that the state machine's behavior is then by construction different between these two alternatives.

Caution: below, do not confuse the H* and H notation in general with the H state in the state machine!

Installation requirements
_History_state_machine = new com.pauware.pauware_engine.Core.StateMachine(… /*, new com.pauware.pauware2web.PauWare2Web_client()*/);
Specification (statechart) as full-size SVG image
H*HistoryACDfrom_C_to_DBEGHfrom_G_to_HFfrom_B_to_Afrom_A_to_B HistoryHACDfrom_C_to_DBEGHfrom_G_to_HFfrom_A_to_Bfrom_B_to_A