A framework for workflow management systems based on objects, rules and roles