Methoden geben Arrays mit benannten Indizes (assoziative Arrays) zurück → deutet auf die Notwendigkeit einer neuen Klasse (oder besser eines Structs) mit den Array-Indizes als Attribute hin
beim Entwickeln einer Klasse stellt man fest, dass sie am Besten von zwei Basisklassen erben sollte, um ihre Funktionalität zu implementieren → die Klasse hat wahrscheinlich zu viele Verantwortlichkeiten und muss aufgeteilt werden
beim Erstellen von Tests für eine Klasse werden dieser Attribute/Methoden hinzugefügt, die nur vom Test benötigt werden und nicht von "normalen" Klassen → diese Attribute/Methoden sollten eliminiert und die Vorgehensweise der Tests überdacht werden; wahrscheinlich werden Interna getestet, die besser anders geprüft werden sollten
Methoden in Interfaces haben unterschiedliche Abstraktionsstufen, z.B. LiesCsvDaten()
(Textverarbeitung) und ErzeugePerson()
(fachliche Logik).