En la asignatura “Programación Orientada a Objetos” se abordan los temas enfocados a intensificar el uso y aprovechamiento del paradigma orientado a objetos en el desarrollo de Sistemas de Información, a través de la abstracción, la reutilización de clases, y del manejo de errores. Durante el desarrollo de la asignatura el alumno construirá un Sistema de Información que apoye a un nivel dentro de la jerarquía de una organización (a través de un sistema transaccional, o de automatización de procesos, o gerencial, o para la toma de decisiones, o algún otro). Las competencias a desarrollar en asignatura se engloban en tres bloques principales que comprenden la generalización de conceptos, la reutilización de clases, y el control de errores. Dentro de la generalización de clases el alumno abstraerá la solución a problemas en un conjunto de interfaces, clases abstractas, y plantillas, que describan el núcleo principal del sistema a desarrollar. Posteriormente, el alumno resolverá los problemas presentes en el desarrollo del sistema de información haciendo uso de la herencia, y de una serie de clases ya desarrolladas que cubran una funcionalidad básica del resultado esperado. Finalmente, el alumno identificará excepciones, o condiciones de error potenciales dentro del sistema, y los controlará a través de los elementos adecuados. Al término de esta asignatura el alumno será capaz de implementar sistemas de información tolerantes a fallas, disminuyendo considerablemente los tiempos de desarrollo a través de la reutilización de clases.