La habilidad para desarrollar software se fundamenta inicialmente en el adecuado modelamiento que se realice al problema a solucionar, de tal forma que la implementación sea desarrollada de una forma directa y que no requiera hacer grandes cambios en el diseño inicial, por este motivo es necesario que este modelamiento inicial tenga un grado elevado de abstracción del mundo real, para lo cual se requiere que el paradigma utilizado facilite dicha convergencia.

La programación Orientada a Objetos es hoy en día un modelo de desarrollo de software enriquecido que dispone de elementos abstractos muy cercanos al desempeño de los objetos reales.  Este curso toma los conceptos proporcionados en el curso de Programación I y lo evoluciona para ser desarrollado con los elementos propios del paradigma Orientado a Objetos.