El curso trata sobre el desarrollo de software complejo. Esto requiere la aplicación de procesos de desarrollobien definidos. Para llegar a este fin los estudiantes requieren entender los diferentes modelos y procesos dedesarrollo de software con la finalidad de que puedan elegir el modelo más adecuado para cada proyecto dedesarrollo. Asimismo el desarrollo de software complejo involucra el uso de patrones y diseño basado encomponentes