Ein Framework bezeichnet ein in der Software-Entwicklung vorkommendes Programmiergerüst. Innerhalb dieses Rahmens kann ein Nutzer eine Anwendung erstellen. Die Struktur wird dabei von dem im Framework enthaltenen Entwurfsmuster beeinflusst. Es gibt somit in der Regel eine Anwendungsarchitektur vor.