Un framework es un conjunto estandarizado de conceptos, prácticas y criterios que sirve como referencia para enfrentar problemas similares. En desarrollo de software, un framework provee una estructura conceptual y tecnológica para organizar y desarrollar software, facilitando el desarrollo y permitiendo enfocarse en requerimientos en lugar de detalles técnicos. Aunque los frameworks agregan código, también permiten reutilizar componentes y seguir políticas de diseño uniformes.