You are on page 1of 42

Gua Docente PROGRAMACIN ORIENTADA A OBJETOS CON C++

Cristina Cachero Estela Saquete


Departamento de Lenguajes y Sistemas Informticos Universidad de Alicante

Esta obra est bajo licencia Creative Commons

NDICE
NDICE .................................................................................................................................................1 1. Contextualizacin .......................................................................................................................3
1.1. Perfil de los crditos de la materia. Adecuacin al perfil profesional y acadmico de la titulacin 3
La Programacin OO en el EEES................................................................................................................................ 8

1.2.

Ubicacin y relaciones en el plan de estudios ...............................................................................9

2.

Objetivos ...................................................................................................................................13
2.1 2.2 Objetivos generales .......................................................................................................................13 Competencias acadmicas y profesionales.................................................................................13

3.

Prerrequisitos............................................................................................................................17
3.1 3.2 Competencias y contenidos mnimos ...........................................................................................17 Plan de trabajo y actividades para la consecucin de los prerrequisitos ...................................17

4.

Bloques y temas de contenido ................................................................................................19


4.1 4.2 Bloques de contenidos de aprendizaje.........................................................................................19 Temas o unidades de contenido. Desarrollo................................................................................19

5.

Metodologa y estrategias de aprendizaje..............................................................................21


5.1 5.2 Metodologa docente .....................................................................................................................21 Estrategias de aprendizaje............................................................................................................21

6.

Plan de trabajo de los alumnos: especificacin del tiempo y esfuerzo del aprendizaje .....23
6.1 6.2 6.3 Planificacin del programa de Teora ...........................................................................................23 Planificacin del programa de Prcticas ......................................................................................23 Planificacin (resumen) .................................................................................................................24

7.

Bibliografa y materiales recomendados ................................................................................25


7.1 7.2 7.3 Bibliografa bsica..........................................................................................................................25 Bibliografa complementaria..........................................................................................................25 Otros recursos................................................................................................................................25

8.

Evaluacin de los procesos y resultados de aprendizaje ....................................................27


8.1 8.2 Procedimiento de evaluacin ........................................................................................................27 Criterios de evaluacin ..................................................................................................................27

9.

Anlisis de coherencia de la gua docente .............................................................................29

Borrador de Anexos para la memoria final de la red. .....................................................................37 Anexo A: Clasificacin de las asignaturas del Plan de estudios vigente en la Universidad de Alicante segn subcategoras del Libro Blanco (Contenidos Especficos de la Ingeniera)........39 Anexo B: Estimacin de crditos ECTS para POO ........................................................................41

1. Contextualizacin
En Espaa el perfil de profesionales del sector de Informtica es, en la actualidad, bastante difuso. A este hecho contribuyen por lo menos dos razones; en primer lugar existe una multiplicidad de ttulos, todos pertenecientes al rea de las Tecnologas de la Informacin y Comunicaciones (TIC), relacionados con la disciplina. Adems, a esta multiplicidad de ttulos hay que aadir la existencia de profesionales que, aun perteneciendo a otras disciplinas (Ingeniera en Telecomunicaciones, Ingeniera Industrial, Licenciados en Ciencias Fsicas y en Matemticas, etc.) tambin trabajan en este sector. Los objetivos primordiales en la formacin de un Ingeniero en Informtica hacen referencia tanto al mbito cognoscitivo como a las habilidades y aptitudes que permiten aplicar los conocimientos adquiridos en el ejercicio de la profesin. As, un Ingeniero en Informtica debera ser capaz de abordar problemas desconocidos y adaptarse a la rpida evolucin del sector. Adems de los aspectos socio profesionales, hay una serie de condicionantes de tipo acadmico que influyen directamente en el proceso de definicin de un nuevo modelo de titulacin de grado para los estudios de informtica en un futuro prximo. As, cabe preguntarse si es posible establecer unos contenidos bsicos, as como unas atribuciones profesionales bien definidas, diferenciadas y lo suficientemente estancas como para justificar la actual oferta de varias titulaciones en Informtica y Tecnologas de la Informacin. Ya adelantamos que el hecho de que los intentos de diferenciacin significativa hayan resultado hasta el momento infructuosos ha provocado que, en el nuevo marco europeo, se haya optado en el caso de las TIC por la reduccin a dos nicas titulaciones, que se relacionan con los campos propios de la Informtica y de las Telecomunicaciones respectivamente.

1.1. Perfil de los crditos de la materia. Adecuacin al perfil profesional y acadmico de la titulacin
Los lenguajes de programacin han sido desde siempre piedra angular de todas las propuestas docentes en titulaciones relacionadas con la informtica. Dichas propuestas han ido evolucionando a medida que se ha producido un desarrollo histrico de los lenguajes de programacin, desarrollo que ha estado estrechamente relacionado con el desarrollo del hardware y software de los ordenadores. Actualmente, es muy comn hablar de generaciones de ordenadores y, de una forma similar, de generaciones de lenguajes de programacin. La historia de los lenguajes de programacin puede ser dividida en cuatro (o cinco, segn algunos autores) generaciones. Las dos primeras generaciones siguen una sucesin en el tiempo, mientras que las dos ltimas siguen evolucionado en la actualidad de forma casi paralela, debido a que propugnan distintos paradigmas, cada uno de ellos especialmente pensado para la resolucin de un tipo de problema distinto. Estas generaciones son: Primera generacin: Aos previos a la segunda guerra mundial. Problemas numricos. Lenguajes mquina y ensamblador. Segunda Generacin. Principio de los aos cincuenta. Notaciones simblicas. FORTRAN (1957), ALGOL (dcada de los sesenta), COBOL (finales de los cincuenta), LISP (principio de los sesenta), BASIC (1965). BASIC fue el primer lenguaje incluido en el software distribuido con los primeros ordenadores personales. Tercera generacin. La creciente complejidad, tamao e importancia de los sistemas y aplicaciones, las necesidades de fiabilidad en los programas y, al mismo tiempo, la falta de adecuacin de los mtodos tradicionales a dichas necesidades provoca a finales de los sesenta la denominada crisis del software. Como respuesta surgen los

conceptos de abstraccin funcional, mtodo de diseo descendente (top-down), y se propone un conjunto de principios de programacin estructurada (Dijstra) que se aplican a nuevos lenguajes: PASCAL (Wirth, 1971). C (lenguaje en el que se desarroll el sistema operativo UNIX a principios de los setenta), paradigma lgico (PROLOG (1972)) y paradigma orientado a objetos (SIMULA (1967), Smalltalk (1980), Eiffel (1986), C++ (1986), Java (1995), ). Este paradigma modifica el tradicional enfoque a procesos por un enfoque a datos, e introduce nuevos conceptos como los de clase, objeto y herencia. Cuarta Generacin. Se sigue aumentando el nivel de abstraccin. Aparecen lenguajes que pretenden acelerar el proceso de construccin de aplicaciones y facilitar su mantenimiento, incluso el de posibilitar que el propio usuario final pueda resolver sus propios problemas usando l el lenguaje de programacin. Estos lenguajes sobre todo estn orientados a la gestin y en especial al tratamiento de bases de datos. Algunos de estos lenguajes de programacin tienen su propia estructura y algunos otros realmente lo que hacen es el de permitir al programador crear programas en un lenguaje de tercera generacin utilizando muchas menos sentencias.

Esta evolucin se ha visto plasmada en el nmero y tipo de materias propuestas (relacionadas con la programacin) por las principales recomendaciones curriculares internacionales de Informtica. De entre ellas, quizs una de las de ms impacto sea el Computing Curricula. En su versin del 2001 [ACM2001] ya se enfatizaba que uno de los cambios fundamentales respecto a versiones anteriores era el aumento significativo de la importancia de ciertos temas curriculares, entre los que destacaba la Programacin Orientada a Objetos. De hecho, en su definicin del Cuerpo de Conocimiento de Computer Science la Programacin orientada a objetos aparece como un core topic, con un nmero de horas asignadas igual al asignado a la enseanza de los Algoritmos de Computacin Bsicos, por poner un ejemplo. Esta importancia est plenamente justificada. Por un lado el paradigma orientado a objetos ha demostrado sobradamente su grado de madurez y la viabilidad de sus propuestas. Por otro, la aplicacin de este paradigma supone un cambio cualitativo en el modo de construir aplicaciones ya que, tal y como enfatiza Meyer [MEYER97], proporciona mecanismos que permiten aumentar la calidad del producto software resultante (aplicaciones ms correctas, ms robustas, ms extensibles y ms reutilizables). La importancia del aprendizaje de los distintos paradigmas de programacin en las titulaciones de Informtica se refleja de manera muy clara en la ltima revisin de los distintos perfiles que componen esta recomendacin (Computing Curricula 2004 [ACM2004]). En esta recomendacin se proponen cinco grandes perfiles genricos de Informtica: Computer Science[CC2001], Computer Engineering[CE2004], Software Engineering[SE2004], Information Systems[IS2002] e Information Technology[IT2005]. De entre ellos, el rea de conocimiento Programming Fundamentals (dentro de la cual podemos englobar la Programacin Orientada a Objetos) aparece con relevancia mxima (nivel 5) en los perfiles Computer Science, Computer Engineering y Software Engineering, que son precisamente los perfiles en los que se enmarcan las actuales titulaciones de Informtica en Espaa. Esto implica que los nuevos planes de estudio deberan poner el mximo nfasis (a travs de las distintas asignaturas de especializacin ofertadas por cada plan ms all de los mnimos exigibles por el currculo de grado) en la enseanza de esta rea de conocimiento en relacin con el resto de reas y perfiles impartidos. Por otro lado hay que tener en cuenta (tal y como hace el Computing Curricula 2004) que la Programacin Orientada a Objetos implica no slo un lenguaje que soporte clases, objetos, herencia y polimorfismo sino una nueva forma de disear el programa, y de hecho nos encontramos con que su enseanza se afianza a menudo dentro del marco de asignaturas relacionadas con la disciplina de Ingeniera del Software. A decir verdad, existe cierta controversia en cuanto a si se debera ensear antes Ingeniera del Software y slo ms adelante introducir la programacin o si, por el contrario, se debera comenzar con cursos de programacin y en cursos posteriores profundizar en conceptos propios de la Ingeniera del Software. Igualmente, existen distintas propuestas en cuanto al orden en que se deberan ensear los distintos paradigmas: mientras unos autores propugnan comenzar por el paradigma imperativo, otros proponen comenzar directamente con el paradigma orientado a

