Design patterns·Objects, messages and the principles
you implemented an eleven-method interface to get at one of them and threw not-implemented from the other ten.
Interface segregation principle
Also calledISP, interface segregation, fat interface
The principle that a client should not be forced to depend on methods it does not use, which in practice means preferring several small role interfaces to one large one. The observable cost of getting it wrong is not aesthetic: every implementer is recompiled and every test double is rewritten when an unrelated method is added to the fat interface. Role interfaces also make it obvious what a collaborator is actually for, because the name describes the role rather than the class.