Professional Documents
Culture Documents
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.
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.
5.
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.
8.
9.
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
Algoritmia, computabilidad
Lenguajes de programacin
PROGRAMACIN ORIENTADA A OBJETOS DISEO Y PROGRAMACIN AVANZADA DE APLICACIONES PROGRAMACIN Y ESTRUCTURAS DE DATOS
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)
HP (2/ 1/O)
C (2/ 2/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.
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
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.
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
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.
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.
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
2 2 2 3 1 1
6 6 10 2 15 0
10
42
TOTAL:
21
1.5
21
43.5
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.
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.
BLOQUES DE CONTENIDOS
Bloque 1 (temas)
Bloque 2 (temas)
Bloque 3 (temas)
Bloque 4 (temas)
Instrumentales (saber)
OI1
OI2
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
3,4
OI4
3,4
OI6
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.
BLOQUES DE CONTENIDOS
Bloque 1 (temas)
Bloque 3 (temas)
Bloque 4 (temas)
Bloque 2 (temas)
OI5
3,4
cOI1
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
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.
BLOQUES DE CONTENIDOS
Bloque 1 (temas)
Bloque 2 (temas)
Bloque 3 (temas)
Bloque 4 (temas)
cOIP1
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.
BLOQUES DE CONTENIDOS
Bloque 1 (temas)
Bloque 2 (temas)
Bloque 3 (temas)
Bloque 4 (temas)
Sistmicas
cOS1
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
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
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
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 -
Curso : 2
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)
IS P IC P P SO
HERRAMIENTAS DE PROGRAMACIN (9452) LENGUAJES Y PARADIGMAS DE PROGRAMACIN (9189) PROGRAMACIN ORIENTADA A OBJETOS (9190)
6 6 4,5
P P P
Curso : 3
6 4,5
P SO
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
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)
IS IC IS IS P SO SO IS
4,5
Curso : 5
6 15
IS -
SO
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
4,77 4,77 3,58 4,77 3,58 3,58 3,58 7,15 3,58 3,58
4,5 9 67,5
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.