Global transaction support for workflow management systems: from formal specification to practical implementation