我有一个涉及建模状态机的小问题。
我已经进行了一些知识工程和“逆向工程”,确定了一组原始确定性规则,这些规则确定状态以及状态转换。
我想知道关于以下方面的最佳实践:
如何严格测试我的状态和状态转换,以确保系统不会进入未确定的状态。
如何强制执行状态转换要求(例如,应该不可能直接从stateFoo转换到StateFooBar,即为每个状态赋予关于它可以转换到的状态的“知识”)。
理想情况下,我想使用清晰、基于模式的设计,并尽可能使用模板。
虽然我需要一个起点,但我会感激任何指针(不是特意的双关语),帮助我解决问题。