objetos. En cualquier caso, tal y como se afirma en el perfil de Software Engineering La programacin es una habilidad bsica requerida por todos los ingenieros software; tambin es una habilidad que requiere de mucha prctica para su correcta adquisicin. Mientras ms pronto los estudiantes practiquen la programacin, mayor habilidad adquirirn En este perfil [SE2004] la programacin orientada a objetos aparece de manera explcita en las siguientes asignaturas: CS102I (The Object-Oriented Paradigm): Introduce el concepto de programacin orientada a objetos a alumnos con un bagaje en el paradigma imperativo. El curso comienza con una revisin de las estructuras de control y los tipos de datos, con nfasis en los tipos de datos estructurados y en el procesamiento de arrays. Posteriormente introduce el paradigma orientado a objetos, focalizndose en la definicin y uso de clases junto con los fundamentos del diseo orientado a objetos. Otros temas incluyen una visin general de los principios generales de algn lenguaje de programacin, anlisis simples de algoritmos, tcnicas bsicas de ordenacin y bsqueda, y una introduccin de principios de ingeniera del software. De los contenidos propuestos para CS102I, todos los referidos a la programacin orientada a objetos (diseo orientado a objetos, encapsulacin y ocultacin de informacin, separacin de comportamiento e implementacin, clases, subclases y herencia, polimorfismo, jerarquas de herencia) estn cubiertos en la asignatura objeto de este estudio. CS 103 (Data Structures and Algorithms): basada en los fundamentos proporcionados por la secuencia de asignaturas CS101I-102I, esta asignatura introduce los conceptos fundamentales de estructuras de datos y los algoritmos que proceden de ellas. Algunos de los temas tratados son recursividad, la filosofa subyacente de la programacin orientada a objetos, los fundamentos de las estructuras de datos (pilas, colas, listas enlazadas, tablas asociativas, rboles y grafos), loas bases del anlisis de algoritmos y una introduccin a los principios de traduccin de lenguajes. Adems de una profundizacin en los conceptos OO introducidos en la asignatura anterior, esta asignatura proporciona una visin general de los lenguajes y paradigmas de programacin, que es un tema tambin incluido en nuestra asignatura. SE201 (Introduction to Software Engineering): curso que presenta los principios y conceptos bsicos de la Ingeniera del Software y da una base para muchos otros cursos posteriores. Cubre de manera extensa la mayor parte de la terminologa y conceptos de la ingeniera del software. Al terminar el curso, los alumnos sern capaces de realizar un anlisis y diseo bsico OO, particularmente utilizando UML. Adems, tendrn un conocimiento bsico de requisitos, arquitectura software y testeo. La conexin entre diseo orientado a objetos utilizando UML y su implementacin es un tema cubierto de manera extensiva por la asignatura objeto de este estudio. SE312 (Low-Level Design of Software): esta asignatura cubre el diseo y la construccin detallada del software. Tambin cubre de manera profunda los patrones de diseo y la refactorizacin. Se introducen aproximaciones formales al diseo. Se analizan diseos basados en criterios de calidad internos. Se mejora el rendimiento y la mantenibilidad de programas. Se realiza ingeniera inversa. Se presentan aproximaciones disciplicandas al cambio en el diseo. En esta asignatura, entre otras cosas el alumno aprende a utilizar patrones de diseo, as como a programar con un alto nivel de eficiencia. Estos objetivos de aprendizaje estn tambin presente en la asignatura objeto de este estudio. Por ltimo, destacar que en el perfil de Software Engineering las distintas posibilidades en cuanto al orden de aprendizaje de estas asignaturas se reflejan en distintos itinerarios, es decir, distinta ordenacin temporal de las asignaturas en el plan de estudios.

Versiones anteriores de estas recomendaciones han influido en la elaboracin de las directrices generales propias de las titulaciones de informtica (Reales Decretos 1459/1990 1460/1990 1461/1990 del 26 Octubre, BOE 20 Noviembre 1990). Lamentablemente, debido a su momento de elaboracin, en estos reales decretos no se incluye ningn epgrafe especfico para la Programacin Orientada a Objetos. Segn estas directrices, las materias ms relacionadas con la asignatura Programacin Orientada a Objetos, son: Metodologa y Tecnologa de la Programacin: materia troncal (y por tanto de obligatoria inclusin) para todas las titulaciones en todos los planes de estudios conducentes a la obtencin de los ttulos de Ingeniero Informtico, Ingeniero Tcnico en Informtica de Gestin, Ingeniero Tcnico en Informtica de Sistemas. 15 crditos. Contenido: Diseo de Algoritmos, Anlisis de Algoritmos, Lenguajes de Programacin, Diseo de programas: descomposicin modular y documentacin, Tcnicas de verificacin y pruebas de programas. Estructura de Datos y de la Informacin: materia troncal (y por tanto de obligatoria inclusin) para todas las titulaciones en todos los planes de estudios conducentes a la obtencin de los ttulos de Ingeniero Informtico, Ingeniero Tcnico en Informtica de Gestin, Ingeniero Tcnico en Informtica de Sistemas. 12 crditos. Contenidos: Tipos Abstractos de Datos, Estructura de datos y algoritmos de manipulacin, Estructuras de informacin: Ficheros, Bases de datos.

Siguiendo estas directrices, en la Universidad de Alicante, la materia troncal Metodologa y Tecnologa de la Programacin se estructura en las siguientes asignaturas, troncales para todas las titulaciones, definidas por la universidad: Fundamentos de Programacin I. Asignatura bsica que facilita una visin inicial del campo de la programacin a travs del estudio de los elementos bsicos de un lenguaje de programacin. Primer curso. Primer cuatrimestre. Fundamentos de Programacin II. Asignatura que facilita la aplicacin de los conceptos generales de un lenguaje mediante el estudio y uso de un lenguaje de programacin de tipo imperativo. Primer curso. Segundo Cuatrimestre. Diseo y Anlisis de Algoritmos. Asignatura que estudia los conceptos de diseo anlisis y verificacin de algoritmos y sus tcnicas asociadas. Tercer curso. Primer cuatrimestre.

Las tres asignaturas tienen actualmente una carga docente de 6 crditos, lo que hacen un total de 18 crditos, es decir, tres ms de los quince mnimos que establecen los Reales Decretos. Asimismo, en la Universidad de Alicante la materia troncal Estructura de datos y de la Informacin se materializa en dos asignaturas anuales de 9 crditos cada una: Programacin y Estructuras de Datos. Asignatura que introduce el diseo recursivo, as como los fundamentos del paradigma orientado a objetos de una manera pragmtica, a travs del estudio de los principales TADs (pilas, colas, listas, rboles y grafos). Bases de Datos I. Asignatura bsica que proporciona una visin general de los principios subyacentes de las bases de datos relacionales, y que introduce tanto el clculo relacional como el modelo EER.

Ambas asignaturas se imparten en segundo curso y, debido a su carga docente, son anuales. Juntas, suman los 18 crditos mnimos establecidos para esta materia troncal en los Reales Decretos de las tres titulaciones. A pesar de esta ausencia significativa del contenido Programacin Orientada a Objetos en los Reales Decretos espaoles, cabe destacar cmo los planes de estudio de la Universidad de Alicante ponen los medios para subsanar esta carencia mediante la oferta de un nmero elevado de asignaturas obligatorias, con una carga de 4,5 crditos cada una, que complementan los contenidos de las materias troncales. Dichas asignaturas son: Programacin Orientada a Objetos. Asignatura que introduce de una manera sistemtica los principios del paradigma orientado a objetos, y profundiza en los

conceptos de clase, objeto, mensaje, herencia, polimorfismo, gestin de errores y persistencia. Segundo curso. Primer cuatrimestre. Herramientas de Programacin. Asignatura que introduce los entornos de desarrollo, los estndares de nomenclatura, la organizacin, indentado y comentario del cdigo fuente, la gestin de proyectos, la programacin por contrato, la internalizacin de aplicaciones y el control de versiones. Segundo curso. Primer cuatrimestre. Lenguajes y Paradigmas de Programacin. Asignatura que da una visin general de los distintos paradigmas de programacin, sus puntos fuertes y sus debilidades, y proporciona al alumno una base crtica sobre la cual discernir qu lenguaje puede adecuarse mejor a cada proyecto. Segundo curso. Segundo cuatrimestre. Computabilidad: Asignatura que, como su nombre indica, estudia la computabilidad los algoritmos, y hace especial nfasis en mquinas de Turing y funciones recursivas. Segundo curso. Segundo Cuatrimestre. Diseo y Programacin Avanzada de Aplicaciones. Asignatura que profundiza en el paradigma orientado a objetos, e introduce los objetos distribuidos, las aplicaciones cliente/servidor y las aplicaciones para Internet. Tercer curso. Segundo Cuatrimestre. Algoritmia Avanzada. Asignatura que profundiza en conceptos presentados en Diseo y Anlisis de Algoritmos, como son los algoritmos de bsqueda exhaustiva y estocstica, programacin dinmica y algoritmos de codificacin y compresin. Cuarto Curso. Primer Cuatrimestre.

