The Integration Segregation Principle(ISP) is the basis for for coding against interfaces.
The principle deals with resolving the following issue: In a "base" system which contains methods U1, U2, U3 which all reurn a value/object used in other parts of the "base" system. Other applications call U1, U2, or U3 depending on how they need the calculation performed. Methods U1, U2, U3 may have some dependency which when one mehtod is changed causes errors for one of the other U methods
As all the U mthods return the same value/object, the "base" system shold be coded aginst an interface which U1, U2, U3 implement and then the appropriate U mehod is instantiated when the vall to the "base" system is run.