Le nombre d’applications développées avec des technologies orientées objets tend à éclater les applications en composants plus simples et réutilisables. Pour solutionner des problèmes courants, un recensement d’un certain nombre de modèles connus sous le nom de pattern de conception (Design Pattern) a été mis en place.