Design Patterns sind wiederholende Muster, mit denen bestimmte Probleme der Software-Architektur gelöst werden. Einige bekannte Design Patterns sind:
Diese Muster setzen auf die Objektorientierung auf, erlauben damit die Aggregation von Objekten zu Cluster höherer Ordnung. Damit werden Probleme auf abstrakter Ebene gelöst und im Engineering auf verschiedene Problemstellungen angewendet.