Normally when designing some parts of the application, one classes is always depends on the other classes. For example, business logic classes (BL) are depend on data access classes (DAL).
This dependence can be in very different ways, for example, BL can call static methods of DAL, or create instance of DAL every time it needs [...]