Al analizar la adecuacin del perfil de la asignatura a los perfiles de la titulacin, debemos destacar que la Programacin Orientada a Objetos juega un papel fundamental a la hora de construir sistemas software donde la calidad, fiabilidad y productividad deben estar garantizadas. Los descriptores de esta asignatura cubren los fundamentos de este paradigma, y son bsicos para la formacin de un informtico independientemente de su perfil, ya que cubren un conjunto de tcnicas de abstraccin bsicas para el diseo y la implementacin de sistemas de informacin complejos con un alto grado de fiabilidad y reuso. Por tanto el contenido de la Programacin Orientada a Objetos es relevante en los tres perfiles profesionales generales [EICE04]: Perfil profesional de desarrollo de software: un ingeniero con este perfil sabe disear la arquitectura y detallar las especificaciones de funcionamiento; conoce la naturaleza y posibilidades de los distintos lenguajes de codificacin y es capaz de realizar la implementacin, de todo o parte del producto, mediante el uso de las diferentes metodologas y paradigmas de desarrollo que estn a su alcance; est preparado para realizar la verificacin modular de los desarrollos parciales, la integracin parcial o completa y las pruebas modulares y de sistema; est en disposicin de validar el producto para la aceptacin del cliente, de implantarlo y de ponerlo en explotacin [EICE04]. Tal y como indica esta descripcin, la programacin orientada a objetos es fundamental en este perfil, ya que es el paradigma predominante en la actualidad para el desarrollo software y aplicaciones de tamao medio. Perfil profesional de sistemas: un Ingeniero en Informtica con perfil Sistemas, es capaz de especificar, modelar, disear, implantar, verificar, integrar, configurar, mantener y evaluar el rendimiento de cualquier sistema informtico as como cada uno de sus componentes o partes. Por ello debe contar con slidos conocimientos de las tcnicas, dispositivos y herramientas propias del mbito que le capaciten para la especificacin, diseo, montaje, depuracin, mantenimiento y evaluacin del rendimiento del hardware de computadores y sus perifricos habituales. Asimismo, debe ser competente para el desarrollo del software del sistema que posibilita una gestin eficaz de los recursos hardware del sistema informtico... [EICE04] La Programacin Orientada a Objetos proporciona de manera natural mecanismos de integracin, seguridad etc que facilitan el desarrollo de sistemas distribuidos, y de hecho es un paradigma que est en la base de muchas de las plataformas de desarrollo actuales (J2EE, .NET, etc).

Perfil profesional de gestin y explotacin de tecnologas de informacin: Un Ingeniero en Informtica con perfil profesional de Gestin y Explotacin de Tecnologas de la Informacin es responsable de asegurar que las necesidades de Gestin de la Informacin y del Conocimiento de las organizaciones se satisfacen con el desarrollo y la implantacin de soluciones informticas. Conoce la estrategia empresarial y las diferentes soluciones de las Tecnologas de la Informacin y de las Comunicaciones necesarias para apoyar dicha estrategia... Aunque quizs este sea el perfil en que menos importancia relativa tenga la Programacin Orientada a Objetos, un ingeniero de estas caractersticas debe poder comunicarse con el ingeniero software en trminos comprensibles para ambos, y el paradigma orientado a objetos proporciona una buena base para la discusin de la arquitectura de los sistemas a desarrollar.

Por ltimo, cabe destacar que la utilizacin en esta asignatura de artefactos aprendidos en otras asignaturas que cubren el rea de Ingeniera del Software ayuda a comprender el proceso de desarrollo de software, al mismo tiempo que enfatiza la utilidad de los artefactos software (en nuestro caso diagramas UML) como vehculo de reflexin y comunicacin entre programadores.

La Programacin OO en el EEES La asignatura Programacin Orientada a Objetos es adems perfectamente coherente con la propuesta del Libro Blanco que recoge los cambios que deben efectuarse en los planes de estudio de las titulaciones universitarias de informtica en el nuevo espacio europeo de educacin superior [EICE04]. Muy sucintamente, a partir del 2010 se prev que exista una sola titulacin de Grado denominada Ingeniera en Informtica, que recoge los contenidos generales y bsicos de la enseanza superior informtica. Estos estudios de Grado constarn de 240 crditos ECTS y estn organizados en 4 aos. Los contenidos Formativos Comunes de la titulacin representan un 60% de la carga de los estudios, incluyendo la carga asignada al Proyecto Fin de Carrera, dejando el 40% restante para materias ofertadas discrecionalmente por cada Universidad. El ttulo de Grado dar acceso a un segundo ciclo de carcter puramente profesional, denominado Master. El Master est destinado a la especializacin profesional de los Ingenieros en Informtica, o bien a su preparacin para la investigacin. Los estudios de Master constarn de entre 60 y 120 crditos ECTS, y permitirn el acceso a la realizacin de la tesis doctoral con el objeto de obtener el grado de Doctor. Los Contenidos Formativos Comunes (CFC), que representan el 60% de la carga de los estudios (al menos 144 ECTS de los 240 de los que consta la titulacin), y dentro de los que se engloba la materia objeto de este estudio, quedan distribuidos de la siguiente forma: 1) Fundamentos cientficos (10% - 15%) 1.1) Fundamentos matemticos de la Informtica 1.2) Fundamentos fsicos de la Informtica 3) Contenidos Generales de la Ingeniera (5% - 10%) 3.1) Gestin de las organizaciones 3.2) tica, legislacin y profesin 3.3) Destrezas profesionales 2) Contenidos especficos de la Ingeniera en Informtica (35% - 40%) 2.1) Programacin 2.2) Ingeniera del Software, Sistemas de Informacin y Sistemas Inteligentes 2.3) Sistemas operativos, Sistemas Distribuidos y Redes 2.4) Ingeniera de Computadores 4) Proyecto Fin de Carrera (6%) El libro blanco detalla adems los contenidos de cada categora. En concreto, para los contenidos especficos se especifica lo siguiente:

Programacin (P): fundamentos y metodologa de la programacin, algoritmia, computabilidad, lenguajes de programacin, paradigmas de programacin, estructuras de datos. Ingeniera del Software, Sistemas de Informacin y Sistemas Inteligentes (IS): desarrollo de software, procesos, requisitos, especificacin y diseo, gestin de proyectos, calidad del software, interaccin persona-computadora, bases de datos, inteligencia artificial. Sistemas Operativos, Sistemas Distribuidos y Redes (SO): sistemas operativos, sistemas distribuidos, sistemas de tiempo real, arquitectura e infraestructura de redes y servicios telemticos, seguridad. Ingeniera de los computadores (IC): fundamentos, estructura y arquitectura de computadores, tecnologa de computadores.

La materia de Programacin Orientada a Objetos (POO) se engloba, dentro de los Contenidos Especficos de la Ingeniera en Informtica, en las subcategora Programacin, donde cubre parcialmente los epgrafes fundamentos y metodologa de la programacin, paradigmas de programacin y lenguajes de programacin. De hecho, en el libro blanco se identifica la Programacin Orientada a Objetos como un cambio revolucionario, que influye de forma determinante en la enseanza de la Informtica, junto con otras reas como la web, las nuevas tecnologas de red, los grficos y multimedia, las tcnicas de simulacin, los sistemas empotrados, las bases de datos relacionales o el uso de sofisticados interfaces para el programador de aplicaciones. En este contexto, todas las asignaturas relacionadas con la Programacin Orientada a Objetos forman parte de los Contenidos Especficos, subcategora Programacin, tal y como mostramos en la tabla 1 EPGRAFE ASIGNATURA
FUNDAMENTOS PROGRAMACIN I

Fundamentos y metodologa de la FUNDAMENTOS PROGRAMACIN II programacin


HERRAMIENTAS DE PROGRAMACIN DISEO Y ANLISIS DE ALGORITMOS

Algoritmia, computabilidad

ALGORITMIA AVANZADA COMPUTABILIDAD

Lenguajes de programacin

LENGUAJES, GRAMTICAS Y AUTMATAS PROCESADORES DEL LENGUAJE LENGUAJES Y PARADIGMAS DE PROGRAMACIN

Paradigmas de programacin, Estructuras de datos

PROGRAMACIN ORIENTADA A OBJETOS DISEO Y PROGRAMACIN AVANZADA DE APLICACIONES PROGRAMACIN Y ESTRUCTURAS DE DATOS

Tabla 1. Asignaturas que recogen los Contenidos Formativos Comunes de Programacin.

1.2. Ubicacin y relaciones en el plan de estudios


La asignatura Programacin Orientada a Objetos es obligatoria en el segundo curso de las tres ingenieras ofertadas por la Universidad de Alicante. Esta asignatura est estrechamente relacionada con otras asignaturas troncales, obligatorias y optativas, que presentamos en la tabla 1 junto con sus correspondientes descriptores. En esta tabla, la primera columna indica el curso en el que se imparte la asignatura (en caso de ser troncal u obligatoria) y el cuatrimestre (primero, segundo o asignatura anual)

CURSO/ CUATR 1/1

TIPO T

ASIGNATURA DESCRIPTOR FUNDAMENTOS INTRO DUCCION A LA PROGRAMACIN I PROG RAMACIO N.DISEO DE (FP1) ALG ORITMOS ANALISIS Y DISEO DE FUNDAMENTOS PROG RAMAS.LENGUAJ ES DE PROGRAMACIN II PROG RAMACIO N.DISEO (FP2) DESCENDENTE. ESTRCTURA DE DATOS I PROGRAMACIN Y ALG ORITMO DE MANIPULACIO N. ESTRUCTURAS DE TIPO S ABSTRACTO S DE DATOS. DATOS (PED) DISSEO RECURSIVO . METO DO LOG IA.CARACTERISTICAS DE LA POO .CLASES Y O BJ ETO S.DISEO ORIENTADO A O BJ ETO S.LENGUAJ ES DE PROGRAMACIN PROG RAMACIO N O RIENTADO A ORIENTADA A O BJ ETO S.O BJ ETO S OBJETOS (POO) DISTRIBUIDO S.HERENCIA Y G ENERIDAD.PERSISTENCIA EN UN ENTORNO O RIENTADO A O BJ ETO S. ENTORNO S DE DESARRO LLO. ESTANDARES DE NO MENCLATURA. INDENTADO Y CO MENTARIO EN EL CO DIGO HERRAMIENTAS DE FUENTE. O RG ANIZACIN DEL PROGRAMACIN CO DIGO FUENTE. G ESTIN DE (HP) PROYECTO S. PROG RAMACI N PO R CO NTRATO . INTERNALIZACIN DE APLICACIO NES. CONTRO L DE VERSIO NES MAQ UINAS SECUENCIALES Y LENGUAJES, AUTO MATAS FINITO S. GRAMTICAS Y G RAMATICAS Y LENG UAJ ES AUTMATAS FO RMALES. REDES NEURONALES COMPUTABILIDAD MAQ UINAS DE TURING . (C) FUNCIONES RECURSIVAS PROG RAMACIO N LENGUAJES Y PROCEDIMENTAL.PROG RAMACION PARADIGMAS DE FUNCIONAL.PROG RAMACIO N PROGRAMACIN DECLARATIVA.PRO GRAMACIO N (LPP) O RIENTADA A O BJ ETO S.LENGUAJ ES DE SCRIPT DISEO DE PROG RAMAS:DESCO MPO SICION MO DULAR Y DISEO Y ANLISIS DO CUMENTACIO N.TECNICAS DE DE ALGORITMOS VERIFICACIO N Y PRUEBAS DE (DAA) PROG RAMAS.LA EFICIENCIA DE LO S ALG ORITMO S.DIVIDE Y VENCERAS.ALG ORITMOSVO RACES .ALGO RITMO S CON RETRO CESO. DISEO Y APLICACIO NES PROGRAMACIN DISTRIBUIDAS.APLICACIO NES AVANZADA DE INTERNET.SISTEMAS APLICACIONES ABIERTO S.OBJETOS (DPAA) DISTRIBUIDO S.CLIENTE/SERVIDO R BUSQ UEDA EXHAUTIVA Y ALGORITMIA ESTOCASTICA.PRO GRAMACION AVANZADA (AA) DINAMICA.ALGO RITMO S DE CO DIFICACIO N Y CO MPRESIO N CO MPILADORES. TRADUCTO RES E PROCESADORES DE INTERPRETES. FASES DE LENGUAJE (PL) CO MPILACIO N. O PTIMIZACION DE CO DIGO . MACRO PRO CESADORES PROCESO S.SINCRO NIZACIO N,CO M PETENCIA Y PROGRAMACIN COO PERACION.EXCLUSION CONCURRENTE (PC) MUTUA.MEMO RIA CO MPARTIDA.MEMORIA

