Design Patterns sind wiederholende Muster, mit denen bestimmte Probleme der Software-[Software Architektur] gelöst werden. Einige bekannte Design Patterns sind:

* Factory
* Proxy
* Fassade
* Iterator
* Strategie
* Command
* Visitor

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.