Un framework est un ensemble d'outils et de composants logiciels structurels formant un cadre de travail, un "squelette" de programme, pour les programmeurs. Cette architecture prête à l'emploi simplifie leur tâche et accroît par conséquent leur productivité.