1/2

2/A

2/1

2/1

2/1

2/2

2/2

3/1

3/2

4/1

4/A

OPT

DISTRIBUIDA.CSP OPT PROG RAMACIO N PROGRAMACIN EN VISUAL.PROG RAMACION DIRIG IDA ENTORNOS A EVENTOS. INTERFACES INTERACTIVOS (PEI) G RAFICO S DE USUARIO S DESARRO LLO Y PROG RAMACIO N DE SISTEMAS DE ACCESO A BASES DE DATO S DE INTERNET.PLANIFICACION,DISEO Y ADMINISTRACION DE SITIOS PROGRAMACIN EN WEB.MIGRACION DE INTERNET (PI) APLICACIO NES A ENTO RNOS EN INTERNET.HERRAMIENTAS DE DESARRO LLO .DISEO Y PROG RAMACIO N DE ELEMENTO S MULTIMEDIA EN INTERNET

OPT

Todas estas asignaturas estn claramente vinculadas, tal y como se refleja en el siguiente diagrama de actividad, donde los estados reflejan las asignaturas troncales/obligatorias y las transiciones reflejan los prerrequisitos existentes entre ellas.

FP1 (1/1/ T)

FP 2 (1/ 2/T )

Algebra (1/1/ T)

LPP (2/ 2/O)

LGA (2/ 1/T )

HP (2/ 1/O)

POO (2/ 1/O)

PED (2/A /T)

C (2/ 2/T )

DPAA (3/ 2/O)

DAA (3/ 1/T )

PL (4/A /T)

AA (4/1/ O)

La asignatura de POO supone, junto con PED y LPP (impartidas de manera simultnea), el primer contacto que el alumno tiene con el paradigma OO y con C++, aunque cuando cursa esta asignatura el alumno ya viene con nociones de programacin estructurada y del lenguaje C, adquiridas en FP1 y FP2. Tras cursar POO, el alumno debe cursar otras asignaturas que requieren dominar la programacin orientada a objetos para su correcta asimilacin: DPAA, DAA y AA.

2. Objetivos
2.1 Objetivos generales
Adems de los objetivos instrumentales generales cOI1, cOI2, cOI3, cOI4, cOI5 y cOI6, desarrollados en el captulo 1 como objetivos comunes a todas las asignaturas, planteamos los siguientes objetivos adicionales: a) Objetivos Instrumentales Generales (saber y saber hacer) o o o o o o o o o Dominar y utilizar la terminologa usual de la asignatura no slo en castellano/valenciano sino tambin en ingls, lengua franca de la Informtica, tal y como reconoce el Libro Blanco de la titulacin [EICE04]. Ser capaz de discernir los tipos de aplicacin y las situaciones en las que es posible y necesario aplicar el paradigma orientado a objetos. Comprender aquellos conceptos bsicos y mtodos relacionados con la Programacin Orientada a Objetos que son recomendaciones o prerrequisitos para otras asignaturas. Comprender, interpretar y analizar el cambio de enfoque en el modo de resolver problemas que supone el uso del paradigma orientado a objetos respecto a otros paradigmas. Comprender la enorme importancia de crear software fiable, reutilizable y mantenible. Dominar estrategias bsicas de reuso como son el uso de libreras y de patrones software. Desarrollar su capacidad de abstraccin de cara a futuras tareas de anlisis y diseo software. Experimentar con entornos y herramientas de desarrollo orientado a objetos de libre distribucin. Ser capaz de comparar distintos lenguajes de programacin orientados a objetos y apreciar sus ventajas e inconvenientes en base a su grado de cumplimiento de las principales caractersticas del paradigma orientado a objetos.

b) Objetivos Interpersonales Generales (ser y estar) Estos objetivos se corresponden con los objetivos interpersonales generales comunes a todas las asignaturas de segundo curso: cOIP1, cOIP2 y cOIP3, detallados en el captulo 1. c) Objetivos Sistmicos Generales Estos objetivos se corresponden a los objetivos sistmicos generales comunes a todas las asignaturas de segundo curso. Concretamente, estos objetivos son los objetivos cOS1, cOS2, cOS3 y cOS4, detallados en el captulo 1.

2.2 Competencias acadmicas y profesionales


a) Competencias Instrumentales Especficas (saber y saber hacer) Habilidades Cognitivas (saber) Adems de las habilidades cCIC1 y cCIC2, desarrolladas en el captulo 1, tendremos en cuenta las siguientes: Bloque 1: Introduccin al Paradigma Orientado a Objetos

o o o o

CIC1: Entender el concepto de paradigma y sus implicaciones en el modo de resolver problemas. CIC2: Conocer y entender el proceso de evolucin de los distintos paradigmas de programacin CIC3: Entender el tipo de problemas de desarrollo software que pala un uso correcto del paradigma orientado a objetos CIC4: Conocer el modo en que el paradigma orientado a objetos ayuda a mejorar las capacidades de reuso del software.

Bloque 2: Conceptos Bsicos de la Programacin Orientada a Objetos o CIC5: Entender los conceptos de clase, atributo, operacin, interfaz y objeto. o CIC6: Entender el mecanismo de paso de mensajes o CIC7: Comprender el modo en que se deben implementar los caminos de comunicacin entre clases para permitir el paso de mensajes entre ellas. o CIC8: Entender y ser capaz de implementar los distintos tipos de relaciones que se pueden establecer a nivel de objeto entre dos clases: asociaciones, agregaciones y composiciones. o CIC9: Entender el concepto de estado de un objeto. o CIC10: Entender la relacin entre diagramas de clase UML y cdigo Bloque 3: Herencia y Polimorfismo o CIC11: Entender el mecanismo de abstraccin de la herencia o CIC12: Saber discernir entre jerarquas de herencia seguras (bien definidas) e inseguras o CIC13: Comprender los costes de la herencia o CIC14: Saber decidir cundo usar herencia y cundo optar por composicin o CIC15: Entender el concepto de polimorfismo o CIC16: Entender la diferencia entre ligadura esttica y ligadura dinmica en los lenguajes de programacin o CIC17: Entender la relacin a nivel de implementacin entre herencia y polimorfismo o CIC18: Saber identificar los distintos tipos de polimorfismo: sobrecarga, sobreescritura, variables polimrficas y genericidad. o CIC19: Entender las relaciones entre los distintos tipos de polimorfismo Bloque 4: Otras caractersticas del Paradigma Orientado a Objetos o CIC20: Entender los mecanismos de gestin de errores que ofrecen algunos lenguajes de programacin o CIC21: Entender el concepto de persistencia o CIC22: Entender el concepto de concurrencia

Capacidades Metodolgicas (saber hacer)

Adems de las capacidades metodolgicas generales cCIM1, cCIM2 y cCIM3, introducidas en el captulo 1, para esta asignatura consideramos importante: o o CIM1: Ser capaz de interpretar un diagrama de clases UML para a partir de l proceder a la codificacin de la aplicacin CIM2: Ser capaz de aplicar las distintas tcnicas de reuso de software (composicin, herencia, polimorfismo), interpretando cul es la ms adecuada.

Destrezas Tecnolgicas (saber hacer)

Adems de la destreza tecnolgica cCIT1, introducida en el captulo 1, se consideran las siguientes: o CIT1: Manejar con fluidez las herramientas de programacin de libre distribucin gdb, doxygen y el compilador g++ de C++.

Destrezas Lingsticas (saber hacer) Adems de las destrezas lingsticas cCIL1 y cCIL2, introducidas en el captulo 1, se consideran las siguientes dos destrezas lingsticas: o CIL1: Adquirir y utilizar con fluidez un buen lenguaje de diseo software, tanto oral como escrito, siendo riguroso en las explicaciones de cualquier interaccin o relacin entre elementos del sistema. o CIL2: Comprender sinnimos y expresiones en otras lenguas utilizadas por otros autores para referirse a conceptos tratados en la asignatura.

b)

Competencias Interpersonales (ser y estar) Las competencias interpersonales se han dividido en competencias para tareas colaborativas y competencias relativas al compromiso con el trabajo. En ambos casos las competencias definidas para la asignatura coinciden con las aportadas el captulo 1: cCIPTC1, cCIPTC2, CIPTR1, cIPTR2, cIPTR3 y cIPTR4.

c)

