Describing workflows for application development