You have carefully developed a workflow with Visual Studio. Deployment and testing go smoothly on your dev machine. Some weeks or months later, the business requests some changes to the workflow. You implement the required changes and again deployment and testing (on your dev machine) also work fine. Now you try to upgrade the version you have on the production environment. And then the nightmare of versioning workflows begins…