Competencias Sistmicas Las competencias sistmicas hacen referencia a la integracin de capacidades cognitivas, destrezas prcticas y disposiciones recogidas en el captulo 1. Dichas competencias se recogen con las etiquetas cCS1, cCS2, cCS3, cCS4 y cCS5. Adems, consideramos competencias sistmicas de la asignatura: o o o CS1: Capacidad de aplicacin de los conocimientos, mtodos y destrezas prcticas del paradigma orientado a objetos para el diseo y desarrollo de sistemas de informacin ms robustos y mantenibles. CS2: Extrapolacin los conocimientos adquiridos a otros lenguajes de programacin CS3: Capacidad de prueba exhaustiva de los programas implementados

3. Prerrequisitos
3.1 Competencias y contenidos mnimos
Entender el concepto de paradigma Entender el modo de abordar la resolucin de problemas en el paradigma orientado a objetos Comprender la informacin contenida en un diagrama de clases UML y ser capaz de codificar dicha informacin en un lenguaje de programacin orientado a objetos Entender el concepto de relacin entre clases, y cmo a travs de los relaciones se produce el paso de mensajes entre objetos del sistema Entender el concepto de generalizacin y cmo este se puede plasmar en jerarquas de herencia seguras Entender el concepto de polimorfismo y ser capaz de aplicarlo para mejorar la reusabilidad del cdigo

3.2 Plan de trabajo y actividades para la consecucin de los prerrequisitos


Los prerrequisitos necesarios para el estudio y entendimiento de esta asignatura se cubren en las asignaturas FP1 y FP2, que se imparten en el primer curso de las tres ingenieras de informtica. Sin embargo, el alumnado de esta asignatura no es totalmente homogneo, ya que con frecuencia nos llegan alumnos que, sin haber superado dichas asignaturas, se matriculan en Programacin Orientada a Objetos. Para ellos, y para todo aquel alumno que desee comprobar/reforzar los conocimientos adquiridos sobre la construccin de algoritmos y el manejo de memoria en C++, en el Campus Virtual se actualiza todos los aos una pequea serie de libros y direcciones de Internet donde se recogen tutoriales de C que tratan los principales problemas con los que el alumno se puede encontrar a la hora de cursar nuestra signatura, principalmente el manejo de punteros. Adems, en las horas de laboratorio se imparte un seminario de 3 sesiones (4.5 horas) donde, a nivel prctico, se refrescan conceptos bsicos de programacin: construccin de algoritmos, manejos de arrays, etc. Adems, se intenta que los temas sean lo ms autocontenidos posibles, para lo cual se recuerda al principio de cada tema aquellos conceptos que van a necesitar para entenderlo, y se refuerzan dichos conceptos al final. De esta forma aquellos estudiantes que hayan olvidado estos conceptos podrn recordarlos en clase y, si lo creen necesario, profundizar en ellos con la ayuda del material bibliogrfico.

4. Bloques y temas de contenido


En este punto y, siguiendo los objetivos y competencias concretos de la programacin orientada a objetos, enunciamos el contenido del programa de teora y prctica de la asignatura de Programacin Orientada a Objetos.

4.1 Bloques de contenidos de aprendizaje


Bloque I: Introduccin al Paradigma Orientado a Objetos Unidad 0: Presentacin y objetivos Unidad 1: Introduccin al paradigma Orientado a Objetos. Bloque II: Conceptos Bsicos de la Programacin Orientada a Objetos Unidad 2: Fundamentos de la POO Bloque III: Herencia y Polimorfismo Unidad 3: Herencia Unidad 4: Polimorfismo Bloque IV: Otras caractersticas del Paradigma Orientado a Objetos Unidad 5: Caractersticas Avanzadas del Paradigma Orientado a Objetos

4.2 Temas o unidades de contenido. Desarrollo


Bloque I: Introduccin al Paradigma Orientado a Objetos Unidad 0: Presentacin y objetivos Unidad 1: Introduccin al paradigma Orientado a Objetos El progreso de la abstraccin. Principales Paradigmas de Programacin. El Paradigma Orientado a Objetos Historia de los Lenguajes Orientados a Objetos Metas del Paradigma Orientado a Objetos Conclusiones Ejercicios Propuestos.

Bloque II: Conceptos Bsicos de la Programacin Orientada a Objetos Unidad 2: Fundamentos de la POO Clase. Atributos. Operaciones. Interfaces Objetos Metaclases

Diseo de Aplicaciones OO Relaciones entre clases y objetos Conclusiones Ejercicios Resueltos Ejercicios Propuestos

Bloque III: Herencia y Polimorfismo Unidad 3: Herencia Introduccin a la Herencia Herencia Simple Herencia Mltiple Herencia de Interfaz Herencia de Implementacin Beneficios y costes de la herencia Eleccin de la tcnica de reuso Conclusiones Ejercicios propuestos

Unidad 4: Polimorfismo Polimorfismo y reuso. Sobrecarga Sobreescritura Variables Polimrficas Genericidad Caso de estudio Conclusiones Ejercicios Propuestos

Bloque IV: Otras caractersticas del Paradigma Orientado a Objetos Unidad 5: Caractersticas Avanzadas del Paradigma Orientado a Objetos Gestin de Errores. Persistencia Concurrencia. Conclusiones Ejercicios Propuestos.

5. Metodologa y estrategias de aprendizaje


5.1 Metodologa docente
La metodologa docente se ha desarrollado en el captulo 1 desde el punto de vista generall para el segundo curso de la titulacin de Informtica. Dicho desarrollo, aunque genrico, se considera vlido para el caso particular de la asignatura Programacin Orientada a Objetos. Lo que cabe destacar seran las prcticas de laboratorio y las actividades en grupos pequeos, puesto que jugarn un papel fundamental. Las actividades que se proponen son: Clases de teora con apoyo de material audiovisual: En lo que se refiere a las clases de teora, cabe mencionar que stas se apoyan de material audiovisual disponible para el alumnado y que le puede servir de gua sobre los contenidos ms importantes de la asignatura. Adems, los profesores de la asignatura hemos creado unos apuntes y estamos editando un libro que incluye todos los contenidos de la misma. De esta forma, el alumnado puede entender y asimilar mejor lo que se est explicando. Dichas explicaciones tericas se intercalarn con la realizacin de problemas, ejemplos prcticos y aplicaciones siempre que el contenido lo requiera. Actividades en grupos pequeos / tutoras docentes: Estas actividades estarn relacionadas con la realizacin de problemas y cuestiones terico-prcticas relacionadas con la asignatura, de manera que se intente reforzar y aplicar los conceptos bsicos a situaciones reales concretas y fomentar la capacidad de anlisis, sntesis y autoevaluacin del alumnado. Prcticas de laboratorio: En cuanto a las prcticas de laboratorio, cabe mencionar que stas se preparan durante los meses previos al inicio de las prcticas, y son implementadas y testeadas por varios profesores antes del comienzo del curso. Las primeras sesiones se dedicarn a un seminario del lenguaje de programacin utilizado en las mismas (C++ en nuestro caso) para permitir al alumno la toma de contacto con dicho lenguaje. El alumno deber utilizar el material audiovisual y los apuntes de la asignatura como apoyo al desarrollo de dichas prcticas. Trabajos complementarios: En cuanto a los trabajos complementarios, comentar que dichos trabajos incidirn en la nota final de la asignatura y pueden ser de ndole terica, de ndole prctica o de ndole terico-prctica y debern realizarse de forma individual o por parejas. Tutoras de atencin al alumnado: El alumnado tiene a su disposicin unas horas de tutoras en las cuales puede consultar cualquier duda relacionada con la organizacin y planificacin de la asignatura, as como dudas concretas sobre el contenido de la asignatura. Adems de dichas tutoras individualizadas, se programarn varias tutoras en grupo, al menos una para cada bloque de la asignatura correspondiente.

5.2 Estrategias de aprendizaje


Las estrategias de aprendizaje se han establecido a nivel comn en el captulo 1. Tal y como se indic, los medios tradicionales como las trasparencias, apuntes o presentaciones por ordenador, no son los nicos medios sobre los que nos apoyaremos en nuestra docencia. Concretamente, las pginas web y el campus virtual ofrecen innumerables posibilidades que no hay que dejar pasar. As, se ha elaborado en el campus virtual una pgina de la asignatura, que incluye toda la informacin que el alumno necesita. El uso de la misma ha sido mayoritario en las experiencias llevadas a cabo hasta el momento. Entre otras cosas, en dicha pgina podemos encontrar: Tabln de anuncios: Desde aqu, el alumno puede estar perfectamente informado de cualquier novedad relacionada con la asignatura. Adems de recordar los plazos de entrega de cualquier trabajo, fechas de exmenes, etc. Tutoras: Indica el horario de atencin al alumnado.

