I am trying to explain the dependency inversion principle to my (mostly junior) colleagues. How can we define which one is the high-level policy and which one is the low-level detail in a software? For example, if our software automates workflow of several business applications, why do we say that the workflow automation is the high-level policy and the business applications are the details?
Dependency Inversion Principle: How to define high-level policy and low-level detail to other people?
design patterns;object oriented;solid;design