In this paper, we examine the issues of workflow mapping and execution in opportunistic environments such as the grid. As applications become ever more complex, the process of choosing the appropriate resources and successfully executing the application components becomes ever more difficult. In this paper, we focus on the interplay between a workflow mapping component that plans the high-level resource assignments and the workflow executor that oversees the component execution. We concentrate particularly on issues of data management and we draw from the experiences with mapping and execution systems: Pegasus, DAGMan and Stork.