Ein Frame­work bezeich­net ein in der Soft­ware-Ent­wick­lung vor­kom­men­des Pro­gram­mier­ge­rüst. Inner­halb die­ses Rah­mens kann ein Nut­zer eine Anwen­dung erstel­len. Die Struk­tur wird dabei von dem im Frame­work ent­hal­te­nen Ent­wurfs­mus­ter beein­flusst. Es gibt somit in der Regel eine Anwen­dungs­ar­chi­tek­tur vor.