Este documento describe varios diagramas y modelos utilizados en el desarrollo de software. Explica tres tipos de diagramas de diseño (estructura, comportamiento e interacción) usados para modelar sistemas. Luego describe seis modelos de ciclo de vida de software como cascada, incremental, evolutivo, prototipado, espiral y concurrente. Finalmente resume las etapas típicas para aplicar y elaborar un programa: análisis, diseño, pruebas, implementación y mantenimiento.