Abstract-Model-driven approaches have shown that the systematic use of models and models transformations in the design can facilitate the development process of distributed software applications. Abstract models can be used to (automatically) generate other models that gradually add details to an application's structure and behavior, to simulate and execute this behavior in early stages of the development process, to validate it against requirements, or to generate executable code. Since these models document the design at different abstraction levels, they also facilitate the communication between people with different skills, knowledge and background, such as business and IT people. This paper shows how the Business Process Model Notation (BPMN) can be used in a model-driven approach to represent application's behavior at different abstraction levels and reduce the communication gap between different stakeholders in enterprises. The paper focuses on generating executable behaviors, which we represent as BPMN orchestrations, from interaction patterns, which are recurring sequences of actions among interacting components that we can represent as BPMN choreographies.