Objetivos: Resume los objetivos que se pretenden alcanzar en esta asignatura. Temario: Especifica el temario de esta asignatura. Material docente de la asignatura: Aqu se puede encontrar todo el material que como mnimo va a ser necesario para el seguimiento de las clases tericas y prcticas. Bibliografa complementaria: Aparece un listado de bibliografa complementaria que pueden consultar para profundizar en la asignatura o preparar los trabajos complementarios. Toda la bibliografa se encuentra disponible en la Biblioteca de la Universidad de Alicante. Plan de prcticas: Se especifica semana a semana qu trabajo debe realizar el alumnado tanto en las horas presenciales como en las no presenciales de forma autnoma. Horarios de teora y prcticas: Contiene informacin sobre los grupos de teora y prcticas, as como el profesorado que los imparte. Exmenes de autoevaluacin: actualmente slo desarrollados para el seminario de C++ impartido durante las primeras tres sesiones prcticas de la asignatura, con el fin de que el alumno testee si posee el nivel de conocimientos mnimo que le permita afrontar la elaboracin de la primera prctica de la asignatura con ciertas garantas de xito. Enlaces de inters: Aqu aparecen una serie de enlaces interesantes que pueden servir para profundizar en algunos contenidos de la materia. En base a todo esto, la estrategia de aprendizaje que se propone se compone de las siguientes fases: 1. Recopilacin de toda la documentacin de la asignatura. 2. Planificacin de las clases tericas: Lectura previa del guin correspondiente a la sesin de teora que se trate. Una vez realizada la clase de teora, se debe estudiar de forma autnoma su contenido y en caso de no entender algo intentar primero contrastarlo con otros compaeros o utilizando la bibliografa recomendada. Si esto no es suficiente se acudir a tutoras para intentar solucionar el problema. 3. Planificacin de las actividades en grupos pequeos: Una vez entendidas las explicaciones de las clases tericas se leer, de forma independiente, la actividad a realizar en grupos pequeos para, al inicio de la actividad, poder preguntar las dudas surgidas en el entendimiento del enunciado. En las actividades en grupos pequeos, cada subgrupo tendr que hacer la actividad propuesta que ser corregida en la propia aula entre todos o por el profesor fuera del aula. Una vez corregida la actividad propuesta, los grupos deben analizar cules han sido los errores cometidos para intentar no volverlos a realizar. Si es necesario se pedir ayuda al profesor correspondiente. 4. Planificacin de las clases prcticas: Una vez entendidas las explicaciones de las clases tericas se leer, de forma independiente, la prctica de laboratorio que se debe realizar en la sesin correspondiente para, al inicio de la sesin, poder preguntar las dudas surgidas en el entendimiento del enunciado. Parte de las prcticas se realizarn en los laboratorios y parte en horas no presenciales. Se deber cumplir el calendario de entrega de prcticas. El profesorado corregir en un plazo mximo de dos semanas dichas prcticas, indicando una vez corregidas los fallos ms comunes y publicando los programas utilizados en la correccin. Cada estudiante de forma individual debe analizar cules han sido los errores cometidos y solucionarlos para la entrega siguiente. Si es necesario se pedir ayuda al profesor correspondiente. 5. Autoevaluacin: Una vez realizadas todas las actividades previas relacionadas con un tema concreto, el estudiante debe discernir si cree que dicho tema ha sido totalmente entendido. En algunos temas se podr ayudar de los tests de autoevaluacin que hayan sido publicados por los profesores en el campus virtual. En caso de no haber asimilado los contenidos mnimos, el alumno debe incidir en el estudio de los contenidos que crea tener ms flojos, utilizando si lo cree conveniente las tutoras y realizando algunos problemas de ampliacin, bien de los propuestos en las hojas de problemas o bien haciendo uso de la bibliografa.

6. Evaluacin final: Si el resultado de las prcticas propuestas ha sido satisfactorio, el estudiante deber realizar el examen de teora, y una vez aprobado, habr superado la asignatura. De forma opcional se podr hacer trabajos complementarios de forma individual o por parejas, para subir la nota siempre y cuando el trabajo realizado a lo largo del curso se considere satisfactorio.

6. Plan de trabajo de los alumnos: especificacin del tiempo y esfuerzo del aprendizaje
En las siguientes tablas se esquematiza cul va a ser el plan de trabajo de esta asignatura. Se distingue entre horas presenciales dedicadas a la realizacin de actividades en las aulas, donde ell profesorado juega un papel primordial, y horas no presenciales dedicadas al trabajo y esfuerzo personal realizado en la asignatura, de forma autnoma, por los estudiantes.

6.1 Planificacin del programa de Teora


Horas Presenciales ACTIVIDAD Trabajo en aula Tutoras organizadas Actividades complementarias 0 3 Horas No Presenciales Aprendizaje autnomo y colaborativo TOTAL

BLOQUE 1: Unidad 0 Unidad 1 BLOQUE 2: Unidad 2 BLOQUE 3: Unidad 3 Unidad 4 BLOQUE 4: Unidad 5 Preparacin del examen final: Examen final: TOTAL:

1.5 3

0 1

1.5 7

4.5 4.5 6 1.5 1.5 2 24.5

2 2 2 3 1 1

6 6 10 2 15 0

12.5 13.5 19 6.5 16.5 2 78.5

10

42

6.2 Planificacin del programa de Prcticas


Horas Presenciales ACTIVIDAD Unidad 0: Seminario C++ Prctica 1 Prctica 2 Prctica 3 Prcticas en aula 4.5 4.5 6 6 0.5 1 Tutoras organizadas Horas No Presenciales Realizacin de las prcticas fuera del horario de la asignatura 0 5 8 8 4.5 9.5 14.5 15 TOTAL

TOTAL:

21

1.5

21

43.5

6.3 Planificacin (resumen)


Tras realizar la planificacin de la asignatura obtenemos los siguientes resultados: Nmero total de horas presenciales: 59 Nmero total de horas no presenciales: 63 Nmero total de horas: 122

7. Bibliografa y materiales recomendados


7.1 Bibliografa bsica
TEORA o An Introduction to Object-oriented Programming Timothy Budd, 2001. Ed. Addsion Wesley o Thinking in C++. 2nd Edition. Bruce Eckel. Libro electrnico gratuito. http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html PRCTICAS o C++: How to Program. 5 Edicin. Harvey M. Deitel, Paul J. Deitel. 2005. Ed. US Imports & PHIPEs o Aprenda C++ como si estuviera en primero o www.cplusplus.com

7.2 Bibliografa complementaria


TEORA Fundamentals of Object Oriented Design in UML. Mailir PageJones, 2000. Ed. Addison Wesley Requirements Analysis and System Design. Developing Information Systems with UML. L.A. Maciaszek, 2001. Ed. Addison-Wesley Object-oriented Software Construction (Prentice Hall International Series in Computer Science) Bertrand Meyer, 2000. Ed. Prentice Hall The Object Primer 3rd Edition Agile Model Driven Development with UML 2. Scott Ambler. 2004. Ed. Cambridge University Press, ISBN#: 0-521-54018-6 PRCTICAS Simply C++ An Application-Driven Tutorial Approach. 2005. Deitel & Deitel. Programacin en C++: algoritmos, estructuras de datos y objetos. L. Joyanes Aguilar, 2000. Ed. Mc Graw Hill The C++ Primer. 3rd. Edition. S.B. Lippman, 1999. Ed. Addison Wesley.

7.3 Otros recursos


PGINAS WEB DE INTERS
http://se.inf.ethz.ch/touch/TOUCH.pdf. http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html http://www.hibernate.org/

8. Evaluacin de los procesos y resultados de aprendizaje


8.1 Procedimiento de evaluacin
Segn [MS04] el proceso evaluativo se ubica, al menos, en cuatro espacios de aprendizaje: Los contenidos: cuestiones y redes conceptuales Las prcticas: trabajos realizados dentro y fuera del aula durante el desarrollo de los crditos tericos y prcticos La participacin en el trabajo de aula, aprendizaje virtual y tutoras El proyecto o memoria final, porfolio, etc.

Para la evaluacin del alumno en Programacin Orientada a Objetos se sigue un tipo criterial, i.e. una evaluacin que pretende determinar las competencias que posee el estudiante tras el desarrollo del proceso de aprendizaje. En este tipo de evaluacin se recoge informacin mediante un instrumento, prueba, procedimiento o actividad para poder describir e identificar las competencias adquiridas por los estudiantes acerca de un dominio de referencia, descrito en la planificacin docente inicial. As, los criterios de evaluacin deben correlacionarse con los objetivos/competencias y especificar principalmente un dominio conceptual claro, la adquisicin de procedimientos, tcnicas, instrumentos, habilidades y destrezas de ejecucin profesional y acadmica, que concretan el nivel de capacidades personales y profesionales necesarias para el ejercicio profesional.

8.2 Criterios de evaluacin


Teniendo en cuenta estas premisas, los criterios de evaluacin aplicados a Programacin Orientada a Objetos son: Teora: examen final. 40% de la asignatura Prctica: Tres entregas. 60% de la asignatura Primera entrega: 20% Segunda entrega 50% Tercera entrega: 30% Se deben aprobar al menos dos de las tres prcticas para que se haga media Trabajos optativos: HASTA 2 PUNTOS (valorable por el profesor en funcin tanto de la defensa que haga el alumno como de la sntesis, practicidad y relevancia para la asignatura del trabajo) Obligatoria la defensa del trabajo en clase: presentacin de 10-15 minutos Ejemplos de trabajos: Uso de STL en C++ Ejemplo de implementacin de persistencia en C++ Conexin de C++ con Bases de Datos eXtreme Programming Implementacin de la prctica con NCurses

Se debe aprobar la prctica para presentarse a teora. La nota de teora y prctica NO COMPENSAN (se deben aprobar por separado). La realizacin de ejercicios propuestos en clase es til para decidir nota en caso de duda.

La calificacin se har de acuerdo a las siguientes pautas: Sobresaliente: El conocimiento sobre la asignatura es profundo y se extiende ms all del trabajo cubierto por el programa. La comprensin conceptual es sobresaliente. Los problemas relacionados con la asignatura son resueltos con eficiencia y precisin; los procedimientos de resolucin de problemas se ajustan a la naturaleza del problema. Las destrezas experimentales son ejemplares y muestran un completo anlisis y evaluacin de los resultados. La actuacin en las destrezas transferibles es generalmente muy buena. La participacin en las clases y distintas actividades ha sido muy correcta y muy satisfactoria. Notable: El conocimiento sobre POO cubre de manera satisfactoria el programa. La comprensin conceptual es notable. Los problemas relacionados con la asignatura son resueltos con eficiencia y precisin; los procedimientos de resolucin de problemas son generalmente ajustados a la naturaleza del problema. Las destrezas experimentales son generalmente buenas y muestran un anlisis y evaluacin de los resultados aceptables. La actuacin en las destrezas transferibles es generalmente buena. La participacin en las clases y distintas actividades ha sido correcta y bastante satisfactoria. Aprobado: El conocimiento y la comprensin del contenido cubierto en el curso es bsico. Los problemas relacionados con la asignatura son generalmente resueltos de forma adecuada. Las prcticas de laboratorio estndares son usualmente desarrolladas con xito razonable aunque el significado y anlisis de los resultados pueden no ser entendidos completamente. Las destrezas transferibles estn a un nivel bsico. La participacin en las clases y distintas actividades ha sido correcta pero no siempre satisfactoria. Suspenso: El conocimiento y la comprensin del contenido cubierto en el curso no ha sido aceptable. Los problemas relacionados con la asignatura no son, generalmente, resueltos de forma adecuada. Las prcticas de laboratorio estndares no son usualmente desarrolladas satisfactoriamente y el significado y anlisis de los resultados no son entendidos generalmente. Las destrezas transferibles estn a un nivel deficiente. La participacin en las clases y distintas actividades ha sido escasa y deficiente. Queremos hacer notar que para la obtencin de matrcula de honor es necesario obtener un sobresaliente alto y hacer un trabajo complementario de calidad.

