Un framework es una estructura definida que permite organizar y desarrollar proyectos de software facilitando el desarrollo e identificación de requerimientos. Existen frameworks para diferentes lenguajes como Java, PHP, ASP, Python y Ruby, siendo Ruby on Rails un popular framework para Ruby que permite crear aplicaciones web de forma ágil siguiendo el principio de "no repetirse".