I have seen often the need for entities to have a status or state. We have been doing this using enumerations and for primary needs it works fine.
Imaginary example below.
It gets more complicated when you want to allow only certain state changes for certain roles.
My Idea would be to include a graphical tool like this that you would configure the allowed changes between stated and who are allowed to make them.
This would promote especially well for citizen developers and also for business process documenting development.
You can achieve similar thing now with Xpath restrictions but it is very complicated to manage and configure.
Also I think this could be accompanied with UI widget which would automatically show allowed new states for current user.