9. Anlisis de coherencia de la gua docente


En la siguiente tabla presentamos el anlisis de coherencia de la gua docente de Programacin orientada a Objetos. En dicha tabla se han relacionado los objetivos y competencias con los bloques de contenido, el plan de trabajo propuesto para el alumnado y el sistema y criterio de evaluacin.

COMPETENCIAS ESPECFICAS OBJETIVOS GENERALES

BLOQUES DE CONTENIDOS

Bloque 1 (temas)

Bloque 2 (temas)

Bloque 3 (temas)

Bloque 4 (temas)

Instrumentales (saber)

PLAN DE TRABAJO DE LOS ALUMNOS

PROCEDIMIENTOS Y CRITERIOS DE EVALUACIN

OI1

De CIC1 a CIC110 cCIC1 cCIC2

OI2

De CIC11 a CIC22 cCIC1 cCIC2

3,4

Enseanza presencial (Leccin magistral /Trabajo de aula en grupos/ prcticas de laboratorio). Enseanza no presencial (Aprendizaje online/biblioteca/realizac in de ejercicios y prcticas propuestas). Tutoras individualizadas y organizadas. Enseanza presencial (Leccin magistral /trabajo de aula en grupos/ prcticas de laboratorio). Enseanza no presencial (Aprendizaje online/biblioteca/realizac in de ejercicios y prcticas propuestos). Tutoras individualizadas y organizadas

Procedimientos: Prcticas. Actividades en grupo. Criterios: Grado de comprensin, interpretacin, anlisis y aplicacin de los conceptos relativos a la programacin orientada a objetos. Procedimientos: Prcticas. Actividades en grupo. Criterios: Grado de comprensin, interpretacin, anlisis y aplicacin de los conceptos relativos a la programacin orientada a objetos

OI3

De CIC1 a CIC22 cCIC1 cCIC2

3,4

OI4

De CIC1 a CIC22 cCIC1 cCIC2

3,4

OI6

De CIC1 a CIC22 cCIC1 cCIC2

3,4

cOI6

De CIC1 a CIC21

3,4

Enseanza presencial (Leccin magistral). Enseanza no presencial (realizacin de ejercicios y prcticas propuestos). Tutoras individualizadas. Enseanza presencial (Leccin magistral). Enseanza no presencial (realizacin de ejercicios y prcticas propuestos). Tutoras individualizadas. Enseanza presencial (Leccin magistral). Enseanza no presencial (realizacin de ejercicios y prcticas propuestos). Tutoras individualizadas. Enseanza presencial (Leccin magistral /trabajo de aula en grupos). Enseanza no presencial (Aprendizaje online/biblioteca/realizac in de ejercicios y prcticas propuestos). Tutoras individualizadas y organizadas.

Procedimientos: Prcticas. Criterios: Grado de comprensin conceptual. Procedimientos: Prcticas. Criterios: Grado de comprensin conceptual. Procedimientos: Prcticas. Criterios: Grado de comprensin conceptual. Procedimientos: Prcticas. Actividades en grupo. Trabajo complementario. Criterios: Grado de comprensin, interpretacin, anlisis y aplicacin de los conceptos.

COMPETENCIAS ESPECFICAS OBJETIVOS GENERALES

BLOQUES DE CONTENIDOS

PLAN DE TRABAJO DE LOS ALUMNOS

Bloque 1 (temas)

Bloque 3 (temas)

Bloque 4 (temas)

Bloque 2 (temas)

Instrumentales (saber hacer)

PROCEDIMIENTOS Y CRITERIOS DE EVALUACIN

OI5

CIM1 CIM2 cCIM1 cCIM2 cCIM3

3,4

Enseanza presencial (Leccin magistral). Enseanza no 5 presencial (Aprendizaje online/biblioteca).

cOI1

CIM1 CIM2 cCIM1 cCIM2 cCIM3

3, 4

cOI2

CIT1 cCIT1

3,4

Enseanza presencial (Trabajo de aula en grupos/ prcticas de laboratorio). Enseanza no presencial 5 (Aprendizaje online/realizacin de ejercicios y prcticas propuestos). Tutoras individualizadas y organizadas. Enseanza presencial (prcticas de laboratorio). Enseanza no presencial 5 (Aprendizaje on-line/ realizacin de prcticas propuestos). Tutoras individualizadas y organizadas

Procedimientos: Prcticas. Actividades en grupo. Trabajo complementario. Criterios: Nivel de actuacin en las destrezas transferibles. Procedimientos: Prcticas. Actividades en grupo. Criterios: Grado de destreza experimental., eficiencia y precisin en la resolucin de problemas usando programacin orientada a objetos Procedimientos: Prcticas. Actividades en grupo. Criterios: Grado de destreza experimental.

cOI3

CIL1 cCIL1

3, 4

cOI4

cCIL2

3, 4

cOI5

De CIM1 a CIM2 cCIM3

3, 4

Enseanza presencial (Leccin magistral /trabajo de aula en Procedimientos: grupos). Examen. Enseanza no Prcticas. presencial Actividades en (Aprendizaje ongrupo. 5 line/biblioteca/realizac Criterios: in de ejercicios y Grado de prcticas propuestos). rigurosidad en las Tutoras explicaciones de individualizadas y los procedimientos organizadas. aplicados. Memorias de los trabajos realizados. Procedimientos: Trabajo en grupos. Trabajo complementario. Criterios: Enseanza presencial Grado de (Leccin magistral). conocimiento de Enseanza no 5 presencial los distintos trminos de (Aprendizaje onprogramacin line/biblioteca). orientada a objetos, en castellano y/o valenciano y en ingls. Procedimientos: Trabajo en grupos. Trabajo Enseanza no complementario. Criterios: presencial 5 (Aprendizaje onGrado de comprensin, line/biblioteca). interpretacin, anlisis y aplicacin de los conceptos.

COMPETENCIAS ESPECFICAS OBJETIVOS GENERALES

BLOQUES DE CONTENIDOS

Bloque 1 (temas)

Bloque 2 (temas)

Bloque 3 (temas)

Bloque 4 (temas)

Interpersonales (ser y estar)

PLAN DE TRABAJO DE LOS ALUMNOS

PROCEDIMIENTOS Y CRITERIOS DE EVALUACIN

cOIP1

CIPTC1 cCIPTC1 cCIPTC2

cOIP2

cCIPTR1 cCIPTR2

cOIP3

cCIPTR2

Enseanza presencial (Trabajo de aula en grupos/ prcticas de laboratorio). Enseanza no presencial 3,4 5 (realizacin de ejercicios y prcticas propuestos). Tutoras organizadas. Memorias de los trabajos realizados. Enseanza presencial (Trabajo de aula en grupos/ prcticas de laboratorio). Enseanza no presencial 3, 4 5 (realizacin de ejercicios y prcticas propuestos). Tutoras organizadas. Memorias de los trabajos realizados. Enseanza presencial (Trabajo de aula en grupos/ prcticas de laboratorio). Enseanza no presencial 3,4 5 (realizacin de ejercicios y prcticas propuestos). Tutoras organizadas. Memorias de los trabajos realizados.

Procedimientos: Actividades en grupo. .Criterios: Grado de destreza en trabajos participativos.

Procedimientos: Actividades en grupo. Criterios: Grado de destreza en trabajos participativos.

Procedimientos: Actividades en grupo. Criterios: Grado de destreza en trabajos participativos.

COMPETENCIAS ESPECFICAS OBJETIVOS GENERALES

BLOQUES DE CONTENIDOS

Bloque 1 (temas)

Bloque 2 (temas)

Bloque 3 (temas)

Bloque 4 (temas)

Sistmicas

PLAN DE TRABAJO DE LOS ALUMNOS

PROCEDIMIENTOS Y CRITERIOS DE EVALUACIN

cOS1

cCS1 cCS4 cCS5

3,4

cOS2

cCS2 cCS3

3, 4 5

Enseanza presencial (Leccin magistral /trabajo de Procedimientos: aula en grupos/ Prcticas. prcticas de Actividades en laboratorio). grupo. Enseanza no Trabajo presencial complementario. (Aprendizaje onCriterios: line/biblioteca/realiz Nivel de actuacin acin de ejercicios y en las destrezas prcticas transferibles. propuestas). Tutoras individualizadas y organizadas. Enseanza Procedimientos: presencial (Leccin Actividades en magistral /trabajo de grupo. aula en grupos). Trabajo Enseanza no complementario. presencial Criterios: (Aprendizaje onGrado de anlisis y line/ realizacin de evaluacin de los ejercicios y prcticas problemas propuestas). resueltos con Tutoras programacin individualizadas y orientada a objetos organizadas

cOS3

cCS1 cCS2 cCS4 cCS5

3,4

cOS4

cCS2

3, 4 5

Enseanza presencial (Leccin magistral /trabajo de aula en grupos/ Procedimientos: prcticas de Prcticas. laboratorio). Trabajo Enseanza no complementario. presencial Criterios: (Aprendizaje onNivel de actuacin line/biblioteca/realiz en las destrezas acin de ejercicios y transferibles. prcticas propuestas). Tutoras individualizadas y organizadas. Enseanza Procedimientos: presencial (Leccin Prcticas. magistral /trabajo de Actividades en aula en grupos). grupo. Enseanza no Trabajo presencial complementario. (Aprendizaje onCriterios: line/ realizacin de Grado de anlisis y ejercicios y prcticas evaluacin de los propuestas). problemas Tutoras resueltos con individualizadas y programacin organizadas orientada a objetos

Borrador de Anexos para la memoria final de la red.


