Orchestration-Driven Development (ODD) represents a direct evolution of Object-Orientation (OO), with the emergence of Service-Oriented Architecture (SOA) and Business Process Management Suites (BPMS) as its catalyst. The philosophy behind ODD is relatively simple: a business application should be a direct translation of the business process it supports. Build your process model first, then derive your application components from this process, re-using existing components where possible. Seems pretty straightforward, right? You would think adoption of such a philosophy would be far more widespread. And perhaps it would be, except for modern software engineering conventions getting in the way.
Figure 1 Orchestration-Driven Development (ODD)