[ACM2001] Computing Curricula 2001 Project. http://www.acm.org/education/curricula.html [ACM2004] Computing Curricula 2004 Project. http://www.acm.org/education/curricula.html [CC2001] Curriculum Guidelines for Undergraduate Degree Programs in Computer Science. Volumen de Computing Curricula Series. http://www.acm.org/education/curricula.html [CE2004] Curriculum Guidelines for Undergraduate Degree Programs in Computer Engineering. Volumen de Computing Curricula Series. http://www.acm.org/education/curricula.html [EICE04] Libro Blanco EICE v1.1.4. [IS2002] Curriculum Guidelines for Undergraduate Degree Programs in Information Systems. Volumen de Computing Curricula Series. http://www.acm.org/education/curricula.html [IT2005] Draft of Information Technology 2005. http://www.acm.org/education/curricula.html [MEYER97] Object-Oriented Software Construction, Second Edition. Prentice Hall Professional Technical Reference. 1997. ISBN 0-13-629155-4 [MS04] Redes para Investigar el Currculo. Diseo del Aprendizaje en el EEES. M.A. Martnez & N. Sauleda Pars. 2004 [SE2004] Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering. Volumen de Computing Curricula Series. http://www.acm.org/education/curricula.html

Anexo A: Clasificacin de las asignaturas del Plan de estudios vigente en la Universidad de Alicante segn subcategoras del Libro Blanco (Contenidos Especficos de la Ingeniera)
P: Programacin IS: Ingeniera del Software, Sistemas de Informacin y Sistemas Inteligentes SO: Sistemas operativos, Sistemas Distribuidos y Redes IC: Ingeniera de Computadores
Curso : 1

Tipo: TRO NCAL


Asi gn at ura Cr di to s re a

LGEBRA (9168) CLCULO INFINITESIMAL (9169) ESTADSTICA (9162) FUNDAMENTOS DE PROGRAMACIN I (9171) FUNDAMENTOS DE PROGRAMACIN II (9172) FUNDAMENTOS FSICOS DE LA INFORMTICA (9167) INFORMTICA BSICA (9165) MATEMTICA DISCRETA (9170)

6 9 6 6 6 10,5 12 6

P P IC -

Tipo: OBL IGAT ORI A


Asi gn at ura Cr di to s re a

LGICA COMPUTACIONAL (9188)

Curso : 2

Tipo: TRO NCAL


Asi gn at ura Cr di to s re a

BASES DE DATOS I (9164) COMPUTABILIDAD (9177) ESTRUCTURAS DE COMPUTADORES (9166) LENGUAJES,GRAMTICAS Y AUTMATAS (9176) PROGRAMACIN Y ESTRUCTURAS DE DATOS (9163) SISTEMAS OPERATIVOS I (9174)

9 4,5 6 4,5 9 4,5

IS P IC P P SO

Tipo: OBL IGAT ORI A


Asi gn at ura Cr di to s re a

HERRAMIENTAS DE PROGRAMACIN (9452) LENGUAJES Y PARADIGMAS DE PROGRAMACIN (9189) PROGRAMACIN ORIENTADA A OBJETOS (9190)

6 6 4,5

P P P

Curso : 3

Tipo: TRO NCAL


Asi gn at ura Cr di to s re a

DISEO Y ANLISIS DE ALGORITMOS (9173) SISTEMAS OPERATIVOS II (9175)

6 4,5

P SO

Tipo: OBL IGAT ORI A


Asi gn at ura Cr di to s re a

BASES DE DATOS II (9192) DISEO Y PROGRAMACIN AVANZADA DE APLICACIONES (9193) FUNDAMENTOS DE ARQUITECTURAS DE COMPUTADORES (9194) GRFICOS POR COMPUTADOR (9191) SISTEMAS DE INFORMACIN EN LA EMPRESA I (9195) SISTEMAS DE INFORMACIN EN LA EMPRESA II (9196)

6 4,5 6 4,5 6 6

IS IS IC P -

BASES DE DATOS II (9192) DISEO Y PROGRAMACIN AVANZADA DE APLICACIONES (9193) FUNDAMENTOS DE ARQUITECTURAS DE COMPUTADORES (9194) GRFICOS POR COMPUTADOR (9191) SISTEMAS DE INFORMACIN EN LA EMPRESA I (9195) SISTEMAS DE INFORMACIN EN LA EMPRESA II (9196)

6 4,5 6 4,5 6 6

IS IS IC P -

Curso : 4

Tipo: TRO NCAL


Asi gn at ura Cr di to s re a

ANLISIS Y ESPECIFICACIN DE SISTEMAS DE INFORMACIN (9179) ARQUITECTURA E INGENIERA DE COMPUTADORES (9178) FUNDAMENTOS DE INTELIGENCIA ARTIFICIAL (9182) INGENIERA DEL SOFTWARE I (9180) PROCESADORES DE LENGUAJE (9184) REDES (9185) SISTEMAS DE TRANSPORTE DE DATOS (9186) TCNICAS DE INTELIGENCIA ARTIFICIAL (9183)

6 12 4,5 6 9 7,5 6 4,5

IS IC IS IS P SO SO IS

Tipo: OBL IGAT ORI A


Asi gn at ura Cr di to s re a

ALGORITMIA AVANZADA (9197)

4,5

Curso : 5

Tipo: TRO NCAL


Asi gn at ura Cr di to s re a

INGENIERA DEL SOFTWARE II (9181) SISTEMAS INFORMTICOS (9187)

6 15

IS -

Tipo: OBL IGAT ORI A


Asi gn at ura Cr di to s re a

SISTEMAS OPERATIVOS EN RED (9198)

SO

Anexo B: Estimacin de crditos ECTS para POO


Tal y como podemos ver en la Tabla 1, en el plan de estudios actual, conducente a la obtencin del ttulo de Ingeniero en Informtica por la Universidad de Alicante, la carga docente acumulada asignable a los Contenidos Formativos Comunes suma un total de 255 crditos (de los 364,5 que componen la titulacin), divididos de la siguiente forma: DIVISIN CRDITOS ACTUALES SEGN CATEGORAS DE LOS CFC FUNDAMENTOS CIENTFICOS CONTENIDOS GENERALES ING PROYECTO CONTENIDOS ESPECFICOS ING TOTAL

Crditos 43,5 12 15 184,5 255

%T/O 17,06% 4,71% 5,88% 72,35% 100%

Dentro de los Contenidos Especficos, tenemos el siguiente desglose en las cuatro grandes subcategoras: Programacin Ingeniera Sw, SI y Stmas Inteligentes SO, SD y Redes Ingeniera Computadores 70,5 46,5 31,5 36 38,21% 25,20% 17,07% 19,51%

Si suponemos que los porcentajes de la tabla anterior se van a mantener en la nueva distribucin de crditos ECTS por asignatura, y teniendo en cuenta el clculo de 140,4 ECTS (39% del total de 240 crditos) que es el mximo recomendado por el libro blanco (tomando mnimos para el resto de categoras) para el conjunto de contenidos especficos, obtenemos los siguientes crditos para cada subcategora: CONTENIDOS ESPECFICOS ING Programacin Ingeniera Sw, SI y Stmas Inteligentes SO, SD y Redes Ingeniera Computadores 39,00% 38,21% 25,20% 17,07% 19,51% 140,4 53,65 35,39 23,97 27,40

Si ahora adaptamos los crditos de las asignaturas incluidas en la subcategora de Programacin a esos 53,65 ECTS, mediante una sencilla regla de tres nos quedara: ASIGNATURA
FUNDAMENTOS PROGRAMACIN I FUNDAMENTOS PROGRAMACIN II HERRAMIENTAS DE PROGRAMACIN DISEO Y ANLISIS DE ALGORITMOS ALGORITMIA AVANZADA COMPUTABILIDAD LENGUAJES, GRAMTICAS Y AUTMATAS PROCESADORES DEL LENGUAJE LENGUAJES Y PARADIGMAS DE PROGRAMACIN PROGRAMACIN ORIENTADA A OBJETOS

Cred Act

ECTS

6 6 4,5 6 4,5 4,5 4,5 9 4,5 4,5

4,77 4,77 3,58 4,77 3,58 3,58 3,58 7,15 3,58 3,58

DISEO Y PROGRAMACIN AVANZADA DE APLICACIONES PROGRAMACIN Y ESTRUCTURAS DE DATOS

4,5 9 67,5

3,58 7,15 53,65

TOTAL

Este clculo proporciona una asignacin de 3,58 crditos ETCS a la asignatura de Programacin Orientada a Objetos (unas 108 horas), lo que es ligeramente inferior a las 122 horas calculadas en la seccin 6. An ms, el plan de estudios actual se basa en un decreto que no est actualizado, y por tanto no recoge la importancia que los curricula ms actuales reconocen al paradigma Orientado a Objetos. Es por ello que consideramos necesario, con el fin de reconocer el esfuerzo que el alumno debe realizar para la asimilacin de esta materia, y con el fin de impartirla con la profundidad y rigor que los Curricula Internacionales sugieren, aumentar significativamente la carga docente de esta asignatura en los nuevos planes de estudio, y asignarle un mnimo de 6 crditos ECTS (es decir, entre 150 y 180 horas de trabajo, si asumimos que cada crdito ECTS equivale a 25-30 horas). Adems, debemos tener en cuenta que la carga lectiva actual de la titulacin de Ingeniera Informtica en la UA es claramente excesiva (364,5 crditos frente a los poco ms de 300 de otras universidades, i.e. un 21% superior). An ms, con la conversin realizada en este trabajo hemos encajado la docencia impartida actualmente en 5 aos en los como mucho cuatro aos (tres de asignaturas ms uno de trabajos tutorizados) de la nueva titulacin. Una alternativa (que no hemos aplicado por desconocer cul va a ser la poltica a aplicar en los ttulos de Mster) sera haber considerado no 240 ECTS (que pensamos que ser lo que se convalide a los Ingenieros Informticos) sino 300 (grado+mster) para aplicar los porcentajes. Creemos que es absolutamente necesaria una reflexin profunda en el seno de la universidad para discernir cules son en verdad contenidos fundamentales y cules se podran trasladar a un futuro ttulo de Master, para de este modo no sobrecargar al alumno con contenidos. En esta futura reorganizacin de asignaturas, la Programacin Orientada a Objetos es claramente un contenido del ttulo de grado, ya que su temario supone la primera aproximacin especfica a este paradigma de programacin.