Está en la página 1de 576

Resumen ejecutivo Este documento representa el informe final de la nueva malla curricular 2010 del Programa Profesional de Ciencia

de la Computacinde la Universidad Catlica San Pablo (http://www.ucsp.edu.pe ) en la ciudad de Arequipa-Per. En la actualidad esta carrera est siendo orientada a Ciencia de la Computacin, el Bachillerato ya est con esta denominacin y el ttulo profesional ya fue cambiado a Ciencia de la Computacin en Consejo Universitario de fecha 14 de Octubre de 2010. Todo el contenido del documento est basado en el estandar internacional denominado Computing Curricula0.2 en el rea especfica de Ciencia de la Computacin. Este documento es el resultado de un trabajo conjunto de la Association for Computing Machinery (ACM) y la Sociedad de Computacin de IEEE (IEEE-CS) y puede ser accesado a travs de la direccin http://www.acm.org/education en sus versions CS2001, CS2008 y CS2013. Considerando que existen peculiaridades menores al aplicar esta propuesta internacional a nuestros paises, el modelo de Computing Curricula fue utilizado para proponer el documento base de la presente malla. La computacin hoy en da presenta 5 perfiles de formacin profesional claramente definidos:

Ciencia de la Computacin (Computer Science - CS), Ingeniera de Computacin (Computer Engineering - CE), Ingeniera de Software (Software Engineering - SE), Sistemas de Informacin (Information Systems - IS) y Tecnologa de la Informacin (Information Technology - IT).

Los pilares fundamentales que consideramos en esta propuesta curricular son:


Una slida formacin profesional en el rea de Ciencia de la Computacin, Preparacin para la generacin de empresas de base tecnolgica, Una slida formacin tica y proyeccin a la sociedad

Estos pilares redundarn en la formacin de profesionales que se puedan desempear en cualquier parte del mundo y que ayuden de forma clara al desarrollo de la Industria de Software de nuestro pas. Un pilar que merece especial consideracin en el caso de la Universidad Catlica San Pablo es el aspecto de valores humanos, bsicos y cristianos debido a que forman parte fundamental de los lineamientos bsicos de la existencia de la institucin. El resto de este documento est organizado de la siguiente forma: el Captulo 1, define y explica el campo de accin de la Ciencia de la Computacin (Informtica), adems se hace una muy breve explicacin de las distintas carreras del rea de computacin propuestas por IEEE-CS y ACM.

El Captulo 2, muestra los 14 grupos que forman el centro del conocimiento de la Ciencia de la Computacin, indicando los tpicos y objetivos cubiertos por cada uno de los temas, pertenecientes a estos grupos. El Captulo 3 contiene la distribucin por semestres, por reas, por niveles, visin grfica de la malla curricular, comparacin con las diversas propuestas internacionales, distribucin de tpicos por curso as como la distribucin de habilidades por materia. El Captulo 4 contiene informaci[on detallada para cada uno de los cursos incluyendo las habilidades con las cuales contribuye, bibliografa por cada unidad as como el nmero de horas mnimas por cada unidad. En el Captulo 5 se presentan las tablas de equivalencias con otros planes curriculares. Finalmente, en el Captulo 6 se presenta una sugerencia de los laboratorios requeridos para el dictado de clases las mismas que podran variar de acuerdo al volumen de alumnos que se tenga. ndice General

Resumen ejecutivo ndice de Figuras ndice de Tablas Agradecimientos Abreviaturas 1. Introduccin o 1.1 Definiciones bsicas o 1.2 Perfil Profesional o 1.3 Campo y mercado ocupacional o 1.4 Importancia de la carrera en la sociedad o 1.5 Misin o 1.6 Visin o 1.7 Perfil de competencias profesionales (Resultados de la carrera) o 1.8 Naturaleza de los objetivos de aprendizaje o 1.9 Grados y Ttulos o 1.10 Recursos para dictado de clases 2. Cuerpo del conocimiento de Ciencia de la Computacin o 2.1 DS. Matemticas Discretas (43 horas como mnimo) 2.1.1 DS/Funciones, Relaciones y Conjuntos. (6 horas) 2.1.2 DS/Lgica Bsica. (10 horas) 2.1.3 DS/Tcnicas de Prueba. (12 horas) 2.1.4 DS/Conceptos Bsicos de Conteo. (5 horas) 2.1.5 DS/Grfos y rboles. (4 horas) 2.1.6 DS/Probabilidad Discreta. (6 horas) o 2.2 PF. Fundamentos de Programacin (47 horas como mnimo) 2.2.1 PF/Construcciones fundamentales. (9 horas) 2.2.2 PF/Algoritmos y Resolucin de Problemas. (6 horas) 2.2.3 PF/Estructuras de Datos. (10 horas)
2

2.2.4 PF/Recursividad. (4 horas) 2.2.5 PF/Programacin Orientada a Eventos. (4 horas) 2.2.6 PF/Orientacin a Objetos. (8 horas) 2.2.7 PF/Fundamentos de seguridad de la Informacin. (4 horas) 2.2.8 PF/Programacin segura. (2 horas) 2.3 AL. Algoritmos y Complejidad (31 horas como mnimo) 2.3.1 AL/Anlisis Bsico de Algoritmos. (4 horas) 2.3.2 AL/Estrategias Algortmicas. (6 horas) 2.3.3 AL/Algoritmos Fundamentales. (12 horas) 2.3.4 AL/Algoritmos Distribuidos. (3 horas) 2.3.5 AL/Computabilidad Bsica. (6 horas) 2.3.6 AL/Clases de Complejidad P y NP. 2.3.7 AL/Teora de Autmatas. 2.3.8 AL/Anlisis Avanzado de Algoritmos. 2.3.9 AL/Algoritmos Criptogrficos. 2.3.10 AL/Algoritmos Geomtricos. 2.3.11 AL/Algoritmos Paralelos. 2.4 AR. Arquitectura y Organizacin (36 horas como mnimo) 2.4.1 AR/Lgica Digital y Representacin de Datos. (7 horas) 2.4.2 AR/Arquitectura y Organizacin de Computadores. (9 horas) 2.4.3 AR/Interfases y Estrategias de I/O. (3 horas) 2.4.4 AR/Arquitectura de Memoria. (5 horas) 2.4.5 AR/Organizacin Funcional. (6 horas) 2.4.6 AR/Multiprocesamiento. (6 horas) 2.4.7 AR/Mejoras de Desempeo. 2.4.8 AR/Arquitecturas Distribuidas. 2.4.9 AR/Dispositivos. 2.4.10 AR/Tendencias en Computacin. 2.5 OS. Sistemas Operativos (16 horas como mnimo) 2.5.1 OS/Visin General de los Sistemas Operativos. (2 horas) 2.5.2 OS/Principios de los Sistemas Operativos. (2 horas) 2.5.3 OS/Concurrencia. (6 horas) 2.5.4 OS/Planeamiento y Despacho. (3 horas) 2.5.5 OS/Administracin de Memoria. (3 horas) 2.5.6 OS/Administracin de Dispositivos. 2.5.7 OS/Seguridad y Proteccin. 2.5.8 OS/Sistema de Archivos. 2.5.9 OS/Sistemas Empotrados y de Tiempo Real. 2.5.10 OS/Tolerancia a Fallas. 2.5.11 OS/Evaluacin del Desempeo de Sistemas. 2.5.12 OS/Scripting. 2.5.13 OS/Anlisis Forense Digital. 2.5.14 OS/Modelos de seguridad. 2.6 NC. Computacin Centrada en Redes (18 horas como mnimo) 2.6.1 NC/Introduccin. (2 horas) 2.6.2 NC/Comunicacin de Redes. (7 horas)

2.6.3 NC/Seguridad de Red. (6 horas) 2.6.4 NC/Organizacin de la Web. (3 horas) 2.6.5 NC/Aplicaciones en redes. 2.6.6 NC/Administracin de Redes. 2.6.7 NC/Compresin y Descompresin. 2.6.8 NC/Tecnologa de Datos Multimedia. 2.6.9 NC/Computacin Mvil e Inalmbrica. 2.7 PL. Lenguajes de Programacin (21 horas como mnimo) 2.7.1 PL/Visin General de los Lenguajes de Programacin. (2 horas) 2.7.2 PL/Mquinas Virtuales. (1 hora) 2.7.3 PL/Introduccin a la Traduccin de Lenguajes. (2 horas) 2.7.4 PL/Declaracin y Tipos. (3 horas) 2.7.5 PL/Mecanismos de Abstraccin. (3 horas) 2.7.6 PL/Programacin Orientada a Objetos. (10 horas) 2.7.7 PL/Programacin Funcional. 2.7.8 PL/Sistemas de Traduccin del Lenguaje. 2.7.9 PL/Tipos. 2.7.10 PL/Semntica de los Lenguajes de Programacin. 2.7.11 PL/Diseo de Lenguajes de Programacin. 2.8 HC. Interaccin Humano-Computador (8 horas como mnimo) 2.8.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) 2.8.2 HC/Construccin de Interfaces Grficas de Usuario. (2 horas) 2.8.3 HC/Evaluacin de Software Centrado en el usuario. 2.8.4 HC/Desarrollo de Software Centrado en el Humano. 2.8.5 HC/Diseo de la Interfaz de Usuario. 2.8.6 HC/Programacin de Interfaces Grficas de Usuario. 2.8.7 HC/Aspectos de Sistemas de Multimedia y Multimodales. 2.8.8 HC/Aspectos de Colaboracin y Comunicacin. 2.8.9 Diseo de interaccin para nuevos ambientes. 2.8.10 Factores humanos y seguridad. 2.9 GV. Computacin Grfica y Visual (3 horas como mnimo) 2.9.1 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (2 horas) 2.9.2 GV/Sistemas Grficos. (1 hora) 2.9.3 GV/Comunicacin Grfica. 2.9.4 GV/Modelamiento Geomtrico. 2.9.5 GV/Rendering Bsico. 2.9.6 GV/Rendering Avanzado. 2.9.7 GV/Tcnicas Avanzadas. 2.9.8 GV/Animacin por Computador. 2.9.9 GV/Visualizacin. 2.9.10 GV/Realidad Virtual. 2.9.11 GV/Visin Computacional. 2.9.12 GV/Geometra Computacional.

2.9.13 GV/Programacin de motores de juegos. 2.10 IS. Sistemas Inteligentes (10 horas como mnimo) 2.10.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (1 hora) 2.10.2 IS/Bsqueda y Satisfaccin de la Restriccin. (5 horas) 2.10.3 IS/Razonamiento basado en conocimiento. (4 horas) 2.10.4 IS/Bsqueda Avanzada. 2.10.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. 2.10.6 IS/Agentes. 2.10.7 IS/Procesamiento de Lenguaje Natural. 2.10.8 IS/Aprendizaje de Mquina. 2.10.9 IS/Sistemas de Planeamiento. 2.10.10 IS/Robtica. 2.10.11 IS/Percepcin. 2.11 IM. Administracin de Informacin (11 horas como mnimo) 2.11.1 IM/Modelos de Informacin. (4 horas) 2.11.2 IM/Sistemas de Base de Datos. (3 horas) 2.11.3 IM/Modelamiento de Datos. (4 horas) 2.11.4 IM/Indexacin. 2.11.5 IM/Base de Datos Relacionales. 2.11.6 IM/Lenguajes de Consultas de Base de Datos. 2.11.7 IM/Diseo de Bases de Datos Relacionales. 2.11.8 IM/Procesamiento de Transacciones. 2.11.9 IM/Bases de Datos Distribuidas. 2.11.10 IM/Diseo Fsico de Bases de Datos. 2.11.11 IM/Minera de Datos. 2.11.12 IM/Almacenamiento y Recuperacin de Informacin. 2.11.13 IM/Hipermedia. 2.11.14 IM/Sistemas Multimedia. 2.11.15 IM/Libreras Digitales. 2.12 SP. Asuntos Sociales y Profesionales (16 horas como mnimo) 2.12.1 SP/Historia de la Computacin. (1 hora) 2.12.2 SP/Contexto Social de la Computacin. (3 horas) 2.12.3 SP/Herramientas Analticas. (2 horas) 2.12.4 SP/tica Profesional. (3 horas) 2.12.5 SP/Riesgos. (2 horas) 2.12.6 SP/Operaciones de seguridad. 2.12.7 SP/Propiedad Intelectual. (3 horas) 2.12.8 SP/Privacidad y Libertades Civiles. (2 horas) 2.12.9 SP/Crimen Informtico. 2.12.10 SP/Economa en Computacin. 2.12.11 SP/Estructuras de Trabajo Filosficas. 2.13 SE. Ingeniera de Software (29 horas como mnimo) 2.13.1 SE/Diseo de Software. (8 horas) 2.13.2 SE/Usando APIs. (3 horas) 2.13.3 SE/Herramientas y Entornos de Software. (3 horas)

2.13.4 SE/Procesos de Software. (2 horas) 2.13.5 SE/Especificacin de Requerimientos. (4 horas) 2.13.6 SE/Validacin y verificacin de software. (3 horas) 2.13.7 SE/Evolucin del Software. (3 horas) 2.13.8 SE/Administracin de Proyectos de Software. (3 horas) 2.13.9 SE/Computacin Basada en Componentes. 2.13.10 SE/Mtodos Formales. 2.13.11 SE/Confiabilidad del Software. 2.13.12 SE/Desarrollo de Sistemas Especializados. 2.13.13 SE/Evaluacin de riesgos. 2.13.14 SE/Mejorando la programacin: robustez y seguridad. 2.13.15 CN. Ciencia Computacional (Sin mnimo de horas)) 2.13.16 CN/Modelamiento y Simulacin. 2.13.17 CN/Investigacin de Operaciones. 2.13.18 CN/Computacin Paralela. 3. Malla curricular 2010 o 3.1 Clasificacin de los cursos por niveles o 3.2 Codificacin de los cursos o 3.3 Constitucin del Plan de Estudios o 3.4 Requisitos de cursos o 3.5 Visin grfica de la Malla curricular o 3.6 Compatibilidad de la carrera con relacin a estandares internacionales o 3.7 Distribucin de tpicos por curso o 3.8 Resultados esperados distribudos por curso 4. Contenido detallado por curso o 4.1 CS101F. Introduccin a la Programacin (Obligatorio) 4.1.1 Justificacin 4.1.2 Objetivos Generales 4.1.3 Contribucin a los resultados 4.1.4 Unidades o 4.2 CS105. Estructuras Discretas I (Obligatorio) 4.2.1 Justificacin 4.2.2 Objetivos Generales 4.2.3 Contribucin a los resultados 4.2.4 Unidades o 4.3 CB101. lgebra y Geometra (Obligatorio) 4.3.1 Justificacin 4.3.2 Objetivos Generales 4.3.3 Contribucin a los resultados 4.3.4 Unidades o 4.4 FG103. Introduccin a la Vida Universitaria (Obligatorio) 4.4.1 Justificacin 4.4.2 Objetivos Generales 4.4.3 Contribucin a los resultados 4.4.4 Unidades o 4.5 FG102. Metodologa del Estudio (Obligatorio)

4.5.1 Justificacin 4.5.2 Objetivos Generales 4.5.3 Contribucin a los resultados 4.5.4 Unidades 4.6 FG101. Comunicacin (Obligatorio) 4.6.1 Justificacin 4.6.2 Objetivos Generales 4.6.3 Contribucin a los resultados 4.6.4 Unidades 4.7 CS106. Estructuras Discretas II (Obligatorio) 4.7.1 Justificacin 4.7.2 Objetivos Generales 4.7.3 Contribucin a los resultados 4.7.4 Unidades 4.8 CS101O. Introduccin a la Programacin Orientada a Objetos (Obligatorio) 4.8.1 Justificacin 4.8.2 Objetivos Generales 4.8.3 Contribucin a los resultados 4.8.4 Unidades 4.9 CS100. Introduccin a la Ciencia de la Computacin (Obligatorio) 4.9.1 Justificacin 4.9.2 Objetivos Generales 4.9.3 Contribucin a los resultados 4.9.4 Unidades 4.10 CB102. Anlisis Matemtico I (Obligatorio) 4.10.1 Justificacin 4.10.2 Objetivos Generales 4.10.3 Contribucin a los resultados 4.10.4 Unidades 4.11 FG105. Apreciacin de la Msica (Electivo) 4.11.1 Justificacin 4.11.2 Objetivos Generales 4.11.3 Contribucin a los resultados 4.11.4 Unidades 4.12 FG106. Teatro (Electivo) 4.12.1 Justificacin 4.12.2 Objetivos Generales 4.12.3 Contribucin a los resultados 4.12.4 Unidades 4.13 FG104. Introduccin a la Filosofa (Obligatorio) 4.13.1 Justificacin 4.13.2 Objetivos Generales 4.13.3 Contribucin a los resultados 4.13.4 Unidades 4.14 FG112. Matrimonio y Familia (Electivo) 4.14.1 Justificacin

4.14.2 Objetivos Generales 4.14.3 Contribucin a los resultados 4.14.4 Unidades 4.15 CS107. lgebra Abstracta (Obligatorio) 4.15.1 Justificacin 4.15.2 Objetivos Generales 4.15.3 Contribucin a los resultados 4.15.4 Unidades 4.16 CS220T. Arquitectura de Computadores (Obligatorio) 4.16.1 Justificacin 4.16.2 Objetivos Generales 4.16.3 Contribucin a los resultados 4.16.4 Unidades 4.17 CS130. Introduccin a Internet (Obligatorio) 4.17.1 Justificacin 4.17.2 Objetivos Generales 4.17.3 Contribucin a los resultados 4.17.4 Unidades 4.18 CS102O. Objetos y Abstraccin de Datos (Obligatorio) 4.18.1 Justificacin 4.18.2 Objetivos Generales 4.18.3 Contribucin a los resultados 4.18.4 Unidades 4.19 CB103. Anlisis Matemtico II (Obligatorio) 4.19.1 Justificacin 4.19.2 Objetivos Generales 4.19.3 Contribucin a los resultados 4.19.4 Unidades 4.20 FG203. Oratoria y Expresin Personal (Electivo) 4.20.1 Justificacin 4.20.2 Objetivos Generales 4.20.3 Contribucin a los resultados 4.20.4 Unidades 4.21 FG202. Apreciacin Literaria (Electivo) 4.21.1 Justificacin 4.21.2 Objetivos Generales 4.21.3 Contribucin a los resultados 4.21.4 Unidades 4.22 FG201. Artes Plsticas (Electivo) 4.22.1 Justificacin 4.22.2 Objetivos Generales 4.22.3 Contribucin a los resultados 4.22.4 Unidades 4.23 FG107. Fundamentos Antropolgicos de la Ciencia (Obligatorio) 4.23.1 Justificacin 4.23.2 Objetivos Generales 4.23.3 Contribucin a los resultados

4.23.4 Unidades 4.24 CS211T. Teora de la Computacin (Obligatorio) 4.24.1 Justificacin 4.24.2 Objetivos Generales 4.24.3 Contribucin a los resultados 4.24.4 Unidades 4.25 CS270T. Bases de Datos I (Obligatorio) 4.25.1 Justificacin 4.25.2 Objetivos Generales 4.25.3 Contribucin a los resultados 4.25.4 Unidades 4.26 CS103O. Algoritmos y Estructuras de Datos (Obligatorio) 4.26.1 Justificacin 4.26.2 Objetivos Generales 4.26.3 Contribucin a los resultados 4.26.4 Unidades 4.27 CB201. Anlisis Matemtico III (Obligatorio) 4.27.1 Justificacin 4.27.2 Objetivos Generales 4.27.3 Contribucin a los resultados 4.27.4 Unidades 4.28 CB203. Estadstica y Probabilidades (Obligatorio) 4.28.1 Justificacin 4.28.2 Objetivos Generales 4.28.3 Contribucin a los resultados 4.28.4 Unidades 4.29 CS210T. Anlisis y Diseo de Algoritmos (Obligatorio) 4.29.1 Justificacin 4.29.2 Objetivos Generales 4.29.3 Contribucin a los resultados 4.29.4 Unidades 4.30 CS290T. Ingeniera de Software I (Obligatorio) 4.30.1 Justificacin 4.30.2 Objetivos Generales 4.30.3 Contribucin a los resultados 4.30.4 Unidades 4.31 CS271T. Bases de Datos II (Obligatorio) 4.31.1 Justificacin 4.31.2 Objetivos Generales 4.31.3 Contribucin a los resultados 4.31.4 Unidades 4.32 CB111. Fsica Computacional (Obligatorio) 4.32.1 Justificacin 4.32.2 Objetivos Generales 4.32.3 Contribucin a los resultados 4.32.4 Unidades 4.33 CB306. Anlisis Numrico (Obligatorio)

4.33.1 Justificacin 4.33.2 Objetivos Generales 4.33.3 Contribucin a los resultados 4.33.4 Unidades 4.34 FG206. Sociologa (Electivo) 4.34.1 Justificacin 4.34.2 Objetivos Generales 4.34.3 Contribucin a los resultados 4.34.4 Unidades 4.35 FG210. tica (Obligatorio) 4.35.1 Justificacin 4.35.2 Objetivos Generales 4.35.3 Contribucin a los resultados 4.35.4 Unidades 4.36 FG209. Psicologa (Electivo) 4.36.1 Justificacin 4.36.2 Objetivos Generales 4.36.3 Contribucin a los resultados 4.36.4 Unidades 4.37 CS225T. Sistemas Operativos (Obligatorio) 4.37.1 Justificacin 4.37.2 Objetivos Generales 4.37.3 Contribucin a los resultados 4.37.4 Unidades 4.38 CS260. Lgica Computacional (Obligatorio) 4.38.1 Justificacin 4.38.2 Objetivos Generales 4.38.3 Contribucin a los resultados 4.38.4 Unidades 4.39 CS390. Ingeniera de Software II (Obligatorio) 4.39.1 Justificacin 4.39.2 Objetivos Generales 4.39.3 Contribucin a los resultados 4.39.4 Unidades 4.40 CS315. Estructuras de Datos Avanzadas (Obligatorio) 4.40.1 Justificacin 4.40.2 Objetivos Generales 4.40.3 Contribucin a los resultados 4.40.4 Unidades 4.41 CB307. Matemtica aplicada a la computacin (Obligatorio) 4.41.1 Justificacin 4.41.2 Objetivos Generales 4.41.3 Contribucin a los resultados 4.41.4 Unidades 4.42 FG204. Teologa I (Obligatorio) 4.42.1 Justificacin 4.42.2 Objetivos Generales

10

4.42.3 Contribucin a los resultados 4.42.4 Unidades 4.43 CS250W. Interaccin Humano Computador (Obligatorio) 4.43.1 Justificacin 4.43.2 Objetivos Generales 4.43.3 Contribucin a los resultados 4.43.4 Unidades 4.44 CS401. Proyecto I (Obligatorio) 4.44.1 Justificacin 4.44.2 Objetivos Generales 4.44.3 Contribucin a los resultados 4.44.4 Unidades 4.45 CS261T. Inteligencia Artificial (Obligatorio) 4.45.1 Justificacin 4.45.2 Objetivos Generales 4.45.3 Contribucin a los resultados 4.45.4 Unidades 4.46 CS336. Seguridad en Computacin (Obligatorio) 4.46.1 Justificacin 4.46.2 Objetivos Generales 4.46.3 Contribucin a los resultados 4.46.4 Unidades 4.47 CS314. Algoritmos Paralelos (Obligatorio) 4.47.1 Justificacin 4.47.2 Objetivos Generales 4.47.3 Contribucin a los resultados 4.47.4 Unidades 4.48 CS343. Lenguajes de Programacin (Obligatorio) 4.48.1 Justificacin 4.48.2 Objetivos Generales 4.48.3 Contribucin a los resultados 4.48.4 Unidades 4.49 FG204A. Teologa II (Obligatorio) 4.49.1 Justificacin 4.49.2 Objetivos Generales 4.49.3 Contribucin a los resultados 4.49.4 Unidades 4.50 CS402. Proyecto II (Obligatorio) 4.50.1 Justificacin 4.50.2 Objetivos Generales 4.50.3 Contribucin a los resultados 4.50.4 Unidades 4.51 CS391. Calidad de Software (Obligatorio) 4.51.1 Justificacin 4.51.2 Objetivos Generales 4.51.3 Contribucin a los resultados 4.51.4 Unidades

11

4.52 CS230W. Computacin Centrada en Redes (Obligatorio) 4.52.1 Justificacin 4.52.2 Objetivos Generales 4.52.3 Contribucin a los resultados 4.52.4 Unidades 4.53 CS255. Computacin Grfica (Obligatorio) 4.53.1 Justificacin 4.53.2 Objetivos Generales 4.53.3 Contribucin a los resultados 4.53.4 Unidades 4.54 CS280T. Aspectos sociales y profesionales de la computacin (Obligatorio) 4.54.1 Justificacin 4.54.2 Objetivos Generales 4.54.3 Contribucin a los resultados 4.54.4 Unidades 4.55 CS240S. Compiladores (Obligatorio) 4.55.1 Justificacin 4.55.2 Objetivos Generales 4.55.3 Contribucin a los resultados 4.55.4 Unidades 4.56 FG205. Historia de la Cultura (Obligatorio) 4.56.1 Justificacin 4.56.2 Objetivos Generales 4.56.3 Contribucin a los resultados 4.56.4 Unidades 4.57 CS403. Proyecto de Tesis (Obligatorio) 4.57.1 Justificacin 4.57.2 Objetivos Generales 4.57.3 Contribucin a los resultados 4.57.4 Unidades 4.58 CS355. Tpicos en Computacin Grfica (Electivo) 4.58.1 Justificacin 4.58.2 Objetivos Generales 4.58.3 Contribucin a los resultados 4.58.4 Unidades 4.59 CS393. Mtodos Formales (Electivo) 4.59.1 Justificacin 4.59.2 Objetivos Generales 4.59.3 Contribucin a los resultados 4.59.4 Unidades 4.60 CS370. Tpicos en Bases de Datos (Obligatorio) 4.60.1 Justificacin 4.60.2 Objetivos Generales 4.60.3 Contribucin a los resultados 4.60.4 Unidades 4.61 CS361. Tpicos en Inteligencia Artificial (Electivo)
12

4.61.1 Justificacin 4.61.2 Objetivos Generales 4.61.3 Contribucin a los resultados 4.61.4 Unidades 4.62 CS360. Computacin Bioinspirada (Electivo) 4.62.1 Justificacin 4.62.2 Objetivos Generales 4.62.3 Contribucin a los resultados 4.62.4 Unidades 4.63 CB309. Computacin Molecular Biolgica (Electivo) 4.63.1 Justificacin 4.63.2 Objetivos Generales 4.63.3 Contribucin a los resultados 4.63.4 Unidades 4.64 FG301. Enseanza Social de la Iglesia (Obligatorio) 4.64.1 Justificacin 4.64.2 Objetivos Generales 4.64.3 Contribucin a los resultados 4.64.4 Unidades 4.65 FG221. Historia de la Ciencia y Tecnologa (Obligatorio) 4.65.1 Justificacin 4.65.2 Objetivos Generales 4.65.3 Contribucin a los resultados 4.65.4 Unidades 4.66 ET101. Formacin de Empresas de Base Tecnolgica I (Obligatorio) 4.66.1 Justificacin 4.66.2 Objetivos Generales 4.66.3 Contribucin a los resultados 4.66.4 Unidades 4.67 CS356. Programacin de Video Juegos (Electivo) 4.67.1 Justificacin 4.67.2 Objetivos Generales 4.67.3 Contribucin a los resultados 4.67.4 Unidades 4.68 CS404. Seminario de Tesis (Obligatorio) 4.68.1 Justificacin 4.68.2 Objetivos Generales 4.68.3 Contribucin a los resultados 4.68.4 Unidades 4.69 CS331. Cloud Computing (Obligatorio) 4.69.1 Justificacin 4.69.2 Objetivos Generales 4.69.3 Contribucin a los resultados 4.69.4 Unidades 4.70 CS367. Robtica (Electivo) 4.70.1 Justificacin 4.70.2 Objetivos Generales

13

4.70.3 Contribucin a los resultados 4.70.4 Unidades 4.71 CS232W. Programacin de Dispositivos Mviles (Obligatorio) 4.71.1 Justificacin 4.71.2 Objetivos Generales 4.71.3 Contribucin a los resultados 4.71.4 Unidades 4.72 FG350. Liderazgo y Desempeo (Obligatorio) 4.72.1 Justificacin 4.72.2 Objetivos Generales 4.72.3 Contribucin a los resultados 4.72.4 Unidades 4.73 FG211. tica Profesional (Obligatorio) 4.73.1 Justificacin 4.73.2 Objetivos Generales 4.73.3 Contribucin a los resultados 4.73.4 Unidades 4.74 FG220. Anlisis de la Realidad Peruana (Obligatorio) 4.74.1 Justificacin 4.74.2 Objetivos Generales 4.74.3 Contribucin a los resultados 4.74.4 Unidades 4.75 ET102. Formacin de Empresas de Base Tecnolgica II (Obligatorio) 4.75.1 Justificacin 4.75.2 Objetivos Generales 4.75.3 Contribucin a los resultados 4.75.4 Unidades

5. Equivalencias con otros planes curriculares o 5.1 Equivalencia ordenada por la malla 2006 o 5.2 Equivalencia ordenada por la malla 2010

6. Laboratorios o CS101F. Introduccin a la Programacin (Obligatorio) 1er Sem, Lab: 2 hr(s) o CS106. Estructuras Discretas II (Obligatorio) 2do Sem, Lab: 2 hr(s) o CS101O. Introduccin a la Programacin Orientada a Objetos (Obligatorio) 2do Sem, Lab: 4 hr(s) o CS107. lgebra Abstracta (Obligatorio) 3er Sem, Lab: 2 hr(s) o CS220T. Arquitectura de Computadores (Obligatorio) 3er Sem, Lab: 2 hr(s) o CS130. Introduccin a Internet (Obligatorio) 3er Sem, Lab: 2 hr(s)

14

o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o

CS102O. Objetos y Abstraccin de Datos (Obligatorio) 3er Sem, Lab: 2 hr(s) CS211T. Teora de la Computacin (Obligatorio) 4to Sem, Lab: 2 hr(s) CS270T. Bases de Datos I (Obligatorio) 4to Sem, Lab: 4 hr(s) CS103O. Algoritmos y Estructuras de Datos (Obligatorio) 4to Sem, Lab: 2 hr(s) CB203. Estadstica y Probabilidades (Obligatorio) 4to Sem, Lab: 2 hr(s) CS210T. Anlisis y Diseo de Algoritmos (Obligatorio) 5to Sem, Lab: 2 hr(s) CS290T. Ingeniera de Software I (Obligatorio) 5to Sem, Lab: 2 hr(s) CS271T. Bases de Datos II (Obligatorio) 5to Sem, Lab: 2 hr(s) CB111. Fsica Computacional (Obligatorio) 5to Sem, Lab: 2 hr(s) CB306. Anlisis Numrico (Obligatorio) 5to Sem, Lab: 2 hr(s) CS225T. Sistemas Operativos (Obligatorio) 6to Sem, Lab: 2 hr(s) CS260. Lgica Computacional (Obligatorio) 6to Sem, Lab: 2 hr(s) CS390. Ingeniera de Software II (Obligatorio) 6to Sem, Lab: 2 hr(s) CS315. Estructuras de Datos Avanzadas (Obligatorio) 6to Sem, Lab: 2 hr(s) CB307. Matemtica aplicada a la computacin (Obligatorio) 6to Sem, Lab: 2 hr(s) CS250W. Interaccin Humano Computador (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS261T. Inteligencia Artificial (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS336. Seguridad en Computacin (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS314. Algoritmos Paralelos (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS343. Lenguajes de Programacin (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS230W. Computacin Centrada en Redes (Obligatorio) 8vo Sem, Lab: 2 hr(s) CS255. Computacin Grfica (Obligatorio) 8vo Sem, Lab: 2 hr(s) CS240S. Compiladores (Obligatorio) 8vo Sem, Lab: 2 hr(s) CS355. Tpicos en Computacin Grfica (Electivo) 9no Sem, Lab: 2 hr(s) CS393. Mtodos Formales (Electivo) 9no Sem, Lab: 2 hr(s) CS370. Tpicos en Bases de Datos (Obligatorio) 9no Sem, Lab: 2 hr(s) CS361. Tpicos en Inteligencia Artificial (Electivo) 9no Sem, Lab: 2 hr(s) CS360. Computacin Bioinspirada (Electivo) 9no Sem, Lab: 2 hr(s) CB309. Computacin Molecular Biolgica (Electivo) 9no Sem, Lab: 2 hr(s) CS356. Programacin de Video Juegos (Electivo) 10mo Sem, Lab: 2 hr(s) CS331. Cloud Computing (Obligatorio) 10mo Sem, Lab: 2 hr(s) CS367. Robtica (Electivo) 10mo Sem, Lab: 4 hr(s) CS232W. Programacin de Dispositivos Mviles (Obligatorio) 10mo Sem, Lab: 2 hr(s)

Bibliografa Sobre este documento...


15

ndice de Figuras

1.1. Campo accin de la CC 1.2. Taxonoma de Bloom 3.1. Orientaciones de los cursos por niveles. 3.2. Esquema de codificacin para los cursos. 3.3. Distribucin de cursos por reas considerando creditaje. 3.4. Distribucin de crditos por niveles de cursos. 3.5. Malla curricular Programa Profesional de Ciencia de la Computacin 3.6. Malla curricular Programa Profesional de Ciencia de la Computacin 3.7. Comparacin CS-UCSP Vs. CS de IEEE-CS/ACM. 3.8. Comparacin CS-UCSP Vs. CS de IEEE-CS/ACM. 3.9. Comparacin CS-UCSP Vs. CE de IEEE-CS/ACM. 3.10. Comparacin CS-UCSP Vs. CE de IEEE-CS/ACM. 3.11. Comparacin CS-UCSP Vs. IS de IEEE-CS/ACM. 3.12. Comparacin CS-UCSP Vs. IS de IEEE-CS/ACM. 3.13. Comparacin CS-UCSP Vs. IT de IEEE-CS/ACM. 3.14. Comparacin CS-UCSP Vs. IT de IEEE-CS/ACM. 3.15. Comparacin CS-UCSP Vs. SE de IEEE-CS/ACM. 3.16. Comparacin CS-UCSP Vs. SE de IEEE-CS/ACM.

ndice de Tablas

1.1. Taxonoma de Bloom 3.1. Distribucin de cursos por reas 3.2. Tpicos por curso del 1er al 2do Semestre 3.3. Tpicos por curso del 1er al 2do Semestre 3.4. Tpicos por curso del 3er al 4to Semestre 3.5. Tpicos por curso del 3er al 4to Semestre 3.6. Tpicos por curso del 5to al 6to Semestre 3.7. Tpicos por curso del 5to al 6to Semestre 3.8. Tpicos por curso del 7mo al 8vo Semestre 3.9. Tpicos por curso del 7mo al 8vo Semestre 3.8. Tpicos por curso del 7mo al 8vo Semestre 3.11. Tpicos por curso del 9no al 10mo Semestre 3.12. Resultados esperados por curso 1er al 2do Semestre 3.13. Resultados esperados por curso 3er al 4to Semestre 3.14. Resultados esperados por curso 5to al 6to Semestre 3.15. Resultados esperados por curso 7mo al 8vo Semestre 3.16. Resultados esperados por curso 9no al 10mo Semestre

Agradecimientos Adems de los autores directos de este documento, tambin deseamos dejar manifiesto de nuestro agradecimiento a otros colegas de diversas universidades del pas y del mundo que gentilmente han aportado parte de su tiempo a darnos sus sugerencias. Entre ellos debemos mencionar a:
16

Luis Fernando Daz Basurco (UCSP-Per), Nelly Condori-Fernndez (UPV-Espaa), Agustn Torns (ITESM-CCM, Mxico), Alex Cuadros-Vargas (UCSP, Per), Alvaro Cuno-Parari (SPC), Alfredo Paz (UNSA, Per), Rodrigo Lazo Paz (UCSP, Per), Juan Manuel Gutirrez Crdenas (University of the Witwatersrand-Sud-Africa), Lenin Henry Cari Mogrovejo por su valiosa colaboracin en los aspectos de redaccin y correccin ortogrfica del documento.

Tambin deseamos agradecer a la Universidad Catlica San Pablo (UCSP) de ArequipaPer por su colaboracin decidida de forma institucional y de forma individual a travs de sus autoridades: Dr. Alonso Quintanilla Prez-Witch (Rector), Dr. Jos Corrales Nieves-Lazarte (Vicerrector Acadmico) y al Mag. Germn Chvez (Director de Investigacin). No hay duda de que cuando las autoridades estn decididas a hacer las cosas bien todo el trabajo se realiza de forma rpida. Realmente es un ejemplo a seguir y llevar a todas las universidades de nuestro pas. Todo este equipo de trabajo asumi como premisa que el centro de nuestro esfuerzo, es la formacin acadmica y humana de los estudiantes. A todos ellos deseamos agradecerles por su aporte que ha permitido generar este documento, nico en su gnero en nuestro pas, que servir para sentar las bases de una carrera ms slida en esta fantstica rea que nos ha tocado estudiar y de la cual nos sentimos orgullosos de formar parte: Computacin. Abreviaturas

1. Introduccin La computacin ha sufrido un desarrollo impresionante en los ltimos 60 aos, convirtindose en el motor del desarrollo cientfico, tecnolgico, industrial, social, econmico y cultural, transformando de manera significativa nuestro diario accionar.

17

El surgimiento del computador ha marcado una nueva era en la historia de la humanidad que era imposible de imaginar varias dcadas atrs. La gran cantidad de aplicaciones que se han desarrollado en los ltimos aos estn transformando el desarrollo de todas las disciplinas del saber, la comercializacin en el mbito globalizado en que vivimos, la manera en que nos comunicamos, los procesos de enseanza-aprendizaje y hasta en la manera como nos entretenemos. Para darnos una idea de la relevancia e importancia, que en nuestro pas ha alcanzado esta disciplina, basta mencionar que actualmente se ofrecen aproximadamente 70 carreras de Computacin, Informtica, Sistemas, a nivel nacional, sin considerar los programas de nivel Tcnico Superior No Universitario que se ofertan. Todas estas carreras existentes tienen como centro de su estudio a la computacin pero lo hacen con una gran diversidad de nombres como: Ingeniera de Sistemas, Ingeniera de Computacin, Ingeniera de Computacin y Sistemas, entre otros. A pesar de que todas ellas apuntan al mismo mercado de trabajo resulta por lo menos curioso que no sea posible encontrar por lo menos dos que compartan la misma curricula. Muchos pases consideran a la computacin como estratgica para su desarrollo. En Per, el CONCYTEC ha recomendado al gobierno que considere a la Computacin como una de las reas prioritarias de vinculacin entre la academia e industria para fomentar la competitividad y la innovacin. Comnmente, durante la dcada de los setenta, la Computacin se desarroll dentro de las Facultades de Ciencias en la mayora de las universidades estadounidenses, britnicas y de otros pases. Durante la dcada de los ochenta, los grupos de computacin en las universidades se esforzaron por lograr una legitimidad acadmica en su mbito local. Frecuentemente, se transformaron en departamentos de Matemticas y Computacin, hasta finalmente dividirse en dos departamentos de Matemticas y de Computacin, en la dcada de los noventa. Es en esta dcada en que un nmero creciente de instituciones reconocieron la influencia penetrante de la Computacin, creando unidades independientes como departamentos, escuelas o institutos dedicados a tal rea de estudio, un cambio que ha demostrado tanto perspicacia como previsin. En Per, un nmero cada vez mayor de instituciones de educacin superior han tratado de seguir el desarrollo de las universidades extranjeras (aunque no siempre en forma muy seria o exitosa), reconociendo a la Computacin como un rea de estudio en s misma, as como su importancia estratgica en la educacin, y creando departamentos, escuelas o institutos dedicados a su estudio. La Facultad de Facultad de Ingeniera y Computacin no puede ser la excepcin a este cambio, en el que ya se tiene un retraso relativo con muchas de las instituciones educativas dentro y fuera de Per.

Subsecciones

1.1 Definiciones bsicas 1.2 Perfil Profesional 1.3 Campo y mercado ocupacional 1.4 Importancia de la carrera en la sociedad
18

1.5 Misin 1.6 Visin 1.7 Perfil de competencias profesionales (Resultados de la carrera) 1.8 Naturaleza de los objetivos de aprendizaje 1.9 Grados y Ttulos 1.10 Recursos para dictado de clases

1.1 Definiciones bsicas La referencia ms slida a nivel mundial en cuanto a la propuesta de carreras de computacin para nivel de pregrado es la que fue propuesta en conjunto por la ACM, IEEE-CS y la AIS. Estas tres organizaciones propusieron la Computing Curricula en el documento denominado: Joint Task Force for Computing Curricula 2005, Computing Curricula 2005. Overview Report[]. La CC es un trmino de origen estadounidense CS. Este trmino es conocido tambin como informtica en el mbito europeo1.1. Segn el diccionario de la Real Academia de la Lengua Espaola (http://www.rae.es) ambos trminos tambin son sinnimos. A nivel internacional, la computacin presenta 5 perfiles claramente definidos:

Ciencia de la Computacin (Computer Science) [,], Ingeniera de Computacin (Computer Engineering) [], Ingeniera de Software (Software Engineering) [], Sistemas de Informacin (Information Systems) [] y Tecnologa de la Informacin (Information Technology) []

La Figura 1.1 es tomada de la definicin propuesta en la Computing Curricula [,,] en el rea de CC. La CC cubre la mayor parte entre el extremo superior y el extremo inferior, porque el profesional en CC no trata ``solamente con el hardware'' que utiliza un software o de ``solamente la organizacin'' que hace uso de la informacin que la computacin le puede proveer.

19

Figura 1.1: Campo accin de la CC Las Ciencias de la Computacin cubren un amplio rango, desde sus fundamentos tericos y algortmicos hasta los ltimos desarrollos en robtica, visin por computadora, sistemas inteligentes, bioinformtica, y otras reas emocionantes. Podemos pensar que el trabajo de un cientfico de la computacin pertenece a las siguientes tres categoras:

Diseo e implementacin de software. Los cientficos de computacin se encargan de desafiantes labores de programacin. Tambin supervisan otros programadores, hacindolos concientes de nuevas aproximaciones. Instrumentacin de nuevas formas para usar computadoras. El progreso en las reas de ciencias de la computacin como redes, bases de datos, e interfaces humano-computadora permitieron el desarrollo de la www y actualmente se trabaja en el desarrollo de metasistemas Grid. Adems, los investigadores trabajan ahora en hacer que los robots sean ayudantes prcticos y demuestren inteligencia, utilizan las bases de datos para crear nuevos conocimientos, y estn utilizando computadoras para decifrar los secretos de nuestro ADN. Desarrollo de formas efectivas de resolver problemas de computacin. Por ejemplo, los cientficos de la computacin desarrollan las mejores formas posibles de almacenar informacin en bases de datos, enviar datos a travs de la red, y desplegar imgenes complejas. Sus bases tericas les permiten determinar el mejor desempeo posible, y su estudio de algoritmos les ayuda a desarrollar nuevas aproximaciones para proveer un mejor desempeo.

Las Ciencias de la Computacin cubren todo el rango desde la teora hasta la programacin. Mientras otras disciplinas pueden producir titulados mejor preparados
20

para trabajos especficos, las ciencias de la computacin ofrecen un amplio fundamento que permite a sus titulados adaptarse a nuevas tecnologas y nuevas ideas. El profesional en CC se preocupa por casi todo en medio de estas reas. En direccin hacia el hardware, este profesional llega a desarrollar software que permite el funcionamiento de dispositivos devices. En direccin a aspectos organizacionales, el profesional de CC ayuda a que los sistemas de informacin operen correctamente en las organizaciones. l genera la tecnologa que permite que otras reas como los sistemas de informacin se desarrollen adecuadamente. El profesional en CC disea y desarrolla todo tipo de software, desde infraestructura de plataformas (sistemas operativos, programas de comunicacin, etc.) hasta aplicacin de tecnologas (navegadores de Internet, bases de datos, motores de bsqueda, etc.). Este profesional crea estas capacidades, pero no est orientado al uso de las mismas. Por lo tanto, el rea sombreada (fig. 1.1) para CC se estrecha y finaliza en la medida que nos movamos hacia la aplicacin y configuracin de productos. 1.2 Perfil Profesional El profesional en Ciencia de la Computacin tiene las siguientes caractersticas:

Alta capacidad de abstraccin. Construye y aplica los fundamentos de la computacin para crear software de calidad internacional. Se adapta con facilidad a nuevas tecnologas debido a su formacin en investigacin y resolucin temas complejos que involucren a la computacin. Hbito de estudio y sentido de responsabilidad. Formacin de carrera de acuerdo a normas internacionales. Est en condiciones de poder seguir estudios de posgrado con exigencia internacional en reas relacionadas. Tiene valores ticos y morales claramente definidos que ayudan con el crecimiento de la organizacin y del pas donde trabaje.

1.3 Campo y mercado ocupacional Nuestro egresado podr prestar sus servicios profesionales en empresas e instituciones pblicas y privadas que requieran sus capacidades en funcin del desarrollo que oferta, entre ellas:

Empresas dedicadas a la produccin de software con calidad internacional. Empresas, instituciones y organizaciones que requieran software de calidad para mejorar sus actividades y/o servicios ofertados.

Nuestro egresado puede desempearse en el mercado laboral sin ningn problema ya que, en general, la exigencia del mercado y campo ocupacional est mucho ms orientada al uso de herramientas. Sin embargo, es poco comn que los propios profesionales de esta carrera se pregunten: que tipo de formacin debera tener si yo quisiera crear esas herramientas adems de saber usarlas?. Ambos perfiles (usuario y creador) son bastante diferentes pues no sera posible usar algo que todava no fue
21

creado. En otras palabras, los creadores de tecnologa son los que dan origen a nuevos puestos de trabajo y abren la posibilidad de que otros puedan usar esa tecnologa. Debido a la formacin basada en la investigacin, nuestro profesional debe siempre ser un innovador donde trabaje. Esta misma formacin permite que el egresado piense tambin en crear su propia empresa de desarrollo de software. Considerando que pases como el nuestro tienen un costo de vida mucho menor que Norte Amrica Europa, una posibilidad que se muestra interesante es la exportacin de software pero eso requiere que la calidad del producto sea al mismo nivel de lo ofrecido a nivel internacional. Este perfil profesional tambin posibilita que nuestros egresados se queden en nuestro pas; producir software en nuestro pas y venderlo fuera es ms rentable que salir al extranjero y comercializarlo all. El campo ocupacional de un egresado es amplio y est en continua expansin y cambio. Prcticamente toda empresa u organizacin hace uso de servicios de computacin de algn tipo, y la buena formacin bsica de nuestros egresados hace que puedan responder a los requerimientos de las mismas exitosamente. Este egresado, no slo podr dar soluciones a los problemas existentes sino que deber proponer innovaciones tecnolgicas que impulsen la empresa hacia un progreso constante. A medida que la informatizacin bsica de las empresas del pas avanza, la necesidad de personas capacitadas para resolver los problemas de mayor complejidad aumenta y el plan de estudios que hemos desarrollado tiene como objetivo satisfacer esta demanda considerandola a mediano y largo plazo. El campo para las tareas de investigacin y desarrollo de problemas complejos en computacin es tambin muy amplio y est creciendo da a da a nivel mundial. Debido a la capacidad innovadora de nuestro egresado, existe una mayor la probabilidad de registrar patentes con un alto nivel inventivo lo cual es especialmente importante en nuestros pases.

1.4 Importancia de la carrera en la sociedad Uno de los caminos que se espera que siga un profesional del rea de computacin es que el se dedique a producir software o que se integre a las empresas productoras de software. En el mbito de la computacin, es comn observar que los pases cuentas con Asociaciones de Productores de Software cuyas polticas estn orientadas a la exportacin. Siendo as, no tendra sentido preparar a nuestros alumnos slo para el mercado local o nacional. Nuestros egresados deben estar preparados para desenvolverse en el mundo globalizado que nos ha tocado vivir. Nuestros futuros profesionales deben estar orientados a crear nuevas empresas de base tecnolgica que puedan incrementar las exportaciones de software peruano. Este nuevo perfil est orientado a generar industria innovadora. Si nosotros somos capaces de exportar software competitivo tambin estaremos en condiciones de atraer nuevas inversiones. Las nuevas inversiones generaran ms puestos de empleo bien remunerados y con un costo bajo en relacin a otros tipos de industria. Bajo esta
22

perspectiva, podemos afirmar que esta carrera ser un motor que impulsar al desarrollo del pas de forma decisiva con una inversin muy baja en relacin a otros campos. Es necesario recordar que la mayor innovacin de productos comerciales de versiones recientes utiliza tecnologa que se conoca en el mundo acadmico hace 20 aos o ms. Un ejemplo claro son las bases de datos que soportan datos y consultas espaciales desde hace muy pocos aos. Sin embargo, utilizan estructuras de datos que ya existan hace algunas dcadas. Es lgico pensar que la gente del rea acadmica no se dedique a estudiar en profundidad la ltima versin de un determinado software cuando esa tecnologa ya la conocan hace mucho tiempo. Por esa misma razn es raro en el mundo observar que una universidad tenga convenios con una transnacional de software para dictar solamente esa tecnologa pues, nuestra funcin es generar esa tecnologa y no slo saber usarla. Tampoco debemos olvidar que los alumnos que ingresan hoy saldrn al mercado dentro de 5 aos aproximadamente y, en un mundo que cambia tan rpido, no podemos ni debemos ensearles tomando en cuenta solamente el mercado actual. Nuestros profesionales deben estar preparados para resolver los problemas que habr dentro de 10 o 15 aos y eso slo es posible a travs de la investigacin. 1.5 Misin Por lo antes mencionado, pensamos que tenemos como misin: Contribuir al desarrollo tecnolgico y tcnico del pas, a travs de profesionales competentes, orientados a la creacin de nueva tecnologa computacional, como motor que impulse y consolide la industria del software en base a la investigacin cientfica y tecnolgica en reas innovadoras formando profesionales un conjunto de habilidades y destrezas para la solucin de problemas computacionales con un compromiso social.

1.6 Visin

Queremos ser una carrera profesional acreditada con estandares internacionales y que cuente con el reconocimiento en funcin de la calidad y competitividad de sus docentes y egresados. Queremos ser una carrera que trascienda por la relevancia y pertinencia de sus proyectos de investigacin bsica y aplicada. Queremos ser una carrera que promueva el desarrollo de la industria del software a nivel internacional, incorporando a sus egresados a la industria ya establecida o generando nuevas empresas desarrolladoras de software. Queremos ser una carrera que comparta y difunda el conocimiento con todos los sectores de la poblacin y contribuya a la solucin de los problemas estratgicos de nuestra sociedad.

1.7 Perfil de competencias profesionales (Resultados de la carrera) Al finalizar esta carrera, el(la) egresado(a), habr logrado conocimientos, habilidades y competencias para:
23

a) Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Trabajar efectivamente en equipos para cumplir con un objetivo comn. e) Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. f) Comunicarse efectivamente con audiencias diversas. g) Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Incorporarse a un proceso de aprendizaje profesional continuo. i) Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida.

24

k) Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. l) Desarrollar principios investigacin en el rea de computacin con niveles de competividad internacional. m) Transformar sus conocimientos del rea de Ciencia de la Computacin en emprendimientos tecnolgicos. n) Aplicar conocimientos de humanidades en su labor profesional. o) Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. p) Mejorar las condiciones de la sociedad poniendo la tecnologa al servicio del ser humano. Las competencias y/o resultados a)-k) propuestas en esta malla curricular corresponden a las competencias y/o resultados propuestas por ABET1.2. Por otro lado, las habilidades l)-o) son aportes de este grupo de trabajo. 1.8 Naturaleza de los objetivos de aprendizaje Un primer conjunto de objetivos de aprendizaje fue propuesto por []. Una pequea variacin de la taxonoma de Bloom es resumida a continuacin con algunas pequeas adaptaciones al contexto de la computacin (utilizando trminos como implementar o ejecutar). En esta discusin se siguen los lineamientos de []. Tipicamente, un objetivo de aprendizaje contiene un verbo y un pronombre: El verbo describe el proceso cognitivo que se busca. Luego se incluyen los elementos de la taxonoma de Bloom y de esa forma verbos como recordar, recordar, entender, analizar, disearson altamente relevantes.
25

Los pronombres describen el conocimiento que se espera que un estudiante adquiera. Luego el conocimiento propiamente dicho es categorizado en varias formas en un espectro que va de lo concreto a lo abstracto.

Tabla 1.1: Taxonoma de Bloom Nivel Categora Proceso Cognitivo 1. Recordar reconocimiento, recordar, describir, declarar (stating) interpretar, ejemplificar, clasificar, inferir, comparar, explicar, parafrasear, resumir ejecutar (i.e. llevar adelante), implementar (i.e. usar), computar, manipular, resolver diferenciar, organizar, atribuir, discriminar, distinguir, sub-dividir verificar, criticar, evaluar (assess), comparar, contrastar generar, planear, producir, innovar, divisar, disear, organizar

2.

Entender

3.

Aplicar

4. 5. 6.

Analizar Evaluar Crear

Los objetivos del programa tienden a ser asociados con los niveles altos de esta taxonoma. Asi mismo los objetivos instructivos tienden a ser asociados con los niveles bajos de la misma.

26

Figura 1.2: Taxonoma de Bloom

1.9 Grados y Ttulos Cumplida la aprobacin de los crditos acadmicos propuestos en la malla curricular y luego de haber cumplido con los requisitos estipulados en el reglamento de grados y ttulos de la carrera, el egresado recibir: Grado Acadmico: Bachiller en Ciencia de la Computacin y Titulo Profesional: Licenciatura en Ciencia de la Computacin

1.10 Recursos para dictado de clases Un profesional innovador debe estar al tanto de los ltimos avances de su rea siempre. Los ltimos avances de esta rea no son presentados en los libros necesariamente. Debemos utilizar publicaciones de revistas indexadas de circulacin mundial. Por esa razn tomamos como base la suscripcin institucional a ACM e IEEECS. Es recomendado que el docente use este material para discutir en clase las tendencias en todas las reas.

27

Los laboratorios de cmputo tambin deben ser renovados de acuerdo a la rapidez propia de esta rea y esto implica renovaciones constantes para poder garantizar que los estudiantes estn actualizados.

2. Cuerpo del conocimiento de Ciencia de la Computacin Los 14 grupos principales del conocimiento de esta rea son: DS. Matemticas Discretas (43 horas como mnimo)

DS/Funciones, Relaciones y Conjuntos. (6 horas) DS/Lgica Bsica. (10 horas) DS/Tcnicas de Prueba. (12 horas) DS/Conceptos Bsicos de Conteo. (5 horas) DS/Grfos y rboles. (4 horas) DS/Probabilidad Discreta. (6 horas) PF. Fundamentos de Programacin (47 horas como mnimo) PF/Construcciones fundamentales. (9 horas) PF/Algoritmos y Resolucin de Problemas. (6 horas) PF/Estructuras de Datos. (10 horas) PF/Recursividad. (4 horas) PF/Programacin Orientada a Eventos. (4 horas) PF/Orientacin a Objetos. (8 horas) PF/Fundamentos de seguridad de la Informacin. (4 horas) PF/Programacin segura. (2 horas) AL. Algoritmos y Complejidad (31 horas como mnimo) AL/Anlisis Bsico de Algoritmos. (4 horas) AL/Estrategias Algortmicas. (6 horas) AL/Algoritmos Fundamentales. (12 horas) AL/Algoritmos Distribuidos. (3 horas) AL/Computabilidad Bsica. (6 horas) AL/Clases de Complejidad P y NP. AL/Teora de Autmatas. AL/Anlisis Avanzado de Algoritmos. AL/Algoritmos Criptogrficos. AL/Algoritmos Geomtricos. AL/Algoritmos Paralelos. AR. Arquitectura y Organizacin (36 horas como mnimo) AR/Lgica Digital y Representacin de Datos. (7 horas) AR/Arquitectura y Organizacin de Computadores. (9 horas) AR/Interfases y Estrategias de I/O. (3 horas) AR/Arquitectura de Memoria. (5 horas) AR/Organizacin Funcional. (6 horas) AR/Multiprocesamiento. (6 horas) AR/Mejoras de Desempeo.
28

AR/Arquitecturas Distribuidas. AR/Dispositivos. AR/Tendencias en Computacin. OS. Sistemas Operativos (16 horas como mnimo) OS/Visin General de los Sistemas Operativos. (2 horas) OS/Principios de los Sistemas Operativos. (2 horas) OS/Concurrencia. (6 horas) OS/Planeamiento y Despacho. (3 horas) OS/Administracin de Memoria. (3 horas) OS/Administracin de Dispositivos. OS/Seguridad y Proteccin. OS/Sistema de Archivos. OS/Sistemas Empotrados y de Tiempo Real. OS/Tolerancia a Fallas. OS/Evaluacin del Desempeo de Sistemas. OS/Scripting. OS/Anlisis Forense Digital. OS/Modelos de seguridad. NC. Computacin Centrada en Redes (18 horas como mnimo) NC/Introduccin. (2 horas) NC/Comunicacin de Redes. (7 horas) NC/Seguridad de Red. (6 horas) NC/Organizacin de la Web. (3 horas) NC/Aplicaciones en redes. NC/Administracin de Redes. NC/Compresin y Descompresin. NC/Tecnologa de Datos Multimedia. NC/Computacin Mvil e Inalmbrica. PL. Lenguajes de Programacin (21 horas como mnimo) PL/Visin General de los Lenguajes de Programacin. (2 horas) PL/Mquinas Virtuales. (1 hora) PL/Introduccin a la Traduccin de Lenguajes. (2 horas) PL/Declaracin y Tipos. (3 horas) PL/Mecanismos de Abstraccin. (3 horas) PL/Programacin Orientada a Objetos. (10 horas) PL/Programacin Funcional. PL/Sistemas de Traduccin del Lenguaje. PL/Tipos. PL/Semntica de los Lenguajes de Programacin. PL/Diseo de Lenguajes de Programacin. HC. Interaccin Humano-Computador (8 horas como mnimo) HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) HC/Construccin de Interfaces Grficas de Usuario. (2 horas) HC/Evaluacin de Software Centrado en el usuario. HC/Desarrollo de Software Centrado en el Humano. HC/Diseo de la Interfaz de Usuario.
29

HC/Programacin de Interfaces Grficas de Usuario. HC/Aspectos de Sistemas de Multimedia y Multimodales. HC/Aspectos de Colaboracin y Comunicacin. Diseo de interaccin para nuevos ambientes. Factores humanos y seguridad. GV. Computacin Grfica y Visual (3 horas como mnimo) GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (2 horas) GV/Sistemas Grficos. (1 hora) GV/Comunicacin Grfica. GV/Modelamiento Geomtrico. GV/Rendering Bsico. GV/Rendering Avanzado. GV/Tcnicas Avanzadas. GV/Animacin por Computador. GV/Visualizacin. GV/Realidad Virtual. GV/Visin Computacional. GV/Geometra Computacional. GV/Programacin de motores de juegos. IS. Sistemas Inteligentes (10 horas como mnimo) IS/Tpicos Fundamentales en Sistemas Inteligentes. (1 hora) IS/Bsqueda y Satisfaccin de la Restriccin. (5 horas) IS/Razonamiento basado en conocimiento. (4 horas) IS/Bsqueda Avanzada. IS/Representacin Avanzada del Conocimiento y Razonamiento. IS/Agentes. IS/Procesamiento de Lenguaje Natural. IS/Aprendizaje de Mquina. IS/Sistemas de Planeamiento. IS/Robtica. IS/Percepcin. IM. Administracin de Informacin (11 horas como mnimo) IM/Modelos de Informacin. (4 horas) IM/Sistemas de Base de Datos. (3 horas) IM/Modelamiento de Datos. (4 horas) IM/Indexacin. IM/Base de Datos Relacionales. IM/Lenguajes de Consultas de Base de Datos. IM/Diseo de Bases de Datos Relacionales. IM/Procesamiento de Transacciones. IM/Bases de Datos Distribuidas. IM/Diseo Fsico de Bases de Datos. IM/Minera de Datos. IM/Almacenamiento y Recuperacin de Informacin. IM/Hipermedia. IM/Sistemas Multimedia. IM/Libreras Digitales.
30

SP. Asuntos Sociales y Profesionales (16 horas como mnimo) SP/Historia de la Computacin. (1 hora) SP/Contexto Social de la Computacin. (3 horas) SP/Herramientas Analticas. (2 horas) SP/tica Profesional. (3 horas) SP/Riesgos. (2 horas) SP/Operaciones de seguridad. SP/Propiedad Intelectual. (3 horas) SP/Privacidad y Libertades Civiles. (2 horas) SP/Crimen Informtico. SP/Economa en Computacin. SP/Estructuras de Trabajo Filosficas. SE. Ingeniera de Software (29 horas como mnimo) SE/Diseo de Software. (8 horas) SE/Usando APIs. (3 horas) SE/Herramientas y Entornos de Software. (3 horas) SE/Procesos de Software. (2 horas) SE/Especificacin de Requerimientos. (4 horas) SE/Validacin y verificacin de software. (3 horas) SE/Evolucin del Software. (3 horas) SE/Administracin de Proyectos de Software. (3 horas) SE/Computacin Basada en Componentes. SE/Mtodos Formales. SE/Confiabilidad del Software. SE/Desarrollo de Sistemas Especializados. SE/Evaluacin de riesgos. SE/Mejorando la programacin: robustez y seguridad. CN. Ciencia Computacional (Sin mnimo de horas)) CN/Modelamiento y Simulacin. CN/Investigacin de Operaciones. CN/Computacin Paralela.

Subsecciones

2.1 DS. Matemticas Discretas (43 horas como mnimo) o 2.1.1 DS/Funciones, Relaciones y Conjuntos. (6 horas) o 2.1.2 DS/Lgica Bsica. (10 horas) o 2.1.3 DS/Tcnicas de Prueba. (12 horas) o 2.1.4 DS/Conceptos Bsicos de Conteo. (5 horas) o 2.1.5 DS/Grfos y rboles. (4 horas) o 2.1.6 DS/Probabilidad Discreta. (6 horas)

2.2 PF. Fundamentos de Programacin (47 horas como mnimo)


31

o o o o o o o o

2.2.1 PF/Construcciones fundamentales. (9 horas) 2.2.2 PF/Algoritmos y Resolucin de Problemas. (6 horas) 2.2.3 PF/Estructuras de Datos. (10 horas) 2.2.4 PF/Recursividad. (4 horas) 2.2.5 PF/Programacin Orientada a Eventos. (4 horas) 2.2.6 PF/Orientacin a Objetos. (8 horas) 2.2.7 PF/Fundamentos de seguridad de la Informacin. (4 horas) 2.2.8 PF/Programacin segura. (2 horas)

2.3 AL. Algoritmos y Complejidad (31 horas como mnimo) o 2.3.1 AL/Anlisis Bsico de Algoritmos. (4 horas) o 2.3.2 AL/Estrategias Algortmicas. (6 horas) o 2.3.3 AL/Algoritmos Fundamentales. (12 horas) o 2.3.4 AL/Algoritmos Distribuidos. (3 horas) o 2.3.5 AL/Computabilidad Bsica. (6 horas) o 2.3.6 AL/Clases de Complejidad P y NP. o 2.3.7 AL/Teora de Autmatas. o 2.3.8 AL/Anlisis Avanzado de Algoritmos. o 2.3.9 AL/Algoritmos Criptogrficos. o 2.3.10 AL/Algoritmos Geomtricos. o 2.3.11 AL/Algoritmos Paralelos.

2.4 AR. Arquitectura y Organizacin (36 horas como mnimo) o 2.4.1 AR/Lgica Digital y Representacin de Datos. (7 horas) o 2.4.2 AR/Arquitectura y Organizacin de Computadores. (9 horas) o 2.4.3 AR/Interfases y Estrategias de I/O. (3 horas) o 2.4.4 AR/Arquitectura de Memoria. (5 horas) o 2.4.5 AR/Organizacin Funcional. (6 horas) o 2.4.6 AR/Multiprocesamiento. (6 horas) o 2.4.7 AR/Mejoras de Desempeo. o 2.4.8 AR/Arquitecturas Distribuidas. o 2.4.9 AR/Dispositivos. o 2.4.10 AR/Tendencias en Computacin.

2.5 OS. Sistemas Operativos (16 horas como mnimo) o 2.5.1 OS/Visin General de los Sistemas Operativos. (2 horas) o 2.5.2 OS/Principios de los Sistemas Operativos. (2 horas) o 2.5.3 OS/Concurrencia. (6 horas) o 2.5.4 OS/Planeamiento y Despacho. (3 horas) o 2.5.5 OS/Administracin de Memoria. (3 horas) o 2.5.6 OS/Administracin de Dispositivos. o 2.5.7 OS/Seguridad y Proteccin. o 2.5.8 OS/Sistema de Archivos. o 2.5.9 OS/Sistemas Empotrados y de Tiempo Real.
32

o o o o o

2.5.10 OS/Tolerancia a Fallas. 2.5.11 OS/Evaluacin del Desempeo de Sistemas. 2.5.12 OS/Scripting. 2.5.13 OS/Anlisis Forense Digital. 2.5.14 OS/Modelos de seguridad.

2.6 NC. Computacin Centrada en Redes (18 horas como mnimo) o 2.6.1 NC/Introduccin. (2 horas) o 2.6.2 NC/Comunicacin de Redes. (7 horas) o 2.6.3 NC/Seguridad de Red. (6 horas) o 2.6.4 NC/Organizacin de la Web. (3 horas) o 2.6.5 NC/Aplicaciones en redes. o 2.6.6 NC/Administracin de Redes. o 2.6.7 NC/Compresin y Descompresin. o 2.6.8 NC/Tecnologa de Datos Multimedia. o 2.6.9 NC/Computacin Mvil e Inalmbrica.

2.7 PL. Lenguajes de Programacin (21 horas como mnimo) o 2.7.1 PL/Visin General de los Lenguajes de Programacin. (2 horas) o 2.7.2 PL/Mquinas Virtuales. (1 hora) o 2.7.3 PL/Introduccin a la Traduccin de Lenguajes. (2 horas) o 2.7.4 PL/Declaracin y Tipos. (3 horas) o 2.7.5 PL/Mecanismos de Abstraccin. (3 horas) o 2.7.6 PL/Programacin Orientada a Objetos. (10 horas) o 2.7.7 PL/Programacin Funcional. o 2.7.8 PL/Sistemas de Traduccin del Lenguaje. o 2.7.9 PL/Tipos. o 2.7.10 PL/Semntica de los Lenguajes de Programacin. o 2.7.11 PL/Diseo de Lenguajes de Programacin.

2.8 HC. Interaccin Humano-Computador (8 horas como mnimo) o 2.8.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) o 2.8.2 HC/Construccin de Interfaces Grficas de Usuario. (2 horas) o 2.8.3 HC/Evaluacin de Software Centrado en el usuario. o 2.8.4 HC/Desarrollo de Software Centrado en el Humano. o 2.8.5 HC/Diseo de la Interfaz de Usuario. o 2.8.6 HC/Programacin de Interfaces Grficas de Usuario. o 2.8.7 HC/Aspectos de Sistemas de Multimedia y Multimodales. o 2.8.8 HC/Aspectos de Colaboracin y Comunicacin. o 2.8.9 Diseo de interaccin para nuevos ambientes. o 2.8.10 Factores humanos y seguridad.

33

2.9 GV. Computacin Grfica y Visual (3 horas como mnimo) o 2.9.1 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (2 horas) o 2.9.2 GV/Sistemas Grficos. (1 hora) o 2.9.3 GV/Comunicacin Grfica. o 2.9.4 GV/Modelamiento Geomtrico. o 2.9.5 GV/Rendering Bsico. o 2.9.6 GV/Rendering Avanzado. o 2.9.7 GV/Tcnicas Avanzadas. o 2.9.8 GV/Animacin por Computador. o 2.9.9 GV/Visualizacin. o 2.9.10 GV/Realidad Virtual. o 2.9.11 GV/Visin Computacional. o 2.9.12 GV/Geometra Computacional. o 2.9.13 GV/Programacin de motores de juegos.

2.10 IS. Sistemas Inteligentes (10 horas como mnimo) o 2.10.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (1 hora) o 2.10.2 IS/Bsqueda y Satisfaccin de la Restriccin. (5 horas) o 2.10.3 IS/Razonamiento basado en conocimiento. (4 horas) o 2.10.4 IS/Bsqueda Avanzada. o 2.10.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. o 2.10.6 IS/Agentes. o 2.10.7 IS/Procesamiento de Lenguaje Natural. o 2.10.8 IS/Aprendizaje de Mquina. o 2.10.9 IS/Sistemas de Planeamiento. o 2.10.10 IS/Robtica. o 2.10.11 IS/Percepcin.

2.11 IM. Administracin de Informacin (11 horas como mnimo) o 2.11.1 IM/Modelos de Informacin. (4 horas) o 2.11.2 IM/Sistemas de Base de Datos. (3 horas) o 2.11.3 IM/Modelamiento de Datos. (4 horas) o 2.11.4 IM/Indexacin. o 2.11.5 IM/Base de Datos Relacionales. o 2.11.6 IM/Lenguajes de Consultas de Base de Datos. o 2.11.7 IM/Diseo de Bases de Datos Relacionales. o 2.11.8 IM/Procesamiento de Transacciones. o 2.11.9 IM/Bases de Datos Distribuidas. o 2.11.10 IM/Diseo Fsico de Bases de Datos. o 2.11.11 IM/Minera de Datos. o 2.11.12 IM/Almacenamiento y Recuperacin de Informacin. o 2.11.13 IM/Hipermedia. o 2.11.14 IM/Sistemas Multimedia. o 2.11.15 IM/Libreras Digitales.

34

2.12 SP. Asuntos Sociales y Profesionales (16 horas como mnimo) o 2.12.1 SP/Historia de la Computacin. (1 hora) o 2.12.2 SP/Contexto Social de la Computacin. (3 horas) o 2.12.3 SP/Herramientas Analticas. (2 horas) o 2.12.4 SP/tica Profesional. (3 horas) o 2.12.5 SP/Riesgos. (2 horas) o 2.12.6 SP/Operaciones de seguridad. o 2.12.7 SP/Propiedad Intelectual. (3 horas) o 2.12.8 SP/Privacidad y Libertades Civiles. (2 horas) o 2.12.9 SP/Crimen Informtico. o 2.12.10 SP/Economa en Computacin. o 2.12.11 SP/Estructuras de Trabajo Filosficas.

2.13 SE. Ingeniera de Software (29 horas como mnimo) o 2.13.1 SE/Diseo de Software. (8 horas) o 2.13.2 SE/Usando APIs. (3 horas) o 2.13.3 SE/Herramientas y Entornos de Software. (3 horas) o 2.13.4 SE/Procesos de Software. (2 horas) o 2.13.5 SE/Especificacin de Requerimientos. (4 horas) o 2.13.6 SE/Validacin y verificacin de software. (3 horas) o 2.13.7 SE/Evolucin del Software. (3 horas) o 2.13.8 SE/Administracin de Proyectos de Software. (3 horas) o 2.13.9 SE/Computacin Basada en Componentes. o 2.13.10 SE/Mtodos Formales. o 2.13.11 SE/Confiabilidad del Software. o 2.13.12 SE/Desarrollo de Sistemas Especializados. o 2.13.13 SE/Evaluacin de riesgos. o 2.13.14 SE/Mejorando la programacin: robustez y seguridad. o 2.13.15 CN. Ciencia Computacional (Sin mnimo de horas)) o 2.13.16 CN/Modelamiento y Simulacin. o 2.13.17 CN/Investigacin de Operaciones. o 2.13.18 CN/Computacin Paralela.

2.1 DS. Matemticas Discretas (43 horas como mnimo) DS/Funciones, Relaciones y Conjuntos. (6 horas) DS/Lgica Bsica. (10 horas) DS/Tcnicas de Prueba. (12 horas) DS/Conceptos Bsicos de Conteo. (5 horas) DS/Grfos y rboles. (4 horas) DS/Probabilidad Discreta. (6 horas)

El rea de Estructuras discretas es algo fundamental en ciencia de la computacin. Relativamente pocos cientficos en computacin trabajarn especficamente en
35

estructuras discretas, pero muchas otras reas de ciencia de la computacin requieren la habilidad para trabajar con conceptos de estructuras discretas. Estructuras discretas incluyen aspectos importantes de reas como: teora de conjuntos, lgica, teora de grafos y combinatoria (rama que estudia grupos aislados y problemas de combinacin). Los conocimientos de estructuras discretas son muy importantes en las reas de estructuras de datos y algoritmos, sin embargo, aparecen en todo lugar dentro de ciencia de la computacin como un todo. Por ejemplo, la habilidad para crear y entender una prueba - una prueba simblica formal o una menos formal pero aun con argumentos matemticamente rigurosos - es esencial para una especificacin formal, en verificacin, en bases de datos y en criptografa. Conceptos de teora de grafos son usados en redes, sistemas operativos y compiladores. Conceptos de teora de conjuntos son usados en ingeniera de software y bases de datos. Mientras el campo de ciencia de la computacin madura, ms y ms tcnicas sofisticadas de anlisis son aplicados a problemas prcticos. Para entender las tcnicas computacionales del futuro, los estudiantes de hoy en da necesitarn una fuerte base en estructuras discretas. Finalmente, es importante notar que algunas reas tienen lmites algo difusos, esto es especialmente verdad en estructuras discretas. Hemos recopilado en este documento un material de naturaleza matemtica que la educacin de ciencia de la computacin debe incluir y que educadores de ciencia de la computacin deben conocer lo suficiente para poder especificarlo con mucho detalle. Sin embargo, la decisin de donde colocar una lnea de divisin entre esta rea y el rea Algoritmos y Complejidad, fue inevitablemente arbitraria. Recordamos a los lectores que estos son tpicos de estas dos reas que algunas universidades incluirn en cursos con ttulos como ``Estructuras Discretas" y ``Matemticas Discretas"; algunas requerirn un curso o dos. En abril 2007, el SIGCSE Committee on the Implementation of a Discrete Mathematics Course public un reporte detallando tres modelos para un curso de matemticas discretas de un semestre para reunir los criterios articulados en CS2001; estos modelos quedan aplicados bajo las sugerencias levemente revisadas en este reporte temporal. Ver SIGCSE Committee Report On the Implementation of a Discrete Mathematics Course

Subsecciones

2.1.1 DS/Funciones, Relaciones y Conjuntos. (6 horas) 2.1.2 DS/Lgica Bsica. (10 horas) 2.1.3 DS/Tcnicas de Prueba. (12 horas) 2.1.4 DS/Conceptos Bsicos de Conteo. (5 horas) 2.1.5 DS/Grfos y rboles. (4 horas) 2.1.6 DS/Probabilidad Discreta. (6 horas)

2.1.1 DS/Funciones, Relaciones y Conjuntos. (6 horas) Tpicos

36

Funciones subyectivas, inyectivas, inversos, composicin). Relaciones (reflexibilidad, simetra, transitividad, relaciones de equivalencia). Conjuntos (Diagramas de Venn, complementos, producto cartesiano, conjuntos potencia). Principio de las casillas (pigeonhole). Cardinalidad y Conteo.

Objetivos

Explicar con ejemplos la terminologa bsica de funciones, relaciones y conjuntos. Desarrollar las operaciones asociadas con conjuntos, funciones y relaciones. Relacionar ejemplos prcticos al modelo apropiado de conjunto, funcin o relacin e interpretar la operacin asociada y terminologa en el contexto. Demostrar los principios bsicos del conteo, incluyendo el uso de la diagonalizacin y el principio de las casillas (pigeonhole).

2.1.2 DS/Lgica Bsica. (10 horas) Tpicos


Lgica proposicional. Conectivos lgicos. Tablas de verdad. Formas normales (conjuntiva y disyuntiva). Validacin. Lgica de predicados. Cuantificacin universal y existencial. Modus ponens y modus tollens. Limitaciones de la lgica de predicados.

Objetivos

Aplicar mtodos formales de lgica simblica proposicional y de predicados. Describir como las herramientas formales de lgica simblica son utilizadas para modelar algoritmos en situaciones reales. Usar demostraciones lgico-formales y razonamiento lgico para solucionar problemas tales como rompecabezas (puzzles). Describir la importancia y limitaciones de la lgica de predicados.

2.1.3 DS/Tcnicas de Prueba. (12 horas) Tpicos


Nociones de implicacin, opuesta, inversa, contrapositiva, negacin y contradiccin. La estructura de pruebas matemticas.
37

Pruebas directas. Pruebas por contra-ejemplos. Pruebas por contraposicin. Pruebas por contradiccin. Induccin Matemtica. Induccin fuerte. Definiciones matemticas recursivas. Buenas prcticas.

Objetivos

Bosquejar la estructura bsica y dar ejemplos de cada tipo de prueba descrita en esta unidad. Discutir que tipo de prueba es mejor para un problema dado. Relacionar las ideas de induccin matemtica con la recursividad y con estructuras definidas recursivamente. Identificar las diferencias entre induccin matemtica e induccin fuerte dando ejemplos de su apropiado uso en cada caso.

2.1.4 DS/Conceptos Bsicos de Conteo. (5 horas) Tpicos

Argumentos de conteo. a) Reglas de suma y producto. b) Principios de inclusin y exclusin. c) Progresiones aritmticas y geomtricas. d) Nmeros de Fibonacci.

Principio de las casillas (pigeonhole). Permutaciones y combinaciones. a) Definiciones bsicas. b)

38

Identidad de Pascal. c) El teorema binomial.

Resolucin de relaciones de recurrencia. a) Ejemplos comunes. b) El teorema maestro.

Objetivos

Calcular permutaciones y combinaciones de un conjunto e interpretar el significado en el contexto de una aplicacin particular. Establecer la definicin del Teorema Maestro. Solucionar una clase de ecuaciones recurrentes bsicas. Analizar un problema para crear ecuaciones de recurrencia relevantes o identificar preguntas importantes de conteo.

2.1.5 DS/Grfos y rboles. (4 horas) Tpicos


rboles. Grafos no dirigidos. Grafos dirigidos. rboles de expansin. Estrategias de recorrido.

Objetivos

Ilustrar con ejemplos la terminologa bsica de teora de grafos y algunas de las propiedades y casos especiales de cada una. Mostrar diferentes mtodos de recorrido en rboles y grafos. Modelar problemas en Ciencias de la Computacin usando grafos y rboles. Relacionar grafos y rboles con estructura de datos, algoritmos y conteo.

2.1.6 DS/Probabilidad Discreta. (6 horas) Tpicos

Espacios de probabilidad finita, medidas de probabilidad y eventos.


39

Probabilidad condicional, independencia, teorema de Bayes. Variables aleatorias enteras, esperanza.

Objetivos

Calcular las probabilidades de eventos y la esperanza de variables aleatorias para problemas elementales como juegos de azar. Diferenciar entre eventos dependientes e indepedientes. Aplicar el teorema del binomio a eventos independientes y el teorema Bayes a eventos dependientes. Aplicar las herramientas de probabilidad para resolver problemas tales como el mtodo de Monte Carlo y el anlisis de caso promedio de algoritmos y (hashing).

2.2 PF. Fundamentos de Programacin (47 horas como mnimo) PF/Construcciones fundamentales. (9 horas) PF/Algoritmos y Resolucin de Problemas. (6 horas) PF/Estructuras de Datos. (10 horas) PF/Recursividad. (4 horas) PF/Programacin Orientada a Eventos. (4 horas) PF/Orientacin a Objetos. (8 horas) PF/Fundamentos de seguridad de la Informacin. (4 horas) PF/Programacin segura. (2 horas)

La fluidez en un lenguaje de programacin es un requisito para estudiar la mayor parte de ciencia de la computacin. Los programas de ciencia de la computacin deben ensear a sus estudiantes como usar bien al menos un lenguaje de programacin; adems, deben ensear a sus estudiantes a ser competentes en lenguajes que hacen uso de los paradigmas orientados a objetos y basados en eventos. Esta rea de conocimiento incluye aquellas habilidades y conceptos que son esenciales para la prctica de la programacin independiente de los paradigmas. Como resultado, esta rea incluye unidades de conceptos fundamentales de programacin, estructuras de datos bsicas, procesos algortmicos y seguridad bsica. Estas unidades, sin embargo, no cubren toda la gama de conocimientos de programacin que un estudiante de ciencia de la computacin debe conocer. Muchas de las otras reas -en particular Lenguajes de Programacin (Programming Languages - LP) e Ingeniera de Software (Software Engineer - SE) - tambin contienen unidades relacionadas con programacin que son parte del ncleo de pregrado. En la mayora de los casos, estas unidades de igual manera podran haber sido asignadas a Fundamentos de Programacin o a otra rea mas avanzada.

Subsecciones
40

2.2.1 PF/Construcciones fundamentales. (9 horas) 2.2.2 PF/Algoritmos y Resolucin de Problemas. (6 horas) 2.2.3 PF/Estructuras de Datos. (10 horas) 2.2.4 PF/Recursividad. (4 horas) 2.2.5 PF/Programacin Orientada a Eventos. (4 horas) 2.2.6 PF/Orientacin a Objetos. (8 horas) 2.2.7 PF/Fundamentos de seguridad de la Informacin. (4 horas) 2.2.8 PF/Programacin segura. (2 horas)

2.2.1 PF/Construcciones fundamentales. (9 horas) Tpicos


Sintaxis bsica y semntica de un lenguaje de ms alto nivel. Variables, tipos, expresiones y asignaciones. Entrada y salida simple. Estructuras de control condicionales e iterativas. Funciones y paso de parmetros. Descomposicin estructurada.

Objetivos

Analizar y explicar el comportamiento de programas simples involucrando las estructuras de programacin fundamental cubiertas por esta unidad. Modificar y extender programas cortos que usan condicionales estndar, estructuras de control iterativas y funciones. Disear, implementar, probar y depurar un programa que use cada una de las siguientes estructuras fundamentales de programacin: clculos bsicos, entrada y salida simple, estructuras estndar condicionales e iterativas y definicin de funciones. Escoger la estructura apropiada condicional e iterativa para una estructura de programacin dada. Aplicar tcnicas de descomposicin estructurada o funcional para dividir un programa en pequeas partes. Describir los mecanismos de paso de parmetros.

2.2.2 PF/Algoritmos y Resolucin de Problemas. (6 horas) Tpicos


Estrategias para la solucin de problemas. El rol de los algoritmos en el proceso de solucin de problemas. Estrategias de implementacin para algoritmos. Estrategias de depuracin. El Concepto y propiedades de algoritmos.

Objetivos
41

Discutir la importancia de los algoritmos en el proceso de solucin de problemas. Identificar las propiedades necesarias de un buen algoritmo. Crear algoritmos para resolver problemas simples. Usar pseudocdigo o un lenguaje de programacin para implementar, probar y depurar algoritmos para resolver problemas simples. Describir estrategias tiles para depuracin.

2.2.3 PF/Estructuras de Datos. (10 horas) Tpicos


Representacin de datos numricos Rango, precisin y errores de redondeo. Arreglos. Registros. Cadenas y procesamiento de cadenas. Representacin de caracteres. Administracin del almacenamiento en tiempo de ejecucin. Punteros y referencias. Estructuras enlazadas. Estrategias de implementacin para pilas, colas y tablas hash. Estrategias de implementacin para grafos y rboles. Estrategias para escoger la estructura de datos correcta.

Objetivos

Describir la representacin de datos numricos y de caracteres Entender como la precisin y el redondeo puede afectar los clculos numricos. Discutir la representacin y uso de tipos de datos primitivos y estructuras de datos incorporadas en el lenguaje. Describir aplicaciones comunes para cada estructura de datos en la lista de temas. Implementar estructuras de datos definidas por el usuario en un lenguaje de alto nivel. Comparar implementaciones alternativas de estructuras de datos considerando su desempeo. Escribir programas que usan cada una de las siguientes estructuras de datos: arreglos, registros, cadenas, listas enlazadas, pilas, colas y tablas de hash. Comparar y contrastar los costos y beneficios de las implementaciones dinmicas y estticas de las estructuras de datos. Escoger la estructura de datos apropiada para modelar un problema dado.

2.2.4 PF/Recursividad. (4 horas) Tpicos

El concepto de recursividad.
42

Funciones matemticas recursivas. Funciones recursivas simples. Estrategias de dividir y conquistar. Backtracking recursivo.

Objetivos

Describir el concepto de recursividad y dar ejemplos de su uso. Identificar el caso base y el caso general de un problema definido recursivamente. Comparar soluciones iterativas y recursivas para problemas elementales tal como factorial. Describir la tcnica dividir y conquistar. Implementar, probar y depurar funciones y procedimientos recursivos simples. Describir como la recursividad puede ser implementada usando una pila. Discutir problemas para los cuales el backtracking es una solucin apropiada. Determinar cuando una solucin recursiva es apropiada para un problema.

2.2.5 PF/Programacin Orientada a Eventos. (4 horas) Tpicos


Mtodos para la manipulacin de eventos. Propagacin de eventos. Manejo de excepciones.

Objetivos

Explicar la diferencia entre programacin orientada a eventos y programacin por lnea de comandos. Disear, codificar, probar y depurar programas de manejo de eventos simples que respondan a eventos del usuario. Desarrollar cdigo que responda a las condiciones de excepcin lanzadas durante la ejecucin.

2.2.6 PF/Orientacin a Objetos. (8 horas) Tpicos


Diseo orientado a objetos. Encapsulacin y ocultamiento de la informacin. Separacin de comportamiento e implementacin. Clases y subclases. Herencia (sobreescritura, despacho dinmico). Polimorfismo (polimorfismo de subtipo vs. herencia).

Objetivos

43

Justificar la filosofa de diseo orientado a objetos y los conceptos de encapsulacin, abstraccin, herencia y polimorfismo. Disear, implementar, probar y depurar programas simples en un lenguaje de programacin orientado a objetos. Describir como los mecanismos de clases soportan encapsulacin y ocultamiento de la informacin. Disear, implementar y probar la implementacion de la relacin esun IsKindOf entre objetos usando jerarqua de clases y herencia. Comparar y contrastar las nociones de sobrecarga y sobreescritura de mtodos en un lenguaje orientado a objetos.

2.2.7 PF/Fundamentos de seguridad de la Informacin. (4 horas) Tpicos


Rol y propsito de de la seguridad en las computadoras y redes. Objetivos de seguridad: confidencialidad, integridad y disponibilidad. Polticas y estndares de seguridad. Mentalidad orientada a la seguridad. Defensa en profundidad. Amenazas comunes: worms, virus, troyanos, bloqueo de acceso a servicios. Estimacin de riesgos y anlisis de costo beneficio. Seguridad vs usabilidad.

Objetivos

Explicar los objetivos de lse seguridad de la informacin. Analizar los puntos de equilibrio inherentes a la seguridad. Explicar la importancia y las aplicaciones de la confidencialidad, integridad y disponibilidad. Entender las categoras bsicas de las amenazas a las computadoras y redes. Discutir problemas para crear polticas de seguridad para una organizacin de gran tamao. Defender la necesidad de ls proteccin y la seguridad y el rol de consideraciones ticas en el uso de computadores.

2.2.8 PF/Programacin segura. (2 horas) Tpicos


Validaciones importantes para evitar desbordes en array y cadenas. Construcciones en lenguajes de programacin para evitar problemas de seguridad. Cmo los atacantes usan el desborde para destruir la pila (stack) en tiempo de ejecucin.

Objetivos

44

Reescribir un simple programa para remover una simple vulnerabilidad. Explicar porque es o no es posible el desborde en un lenguaje de programacin de dominio del estudiante. Explicar porque una o ms construcciones de lenguaje pueden originar problemas de seguridad como desborde.

2.3 AL. Algoritmos y Complejidad (31 horas como mnimo) AL/Anlisis Bsico de Algoritmos. (4 horas) AL/Estrategias Algortmicas. (6 horas) AL/Algoritmos Fundamentales. (12 horas) AL/Algoritmos Distribuidos. (3 horas) AL/Computabilidad Bsica. (6 horas) AL/Clases de Complejidad P y NP. AL/Teora de Autmatas. AL/Anlisis Avanzado de Algoritmos. AL/Algoritmos Criptogrficos. AL/Algoritmos Geomtricos. AL/Algoritmos Paralelos.

Los algoritmos son fundamentales para la ciencia de la computacin y la ingeniera de software. El desempeo que muestra un sistema de software en el mundo real depende de solo dos cosas: (1) los algoritmos elegidos y (2) la idoneidad y la eficiencia de las distintas capas de la implementacin. Por lo tanto, un buen diseo de algoritmos es crucial para el desempeo de todos los sistemas de software. Ms aun, el estudio de algoritmos permite comprender la naturaleza intrnseca del problema, as como las posibles tcnicas de solucin independientemente del lenguaje de programacin, paradigma de programacin, hardware o algn otro aspecto de la implementacin. Una parte importante de la computacin es la habilidad de seleccionar algoritmos apropiados para propsitos particulares y aplicarlos en ellos, reconociendo la posibilidad de que no existan algoritmos idneos. Esta facilidad recae en entender el rango de algoritmos que atacan un conjunto importante de problemas bien definidos, reconociendo sus fortalezas y debilidades y su idoneidad en un contexto en particular. La eficiencia es un tema que se ve todo momento en esta rea. Con el surgimiento de procesadores de varios ncleos, los temas de algoritmos en paralelo son ms relevantes. Mientras que los temas de paralelismo siguen siendo listados como electivos, el comit cree que el rol del paralelismo en la currcula necesita ser considerada.

Subsecciones

2.3.1 AL/Anlisis Bsico de Algoritmos. (4 horas) 2.3.2 AL/Estrategias Algortmicas. (6 horas)


45

2.3.3 AL/Algoritmos Fundamentales. (12 horas) 2.3.4 AL/Algoritmos Distribuidos. (3 horas) 2.3.5 AL/Computabilidad Bsica. (6 horas) 2.3.6 AL/Clases de Complejidad P y NP. 2.3.7 AL/Teora de Autmatas. 2.3.8 AL/Anlisis Avanzado de Algoritmos. 2.3.9 AL/Algoritmos Criptogrficos. 2.3.10 AL/Algoritmos Geomtricos. 2.3.11 AL/Algoritmos Paralelos.

2.3.1 AL/Anlisis Bsico de Algoritmos. (4 horas) Tpicos


Anlisis asinttico de lmites en los casos promedio y superior. Identificar la diferencias entre el comportamiento entre el mejor, mediano y peor caso. Notacin Big , little , Omega y Theta . Clases de complejidad estndar. Medicin emprica de desempeo. Puntos de equilibrio entre tiempo vs espacio en algoritmos. Uso relaciones de recurrencia para el anlisis de algoritmos recursivos.

Objetivos

Explicar el uso de las notaciones Big O, Omega y Theta para describir la cantidad de trabajo hecha por un algoritmo. Uso de notaciones Big , Omega y Theta para determinar los lmites asintticos superior, inferior y el ms prximo en tiempo y espacio en complejidad de algoritmos . Determinar la complejidad de tiempo y espacio de algoritmos simples. Deducir la relacin de recurrencia que describe la complejidad de tiempo de algoritmos definidos recursivamente. Solucionar relaciones de recurrencia elemental.

2.3.2 AL/Estrategias Algortmicas. (6 horas) Tpicos


Algoritmos de fuerza bruta (brute-force). Algoritmos voraces (greedy). Divide y vencers. Backtracking. Branch-and-bound. Heursticos. Emparejamiento de patrones y algoritmos de cadenas/texto. Algoritmos de aproximacin numrica.

46

Objetivos

Describir las desventajas de los algoritmos de fuerza bruta. Para cada una de las diferentes clases de algoritmos (fuerza bruta, voraces, dividir y conquistar, Backtracking,Branch-and-bound y heursticos), identificar un ejemplo del comportamiento humano cotidiano que ejemplifique el concepto bsico. Implementar un algoritmo voraz para resolver apropiadamente un problema. Implementar un algoritmo de divide y vencers para solucionar apropiadamente un problema. Utilizar Backtracking para solucionar problemas tal como el de navegacin en un laberinto. Describir varios mtodos de solucin de problemas heursticos. Utilizar emparejamiento de patrones para analizar subcadenas. Utilizar aproximacin numrica para resolver problemas matemticos, tal como el de encontrar las races de un polinomio.

2.3.3 AL/Algoritmos Fundamentales. (12 horas) Tpicos


Algoritmos numricos simples. Bsqueda secuencial y binaria. Algoritmos cuadrticos de ordenamiento (seleccin, insercin). Algoritmos de tipo (Quicksort, heapsort, mergesort). Tablas de (hash) incluyendo estrategias de solucin para las colisiones. rboles de bsqueda binaria. Representacin de grafos (Listas y Matrices de adyacencia). Recorridos por amplitud y profundidad. El algoritmo del camino ms corto (algoritmos de Dijkstra y Floyd). Cerradura transitiva (algoritmo de Floyd). rbol de expansin mnima (algoritmos de Kruskal y Prim). Ordenamiento Topolgico.

Objetivos

Implementar los algoritmos cuadrticos ms comunes y los algoritmos de ordenamiento . Disear e implementar una funcin de (hash) apropiada para una aplicacin. Disear e implementar un algoritmo de resolucin de colisiones para tablas de hash. Discutir la eficiencia computacional de los principales algoritmos de ordenamiento, bsqueda y (hashing). Discutir otros factores, adems de la eficiencia computacional, que influyen en la eleccin de los algoritmos, tales como tiempo de programacin, mantenimiento y el uso de patrones especficos de aplicacin en los datos de entrada.
47

Resolver problemas usando los algoritmos de grafos fundamentales, incluyendo bsqueda por amplitud y profundidad; caminos ms cortos con uno y mltiples orgenes, cerradura transitiva, ordenamiento topolgico y al menos un algoritmo de rbol de expansin mnima. Demostrar las siguientes capacidades: evaluar algoritmos, seleccionar una opcin de un rango posible, proveer una justificacin para tal eleccin e implementar el algoritmo..

2.3.4 AL/Algoritmos Distribuidos. (3 horas) Tpicos


Consenso y eleccin. Deteccin de finalizacin. Tolerancia a fallas. Estabilizacin.

Objetivos

Explicar el paradigma distribuido. Explicar un algoritmo distribuido simple. Determinar cuando usar los algoritmos de consenso o eleccin. Distinguir entre relojes fsicos y lgicos. Describir el ordenamiento relativo de eventos en un algoritmo distribuido.

2.3.5 AL/Computabilidad Bsica. (6 horas) Tpicos


Mquinas de estado finito. Gramticas libres del contexto. Problemas tratables e intratables. Funciones no computables. El problema de la parada. Implicaciones de la no-computabilidad.

Objetivos

Discutir el concepto de mquinas de estado finito. Explicar las gramticas libres de contexto. Disear una mquina de estados finitos determinstica para aceptar un lenguage especfico. Explicar cmo algunos problemas no tienen solucin algortmica. Proveer ejemplos que ilustren el concepto de no-computabilidad.

2.3.6 AL/Clases de Complejidad P y NP.

48

Tpicos

Definicin de las clases P y NP. NP-completitud (El teorema de Cook). Problemas NP-completos estndares. Tcnicas de reduccin.

Objetivos

Definir las clases P y NP. Explicar el significado de la NP-Completitud. Probar que un problema es NP-completo reducciendo un problema NPCompleto clsico conocido a ste.

2.3.7 AL/Teora de Autmatas. Tpicos


Autmatas finitos determinsticos (DFAs). Autmatas finitos no determinsticos (NFAs). Equivalencias entre los DFAs y NFAs. Expresiones regulares. El teorema del bombeo (pumping) para expresiones regulares. Autmatas de pila (PDAs). Relacin entre los PDAs y las gramticas libres del contexto. Propiedades de las gramticas libres del contexto. Mquinas de Turing. Mquinas de Turing no determinsticas. Conjuntos y lenguajes. La jerarqua de Chomsky. La tesis de Church-Turing.

Objetivos

Determinar la localizacin de un lenguaje en la jerarqua de Chomsky (conjuntos regulares, libres del contexto, sensibles al contexto y lenguajes enumerables recursivos). Probar que un lenguaje se encuentra en una clase especfica y que este no se encuentra en la siguiente clase inferior. Conversiones entre notaciones potentes equivalentes para un lenguaje, incluyendo conversiones entre DFAs, NFAs y expresiones regulares as como entre PDAs y CFGs. Explicar al menos un algoritmo de de anlisis de arriba hacia abajo (parsing topdown) o de anlisis de abajo hacia arriba (bottom-up). Explicar la tesis de Church-Turing y su importancia.

2.3.8 AL/Anlisis Avanzado de Algoritmos.

49

Tpicos

Anlisis amortizado. Algoritmos en lnea (online) y fuera de lnea (offline). Algoritmos aleatorios. Programacin dinmica. Optimizacin combinatoria.

Objetivos

Usar el mtodo potencial para proveer un anlisis amortizado sobre una estructura de datos no vista previamente dando la funcin potencial. Explicar porqu el anlisis competitivo es una medida apropiada para los algoritmos en lnea. Explicar el uso de aleatorizacin en el diseo de algoritmos para un problema donde un algoritmo determinstico es desconocido o mucho ms difcil. Disear e implementar soluciones con programacin dinmica para un problema.

2.3.9 AL/Algoritmos Criptogrficos. Tpicos


Revisin histrica de la criptografa. Criptografa de llaves privadas y el problema del intercambio de llaves. Criptografa de llaves pblicas. Firmas digitales. Protocolos de seguridad. Aplicaciones (pruebas de cero-conocimiento, autenticacin y otros).

Objetivos

Describir algoritmos numrico-tericos bsicos eficientes, incluyendo el mximo comn divisor, inversa multiplicativa mod n y elevar a potencias mod n. Describir al menos un cripto-sistema de llave pblica, incluyendo una suposicin necesaria de complejidad terica sobre su seguridad. Crear extensiones simples de protocolos criptogrficos, usando protocolos conocidos y primitivas criptogrficas.

2.3.10 AL/Algoritmos Geomtricos. Tpicos


Segmentos de lneas: propiedades, intersecciones. Algoritmos de generacin del polgono convexo mnimo (convex hull).

Objetivos
50

Describir y dar un anlisis de tiempo para al menos dos algoritmos para obtencin del polgono convexo mnimo (convex hull). Justificar la cota inferior para encontrar el polgono convexo mnimo (convex hull). Describir adicionalmente al menos un algoritmo geomtrico computacional eficiente, tal como el de encontrar el par ms cercano de puntos, capas convexas o capas mximas.

2.3.11 AL/Algoritmos Paralelos. Tpicos


El modelo PRAM. Lecturas y escrituras exclusivas vs concurrentes. Salto de punteros. El teorema de Brent y el trabajo eficiente.

Objetivos

Describir la implementacin de lstas enlazadas en un PRAM. Usar operaciones paralelas para implementar clculos simples eficientes en paralelo. Explicar el teorema de Brent y su relevancia.

2.4 AR. Arquitectura y Organizacin (36 horas como mnimo) AR/Lgica Digital y Representacin de Datos. (7 horas) AR/Arquitectura y Organizacin de Computadores. (9 horas) AR/Interfases y Estrategias de I/O. (3 horas) AR/Arquitectura de Memoria. (5 horas) AR/Organizacin Funcional. (6 horas) AR/Multiprocesamiento. (6 horas) AR/Mejoras de Desempeo. AR/Arquitecturas Distribuidas. AR/Dispositivos. AR/Tendencias en Computacin.

El computador se encuentra en el corazn de la computacin. Sin l, la mayora de las disciplinas de computacin hoy en da seran ramas de la matemtica terica. Un prefesional de cualquier rea de computacin no debe pensar en el computador como slo una caja negra que ejecuta programas como magia. Todos los estudiantes de computacin deben adquirir algn entendimiento y apreciacin acerca de los componentes funcionales del computador, sus caractersticas, su desempeo y sus interacciones. Los estudiantes deben entender la arquitectura del computador para poder hacer un mejor uso de herramientas de software y lenguajes del computador que usan para crear programas. En esta introduccin, el trmino arquitectura es tomado para
51

incluir el conjunto de instrucciones de mquina (la abstraccin del computador que tiene el programador), organizacin o microarquitectura (la implementacin interna de una computadora al nivel de la unidad funcional y de registros) y la arquitectura del sistema (la organizacin de una computador al nivel de cach y bus). Los estudiantes deben tambin entender las compensaciones complejas entre la velocidad del reloj de la CPU, tamao del cach, organizacin de bus, nmero de los ncleos de los procesadores, etc. La arquitectura del computador tambin fortalece otras reas de la curricula de computacin como son sistemas operativos (entrada/salida, tecnologa de memorias) y lenguajes de alto nivel (punteros, paso de parmetros). Los objetivos de aprendizaje especificados para este tema corresponden primeramente al ncleo y estn destinadas a apoyar programas que requieran slo el mnimo de 36 horas de arquitectura del computador. Para programas que deseen ensear ms del mnimo, los mismos temas pueden ser tratados en un nivel ms alto implementando una secuencia de dos cursos. Para programas que deseen cubrir temas electivos, esos temas deben ser introducidos en una secuencia de dos cursos y/o pueden ser tratados en una forma ms comprensiva en un tercer curso.

Subsecciones

2.4.1 AR/Lgica Digital y Representacin de Datos. (7 horas) 2.4.2 AR/Arquitectura y Organizacin de Computadores. (9 horas) 2.4.3 AR/Interfases y Estrategias de I/O. (3 horas) 2.4.4 AR/Arquitectura de Memoria. (5 horas) 2.4.5 AR/Organizacin Funcional. (6 horas) 2.4.6 AR/Multiprocesamiento. (6 horas) 2.4.7 AR/Mejoras de Desempeo. 2.4.8 AR/Arquitecturas Distribuidas. 2.4.9 AR/Dispositivos. 2.4.10 AR/Tendencias en Computacin.

2.4.1 AR/Lgica Digital y Representacin de Datos. (7 horas) Tpicos


Introduccin a la lgica digital (compuertas lgicas, flip-flops, circuitos). Expresiones lgicas y expresiones booleanas. Representacin datos numricos. Aritmtica con signo y sin signo. Rango, precisin y errores en aritmtica de punto flotante. Representacin de texto, audio e imgenes. Compresin de datos.

Objetivos

Disear un circuito simple usando los bloques de construccin fundamentales.


52

Apreciar el efecto de las operaciones AND, OR, NOT y XOR en datos binarios. Entender como nmeros, texto, imgenes y sonido pueden ser representados en forma digital y discutir las limitaciones en cada representacin. Entender los errores debido a los efectos de redondeo y como su propagacin afecta la precisin de clculos encadenados. Apreciar como los datos pueden ser comprimidos para reducir los requerimientos de almacenamiento incluyendo el concepto de prdida de informacin debido a la compresin.

2.4.2 AR/Arquitectura y Organizacin de Computadores. (9 horas) Tpicos


Visin panormica de ls historia de las computadoras digitales. Introduccin al conjunto de instrucciones de la arquitectura, microarquitectura y arquitectura del sistema. Arquitectura del procesador, tipos de instruccin, conjuntos de registros y modos de direccionamiento. Estructuras del procesador, memoria a registros y arquitecturas de carga/almacenamiento. Secuencias de instrucciones, flujos de control, llamadas a subrutinas y mecanismos de retorno. Estructura de programas a nivel de mquina. Limitaciones de arquitecturas de bajo nivel. Soporte de arquitecturas de bajo nivel para lenguajes de alto nivel.

Objetivos

Describir el progreso de las computadoras desde los tubos de vacio hasta la Very Large Scale Integration (VLSI). Apreciar el conjunto de instrucciones de la arquitectura, Industry Standard Architecture (ISA) y la naturaleza de instrucciones a nivel de mquina en trminos de su funcionalidad y uso de recursos (registros y memoria). Entender la relacion entre el conjunto de instrucciones de arquitectura, microarquitectura y arquitectura del sistema asi como sus roles en el desarrollo de la computadora. Prestar atencin a las varias clases de instrucciones: movimiento de datos, aritmtica, lgica y control de flujo. Apreciar la diferencia entre ISAs registro-a-memoria e ISAs de carga/almacenamiento. Apreciar como las operaciones condicionales estn implemenentadas a nivel de mquina. Entender la forma en la cual se ejecuta el llamado y retorno de subrutinas. Apreciar como la falta de recursos en Proveedores de Servicios de Internet (Internet Service Providers- ISP) tiene un impacto en los lenguajes de alto nivel y en el diseo de compiladores. Entender como, a nivel de lenguaje emsamblador, los parmetros son pasados a las subrutinas y como se crea y accesa un ambiente de trabajo local.

53

2.4.3 AR/Interfases y Estrategias de I/O. (3 horas) Tpicos


Fundamentos de entrada y salida: protocolos de inicio de comunicacin (handshaking) y buffering. Mecanismos de interrupcin: en forma de vector y con prioridades, notificacin de interrupcin. Buses: protocolos de buses, arbitraje, Acceso directo a memoria (DMA). Buses modernos: Peripheral Component Interconnect Express (PCIe), USB, Hypertransport.

Objetivos

Apreciar la necesidad de comunicaciones open-loop y closed-loop y el uso de buffer para el control de flujo de datos. Explicar como las interrupciones son utilizadas para implementar controles de I/I y transferencia de datos. Identificar varios tipos de buses en un sistema de computadoras y entender como los dispositivos compiten y ganan el acceso al bus. Prestar atencin al progreso de la tecnologa de buses y entender las caractersticas y el desempeo de un cojunto de buses modernos (seriales y paralelos).

2.4.4 AR/Arquitectura de Memoria. (5 horas) Tpicos


Sistemas de almacenamiento y su tecnologa (semiconductores, magnticos). Estndares de almacenamiento (CD-ROM, DVD, Blue-Ray). Jerarqua de memoria, latencia y rendimiento (throughput). Memorias cache, principios de su operacin, polticas de reemplazo, cache multinivel.

Objetivos

Identificar los tipos principales de la tecnologa de memoria. Apreciar la necesidad de estndares de almacenamiento para mecanismos complejos de almacenamiento de datos tales como un DVD. Entender porque la jerarqua de memorias es necesaria para reducir la latencia efectiva de la memoria. Apreciar que la mayora de datos en el bus de memoria de debe a a trfico de recarga en la memoria cache. Describir las varias formas de organizar la memoria cache y apreciar el punto de equilibrio entre costo y desempeo para cada configuracin. Apreciar la necesidad de la coherencia de la memoria cache en sistemas de mltiples procesadores.

54

2.4.5 AR/Organizacin Funcional. (6 horas) Tpicos


Revisin de lenguajes de transferencia de registro, para describir las operaciones internas en un computador. Micro arquitecturas estructuradas y microprogramadas. Pipelining de instrucciones y paralelismo a nivel de instrucciones (InstructionLevel Parallelism) . Visin general de arquitecturas super escalares. Desempeo de procesador y del sistema. Desempeo: sus medidas y limitaciones. El significado de la disipacin de calor y sus efectos en estructuras de computadores.

Objetivos

Revisar el uso de lenguajes de transferencias de registros para describir operaciones internas de un computador. Entender como una unidad de control de CPU interpreta una instruccin a nivel de mquina de forma directa o como un microprograma. Apreciar como el desempeo de un procesador puede mejorar a travs de la sobreposicin de intrucciones simultaneamente. Entender la diferencia entre el desempeo del procesador y desempeo del sistema (ej. los efectos de la memoria del sistema y desempeo global de buses y software). Apreciar como arquitecturas superescalares utilizan unidades aritmticas mltiples para ejecutar ms de una instruccin por ciclo de reloj.. Entender como el desempeo de una computadora es medido en trminos de Millones de Instruciones por Segundo (Million of Instrucctions Per Second MIPS) o como un promedio de un conjunto de pruebas con nmeros con punto flotante y enteros (SPECmarks) as como sus limitaciones para ambas medidas. Apreciar la relacin entre disipacin de calor y desempeo de computadoras y la necesidad de minimizar el consumo de energia en aplicaciones mviles.

2.4.6 AR/Multiprocesamiento. (6 horas) Tpicos


La ley de Amdahl. Procesamiento en vectores pequeos (operaciones multimedia). Procesadores Multincleos y Multihebras. La taxonoma de Flynn: Estructuras multiprocesador y arquitecturas. Sistemas de programacin de mltiples procesadores. GPU y procesadores grficos de propsito especial. Introduccin a la lgica reconfigurable y procesadores de propsito especial.

Objetivos
55

Discutir el concepto de procesamiento paralelo y la relacin entre paralelismo y desempeo. Apreciar que los tipos de datos multimedia (ej. audio y datos visuales de 8/16 bits) pueden ser procesados en paralelo en registros de 64 bits para mejorar el desempeo. Entender como el desempeo puede ser mejorado incorporando mltiples procesadores en un nico chip. Apreciar la necesidad de expresar algoritmos en una forma que permita la ejecucin en procesadores paralelos. Entender como los procesadores grficos de propsito especial (GPUs) pueden acelerar el desempeo de aplicaciones grficas. Entender la organizacin de estructuras computacionales que puedan ser electronicamente configuradas y reconfiguradas.

2.4.7 AR/Mejoras de Desempeo. Tpicos


Prediccin de bifurcacin. Ejecucin especulativa. Arquitectura superescalar. Ejecucin fallida (Out-of-order). Multi-hebras. Escalabilidad. Introduccin a las arquitecturas Very Long y Executive-Process/Interactive Control (EPIC). Prioridad de acceso a memoria.

Instruction

Word (VLIW)

Objetivos

Explicar el concepto de prediccin de ramificacin y su uso en la mejora del desempeo mquinas en paralelas. Entender como la ejecucin especulativa puede mejorar el desempeo. Proveer una descripcin detallada de arquitecturas super escalares y la necesidad de asegurar la correctitud del programa cuando se ejecutan instrucciones fallidas (out-of-order). Explicar la ejecucin especulativa e identificar las condiciones que la justifican. Discutir las ventajas en el desempeo que las multihebras pueden ofrecer junto con los factores que dificultan obtener el mximo beneficio de esta estrategia. Apreciar la naturaleza de las arquitecturas VLIW y EPIC y su diferencia entre ellas asi como entre procesadores superescalares. Entender como un procesador reordena cargas y descargas de memoria para incrementar su desempeo.

2.4.8 AR/Arquitecturas Distribuidas. Tpicos

56

Introduccin a LANs y WANs y la historia de las redes y de la Internet. Diseo de protocolos por capas, estndares de redes. Computacin en redes y multimedia distribuida. Computacin mvil e inalmbrica. Streams and datagramas. Conceptos de redes en la capa fsica. Conceptos en la capa de enlace de datos (framing, control de errores, control de flujos, protocolos). Conexin entre redes y ruteo (algoritmos de ruteo y control de congestin). Servicios de la capa de transporte (establecimiento de conexin y asuntos de desempeo).

Objetivos

Explicar los componentes bsicos de sistemas de redes y diferenciar entre LANs y WANs. Discutir asuntos de arquitecturales involucrados en el diseo de protocolos de red por capas. Explicar en qu se diferencian las arquitecturas de redes y de sistemas distribuidos. Apreciar los requerimientos especiales de la computacin inalmbrica. Entender la diferencia entre los roles de la capa fsica y la capa de enlace de datos y apreciar como inperfecciones en la capa fsica son manejadas en la capa de enlace de datos. Describir tecnologas emergentes y el rea de computacin centradas en redes as como evaluar las capacidades y limitaciones actuales y su potencial a corto plazo. Entender como la capa de redes puede detectar y corregir errores.

2.4.9 AR/Dispositivos. Tpicos


Representacin digital de valores analgicos-cuantificacin y muestreo. Sonido y audio, imagenes y grficos, animacin y video multimedia. Estndares multimedia: audio, msica, grficos, imagen, telefona, video, TV. Sensores de entrada: temperatura, presin, posicin y movimiento. Dispositivos de entrada: ratn, teclado (texto y musical), escaners, touch screens, de voz. Dispositivos de salida: visuales displays e impresoras. Codificacin y decodificacin de sistemas multimedia incluyendo compresin y descompresin. Ejemplos de sistemas basados en computadores: Global Positioning System (GPS), MPEG-1 Audio Layer 3 (MP3), cmaras digitales.

Objetivos

57

Entender como cantidades analgicas, como la presin, pueden ser representadas en forma digital y como el uso de representaciones finitas lleva a errores de cuantificacin. Apreciar la necesidad de estndares multimedia y estar preparado para explicar, en lenguaje no tcnico, que es lo que busca el estndar. Entender como seales multimedia usualmente deben ser comprimidos para convservar el ancho de banda usando codificacin con prdida (lossless or lossy). Discutir el diseo, construccin y principios operativos de sensores de voltaje en un conductor elctrico (Hall-effect) y medidores de tensin (strain gauges). Apreciar como operan los dispositivos de entrada tpicos. Entender los principios de operacin y desempeo de varios dispositivos visuales displays. Estudiar la operacin de dispositivos basados en computadoras de alto desempeo tales como cmaras digitales.

2.4.10 AR/Tendencias en Computacin. Tpicos


Tecnologa de semiconductores y la ley de Moore. Limitaciones de la tecnologa de semiconductores. Computacin cuntica. Computacin ptica. Computacin Molecular (Biolgica). Nuevas tecnologas de memorias.

Objetivos

Apreciar la base fsica fundamental de la computacin moderna. Entender como las propiedades fsicas de la materia imponen limitaciones a la tecnologa de computadores. Apreciar como la naturaleza cuntica de la materia puede ser explotada para permitir paralelismo masivo. Apreciar como la luz puede ser usada para realizar ciertos tipos de clculo. Entender como las propiedades de molculas complejas pueden ser explotadas por computadoras orgnicas. Entender las tendencias en el diseo de memorias tales como Ovonic Unified Memories (OUM) y memorias ferromagnticas.

2.5 OS. Sistemas Operativos (16 horas como mnimo) OS/Visin General de los Sistemas Operativos. (2 horas) OS/Principios de los Sistemas Operativos. (2 horas) OS/Concurrencia. (6 horas) OS/Planeamiento y Despacho. (3 horas) OS/Administracin de Memoria. (3 horas) OS/Administracin de Dispositivos. OS/Seguridad y Proteccin.
58

OS/Sistema de Archivos. OS/Sistemas Empotrados y de Tiempo Real. OS/Tolerancia a Fallas. OS/Evaluacin del Desempeo de Sistemas. OS/Scripting. OS/Anlisis Forense Digital. OS/Modelos de seguridad.

Un sistema operativo define una abstraccin del comportamiento del hardware con los cules los programadores pueden controlar el hardware. Tambin gestiona recursos compartindolos entre los usuarios del computador. Los temas en esta rea explican los asuntos que infuencian el diseo de sistemas operativos contemporneos. Los cursos que cubren esta rea tpicamente incluyen un componente de laboratorio para permitir a los estudiantes experimentar con sistemas operativos. Tras el paso de los aos, los sistemas operativos y sus abstracciones se han vuelto complejos comparados con las tpicas aplicaciones de software. Es necesario garantizar que el estudiante entienda la importancia de utilizar un sistema operativo antes de un estudio detallado de la implementacin interna de algoritmos y estructura de datos. Por lo tanto estos temas abordan tanto el uso de un sistema operativo (parte externa) y sus diseo e implementacin (parte interna). Muchas otras ideas concernientes al uso de un sistema operativo tienen una aplicacin ms amplia a lo largo del campo de la ciencia de la computacin, como lo es a programacin concurrente. Estudiar el diseo interno tiene importancia en diversas reas como la programacin fiable, diseo e implementacin de algoritmos, desarrollo de dispositivos modernos, construccin de ambientes virtuales, cach de material de la web, construccin de sistemas de seguridad y proteccin, gestin de redes y muchos otras reas.

Subsecciones

2.5.1 OS/Visin General de los Sistemas Operativos. (2 horas) 2.5.2 OS/Principios de los Sistemas Operativos. (2 horas) 2.5.3 OS/Concurrencia. (6 horas) 2.5.4 OS/Planeamiento y Despacho. (3 horas) 2.5.5 OS/Administracin de Memoria. (3 horas) 2.5.6 OS/Administracin de Dispositivos. 2.5.7 OS/Seguridad y Proteccin. 2.5.8 OS/Sistema de Archivos. 2.5.9 OS/Sistemas Empotrados y de Tiempo Real. 2.5.10 OS/Tolerancia a Fallas. 2.5.11 OS/Evaluacin del Desempeo de Sistemas. 2.5.12 OS/Scripting. 2.5.13 OS/Anlisis Forense Digital. 2.5.14 OS/Modelos de seguridad.

59

2.5.1 OS/Visin General de los Sistemas Operativos. (2 horas) Tpicos


Rol y propsito de los sistemas operativos. Historia del desarrollo de los sistemas operativos. Funcionalidad de un sistema operativo tpico. Mecanismos de soporte a modelos cliente-servidor, dispositivos hand-held. Asuntos de diseo (eficiencia, robustez, flexibilidad, portabilidad, seguridad, compatibilidad). Influencias de la seguridad, redes, multimedia, ventanas.

Objetivos

Explicar los objetivos y funciones de los sistemas operativos modernos. Describir como los sistemas operativos han evolucionado en el tiempo desde sistemas primitivos batch a sofisticados sistemas multiusuarios. Analizar las ventajas y desventajas inherentes en el diseo de sistemas operativos. Describir las funciones de un sistema operativo contemporneo con respecto a la conveniencia, eficiencia y habilidad para evolucionar. Discutir sistemas operativos de tipos distribuido, para redes y cliente-servidor y como ellos difieren de un sistema operativo para un nico usuario. Identificar las amenazas potenciales a sistemas operativos y el diseo de caractersticas de seguridad para resguardarlos. Describir como los temas tales como el software de cdigo abierto y el incremento del uso de Internet estn influyendo el diseo de sistemas operativos.

2.5.2 OS/Principios de los Sistemas Operativos. (2 horas) Tpicos


Mtodos de estructuracin (monolticos, por capas, modulares, modelos de microkernel). Abstracciones, procesos y recursos. Conceptos de Application Program Interfaces (APIs). Necesidad de las aplicaciones y evolucin de las tcnicas de hardware y software. Organizacin de dispositivos. Interrupciones: mtodos e implementaciones. Concepto de estado de usuario/sistema y proteccin, transicin al modo Kernel.

Objetivos

Explicar el concepto de una capa lgica. Explicar los beneficios de la construccin de capas abstractas de forma jerrquica. Defender la necesidad de APIs y middleware.
60

Describir como los recursos computacionales son utilizados por software de aplicacin y administrados por software del sistema. Contrastar el modo usuario y el modo kernel en un sistema operativo. Discutir las ventajas y desventajas de utilizar procesamiento de interrupciones. Comparar y contrastar las diversas formas de estructurar un sistema operativo tales como orientado a objetos, modular, microkernel y por capas. Explicar el uso de una lista de dispositivos y una cola de controladores drivers de entrada y salida.

2.5.3 OS/Concurrencia. (6 horas) Tpicos


Estados y diagramas de estados. Estructuras (lista de procesos listos para ejecucin, bloques de control de procesos, etc). Despachos y cambio de contexto. El rol de las interrupciones. Ejecucin concurrente: ventajas y desventajas. El problema de exclusin mutua y algunas soluciones. (Deadlock): causas, condiciones y prevencin. Modelos y mecanismos de sincronizacin (semforos, monitores, variables de condicin y punto de encuentro rendezvous). Problemas del productor-consumidor y sincronizacin. Problemas de multiprocesamiento (Spin-Locks, reentrada).

Objetivos

Describir la necesidad de la concurrencia dentro de la estructura de un sistema operativo. Demostrar los problemas potenciales en tiempo de ejecucin originados por la operacin concurrente de muchas tareas separadas. Resumir la gama de mecanismos que pueden ser empleados en el nivel de sistemas operativos para entender los sistemas concurrentes y describir los beneficios de cada uno. Explicar los diferentes estados que una tarea podra atravesar y las estructuras de datos necesarias para soportar la administracin de muchas tareas. Listar los diferentes mtodos para resolver el problema de la exclusin mutua en un sistema operativo. Describir las razones por las cuales utilizar interrupciones, despachos y cambio de contexto para soportar la concurrencia en un sistema operativo. Crear estados y diagramas de transicin para el dominio de problemas simples. Discutir la utilidad de estructuras de datos, tales como pilas y colas en el manejo de concurrencia. Explicar las condiciones que nos conducen al Deadlock.

2.5.4 OS/Planeamiento y Despacho. (3 horas)

61

Tpicos

Planeamiento preventivo y no preventivo. Planeamiento y polticas. Procesos y hebras. Deadlines y preocesos de tiempo real.

Objetivos

Comparar y contrastar los algoritmos comunes usados para el planeamiento preventivo y no preventivo de tareas en sistemas operativos, tales como prioridad, desempeo, comparacin y esquemas de particin justa. Describir las relaciones entre los algoritmos de planeamiento y dominios de aplicacin. Discutir los tipos de planeamiento del procesador tales como: corto plazo (shortterm), mediano plazo (medium-term), largo plazo (long-term) y entrada/salida. Describir la diferencia entre procesos y hebras. Comparar y contrastar las aproximaciones dinmicas y estticas de planeamiento en tiempo real. Discutir la necesidad de planeamiento preventivo y de plazos (deadline). Identificar las formas en que la lgica incorporada en los algoritmos de planeamiento son aplicables a otros dominios, tales como entrada/salida de disco, planeamiento de red, planeamiento del proyecto y otros problemas no relacionados a la computacin.

2.5.5 OS/Administracin de Memoria. (3 horas) Tpicos


Revisin de la memoria fsica y de la administracin de la memoria de hardware. Paginamiento y memoria virtual. Conjuntos de trabajos y eliminacin de memoria trashing. Caching.

Objetivos

Explicar la jerarqua de la memoria y los puntos de equilibrio entre costo y desempeo. Explicar el concepto de memoria virtual y cmo esta es soportada en hardware y software. Resumir los principios de memoria virtual aplicados a caching, paginamiento y segmentacin. Evaluar los intercambios en trminos de tamao de memoria (memoria principal, memoria cache, memoria auxiliar) y velocidad del procesador. Sustentar las distintas opciones de asignacin de memoria a las tareas, citando las ventajas de cada una. Describir las razones y el uso de la memoria cache. Discutir el concepto de trashing, tanto en trminos del porqu de su ocurrencia y de las tcnicas usadas para reconocer y administrar el problema.
62

2.5.6 OS/Administracin de Dispositivos. Tpicos


Caractersticas de dispositivos seriales y paralelos. Diferencias de abstraccin de dispositivos. Estrategias de buffering. Acceso directo a memoria. Recuperacin de fallas.

Objetivos

Explicar la diferencia clave entre dispositivos seriales y paralelos, e identificar las condiciones en las cuales cada uno es apropiado. Identificar las relaciones entre el hardware fsico y los dispositivos virtuales mantenidos por el sistema operativo. Explicar elbufferingy describir las estrategias de como implementarlo. Diferenciar los mecanismos usados en interfaces con diversos dispositivos (incluyendo dispositivos handheld, redes, multimedia) en una computadora y explicar las implicancias de esto para el diseo de un sistema operativo. Describir las ventajas y desventajas del acceso directo a memoria y discutir las circunstancias en las cuales su uso es garantizado. Identificar los requerimientos para la recuperacin de fallas. Implementar un driver simple para un conjunto de posibles dispositivos.

2.5.7 OS/Seguridad y Proteccin. Tpicos


Visin paranormica de la seguridad del sistema. Poltica y mecanismos de separacin. Mtodos de seguridad y dispositivos. Proteccin, control de acceso y autenticacin. Copias de seguridad.

Objetivos

Defender las necesidades de proteccin y seguridad y el rol de las consideraciones ticas en el uso de la computadores. Listar las caractersticas y limitaciones de un sistema operativo usado para brindar proteccin y seguridad. Explicar los mecanismos disponibles en un sistema operativo para el control de acceso a recursos. Llevar a cabo tareas simples de administracin del sistema (sysadmin) de acuerdo a una poltica de seguridad, por ejemplo creacin de cuentas, modificacin de permisos, aplicacin de parches de seguridad y copias de seguridad de rutina.

63

2.5.8 OS/Sistema de Archivos. Tpicos


Archivos: datos, metadatos, operaciones, organizacin, buffering, secuenciales y no secuenciales. Directorios: contenidos y estructura. Sistemas de archivos: particionamiento, montaje/desmontaje, sistemas de archivos virtuales. Tcnicas de implementacin estndares. Archivos mapeados en memoria. Sistemas de archivos de propsito especial. Nombrado, bsqueda, acceso, copias de respaldo.

Objetivos

Listar todas las consideraciones que soportan los sistemas de archivos. Comparar y contrastar los diferentes abordajes de la organizacin de archivos reconociendo las fortalezas y debilidades de cada uno. Sumarizar como el desarrollo del hardware ha conducido los cambios en nuestras prioridades para el diseo y la administracin de sistemas de archivos.

2.5.9 OS/Sistemas Empotrados y de Tiempo Real. Tpicos


Planeamiento de tareas y procesos. Requerimientos de la administracin de memoria/disco en un ambiente de tiempo real. Fallos, riesgos y recuperacin. Preocupaciones especiales en sistemas de tiempo real.

Objetivos

Describir que hace a un sistema ser un sistema en tiempo real. Explicar la presencia y describir las caractersticas de latencia en sistemas de tiempo real.

Resumir las preocupaciones especiales que presentan los sistemas en tiempo real y como esas p 2.5.10 OS/Tolerancia a Fallas. Tpicos

Conceptos fundamentales: sistemas confiables y disponibles. Redundancia espacial y temporal. Mtodos usados para implementar la tolerancia a fallas. Ejemplos de sistemas confiables.
64

Objetivos

Explicar la relevancia de los trminos: tolerancia a fallas, confiabilidad y disponibilidad. Delinear un conjunto de mtodos para implementar la tolerancia a fallas en un sistema operativo. Explicar como un sistema operativo puede continuar funcionando despus de que una falla ocurre.

2.5.11 OS/Evaluacin del Desempeo de Sistemas. Tpicos


Por qu el desempeo de sistemas necesita ser evaluado?. Qu se evalua?. Polticas para caching, paginamiento, planeamiento, administracin de memoria, seguridad y otros. Modelos de evaluacin: determinsticos, analticos, de simulacin u otros especficos de la implementacin. Cmo recolectar datos de evaluacin (perfiles mecanismos de rastreo).

Objetivos

Describir las mtricas de desempeo utilizadas para determinar como el sistema funciona. Explicar los principales modelos usados para evaluar un sistema.

2.5.12 OS/Scripting. Tpicos


Scripting y el rol de los lenguajes scripts. Comandos bsicos del sistema. Creacin de scripts, paso de parmetros. Ejecucin de un script. Influencias del scripting en la programacin.

Objetivos

Resumir un conjunto de comandos tpicos proveidos por el sistema operativo. Demostrar la funcionalidad tpica de un lenguaje script e interpretar las implicaciones para la programacin. Demostrar los mecanismos de implementacin de scripts y el rol de los scripts en la implementacin e integracin del sistema. Implementar un script simple que muestre el paso de parmetros.

2.5.13 OS/Anlisis Forense Digital.


65

Tpicos

Anlisis Forense Digital y su relacin con otras disciplinas forenses. Responsabilidades de repuesta en incidentes. Procedimientos forenses. Evidencia digital y rastreo. Reglas y estndares de evidencia. Recoleccin y anlisis de evidencia. Mecanismos forenses. Coleccin de informacin a cerca de un posible criminal digital con el objetivo de dar una descripcin (Profiling). Herramientas para soporte de un trabajo investigativo.

Objetivos

Explicar los problemas que son preocupacin del anlisis forense digital y delinear los principios basicos involucrados en su prctica. Delinear los procesos bsicos de recoleccin de informacin y anlisis en lnea junto con las mejores prcticas en anlisis digital forense. Reconocer el rol que las herramientas pueden jugar en el anlisis forense digital y demostrar su uso en ejemplos simples. Explicar que preguntas deben hacerse y responderse a fin de determinar si la interpretacin de evidencia forense es vlida o cuestionable.

2.5.14 OS/Modelos de seguridad. Tpicos


Modelos de proteccin. Proteccin de memoria. Encriptacin. Gestin de la recuperacin. Tipos de control de acceso: obligatorio, a discresin, controlado por el origen, basado en el rol. Modelo de matriz de control de acceso. El modelo Harrison-Russo-Ullman y la indecisin en temas de seguridad. Modelos de confidencialidad tales como Bell-LaPadula. Modelos de integridad tales como Biba y Clark-Wilson. Modelos de conflicto de inters tales como la muralla china.

Objetivos

Comparar y contrastar mtodos existentes para la implementacin de seguridad. Comparar y contrastar las fortalezas y debilidades de dos o ms sistemas operativos actuales con respecto a la seguridad. Comparar y contrastar las fortalezas y debilidades en seguridad de dos o ms sistemas operativos actuales con respecto a la gestin de la recuperacin.

66

Describir la matriz de control de accesos y como esta se relaciona la Lista de control de accesos (Access Control Lists-ACLs.) y a las listas de capacidades (CLists) Aplicar el modelo de Biba para el chequeo de las entradas de un programa (contaminada y descontaminada por ejemplo). Describir como el modelo Bell-LaPadula combina mecanismos de control de acceso obligatorios y a discresin as como explicar la formulacin de lattice de Bell-LaPadula y Biba. Comparar y contrastar dos modelos de seguridad. Relacionar modelos de seguridad particular con los modelos del ciclo de desarrollo de software. Aplicar modelos particulares a diferentes entornos y seleccionar el modelo que mejor captura el entorno.

2.6 NC. Computacin Centrada en Redes (18 horas como mnimo) NC/Introduccin. (2 horas) NC/Comunicacin de Redes. (7 horas) NC/Seguridad de Red. (6 horas) NC/Organizacin de la Web. (3 horas) NC/Aplicaciones en redes. NC/Administracin de Redes. NC/Compresin y Descompresin. NC/Tecnologa de Datos Multimedia. NC/Computacin Mvil e Inalmbrica.

Avances recientes en redes de computadoras y telecomunicaciones, particularmente aquellas basadas en TCP/IP, han incrementado la importancia de tecnologas de red en la disciplina de la computacin. La computacin centrada en redes cubre un rango de subespecialidades incluyendo: conceptos y protocolos de redes de comunicacin de ordenadores, sistemas multimedia, estndares y tecnologas Web, seguridad de redes, computacin inalmbrica y de mviles y sistemas distribuidos. El dominio de esta rea incluye tanto la teora y la prctica. Experiencias de aprendizaje que involucran la experimentacin y anlisis son fuertemente recomendados para reforzar el entendimiento del estudiante de los conceptos y sus aplicacin para resolver problemas de la vida real. Los experimentos en laboratorios deben incluir la recoleccin de datos y sntesis, modelado emprico, anlisis de protocolos al nivel de cdigo fuente, monitoreo de paquetes de red, construccin de software y la evaluacin de modelos de diseo alternativos. Todos los anteriores son conceptos importantes que pueden ser mejor entendidos a travs de los experimentos en laboratorio.

Subsecciones

2.6.1 NC/Introduccin. (2 horas) 2.6.2 NC/Comunicacin de Redes. (7 horas)


67

2.6.3 NC/Seguridad de Red. (6 horas) 2.6.4 NC/Organizacin de la Web. (3 horas) 2.6.5 NC/Aplicaciones en redes. 2.6.6 NC/Administracin de Redes. 2.6.7 NC/Compresin y Descompresin. 2.6.8 NC/Tecnologa de Datos Multimedia. 2.6.9 NC/Computacin Mvil e Inalmbrica.

2.6.1 NC/Introduccin. (2 horas) Tpicos


Historia de las redes y de la Internet. Arquitecturas de redes. Especializaciones dentro de la computacin centrada en redes. Redes y protocolos. Sistemas Multimedia en redes. Computacin distribuida. Paradigmas cliente/servidor y Peer-to-Peer. Computacin mvil e inalmbrica.

Objetivos

Discutir la evolucin de las primeras redes y de la Internet. Demostrar la habilidad para usar efectivamente un conjunto de aplicaciones de red incluyendo e-mail, telnet, FTP, wikis, navegadores web, cursos en lnea y mensajera instantnea. Explicar la estructura por capas jerarquca de una arquitectura de red tpica. Describir las tecnologas emergentes en el rea de la computacin centrada en redes, evaluar sus actuales capacidades, limitaciones y su potencial a corto plazo.

2.6.2 NC/Comunicacin de Redes. (7 horas) Tpicos


Estndares de redes y estandarizacin de cuerpos (bodies). El modelo de referencia ISO de 7-capas en general y su instanciacin en TCP/IP. Visin general de los conceptos de la capa fsica y de enlace de datos (paquetes, control de errores, control de flujos, protocolos). Conceptos de control de acceso de la capa de enlace (Data Link). Comunicacin entre redes y ruteo (algoritmos de ruteo, comunicacin entre redes, control de la congestin). Servicios de la capa de transporte (establecimiento de la conexin, desempeo, control de flujo y de errores).

Objetivos

Discutir estndares importantes de redes en su contexto histrico.


68

Describir las responsabilidades de las primeras cuatro capas (de abajo) del modelo de referencia ISO. Explicar como una red puede detectar y corregir la errores de trasmisin. Ilustrar como un paquete es ruteado a travs de la Internet. Instalar una red simple con dos clientes y un servidor utilizando software estndar para la configuracin del servidor tal como DHCP.

2.6.3 NC/Seguridad de Red. (6 horas) Tpicos

Fundamentos de criptografa: a) Algoritmos de clave pblica. b) Algoritmos de clave privada.

Protocolos de autenticacin. Firmas digitales y ejemplos. Tipos de ataques por red: negacin de servicio (Denial of service), desborde flooding, sniffing y desvio de trfico, ataques de integridad de mensajes, usurpacin de identidad, ataques de vulnerabilidades (desborde de buffers, caballos de troya, puertas traseras), por dentro del ataque, infraestructura (secuestro de DNS, ruteo nulo- route blackholing, comportamiento inadecuado de ruteadores que descartan trfico), etc. Uso de contraseas y mecanismos de control de acceso. Herramientas y estrategias de defensa bsica. a) Deteccin de intrusos. b) Firewalls. c) Deteccin de malware. d) Kerberos. e) IPSec. f) Redes privadas virtuales (Virtual Private Networks). g) Traduccin de direcciones de red.

Polticas de gerenciamiento de recursos en redes. Auditora y logging.

Objetivos

69

Describir las mejoras hechas por el IPSec al IPv4. Identificar protocolos usados para mejorar la comunicacin en Internet y escoger el protocolo apropiado para un determinado caso. Entender y detectar intrusiones. Discutir las ideas fundamentales de criptografa de clave pblica. Describir como la criptografa de clave pblica trabaja. Distinguir entre el uso de algoritmos de clave privada y pblica. Resumir los protocolos comunes de autenticacin. Generar y distribuir un par de claves PGP y usar el paquete PGP para enviar un mensaje de correo electrnico encriptado. Resumir las capacidades y limitaciones del significado de criptografa que se encuentran disponibles para el pblico en general. Describir y discutir recientes ataques de seguridad exitosos. Resumir las fortalezas y debilidades asociadas con diferentes abordajes de seguridad.

2.6.4 NC/Organizacin de la Web. (3 horas) Tpicos

Tecnologas Web. a) Programas del lado del servidor. b) Scripts del lado del cliente. c) EL conceptos de applet.

Caractersticas de los servidores web. a) Manejo de permisos. b) Administracin de archivos. c) Capacidades de las arquitecturas comunes de servidores.

Rol de las computadoras cliente. Naturaleza de la relacin cliente-servidor. Protocolos Web. Herramientas de soporte para la creacin y mantenimiento de sitios web. Desarrollo de servidores de informacin Internet (Internet Information Servers). Publicacin de informacin y aplicaciones. Grid Computing, cluster, mallas (mesh). Servicios Web, Web 2.0, Ajax. .

Objetivos
70

Explicar los diferentes roles y repsonsabilidades de los clientes y servidores para un conjunto de posibles aplicaciones. Seleccionar un conjunto de herramientas que aseguren un mtodo eficiente para implementar varias posibilidades cliente-servidor. Disear y construir una aplicacin interactiva simple basada en la web (por ejemplo, un fomulario web simple que colecte informacin desde el cliente y almacene esto en un archivo en el servidor y un servidor que responda a los datos del formulario y produzca un resultado.).

2.6.5 NC/Aplicaciones en redes. Tpicos


Protocolos en la capa de aplicacin. Interfases Web: navegadores y APIs. Tecnologa de bsqueda en la web. Principios de la ingeniera web. Sitios web dirigidos a bases de datos. Llamadas a procedimientos remotos (RPC). Objetos ligeros distribuidos. El rol del middleware. Herramientas de soporte. Tpicos de seguridad en sistemas de objetos distribuidos. Aplicaciones empresariales basadas en web. a) Arquitecturas orientadas a servicios.

Objetivos

Ilustrar como aplicaciones web interactivas cliente-servidor de tamao medio pueden ser construidas usando diferentes tipos de tecnologas web. Demostrar como implementar un sitio web basado en bases de datos, explicando las tecnologas relevantes involucradas en cada capa de la arquitectura y los lmites de desempeo correspondientes. Ilustrar el estado actual de la efectividad de una bsqueda Web. Implementar una aplicacin que invoque el API de una aplicacin basada en la Web. Implementar un sistema distribuido utilizando dos frameworks de objetos distribuidos y compararlos con respecto al desempeo y seguridad. Discutir asuntos de seguridad y estrategias en una aplicacin empresarial basada en web.

2.6.6 NC/Administracin de Redes. Tpicos

Vista general de la administracin de redes.


71

Uso de contraseas y mecanismos de control de acceso. Nombres de dominio y servicios de nombre. Proveedores de servicio de Internet (ISPs). Seguridad y muros de fuego (firewalls). Asuntos de calidad de servicio: desempeo, recuperacin de errores.

Objetivos

Explicar los asuntos de la administracin de redes resaltando amenazas de seguridad, virus, gusanos, troyanos y ataques de negacin de servicios. Desarrollar una estrategia para asegurar niveles apropiados de seguridad en un sistema diseado para un propsito particular. Implementar un muro de fuego (firewall) de red.

2.6.7 NC/Compresin y Descompresin. Tpicos


Representaciones analgicas y digitales. Algoritmos de codificacin y de decodificacin. Compresin con perdida y sin perdida. Compresin de datos: codificacin de Huffman y el algoritmo de Zip-Lempel. Audio: Compresin y descompresin. Imgenes: Compresin y descompresin. Video: Compresin y descompresin. Medidas de desempeo: tiempo, factor de compresin, adaptabilidad para uso en tiempo real.

Objetivos

Resumir las caracteristicas bsicas de muestreo y cuantificacin para representacin digital. Seleccionar la tcnica de compresin ms adecuada para texto, audio, imgenes y video dando razones que sean sensibles para la aplicacin especfica y circunstancias particulares. Explicar la propiedad de asimetra los algoritmos de compresin y descompresin. Ilustrar el concepto de codificacin en longitud de corrida. Ilustrar como un programa tal como el compress de UNIX, que utiliza la codificacin de Huffman y el algoritmo de Zip-Lempel, podra comprimir texto tpico.

2.6.8 NC/Tecnologa de Datos Multimedia. Tpicos


Sonido y audio, imgenes y grficos, animacin y video. Estndares multimedia (audio, msica, imgenes, telefona, video, TV). Planeamiento de capacidad y asuntos de desempeo.
72

Dispositivos de entrada/salida (scaners, cmaras digitales, pantallas de tacto, activacin por voz). Teclado MIDI, sintetizadores. Estndares de almacenamiento (discos pticos magnticos, CD-ROM, DVD). Servidores multimedia y sistemas de archivos. Herramientas para soporte al desarrollo multimedia.

Objetivos

Para cada uno de los varios estndares multimedia, describir en un lenguaje no tcnico lo que el estndar realiza y explicar como los aspectos de percepcin humana podran ser sensibles a las limitaciones de dicho estndar. Evaluar el potencial de un sistema de computadores para alojar una aplicacin de un grupo de posibles aplicaciones multimedia, incluyendo una evaluacin de requerimientos de sistemas multimedia en la tecnologa de redes sobre la que se trabaja. Describir las caractersticas de un sistema de computador (incluyendo identificacin de herramientas de soporte y estndares apropiados) que tienen que alojar la implementacin de una de varias aplicaciones multimedia posibles. Implemetar una aplicacin multimedia de tamao moderado.

2.6.9 NC/Computacin Mvil e Inalmbrica. Tpicos


Vista general de la historia, evolucin y compatibilidad de los estndares inalmbricos. Los problemas especiales de la computacin inalmbrica y mvil. Redes inalmbricas de rea local y redes basadas en satlites. Ciclos inalmbricos locales. Protocolos de Internet mvil. Adaptacin conciente a dispositivos mviles. Extendiendo el modelo cliente servidor para adaptarse a la movilidad. Acceso a datos mviles: diseminacin de datos en el servidor y administracin del cache del cliente. Soporte de paquetes de software para computacin inalmbrica y mvil. El rol del middleware y herramientas de soporte. Problemas de desempeo. Tecnologas emergentes.

Objetivos

Describir las principales caractersticas de IP mvil y explicar como difiere del IP con respecto a la administracin de la movilidad, ubicacin y desempeo. Ilustrar (con agentes locales y externos) como el e-mail u otro tipo de trfico es ruteado usando IP mvil. Implementar una aplicacin simple que se base en comunicacin mvil e inalmbrica de datos. Describir las reas actuales y de inters emergente en computacin inalmbrica y mvil asi como evaluar las capacidades, limitaciones y potencial en cada uno.
73

2.7 PL. Lenguajes de Programacin (21 horas como mnimo) PL/Visin General de los Lenguajes de Programacin. (2 horas) PL/Mquinas Virtuales. (1 hora) PL/Introduccin a la Traduccin de Lenguajes. (2 horas) PL/Declaracin y Tipos. (3 horas) PL/Mecanismos de Abstraccin. (3 horas) PL/Programacin Orientada a Objetos. (10 horas) PL/Programacin Funcional. PL/Sistemas de Traduccin del Lenguaje. PL/Tipos. PL/Semntica de los Lenguajes de Programacin. PL/Diseo de Lenguajes de Programacin.

Un lenguaje de programacin es una de la interfaces principales que tiene el programador con el computador. Ms que slo conocer cmo programar en un lenguaje, los programadores tienen que entender los diferentes estilos de programacin impulsados por diferentes lenguajes. En su vida profesional, ellos trabajarn con muchos lenguajes y estilos distintos a la vez y se encontrarn con muchos lenguajes diferentes a lo largo de sus carreras. Entender la variedad de los lenguajes de programacin y las ventajas y desventajas de diseo entre los diferentes paradigmas de programacin hace mucho ms fcil dominar nuevos lenguajes de manera ms rpida. Entender los aspectos pragmticos de los lenguajes de programacin tambin requiere un conocimiento bsico de la traduccin y las caractersticas en tiempo de ejecucin de lenguajes de programacin como la asignacin de memoria.

Subsecciones

2.7.1 PL/Visin General de los Lenguajes de Programacin. (2 horas) 2.7.2 PL/Mquinas Virtuales. (1 hora) 2.7.3 PL/Introduccin a la Traduccin de Lenguajes. (2 horas) 2.7.4 PL/Declaracin y Tipos. (3 horas) 2.7.5 PL/Mecanismos de Abstraccin. (3 horas) 2.7.6 PL/Programacin Orientada a Objetos. (10 horas) 2.7.7 PL/Programacin Funcional. 2.7.8 PL/Sistemas de Traduccin del Lenguaje. 2.7.9 PL/Tipos. 2.7.10 PL/Semntica de los Lenguajes de Programacin. 2.7.11 PL/Diseo de Lenguajes de Programacin.

2.7.1 PL/Visin General de los Lenguajes de Programacin. (2 horas) Tpicos

Historia de los lenguajes de programacin.


74

Breve revisin de los paradigmas de programacin. Lenguajes procedurales. Lenguajes orientados a objetos. Lenguajes funcionales. Lenguajes declarativos y no algortmicos. Lenguajes de scripts. Los efectos de la escalabilidad en las metodologas de programacin.

Objetivos

Listar la evolucin de los lenguajes de programacin identificando como es que su historia nos ha conducido a los paradigmas actuales. Identificar al menos una caracterstica distintiva para cada uno de los paradigmas de programacin cubiertos en esta unidad. Evaluar las ventajas y desventajas entre los diferentes paradigmas, considerando temas tales como: eficiencia de espacio, eficiencia en el tiempo (para ambas partes computadora y programador), seguridad y el poder de las expresiones. Distinguir entre la programacin a menor y mayor escala.

2.7.2 PL/Mquinas Virtuales. (1 hora) Tpicos


El concepto de mquina virtual. Jerarquas de las mquinas virtuales. Lenguajes intermedios. Temas de seguridad relacionados a ejecutar cdigo sobre una mquina externa.

Objetivos

Describir la importancia y poder de la abstraccin en el contexto de mquinas virtuales. Explicar los beneficios de los lenguajes intermedios en el proceso de compilacin. Evaluar las ventajas y desventajas entre desempeo vs. portabilidad. Explicar como los programas ejecutables pueden violar la seguridad de sistema computacional accediendo a archivos de disco y memoria.

2.7.3 PL/Introduccin a la Traduccin de Lenguajes. (2 horas) Tpicos


Comparacin entre intrpretes y compiladores. Fases de traduccin del lenguaje (anlisis lxico, anlisis sintctico, generacin de cdigo, optimizacin). Aspectos de traduccin dependientes e indepedientes de la mquina.

Objetivos

75

Comparar y contrastar modelos de ejecucin interpretados y compilados, resaltando los mritos de cada uno. Describir las fases de la traduccin de programas desde el cdigo fuente hasta llegar al cdigo ejeutable y los archivos producidos por estas fases. Explicar las diferencias entre la traduccin dependiente e independiente de mquina y donde estas diferencias son evidentes en el proceso de traduccin.

2.7.4 PL/Declaracin y Tipos. (3 horas) Tpicos


La concepcin de tipos como un conjunto de valores unidos a un conjunto de operaciones. Declaracin de modelos (enlace, visibilidad, alcance y tiempo de vida). Vista general del chequeo de tipos. Recoleccin de basura.

Objetivos

Explicar el valor de los modelos de declaracin, especialmente con respecto a la programacin en mayor escala. Identificar y describir las propiedades de una variable, tales como su: direccin asociada, valor, mbito, persistencia y tamao. Discutir la incompatibilidad de tipos. Demostrar las diferentes formas de enlace, visibilidad, mbito y manejo del tiempo de vida. Defender la importancia de los tipos y el chequeo de tipos para brindar abstraccin y seguridad. Evaluar las ventajas y desventajas en el manejo del tiempo de vida (conteo por referencia vs. recoleccin de basura).

2.7.5 PL/Mecanismos de Abstraccin. (3 horas) Tpicos


Procedimientos, funciones e iteradores como mecanismos de abstraccin. Mecanismos de parametrizacin (referencia vs. valor). Registros de activacin y administracin de almacenamiento. Tipos de parmetros y tipos parametrizados. Mdulos en lenguajes de programacin.

Objetivos

Explicar como los mecanismos de abstraccin soportan la creacin de componentes de software reusables. Demostrar la diferencia entre paso de parmetros por valor y por referencia. Defender la importancia de la abstraccin especialmente con respecto a la programacin en mayor escala.

76

Describir como el computador usa registros de activacin para administrar mdulos y sus datos.

2.7.6 PL/Programacin Orientada a Objetos. (10 horas) Tpicos


Diseo orientado a objetos. Encapsulacin y ocultamiento de la informacin. Separacin de comportamiento e implementacin. Clases y subclases. Herencia (sobreescritura, despacho dinmico). Polimorfismo (polimorfismo de subtipo vs. herencia). Jerarquas de clases. Clases de tipo coleccin y protocolos de iteracin. Representaciones internas de objetos y tablas de mtodos. Uso de UML para diseo de sistemas centrados en el usuario (diagramas de casos de uso, diagramas de actividad, y otros).

Objetivos

Justificar la filosofa de diseo orientado a objetos y los conceptos de encapsulacin, abstraccin, herencia y polimorfismo. Disear, implementar, probar y depurar programas simples en un lenguaje de programacin orientado a objetos. Describir como los mecanismos de clases soportan encapsulacin y ocultamiento de la informacin. Disear, implementar y probar la implementacion de la relacin esun IsKindOf entre objetos usando jerarqua de clases y herencia. Comparar y contrastar las nociones de sobrecarga y sobreescritura de mtodos en un lenguaje de programacin. Explicar la relacin entre la estructura esttica de una clase y la estructura dinmica de las instancias de dicha clases. Describir como los iteradores acceden a los elementos de un contenedor.

2.7.7 PL/Programacin Funcional. Tpicos


Panorama general y motivacin de los lenguajes funcionales. Recursin sobre listas, nmeros naturales, rboles y otros datos definidos recursivamente. Pragmticas (depuracin en dividir y vencers, persistencia de las estructuras de datos). Eficiencia amortizada para estructuras de datos funcionales. Cerraduras y uso de funciones como datos (conjuntos infinitos, flujos).

Objetivos

77

Delinear las fortalezas y debilidades del paradigma de programacin funcional. Disear, codificar, probar y depurar programas usando el paradigma funcional. Explicar el uso de funciones como datos, incluyendo el concepto de cerraduras.

2.7.8 PL/Sistemas de Traduccin del Lenguaje. Tpicos


Aplicacin de las expresiones regulares en analizadores lxicos. Anlisis sintctico (sintaxis concreta y abstracta, rboles de sintaxis abstracta). Aplicacin de las gramticas libres de contexto en un parseo dirigido por tablas o recursivo descendente. Administracin de tablas de smbolos. Generacin de cdigo por seguimiento de un rbol. Operaciones especficas de la arquitectura: seleccin de instrucciones y alocacin de registros. Tcnicas de optimizacin. El uso de herramientas como soporte en el proceso de traduccin y las ventajas de ste. Libreras de programas y compilacin separada. Construccin de herramientas dirigidas por la sintaxis.

Objetivos

Describir los pasos y algoritmos usados por traductores lenguajes. Reconocer los modelos formales subyacentes tales como los autmatas finitos, autmatas de pila y su conexin con la definicin del lenguaje a travs de expresiones regulares y gramticas. Discutir la efectividad de la optimizacin. Explicar el impacto de la facilidad de la compilacin separada y la existencia de libreras de programas en el proceso de compilacin.

.7.9 PL/Tipos. Tpicos


Tipos de datos como un conjunto de valores con un conjunto de operaciones. Tipos de datos. Tipos elementales. Tipos producto y coproducto. Tipos algebraicos. Tipos recursivos. Tipos flechas (funciones). Tipos parametrizados. Modelos de verificacin de tipos. Modelos semnticos de tipos definidos por el usuario. Abreviaciones de tipo. Abstraccin de tipos de datos. Equivalencia de tipos. Polimorfismo paramtrico.
78

Polimorfismo de subtipos. Algoritmos de verificacin de tipos.

Objetivos

Formalizar la nocin de tipos. Describir cada uno de los tipos de datos elementales. Explicar el concepto de tipo abstracto de dato. Reconocer la importacia de los tipos de datos para la abstraccin y seguridad. Diferenciar entre tipos dinmico y esttico. Diferenciar entre declaraciones de tipos e inferencia de tipos. Evaluar lenguajes con respecto al tipado.

2.7.10 PL/Semntica de los Lenguajes de Programacin. Tpicos


Semntica informal. Panorama general de la semntica formal. Semntica denotacional. Semntica axiomtica. Semntica operacional.

Objetivos

Explicar la importancia de la semntica formal. Diferenciar entre semntica formal e informal. Describir los diferentes mtodos de la semntica formal. Evaluar las diferentes abordajes de la semntica formal.

.7.11 PL/Diseo de Lenguajes de Programacin. Tpicos


Principios generales del diseo de lenguajes. Diseo de objetivos. Regmenes de tipado. Modelos de estructuras de datos. Modelos de estructuras de control. Mecanismos de abstraccin.

Objetivos

Evaluar el impacto de los diferentes regmenes de tipado sobre el diseo del lenguaje, uso de lenguaje y el proceso de traduccin. Explicar el rol de los diferentes mecanismos de abstraccin en la creacin de facilidades definidas del usuario.

79

2.8 HC. Interaccin Humano-Computador (8 horas como mnimo) HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) HC/Construccin de Interfaces Grficas de Usuario. (2 horas) HC/Evaluacin de Software Centrado en el usuario. HC/Desarrollo de Software Centrado en el Humano. HC/Diseo de la Interfaz de Usuario. HC/Programacin de Interfaces Grficas de Usuario. HC/Aspectos de Sistemas de Multimedia y Multimodales. HC/Aspectos de Colaboracin y Comunicacin. Diseo de interaccin para nuevos ambientes. Factores humanos y seguridad.

El lenguaje ha sido una de las creaciones ms significativas de la humanidad. Desde el lenguaje corporal y gestual, pasando por la comunicacin verbal y escrita, hasta cdigos simblicos icnicos y otros, ha posibilitado interacciones complejas entre los seres humanos y facilitado considerablemente la comunicacin de informacin. Con la invencin de dispositivos automticos y semiautomticos, entre los que se cuentan las computadoras, la necesidad de "lenguajes" o "interfaces" para poder interactuar con ellos, ha cobrado gran importancia. La usabilidad del software, aunada a la satisfaccin del usuario y su incremento de productividad, depende de la eficacia de la Interfaz Usuario-Computador. Tanto es as, que a menudo la interfaz es el factor ms importante en el xito o el fracaso de cualquier sistema computacional. El diseo e implementacin de adecuadas Interfaces Humano-Computador, que adems de cumplir los requisitos tcnicos y la lgica transaccional de la aplicacin, considere las sutiles implicaciones psicolgicas, culturales y estticas de los usuarios, consume buena parte del ciclo de vida de un proyecto software, y requiere habilidades especializadas, tanto para la construccin de las mismas, como para la realizacin de pruebas de usabilidad.

Subsecciones

2.8.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) 2.8.2 HC/Construccin de Interfaces Grficas de Usuario. (2 horas) 2.8.3 HC/Evaluacin de Software Centrado en el usuario. 2.8.4 HC/Desarrollo de Software Centrado en el Humano. 2.8.5 HC/Diseo de la Interfaz de Usuario. 2.8.6 HC/Programacin de Interfaces Grficas de Usuario. 2.8.7 HC/Aspectos de Sistemas de Multimedia y Multimodales. 2.8.8 HC/Aspectos de Colaboracin y Comunicacin. 2.8.9 Diseo de interaccin para nuevos ambientes. 2.8.10 Factores humanos y seguridad.

80

2.8.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) Tpicos

Relevancia de la Interaccin Hombre-Computador (HCI). Por qu el estudio de la interaccin entre las personas y la tecnologa es vital para el desarrollo de sistemas ms usables y aceptables? Terminologa clave en la Interaccin Humano-Computador: usabilidad, accesibilidad, diseo para todos, diseo inclusivo, acceso universal, diseo de sistemas centrados en el usuario (UCSD). Contextos de Interaccin Humano-Computador: equipos (PC's, equipos industriales, dispositivos de consumo, dispositivos mviles) y aplicaciones (de negocios, en tiempo real, web, sistemas colaborativos, juegos, etc.). Proceso de desarrollo centrado en el usuario (UCSD): foco temprano en los usuarios, pruebas empricas, diseo iterativo. Categoras de evaluacin: utilidad, eficiencia, usabilidad, facilidad de aprendizaje, satisfaccin del usuario. Consideraciones psicolgicas para el modelamiento de usuarios y la evaluacin de la Interaccin Humano-Computador (atencin, percepcin y reconocimiento, memoria de corto y largo plazo, movimiento, abstraccin, y procesamiento cognitivo). Aspectos sociales que influyen en el diseo y en el uso de Interfaces HumanoComputador: cultura, comunicacin y organizaciones. Adaptacin a la diversidad humana, incluyendo diseo y accesibilidad universal, diseo para mltiples contextos culturales y lingusticos. Los errores ms frecuentes en el diseo de interfaces. Estndares para el diseo de interfaces de sistemas interactivos (reglas y guas de diseo de organismos reguladores, fabricantes de software, y estilos corporativos).

Objetivos

Discutir las razones por las cuales es importante el desarrollo de software centrado en el usuario. Explicar porqu los modelos humanos individuales y los modelos sociales son importantes a la hora de disear la Interaccin Humano-Computador. Definir y ejemplificar procesos centrados en el usuario que explcitamente evidencien que las expectativas del desarrollador y sus conocimientos previos son muy diferentes de las de los usuarios. Describir y ejemplificar casos en los que un diseo centrado en el usuario puede fallar. Explicar los distintos procesos aplicados a la definicin de interfaces para diferentes contextos. Considerar el rol de la hiptesis y las diferencias entre resultados experimentales versus correlaciones, al utilizar mtricas de evaluacin de la Interaccin Humano-Computador. Escoger entre mtodos de evaluacin cualitativos y cuantitativos para una evaluacin dada.

81

Usar un vocabulario especializado para referirse a la interaccin humana con el software: potencialidad percibible, modelo conceptual, modelo mental, metforas, diseo de la interaccin, retroalimentacin, etc. Ejemplificar cmo determinados smbolos, conos, palabras o colores pueden tener diferentes interpretaciones en dos culturas humanas distintas o incluso entre una cultura y alguna de sus subculturas. Estar preparado para describir al menos un estndar nacional o internacional de diseo estndar de interfases.

2.8.2 HC/Construccin de Interfaces Grficas de Usuario. (2 horas) Tpicos

Principios de las interfaces grficas de usuario (GUIs): organizacin (consistencia, distribucin de pantalla, relaciones y navegabilidad), economa de recursos (simplicidad, claridad, diferenciacin y nfasis), comunicacin (legible, comprensible, tipografa, simbolismos, mltiples vistas, y color / textura). Modelo de interaccin accin-objeto versus modelo objeto-accin. Eventos de la interfaz de usuario. Diferencias en la construccin de interfaces grficas de usuario para ejecucin local y para ejecucin sobre internet (web).

Objetivos

Identificar los diversos principios fundamentales para el diseo de interfaces de usuario tales como facilidad de aprendizaje, flexibilidad y robustez. Describir ejemplos de interfaces mal diseadas: navegacin deficiente, malos diseos de pantalla, e interfaces incomprensibles. Crear una aplicacin simple cuya interfaz grfica de usuario se ejecute localmente o en la web. Observar el comportamiento de un usuario al usar una nueva aplicacin y obtener sus crticas e impresiones sobre la GUI. Explicar como una cuidadosa evaluacin va ms alla de la observacin de un nico usuario.

2.8.3 HC/Evaluacin de Software Centrado en el usuario. Tpicos


Enfoques de evaluacin: pruebas de usabilidad, estudios de campo, evaluacin analtica. Evaluacin sin usuarios tpicos: recorridos, Keystroke Level Model (KLM), anlisis basado en expertos, heursticas, lineamientos y estndares. Evaluacin con usuarios tpicos: observacin, pensar en voz alta, entrevista, examen, experimentos. Desafios de una evaluacin efectiva: muestreo, evaluacin. Reporte de resultados de evaluacin.

82

Objetivos

Discutir los criterios de evaluacin: tiempo y completitud de las tareas, tiempo de aprendizaje, retencin, errores y satisfaccin del usuario. Conducir un ensayo y anlisis de tareas de bajo nivel usando el Modelo de Nivel de Golpes de Teclado (KLM). Evaluar una interfaz de usuario dada con un conjunto de lineamientos o estndares para identificar insuficiencias. Conducir una prueba de usabilidad con ms de un usuario, recolectar resultados con al menos dos mtodos. Comparar una prueba de laboratorio con una prueba de campo. Explicar un problema de usabilidad en base a los resultados de una prueba de usabilidad. Recomendar una solucin al mismo. Criticar una evaluacin de usuario, resaltar las amenazas de validacin. Dado un contexto de evaluacin (por ejemplo: tiempo, disponibilidad de usuarios de prueba, lugar en el proceso de diseo, objetivos de evaluacin), recomendar y justificar un mtodo de evaluacin.

2.8.4 HC/Desarrollo de Software Centrado en el Humano. Tpicos


Desarrollo de Software Centrado en el Humano (UCSD) y metodologas tradicionales (diseo en cascada). Enfoques (ergonmico, cognitivo, afectivo), caractersticas y listado de procesos. Requerimientos de Funcionalidad y usabilidad. Tcnicas de recoleccin de requerimientos: anlisis de tareas, entrevistas, encuestas. Modelado de perfiles de usuario: modelos conceptuales, metforas y modelos mentales. Diferencias individuales, aprendizaje y entrenamiento. Especificacin de la interaccin y presentacin. Tcnicas de prototipado: a) Dibujos y diseos en papel. b) Guiones con secuencias de pantallas (storyboard). c) Prototipos en papel. d) Herramientas de prototipado y constructores de GUI.

Tcnicas software para interfaces de usuario: a) Herencia y despacho dinmico. b) Lenguajes de prototipado y constructores de GUI.
83

Objetivos

Comparar el desarrollo centrado al humano con los mtodos tradicionales de ingeniera del software. Recolectar los requerimientos para la interfaz de usuario, utilizando el anlisis de tareas y entrevistas con el usuario. Identificar mediante el anlisis de requerimientos, al menos tres requisitos funcionales y tres requisitos de usabilidad. Crear una especificacin para una interfaz de usuario basada en los requerimientos. Construir un prototipo segn los requisitos de la especificacin. Discutir las ventajas y desventajas del desarrollo con prototipos de software y en papel.

2.8.5 HC/Diseo de la Interfaz de Usuario. Tpicos

Panorama de las diferentes clases de interfaces de usuario: referidas a la funcin (inteligentes, adaptativas, ambientales), enfocadas en el modo de interaccin (comandos, grficas, multimedia), orientadas a los dispositivos de entrada/salida usados (pen-based, speech-based), segn la plataforma para la que han sido diseadas (PC, handheld, etc.). Estilos y paradigmas de interaccin: lnea de comandos, men, voz, gestos, WIMP (window, icon, menu, pointing device). Uso correcto del lenguaje visual en el diseo de interfaces grficas de usuario (GUI): distribucin y proporciones (layout), tipografa, color y texturas, imgenes (signos, smbolos e conos), animacin, secuenciacin, indicadores sonoros (earcons), e identidad visual. Seleccin y uso de controles visuales (widgets)adecuados para usuarios y tareas. Ms all del diseo de ventanas simples: metforas, representacin y despliegue. Interaccin multimodal: visual, auditiva y hptica (tctil y afines). Interaccin 3D y realidad virtual. Diseo para dispositivos pequeos como celulares. Manejo de fallas humanas y de sistema. Interaccin y comunicacin multi cultural.

Objetivos

Listar los estilos comunes de interaccin y las diferentes clases de interfaces de usuario. Explicar los principios del buen diseo aplicables a: ventanas y formularios, controles comunes (widgets), presentacin de pantallas secuenciadas, dilogos de mensajes de errores y excepciones, ayuda en lnea y manuales de usuario. Disear, prototipar y evaluar una GUI 2D simple aplicando los conocimientos aprendidos en las unidades: HC/Evaluacin de Software Centrado en el usuario. y HC/Desarrollo de Software Centrado en el Humano.. Discutir los retos de interaccin que existen al desplazarnos de interfaces 2D a interfaces 3D.
84

Justificar las razones y conveniencia de transportar una aplicacin desde un entorno convencional a un dispositivo mvil.

2.8.6 HC/Programacin de Interfaces Grficas de Usuario. Tpicos

Separacin entre la aplicacin y la interfaz de usuario. Niveles del modelo Seeheim (presentacin, control de dilogos, interfaz con la aplicacin). Sistema de Gestin de Interfaz de Usuario (UIMS). Bibliotecas de clases de controles visuales (widgets). Interaccin de usuario basada en eventos. Administracin de eventos. Diseo web vs. diseo de aplicaciones nativas. Gestin de geometra de la interfaz grfica (layout managers, panels, canvas). Entornos de programacin de Interfaces de Usuario, y constructores de GUI's. Diseo de GUI multi-plataforma. Diseo para dispositivos mviles.

Objetivos

Diferenciar entre las responsabilidades de la UIMS y la aplicacin. Diferenciar entre interfaces de usuario basadas en kernel y en modelo clienteservidor. Comparar el paradigma orientado a eventos con los procedimientos de control tradicionales para la interfaz de usuario. Describir la agregacin de controles visuales (widgets) y la gestin de la geometra basada en restricciones. Explicar los mtodos de callback y su rol en los constructores de GUI, para la gestin de eventos de interfaz. " Identificar al menos tres diferencias comunes de diseo en interfaces de usuario multi-plataforma (por ejemplo, para escritorio, web y telfono celular). Identificar las caractersticas comunes que se puedan encontrar en interfase de usuario multi-plataforma.

2.8.7 HC/Aspectos de Sistemas de Multimedia y Multimodales. Tpicos


Categorizacin y arquitecturas de informacin: jerarquas, mallas (grids), hipermedia, redes. Recuperacin de informacin y desempeo humano. Bsqueda Web. Usabilidad de los lenguajes de consultas a base de datos. Grficos. Sonido. Diseo de la Interaccin Humano-Computador de sistemas de informacin multimedia. Reconocimiento de voz y procesamiento de lenguaje natural.
85

Microdispositivos de informacin (appliances) y computacin mvil. Visualizaciones interactivas. Diseos para la navegacin y presentacin de informacin. Interfases tctiles.

Objetivos

Discutir en que se diferencia la recuperacin de informacin del procesamiento de transacciones. Explicar como la organizacin de la informacin apoya la recuperacin de la misma. Describir los principales problemas de usabilidad de los lenguajes de consultas de bases de datos. Explicar en particular el estado actual de la tecnologa de reconocimiento de voz y en general el estado del procesamiento de lenguaje natural. Disear, prototipar y evaluar un sistema de informacin multimedia simple ilustrando el conocimiento de los conceptos mostrados en las unidades HC/Desarrollo de Software Centrado en el Humano., HC/Diseo de la Interfaz de Usuario. y HC/Aspectos de Sistemas de Multimedia y Multimodales..

2.8.8 HC/Aspectos de Colaboracin y Comunicacin. Tpicos


Groupware para soporte de tareas especializadas: preparacin de documentos, juegos para multi-jugadores. Comunicacin grupal asncrona: e-mail, boletines, listserv, wikis, etc. Comunicacin grupal sincronizada: salas de chat, conferencias. Comunidades en lnea: MUDs/MOOs (Multi User Dungeon / MUD Object Oriented). Agentes de software y agentes inteligentes, mundos virtuales y avatares. Psicologa social. Redes sociales. Computacin social. Tcnicas de usabilidad colaborativa.

Objetivos

Comparar las cuestiones de Interaccin Humano-Computador tanto en la interaccin individual como en interacciones grupales. Discutir las diversas cuestiones sociales planteadas por el software de colaboracin. Discutir los temas de HCI en sistemas de software que incorporan la intencin humana. Describir las diferencias entre comunicacin sncrona y asncrona. Disear, prototipar y evaluar una aplicacin simple de groupware o de comunicacin grupal que ilustre los conocimientos aprendidos en las unidades HC/Desarrollo de Software Centrado en el Humano., HC/Diseo de la Interfaz de Usuario. y HC/Aspectos de Colaboracin y Comunicacin..
86

Participar en un proyecto en equipo en el que algunas interacciones sean cara a cara y otras a travs de un entorno de software de mediacin. Describir las similitudes y diferencias entre la colaboracin cara a cara y la realizada mediante un software colaborativo.

2.8.9 Diseo de interaccin para nuevos ambientes. Tpicos


Diseos de interaccin orientados a producir experiencias interactivas agradables. Presencia, telepresencia y entornos inmersivos. Interaccin afectiva y emociones. Ambientes inteligentes. Computacin fsica e interaccin corprea.

Objetivos

Comparar asuntos metodolgicos y filosficos involucrados en el diseo de la usabilidad y el diseo atractivo. Discutir las diversas cuestiones ticas y sociales planteadas por los entornos inmersivos y los altos niveles de emocin en la Interaccin HumanoComputador. Discutir las cuestiones relacionadas con HCI en el software interactivo que incorpora cierto nivel de inteligencia. Describir la diferencia entre diseo de interaccin y la Interaccin HumanoComputador tradicional. Disear, prototipar y evaluar un sistema de participacin interactiva para el entretenimiento o la educacin. Evaluar las experiencias de personas en ambientes inmersivos. Describir las cuestiones relacionadas con interfaces de usuario tangibles, gestuales y de interaccin de cuerpo entero. Describir los problemas relacionados con la intervencin de todos los sentidos en experiencias interactivas.

2.8.10 Factores humanos y seguridad. Tpicos


Psicologa aplicada y polticas de seguridad. Diseo pensando en usabilidad y seguridad. Ingeniera social. Suplantacin de indentidad. Adquisicin de informacin confidencial de forma fraudulenta Phishing.

Objetivos

Explicar el concepto de phishing y como reconocerlo. Explicar el concepto de robo de identidad y cmo dificultarlo.
87

Disear una interfaz de usuario con mecanismos de seguridad. Discutir procedimientos que ayuden a reducir un ataque de ingeniera social. Analizar una poltica de seguridad y/o procedimientos para mostrar donde funcionan y donde fallan. Hacer consideraciones de valor prctico.

2.9 GV. Computacin Grfica y Visual (3 horas como mnimo) GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (2 horas) GV/Sistemas Grficos. (1 hora) GV/Comunicacin Grfica. GV/Modelamiento Geomtrico. GV/Rendering Bsico. GV/Rendering Avanzado. GV/Tcnicas Avanzadas. GV/Animacin por Computador. GV/Visualizacin. GV/Realidad Virtual. GV/Visin Computacional. GV/Geometra Computacional. GV/Programacin de motores de juegos.

El rea que abarca la Computacin Grfica y Visual (GV) se divide en cuatro campos:

Computacin Grfica. Computacin Grfica es el arte y ciencia de la comunicacin de informacin a travs de imgenes que se generan y se presentan a travs de la computacin. Esto requiere (a) el diseo y construccin de modelos que representen informacin de maneras que apoyen la creacin y visualizacin de imgenes, (b) el diseo de dispositivos y tcnicas a travs de las cuales la persona pueda interactuar con el modelo o la vista, (c) la creacin de tcnicas para visualizar el modelo y (d) el diseo de mtodos para que las imgenes puedan conservarse. El objetivo de la Computacin Grfica es conectar el centro visual de la persona con otras ramas de conocimiento. Visualizacin. El campo de la visualizacin busca determinar y presentar las estructuras subyacentes y relaciones en conjuntos de datos tanto cientficos (ciencias computacionales y mdicas) u otras ms abstractas. El principal objetivo de esta presentacin debera ser para comunicar la informacin en un conjunto de datos para mejorar el entendimiento. Aunque las tcnicas actuales de visualizacin explotan habilidades visuales humanas, otras modalidades sensoriales, incluyendo auditivas y tctiles, son consideradas tambin para ayudar al proceso de descubrimiento de la informacin. Realidad Virtual. La Realidad Virtual (RV) permite a los usuarios experimentar un ambiente tridimensional generado usando computacin grfica, y talvez otras modalidades sensoriales, para proveer un ambiente para lograr la interaccin entre un usuario humano y un mundo creado por computadora. Visin Computacional. La meta de la visin computacional (VC) es deducir las propiedades y la estructura del mundo tridimensional a partir de una o ms imgenes de dos dimensiones. El entendimiento y la prctica de la visin

88

computacional depende de conceptos bsicos de computacin, pero tambin se relaciona fuertemente con las disciplinas de fsica, matemtica y psicologa.

Subsecciones

2.9.1 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (2 horas) 2.9.2 GV/Sistemas Grficos. (1 hora) 2.9.3 GV/Comunicacin Grfica. 2.9.4 GV/Modelamiento Geomtrico. 2.9.5 GV/Rendering Bsico. 2.9.6 GV/Rendering Avanzado. 2.9.7 GV/Tcnicas Avanzadas. 2.9.8 GV/Animacin por Computador. 2.9.9 GV/Visualizacin. 2.9.10 GV/Realidad Virtual. 2.9.11 GV/Visin Computacional. 2.9.12 GV/Geometra Computacional. 2.9.13 GV/Programacin de motores de juegos.

2.9.1 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (2 horas) Tpicos


Jerarqua de software grfico. Usando APIs grficas. Modelos simples de color (RGB, HSB, CMYK). Coordenadas Homogneas. Transformaciones afines (escala, rotacin, translacin). Transformacin de vistas. Recorte de escenas.

Objetivos

Distinguir las capacidades de diferentes niveles de software grfico y describir el uso apropiado de cada uno. Crear imgenes utilizando interfaces estndar API. Usar las facilidades proporcionadas por una API estndar para realizar transformaciones tales como escala, rotacin y traslacin. Implementar procedimientos simples para realizar operaciones de transformacin y de recorte en una imagen simple bidimensional. Discutir el sistema de coordenadas tridimensional y los cambios necesarios para extender operaciones de transformacin 2D a 3D.

2.9.2 GV/Sistemas Grficos. (1 hora) Tpicos


89

Sistemas de grficos de vector y raster.. Dispositivos de video. Dispositivos de entrada fsicos y lgicos.. Temas para atacar el desarrollo de sistemas grficos.

Objetivos

Describir el uso apropiado de las arquitecturas grficas para determinadas aplicaciones. Explicar la funcin de varios dispositivos de entrada. Comparar y constrastar las tcnicas de grficos por vector o grficos raster. Usar el hardware y software actual para crear y mostrar grficos. Discutir las capacidades expandidas de hardware y software emergente para la creacin de grficos.

2.9.3 GV/Comunicacin Grfica. Tpicos


Psicodinmica del color e interaccin entre colores. Modificaciones del color para deficiencias de visin. Significado cultural de los diferentes colores. Uso de paletas de pseudocolor para imgenes para audiencias especficas. Estructurar una vista para un entendimiento efectivo. Modificaciones de imgenes para video y copias en disco efectivas. Uso de leyendas para asociar informacin a colores u otros datos visuales. Uso de texto en imgenes para presentar informacin de contexto de fondo. Retroalimentacin visual del usuario en operaciones grficas.

Objetivos

Explicar el valor del uso de colores y pseudocolores. Demostrar la habilidad para crear video efectivo y copias en disco de imgenes. Identificar ejemplos efectivos e inefectivos de comunicacin usando grficos. Crear ejemplos efectivos de comunicacin de grfica, haciendo apropiado uso de color, leyendas, texto y/o video. Crear dos ejemplos que comuniquen el mismo contenido: uno diseado para presentacin a partir de una copia en disco y la otra diseada para una presentacin en lnea. Discutir las diferencias en criterios de diseo para copias en disco y presentaciones en lnea.

2.9.4 GV/Modelamiento Geomtrico. Tpicos


Representacin poligonal de objetos 3D. Curvas poligonales paramtricas y superficies.


90

Representacin de geometra slida constructiva (CSG). Representacin implcita de curvas y superficies. Tcnicas de subdivisin espacial. Modelos procedurales. Modelos deformables. Subdivisin de superficies. Modelamiento de multiresolucin. Reconstruccin.

Objetivos

Crear modelos polihedrales simples usando superficies hechas con polgonos bsicos. Construir modelos CSG a partir de primitivas simples tales como cubos y superficies cuadrticas. Generar una representacin de mallas a partir de una superficie implicita. Generar un modelo fractal utilizando un mtodo procedural. Generar una malla a partir de puntos adquiridos con un scanner laser.

2.9.5 GV/Rendering Bsico. Tpicos


Algoritmos de generacin de lnea (Bresenham). Generacin de fuentes: delineadas vs. bitmaps. Propiedades de fuente de luz y material. Reflexin difusa, especular y de ambiente. Modelo de reflexin de Phong. Rendering de superficies poligonales; flat, Gourand y sombreado Phong. Mapeo de textura, texturas bump, mapa de ambiente. Introduccin al trazamiento de rayos (ray tracing). Sntesis de imgen, tcnicas de muestreo y anti-aliasing.

Objetivos

Explicar la operacin del algoritmo de Bresenham para realizar rendering en un dispositivo de pixels. Explicar el concepto y aplicaciones de cada una de estas tcnicas. Demostrar cada una de estas tcnicas creando una imagen usando una API estndar. Describir como una imagen grfica ha sido creada.

2.9.6 GV/Rendering Avanzado. Tpicos


Ecuaciones de transporte. Algoritmos de trazo de rayos (ray tracing).


91

Photon tracing. Radiocidad para el clculo de la iluminacin global, factores de forma. Mtodos eficientes para iluminacin global. Mtodos Monte Carlo para iluminacin global. Rendering basado en imgenes, visin panormica, modelaje de la funcin plenptica. Rendering de fenmenos complejos naturales. Rendering no fotorealstico.

Objetivos

Describir varias ecuaciones de transporte al detalle, resaltando sus efectos. Describir algoritmos eficientes para radiocidad y compararlos de acuerdo a sus desempeos algortmicos y de exactitud. Describir el impacto de los esquemas de mallas. Explicar las tcnicas de rendering basadas en imgenes, campos de luz y tpicos asociados.

2.9.7 GV/Tcnicas Avanzadas. Tpicos


Cuantizacin de colores. Conversin de primitivas 2D de escaneo, diferenciacin hacia adelante (forward differencing). Poligonizacin (tessellation) de superficies curvas. Mtodos de remocin de superficies ocultas. Z-buffer y frame buffer, canales de color (un canal para la opacidad). Tcnicas de modelamiento de geometra avanzada.

Objetivos

Describir las tcnicas identificadas en esta seccin. Explicar como reconocer las tcnicas grficas usadas para crear una imagen particular. Implementar cualquiera de las tcnicas grficas especificadas utilizando un sistema grfico primitivo a nivel de pixel. Utilizar un software de animacin comn para construir una forma orgnica simple usando metabolas y esqueletos.

2.9.8 GV/Animacin por Computador. Tpicos


Animacin key-frame. Animacin de cmara. Sistema de scripts. Animacin de estructuras articuladas: kinemtica inversa. Captura de movimiento.
92

Animacin procedural. Deformacin.

Objetivos

Explicar el mtodo de interpolacin spline para producir posiciones intermedias (in-between) y orientaciones. Comparar y contrastar varias tecnologas para captura de movimiento. Utilizar la funcin de partcula en software de animacin comn para generar una animacin simple tal como fuegos artificiales fireworks. Utilizar tcnicas de deformacin de forma libre para crear varias deformaciones.

2.9.9 GV/Visualizacin. Tpicos


Vista bsica y funciones de interrogacin para visualizacin. Visualizacin de campos de vectores, tensores y flujo de datos. Visualizacin de campos escalares o de campos de altura: iso-superficies usando el mtodo marching cubes. Rendering volumtrico directo: ray-casting, funciones de transferencia, segmentacin, hardware. Visualizacin de informacin: mtodos de coordenadas paralelas y proyeccin.

Objetivos

Describir los algoritmos bsicos detrs de la visualizacin de escalares y vectores. Comparar los algoritmos en trminos de precisin y desempeo. Emplear la teora disponible para explicar los efectos de las operaciones de visualizacin. Describir el impacto de la presentacin y la interaccin del usuario en exploracin.

2.9.10 GV/Realidad Virtual. Tpicos


Vista estereoscpica. Simulacin force feedback, dispositivos haptic. Tracking viewer. Deteccin de colisiones. Clculo de visibilidad. Rendering de tiempo crtico, mltiples niveles de detalles (LOD). Sistemas de realidad virtual basados en imgenes. Realidad virtual distribuida, colaboracin sobre una red de computadores. Modelamiento interactivo. Temas de interfaz del usuario.
93

Aplicaciones en medicina, simulacin y entrenamiento.

Objetivos

Describir el modelo ptico realizado por un sistema de computacin grfica para sintetizar vistas estereoscpicas. Describir los principios de diferentes tecnologas de tracking viewer. Explicar los principios de los algoritmos de deteccin de colisin eficientes para poliedros convexos. Describir las diferencias entre realidad virtual basada en imgenes y basada en geometra. Describir los tpicos de sincronizacin de acciones de usuario y consistencia de datos en un ambiente de redes. Determinar los requerimientos bsicos en configuraciones de interface, hardware y software de un sistema de realidad virtual para una aplicacin especfica.

2.9.11 GV/Visin Computacional. Tpicos


Adquisicin de imgenes. Las imgenes digitales y sus propiedades. Preprocesamiento de imgenes. Segmentacin (segmentacin basadas en regiones, contornos y thresholding). Representacin de figuras y reconocimiento de objetos. Anlisis de movimiento. Casos de estudio (reconocimiento de objetos, seguimiento de objetos).

Objetivos

Explicar el proceso de formacin de imgenes. Explicar las ventajas de dos o ms cmaras y visin estereo. Explicar varias tcnicas de segmentacin, sus caractersticas, diferencias, fortalezas y debilidades. Describir el reconocimiento de objetos basados en contornos, regiones y representacin de la forma. Explicar mtodos de anlisis de movimiento diferencial. Describir las diferencias en mtodos de seguimiento de objetos.

2.9.12 GV/Geometra Computacional. Tpicos


Propsito y naturaleza de la geometra computacional. reas de aplicacin, polgono convexo mnimo, interseccin de lneas, triangulazacin de Delaunay, triangulazacin de polgonos, diagramas de Voronoi.

94

Geometra computacional combinatoria: problemas estticos tales como desarrollar algoritmos eficientes para ciertas situaciones geomtricas incluyendo problemas dinmicos. Geometra computacional numrica: gmodeling, diseo geomtrico asistido por computador, modelamiento de curvas y superficies incluyendo representacin de curvas de Bezier, curvas y superficies splines, level set method.

Objetivos

Que el alumno est al tanto de ciertas tareas geomtricas. Estar habilitado para seleccionar el algoritmo adecuado para situaciones particulares.

2.9.13 GV/Programacin de motores de juegos. Tpicos


La naturaleza de los motores de juegos (comi un entorno de desarrollo integrado) y su propsito. Soporte de hardware incluyendo uso de paralelismo, desempeo, dispositivos de entrada. Componentes tpicos incluyendo renderizacin 3D y soporte para grficos en tiempo real e interaccin as como simulacin fsica, deteccin de colisiones, sonido, inteligencia artificial renderizacin de terreno.

Objetivos

Estar informado del amplio rango de posibilidades para motores de juegos incluyendo su potencial y sus limitaciones. Usar un motor de juegos para construir un juego simple.

2.10 IS. Sistemas Inteligentes (10 horas como mnimo) IS/Tpicos Fundamentales en Sistemas Inteligentes. (1 hora) IS/Bsqueda y Satisfaccin de la Restriccin. (5 horas) IS/Razonamiento basado en conocimiento. (4 horas) IS/Bsqueda Avanzada. IS/Representacin Avanzada del Conocimiento y Razonamiento. IS/Agentes. IS/Procesamiento de Lenguaje Natural. IS/Aprendizaje de Mquina. IS/Sistemas de Planeamiento. IS/Robtica. IS/Percepcin.

El campo de la Inteligencia Artificial (IA) concierne al diseo y anlisis de agentes autnomos. Estos son sistemas de software y/o mquinas fsicas, con sensores y actores, por ejemplo un robot o una nave espacial autnoma. Un sistema inteligente debe

95

percibir su ambiente, actuar racionalmente para lograr sus tareas asignadas, interactuar con otros agentes y con seres humanos. Estas capacidades son cubiertas por temas como visin computacional, planeamiento y respuesta, robtica, sistemas multiagentes, reconocimiento de voz y entendimiento del lenguaje natural. Se basan en un amplio conjunto general y especializado de representaciones del conocimiento generales y mecanismos de razonamiento, en solucin de problemas y algoritmos de bsqueda y en tcnicas de aprendizaje automtico. Adems, la inteligencia artificial provee un conjunto de herramientas para solucin de problemas que son difciles o no son factibles de resolver con otros mtodos. Estas incluyen bsqueda heurstica y algoritmos de planificacin, formalismoos de representacin del conocimiento y el razonamiento, tcnicas de aprendizaje automtico y mtodos aplicables a la deteccin de problemas y la adopcin de medidas tales como la comprensin del habla y del lenguaje, visin computacional y robtica entre otros. Los estudiantes tienen que ser capaces de determinar cuando un enfoque de IA es apropiado para un problema dado y ser capaces de seleccionar e implementar un mtodo de IA idneo.

Subsecciones

2.10.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (1 hora) 2.10.2 IS/Bsqueda y Satisfaccin de la Restriccin. (5 horas) 2.10.3 IS/Razonamiento basado en conocimiento. (4 horas) 2.10.4 IS/Bsqueda Avanzada. 2.10.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. 2.10.6 IS/Agentes. 2.10.7 IS/Procesamiento de Lenguaje Natural. 2.10.8 IS/Aprendizaje de Mquina. 2.10.9 IS/Sistemas de Planeamiento. 2.10.10 IS/Robtica. 2.10.11 IS/Percepcin.

2.10.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (1 hora) Tpicos


Historia de la inteligencia artificial. Cuestiones filosficas. La prueba de Turing. Experimento de pensamiento del ``Cuarto Chino'' de Searle. Temas ticos en IA. Definiciones fundamentales. Razonamiento ptimo vs. razonamiento actuando como humano. Comportamiento ptimo vs. comportamiento actuando como humano.
96

Preguntas filosficas. Modelando el mundo. El rol de la heurstica.

Objetivos

Describir la prueba de Turing y el experimento de pensamiento del ``Cuarto Chino''. Diferenciar los conceptos de razonamiento ptimo y razonamiento actuando como humano. Diferenciar los conceptos de comportamiento ptimo y comportamiento actuando como humano. Lista de ejemplos de sistemas inteligentes que dependen del modelo del mundo. Describir el rol de la heurstica y la necesidad de un punto medio entre la optimizacin y la eficiencia.

2.10.2 IS/Bsqueda y Satisfaccin de la Restriccin. (5 horas) Tpicos


Problemas de espacio. Bsqueda de fuerza bruta (respiro primero, profundidad primero, profundidad primero con profundizacin iterativa). Bsqueda del mejor primero (mejor genrico primero, algoritmo de Dijkstra, A*, admisibilidad de A*). Juegos de dos jugadores (bsqueda mnima, poda alfa-beta). Satisfaccin de la restriccin (backtracking mtodos de bsqueda local y seguimiento).

Objetivos

Formular un eficiente problema expresado en el idioma espaol, caracterizando este problema en trminos de estados, operadores, estado inicial y una descripcin del estado final. Describir el problema de explosin combinatoria y sus consecuencias. Seleccionar un algoritmo apropiado de bsqueda de fuerza bruta para un problema, implementarlo y caracterizar sus complejidades de tiempo y espacio. Seleccionar un algoritmo de bsqueda heurstica para un problema, implementarlo por medio del diseo de la funcin de evaluacin heurstica necesaria. Describir bajo que condiciones los algoritmos de heurstica garantizan una solucin ptima. Implementar la bsqueda mnima con poda alfa-beta para juegos de dos. Formular un problema en espaol utilizando un algoritmo de backtracking cronolgico.

2.10.3 IS/Razonamiento basado en conocimiento. (4 horas)

97

Tpicos

Repaso de lgica proposicional y lgica de predicados. Resolucin y prueba de teoremas. Inferencia no monotnica. Razonamiento probabilstico. Teorema de Bayes.

Objetivos

Explicar la operacin de la tcnica de resolucin para probar teoremas. Explicar la diferencia entre inferencia monotnica y no monotnica. Discutir las ventajas y defectos del razonamiento probabilstico. Aplicar el teorema de Bayes para determinar probabilidades condicionales.

2.10.4 IS/Bsqueda Avanzada. Tpicos


Heursticas. Bsqueda local y optimizacin. Subiendo a la colina Hill climbing. Algoritmos genticos. Simulated annealing. Estrategias local de recorte de caminos local beam search. Bsquedas en el adversario para juegos.

Objetivos

Explicar que son los algoritmos genticos y contrastar su efectividad con las soluciones de problemas clsicos y tcnicas de bsqueda clsicas. Explicar como simulated annealing puede ser usado para reducir la complejidad y contrastar su operacin con tcnicas de bsqueda clsica. Aplicar tcnicas de bsqueda local a un dominio clsico.

2.10.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. Tpicos

Representacin estructurada. a) Frames y objetos. b) Lgicas de descripcin. c) Sistemas de herencia.

98

Razonamiento no monotnico. a) Lgicas no clsicas. b) Razonamiento por defecto. c) Revisin de creencias. d) Lgicas de preferencia. e) Integracin de fuentes de conocimiento. f) Agregacin de creencias conflictivas.

Razonamiento sobre accin y cambio. a) Clculo de situaciones. b) Clculo de eventos. c) Problemas de ramificacin.

Razonamiento temporal y espacial. Incerteza. a) Razonamiento probabilstico. b) Redes Bayesianas. c) Teora de la decisin.

Representacin del conocimiento para diagnstico, representacin cualitativa. Ingeniera ontolgica. Redes semnticas.

Objetivos

Comparar y contrastar los modelos ms comunes usados para representacin de conocimiento estructurado, resaltando sus fortalezas y debilidades. Caracterizar los componentes de razonamiento no monotnico y su utilidad como un mecanismo de representacin para sistemas de creencia. Aplicar clculos de situaciones y eventos para problemas de accin y cambio. Articular la distincin entre razonamiento temporal y espacial, explicando como se interrelacionan. Describir y contrastar las tcnicas bsicas para representar incerteza. Describir y contrastar las tcnicas bsicas para diagnstico y representacin cualitativa.
99

2.10.6 IS/Agentes. Tpicos


Definicin de agentes. Aplicacin exitosa y estado del arte de los sistemas basados en agentes. Arquitectura de agentes. a) Agentes reactivos simples. b) Planeadores reactivos. c) Arquitecturas de capas. d) Ejemplos de arquitecturas y aplicaciones.

Teora de agentes. a) Acuerdos. b) Intenciones. c) Agentes de decisin terica. d) Procesos de decisin Markovianos (PDM).

Agentes de software, asistentes personales y acceso a la informacin. a) Agentes colaborativos. b) Agentes recolectores de informacin.

Agentes crebles (caracteres sintticos, modelo de emociones en agentes ). a) Agentes que aprenden. b) Sistemas multiagente. c) Sistemas multiagente inspirados econmicamente. d) Agentes colaborativos. e) Equipos de agentes. f) Modelando agentes.
100

g) Aprendizaje multiagente.

Introduccin a agentes robticos. Agentes mviles.

Objetivos

Explicar en qu difiere un agente de otras categoras de sistemas inteligentes. Caracterizar y contrastar las arquitecturas estndar de agentes. Describir las aplicaciones de la teora de agentes para dominios tales como agentes de software, asistentes personales y agentes crebles. Describir la distincin entre agentes que aprenden y aquellos que nolo hacen. Demostrar, usando ejemplos apropiados, cmo los sistemas multiagente soportan interaccin de agentes. Describir y contrastar agentes mviles y robticos.

2.10.7 IS/Procesamiento de Lenguaje Natural. Tpicos


Gramticas determinsticas y estocsticas. Algoritmos de parsing. Mtodos basados en corpus. Recuperacin de informacin. Traslacin de lenguaje. Reconocimiento del habla.

Objetivos

Definir y contrastar gramticas determinsticas y estocsticas, proveyendo ejemplos para mostrar la adecuacin de cada una. Identificar algoritmos de parsing clsicos para parseo de lenguaje natural. Defender la necesidad de un corpus establecido. Dar ejemplos de catlogos y procedimientos de bsqueda en un mtodo basado en corpus. Articular la distincin entre tcnicas para recuperacin de informacin, traduccin del lenguaje y reconocimiento de voz.

2.10.8 IS/Aprendizaje de Mquina. Tpicos


Definicin y ejemplos de aprendizaje de mquina. Aprendizaje inductivo, aprendizaje basado en estadstica, aprendizaje por refuerzo. Aprendizaje supervisado. rboles de aprendizaje por decisin. Aprendizaje por redes neuronales .
101

Redes de aprendizaje por creencia. Algoritmo del vecino ms cercano. Teora de aprendizaje. El problema del sobreajuste. Aprendizaje no supervisado. Aprendizaje por refuerzo.

Objetivos

Explicar las diferencias entre tres principales estilos de aprendizaje: supervisado, no supervisado y por refuerzo. Implementar algoritmos simples para aprendizaje supervisado, aprendizaje por refuerzo y aprendizaje no supervisado. Determinar cuales de los tres estilos de aprendizaje es apropiado para un dominio de problema en particular. Comparar y contrastar cada una de las siguientes tcnicas, proveer ejemplos de cuando cada estrategia es superior: rboles de decisin, redes neuronales y redes de creencia.. Implementar de manera apropiada un sistema de aprendizaje simple, usando rboles de decisin, redes neuronales y/o redes de creencia. Caracterizar el estado del arte en teora del aprendizaje, incluyendo logros y defectos. Explicar el algoritmo del vecino ms cercano y su lugar dentro de la teora del aprendizaje.. Explicar el problema de sobreajuste, a travs de tcnicas para detectar y manejar el problema.

2.10.9 IS/Sistemas de Planeamiento. Tpicos


Definicin y ejemplos de sistemas de planeamiento. Planeamiento como bsqueda. Planeamiento basado en operadores. Grafos de planeamiento. Planeamiento proposicional. Extendiendo sistemas de planeamiento (basado en casos, aprendizaje y sistemas probabilsticos). Sistemas de planeamiento para un mundo esttico. Planeamiento y ejecucin incluyendo planeamiento condicional y continuo. Planeamiento en agentes mviles. Planeamiento y robtica.

Objetivos

Definir el concepto de un sistema de planeamiento. Explicar como los sistemas de planeamiento difieren de tcnicas de bsqueda clsicas.

102

Articular las diferencias entre planeamiento como bsqueda, planeamiento basado en operadores y planeamiento proposicional, proveyendo ejemplos de dominios donde cada uno es ms aplicable. Definir y proveer ejemplos para cada una de las siguientes tcnicas: basada en casos, aprendizaje y planeamiento probabilstico. Comparar y contrastar sistemas de planeamiento para un mundo esttico con necesidad de ejecucin dinmica. Explicar el impacto de planeamiento dinmico en robtica.

2.10.10 IS/Robtica. Tpicos


Visin general. Estado del arte de sistemas de robot. Planeamiento vs. control reactivo. Incerteza en control. Sentido. Modelos del mundo. Espacios de configuracin. Planeamiento. Programacin de robots. Navegacin y control. Robtica.

Objetivos

Sintetizar el potencial y limitaciones del estado del arte de los sistemas de robot actuales. Implementar los algoritmos de configuracin de espacio para un robot 2D y polgonos complejos. Implementar algoritmos de planeamiento de movimientos simples. Explicar las incertezas asociadas con sensores y la forma de tratarlas. Disear una arquitectura de control simple. Describir varias estrategias para navegacin en ambientes desconocidos, incluyendo las fortalezas y defectos de cada una. Describir varias estrategias de navegacin con la ayuda de hitos, incluyendo las fortalezas y defectos de cada una.

2.10.11 IS/Percepcin. Tpicos


Percepcin: rol y aplicaciones. Formacin de imagenes: luz, color, sombras. Imagenes y deteccin de objetos: reconocimiento reconocimiento de objetos. Tecnologas.

de

caractersticas,

103

Caractersticas del software de percepcin.

Objetivos

Describir la importancia del reconocimiento de imagenes y objetos en Inteligencia Artificial e indicar aplicaciones de esta tecnologa. Delinear las principales tcnicas de reconocimiento de objetos. Describir las diferentes caractersticas de las tecnologas usadas en percepcin.

2.11 IM. Administracin de Informacin (11 horas como mnimo) IM/Modelos de Informacin. (4 horas) IM/Sistemas de Base de Datos. (3 horas) IM/Modelamiento de Datos. (4 horas) IM/Indexacin. IM/Base de Datos Relacionales. IM/Lenguajes de Consultas de Base de Datos. IM/Diseo de Bases de Datos Relacionales. IM/Procesamiento de Transacciones. IM/Bases de Datos Distribuidas. IM/Diseo Fsico de Bases de Datos. IM/Minera de Datos. IM/Almacenamiento y Recuperacin de Informacin. IM/Hipermedia. IM/Sistemas Multimedia. IM/Libreras Digitales.

Gestin de la Informacin (Information Managment-IM) juega un papel crtico en casi todas las reas donde las computadoras son usadas. Esta rea incluye la captura, digitalizacin, representacin, organizacin, transformacin y representacin de la informacin; algoritmos para acceso eficiente y eficaz y actualizacin de informacin almacenada, modelamiento y abstraccin de datos y tcnicas de almacenamiento fsico de archivos. Tambin abarca la seguridad de la informacin, privacidad, integridad, y proteccin en un ambiente compartido. El estudiante necesita ser capaz de desarrollar modelos mentales y fscos de datos, determinar que mtodos y tcnicas de IM son apropiadas para un problema dado, y ser capaz de seleccionar e implementar una solucin de IM adecuada que refleje todas las limitaciones, incluyendo escalabilidad y usabilidad.

Subsecciones

2.11.1 IM/Modelos de Informacin. (4 horas) 2.11.2 IM/Sistemas de Base de Datos. (3 horas) 2.11.3 IM/Modelamiento de Datos. (4 horas)
104

2.11.4 IM/Indexacin. 2.11.5 IM/Base de Datos Relacionales. 2.11.6 IM/Lenguajes de Consultas de Base de Datos. 2.11.7 IM/Diseo de Bases de Datos Relacionales. 2.11.8 IM/Procesamiento de Transacciones. 2.11.9 IM/Bases de Datos Distribuidas. 2.11.10 IM/Diseo Fsico de Bases de Datos. 2.11.11 IM/Minera de Datos. 2.11.12 IM/Almacenamiento y Recuperacin de Informacin. 2.11.13 IM/Hipermedia. 2.11.14 IM/Sistemas Multimedia. 2.11.15 IM/Libreras Digitales.

2.11.1 IM/Modelos de Informacin. (4 horas) Tpicos


Almacenamiento y recuperacin de informacin (IS&R). Aplicaciones de administracin de la informacin. Representacin y captura de la informacin. Asociacin de Metadata/schema con los datos Indexacin y anlisis. Bsqueda, recuperacin, enlace, navegacin. Privacidad, integridad, seguridad y preservacin de la informacin. Escalabilidad, eficiencia y efectividad. Escalabilidad, eficiencia y efectividad. Conceptos relacionados con asegurar informacin (persistencia de datos).

Objetivos

Comparar y contrastar la informacin con datos y conocimiento. Criticar y defender las aplicaciones de informacin de tamao pequeo y mediano con respecto a la satisfaccin de las necesidades reales del usuario. Mostrar explicitamente la relacin entre metadata/schema almacenados y los datos. Explicar el uso de consultas declarativas. Dar una version declarativa de una consulta de navegacin. Describir varias soluciones tcnicas para problemas relacionados a la privacidad, integridad, seguridad y preservacin de la informacin. Explicar las medidas de eficiencia (estimacin, tiempo de respuesta) y efectividad (precision - recall). Describir mtodos para asegurar que los sistemas de informacin pueden escalar de lo individual a lo global. Identificar asuntos relacionados a la persistencia de datos en una organizacin. Describir vulnerabilidades de la integridad de datos en escenarios especficos.

2.11.2 IM/Sistemas de Base de Datos. (3 horas)

105

Tpicos

Historia y motivacin de los sistemas de base datos. Componentes de los sistemas de base de datos. Funciones DBMS. Arquitectura de base de datos e independencia de datos. Uso de un lenguaje de consultas declarativo.

Objetivos

Explicar las caractersticas que distinguen a las bases de datos de los mtodos tradicionales de programacin con archivos de datos. Citar el objetivo, funciones, modelos, componentes, aplicaciones y el impacto social de los sistemas de bases de datos. Describir los componentes de un sistema de base de datos y dar ejemplos de su uso. Identificar las funciones superiores DBMS y describir su rol en un sistema de base de datos. Explicar los conceptos de independencia de datos y su importancia en un sistema de base de datos. Usar un lenguaje de consulta para elicitar la informacin de una base de datos.

2.11.3 IM/Modelamiento de Datos. (4 horas) Tpicos


Modelamiento de datos. Modelos conceptuales (incluyendo entidad-relacin y UML). Modelo orientado a objetos. Modelo de datos relacional. Modelos de datos semiestructurados (expresados utilizando XMLSchema).

DTD

Objetivos

Categorizar los modelos de datos basados en los tipos de conceptos que ellos proveen para describir la estructura de las bases de datos, esto es, el modelo de datos conceptual, el modelo de datos fsico y el modelo de datos representacional. Describir los conceptos de modelado y la notacin del modelo entidad-relacin y UML, incluyendo su uso en modelamiento de datos. Describir los principales conceptos del modelo OO tal como la identidad del objeto, constructores de tipos, encapsulacin, herencia, polimorfismo y creacin de versiones. Definir la terminologa fundamental usada en el modelo de datos relacional. Describir los principios bsicos del modelo de datos relacional. Ilustrar los conceptos de modelamiento y notacin del modelo de datos relacional. Describir las diferencias en los modelos de datos relacional y semiestructurado.
106

Generar un modelo semiestructurado (DTD o XMLSchema) equivalente a un esquema relacional dado.

2.11.4 IM/Indexacin. Tpicos


El impacto masivo de los ndices en el desempeo de consultas. La estructura bsica de un ndice. Menteniendo un buffer de datos en memoria. Creacin de ndices con SQL. Indexacin de texto. Indexacin de la web y como trabajan los motores de bsqueda.

Objetivos

Generar un archivo ndice para una soleccin de recursos. Explicar el rol de un ndice invertido en la localizacin de un documento en una coleccin. Explicar como el proceso de encontrar la raiz de una palabra (stemming) y las palabras no relevantes (stop words) afectan la indexacin. Identificar los ndices apropiados para un determinaso esquema relacional un una consulta dada. Estimar el tiempo de recuperacin de la informacin con y sin ndices.

2.11.5 IM/Base de Datos Relacionales. Tpicos


Mapeo del esquema conceptual al esquema relacional. Entidad e integridad referencial. lgebra relacional y clculo relacional.

Objetivos

Preparar un esquema relacional de un modelo conceptual usando el modelo entidad-relacin. Explicar y demostrar los conceptos de restricciones de la integridad de la entidad y restricciones de la integridad referencial (incluyendo la definicin del concepto de llave fornea). Demostrar el uso de las operaciones del lgebra relacional desde la teora de conjuntos matemticos (unin, interseccin, diferencia y producto cartesiano) y las operaciones de lgebra relacional desarrolladas especficamente para bases de datos relacionales (select (restrict) , product, join y division). Demostrar consultas en el lgebra relacional. Demostrar consultas en el clculo relacional de tuplas.

107

2.11.6 IM/Lenguajes de Consultas de Base de Datos. Tpicos


Sntesis de los lenguajes de bases de datos. SQL (definicin de datos, formulacin de consultas, actualizacin del sublenguaje, restricciones e integridad). Query by Example (QBE) y entornos de 4ta generacin. Consultas no procedurales incrustadas en un lenguaje procedimental. Introduccin al lenguaje de consultas orientado a objectos. Procedimientos almacenados.

Objetivos

Crear un esquema de base de datos relacional en SQL que incorpora restricciones de integridad referencial, integridad-entidad, llaves. Demostrar la definicin de datos en SQL y recuperar informacin de una base de datos usando la sentencia SQL SELECT. Evaluar un conjunto de estrategias de procesamiento de consultas y seleccionar la ptima. Crear una consulta no procedimental por medio de llenado de plantillas de relaciones para construir un ejemplo del resultado de la consulta deseada. Incrustar consultas orientadas a objetos en un lenguaje tal como C++ o Java (ejemplo, SELECT Col.Method FROM Object). Escribir un procedimiento almacenado que reciba parmetros y que tanga algn flujo de control para proveer alguna funcionalidad.

2.11.7 IM/Diseo de Bases de Datos Relacionales. Tpicos


Diseo base de datos. Dependencia funcional. Descomposicin de un esquema: lossless-join y propiedades de preservacin de independencia de una descomposicin. Llaves candidatas, super llaves, cerradura de un conjunto de atributos. Formas normales (1NF, 2NF, 3NF, BCNF). Dependencia multivaluada (4NF). Join dependency (PJNF, 5NF). Representacin terica.

Objetivos

Determinar la dependencia funcional entre dos o ms atributos que son un subconjunto de una relacin. Conectar las restricciones expresadas como llave primaria y llaves forneas con dependencias funcionales.

108

Calcular cerradura de un conjunto de atributos bajo una dependencia funcional dada. Determinar si un conjunto de atributos forma o no una super llave y/o es candidato a ser llave para una dependencia funcional dada. Evaluar una descomposicin propuesta para decir si tiene o no tiene losslessjoin y preservacin de dependencia. Describir que significa 1NF, 2NF, 3NF y BCNF. Identificar si una relacin es una 1NF, 2NF, 3NF o BCNF. Normalizar una 1NF en un conjunto de relaciones en 3NF (o BCNF) y desnormalizar un esquema relacional. Explicar el impacto de la normalizacin sobre la eficiencia de las operaciones de base de datos, especialmente la utilizacin de consultas. Describir que es una dependencia multivaluada y que tipo de restricciones sta especifica. Explicar por qu 4NF es til en el diseo del esquema.

2.11.8 IM/Procesamiento de Transacciones. Tpicos


Transacciones. Recuperacin y falla. Control de concurrencia.

Objetivos

Crear una transaccin mediante la incrustacin de SQL en un programa de aplicacin. Explicar el concepto de compromiso implcito. Describir los temas especficos para la ejecucin de transacciones eficientes. Explicar cundo y por qu el rollback es necesario y cmo el logging asegura un rollback apropiado. Explicar los efectos de los diferentes niveles de aislamiento sobre los mecanismos de control de concurrencia. Escoger el nivel de aislamiento apropiado para implementar un protocolo de transaccin especificado.

2.11.9 IM/Bases de Datos Distribuidas. Tpicos


Almacenamiento de datos distribuido. Procesamiento de consultas distribuidas. Modelo de transaccin distribuido. Control de concurrencia. Soluciones heterogneas y homogneas. Cliente-servidor.

109

Objetivos

Explicar las tcnicas usadas para la fragmentacin, replicacin, alocacin de datos durante el proceso de diseo de bases de datos distribuidas. Evaluar estrategias simples para ejecutar una consulta distribuida para seleccionar la estrategia que minimice la cantidad de transferencia de datos. Explicar cmo el protocolo de commit en dos fases es usado para tratar una transaccin que accese a una base de datos almacenada en mltiples nodos. Describir el control de concurrencia distribuido basado en la distincin de tcnicas de copiado y el mtodo de voto. Describir los tres niveles de software en el modelo cliente-servidor.

2.11.10 IM/Diseo Fsico de Bases de Datos. Tpicos


Almacenamiento y estructura de archivo. Archivos indexados. Archivos hashed. Archivos de firma (signature). Arboles B. Archivos con ndice denso. Archivos con registros de longitud de variable. Eficiencia de la base de datos y afinamiento (tuning).

Objetivos

Explicar los conceptos de registros, tipos de registros y archivos, as como tambin las diferentes tcnicas para colocar registros de archivos en un disco. Dar ejemplos de aplicaciones de ndices primarios, secundarios y clusterizados. Distinguir entre un ndice denso y uno no denso. Implementar ndices multinivel dinmicos usando rboles B. Explicar la teora y aplicacin de tcnicas hash interno y externo. Usar dispersin (hash) para facilitar la expansin de archivos dinmicos. Describir las relaciones entre compresin, dispersin (hash) y bsquedas eficientes en base de datos. Evaluar costos y beneficios de diferentes esquemas de dispersin. Explicar cmo el diseo la base de datos fsicas afecta a la eficiencia de las transacciones en base de datos..

2.11.11 IM/Minera de Datos. Tpicos


La utilidad de la minera de datos. Patrones secuenciales y asociativos. Clusterizacin de datos. Anlisis de canastas de mercado. Limpieza de datos.
110

Visualizacin de datos.

Objetivos

Comparar y contrastar diferentes concepciones de minera de datos, mostrando evidencias en investigacin y aplicacin. Explicar el rol al encontrar asociaciones en informacin manejada por la industria comercial. Caracterizar los tipos de patrones que pueden ser descubiertos por la minera de reglas de asociacin. Describir cmo extender un sistema relacional para encontrar patrones usando reglas de asociacin. Evaluar temas metodolgicos subrayando la efectiva aplicacin de minera de datos. Identificar y caracterizar fuentes de ruido, redundancia y outlier en los datos presentados. Identificar mecanismos (agregacin en lnea, comportamiento en cualquier tiempo, visualizacin interactiva) para cerrar el ciclo en el proceso de minera de datos. Describir por qu los varios procesos de cerrado de ciclo mejoran la efectividad de la minera de datos.

2.11.12 IM/Almacenamiento y Recuperacin de Informacin. Tpicos


Caracteres, cadenas, cdigos, texto. Documentos, publicacin electrnica, marcado markup y lenguaje de marcado. rboles digitales, archivos invertidos, rboles PAT, archivos signature, indexacin. Anlisis morfolgico, extraccin de la raz de una palabra (stemming), frases, stop list. Distribucin de la frecuencia de trminos, incerteza, difusibilidad, por peso. Spacio vectorial, probabilsticos, lgico y modelos avanzados. Necesidad de informacin, relevancia, evaluacin, efectividad. Tesauro, ontologas, clasificacin y categorizacin, metadata. Informacin bibliogrfica, bibliometra, citaciones. Ruteo y filtrado (en comunidad). Bsqueda y estrategias de bsqueda, comportamiento de bsqueda de informacin, modelamiento de usuario, retroalimentacin. Sumarizacin y visualizacin de informacin. Integracin de citaciones, palabras clave, esquemas de clasificacin y otros trminos. Sistemas y protocolos (incluyendo Z39.50, OPACs, motores WWW, sistemas de investigacin).

Objetivos

Explicar el almacenamiento de informacin bsico y conceptos de recuperacin..


111

Describir qu temas son especficos para la recuperacin de informacin eficiente. Dar aplicaciones de estrategias de bsqueda alternativa y explicar por qu la estrategia de bsqueda particular es apropiada para la aplicacin. Realizar investigacin basada en Internet. Disear e implementar un sistema de almacenamiento y recuperacin de tamao pequeo a medio.

2.11.13 IM/Hipermedia. Tpicos


Modelos hipertexto (historia inicial, web, Dexter, Amsterdam, Hytime). Servicios de enlace, motores y arquitecturas de hipertexto (distribuido). Nodos compuestos y anclas. Dimensiones, unidades, locaciones y spans. Browsing, navegacin, vistas, zooming. Generacin automtica de enlaces. Presentacin, transformacin y sincronizacin. Authoring, lectura y anotaciones. Sistemas y protocolos (incluyendo web, HTTP).

Objetivos

Listar la evolucin de modelos de hipertexto e hipermedia desde las versiones iniciales hasta las presentaciones actuales, distinguiendo sus respectivas capacidades y limitaciones. Explicar conceptos bsicos de hipertexto e hipermedia. Demostrar un entendimiento fundamental de la presentacin de la informacin, transformacin y sincronizacin. Comparar y contrastar la entrega de hipermedia basado en protocolos y sistemas usados. Disear e implementar aplicaciones de recuperacin de informacin basados en web usando herramientas de generacin de contenido apropiadas.

2.11.14 IM/Sistemas Multimedia. Tpicos


Dispositivos, drivers de dispositivo, seales de control y protocolos, DSPs. Aplicaciones, editores de media, sistemas de generacin de contenido. Flujos/estructuras, captura/representacin/transformacin, espacios/dominios, compresin/codificacin. Anlisis basado en el contenido, indexacin y recuperacin de audio, imgenes y video. Presentacin, rendering, sincronizacin, integracin multimodal/interfases. Entrega en tiempo real, calidad del servicio, conferencia de audio/video, video on-demand.
112

Objetivos

Describir la media y soportar dispositivos comunmente asociados con informacin multimedia y sistemas. Explicar conceptos de presentacin multimedia bsica. Demostrar el uso del anlisis de la informacin basada en contenido en un sistema de informacin multimedia. Presentaciones multimedia crticas en trminos de su apropiado uso de audio, video, grficos, color y otros conceptos de presentacin de informacin. Implementar una aplicacin multimedia, usando un sistema de creacin de contenido comercial.

2.11.15 IM/Libreras Digitales. Tpicos


Digitalizacin, almacenamiento e intercambio. Objetos digitales, compuestos y paquetes. Metadata, catalogamiento, registro de autores. Archivos, repositorios, nombramientos. Espacios (conceptual, geogrfico, 2-3D, VR). Arquitecturas (agentes, buses, wrappers/mediadores), interoperabilidad. Servicios (bsqueda, enlace, navegacin, etc). Administracin de los derechos de la propiedad intelectual, privacidad, proteccin (marcas de agua -watermarking). Archivamiento y preservacin, integridad.

Objetivos

Explicar los conceptos tcnicos subyacentes en la construccin de una librera digital. Describir los requerimientos de servicio bsico para la bsqueda, enlace y navegacin. Criticar escenarios apropiados e inapropiados usos de una librera digital, as como tambin determinar las consecuencias econmicas, legales y sociales para cada escenario. Describir algunas de las soluciones tcnicas para los problemas relacionados al archivamiento y preservacin de la informacin en una librera digital. Disear e implementar una pequea librera digital.

2.12 SP. Asuntos Sociales y Profesionales (16 horas como mnimo) SP/Historia de la Computacin. (1 hora) SP/Contexto Social de la Computacin. (3 horas) SP/Herramientas Analticas. (2 horas) SP/tica Profesional. (3 horas) SP/Riesgos. (2 horas) SP/Operaciones de seguridad. SP/Propiedad Intelectual. (3 horas)
113

SP/Privacidad y Libertades Civiles. (2 horas) SP/Crimen Informtico. SP/Economa en Computacin. SP/Estructuras de Trabajo Filosficas.

Aunque las cuestiones tcnicas son evidentemente centrales en cualquier currcula de computacin, no constituyen por si mismas un programa educacional completo en el rea. Los estudiantes deben tambin desarrollar una comprensin del contexto social y profesional en el cul la computacin se da. Esta necesidad de incorporar el estudio de cuestiones sociales en la currcula fue reconocido en el extracto de la Computing Curricula 1991 [Tucker91]: Los estudiantes de pregrado tambin necesitan entender la base cultural, social, jurdica, tica y cuestiones inherentes a la la disciplina de la computacin. Ellos deben entender lo que la disciplina ha sido, lo que es, y a lo que se dirige. Ellos deberan entender tambien sus roles individuales en el proceso, as como apreciar las cuestiones filosficas, problemas tcnicos, y los valores estticos que desempean un papel importante en el desarrollo de la disciplina. Los estudiantes tambin necesitan desarrollar la habilidad de plantear preguntas serias acerca del impacto social de la computacin y evaluar respuestas procesadas para esas preguntas. Futuros profesionales deben ser capaces de anticipar el impacto de la introduccin de un producto determinado en un entorno determinado. Ese producto mejorar o reducir la calidad de vida? Cul ser el impacto sobre los individuos, grupos, y las instituciones? Finalmente, los estudiantes deben ser conscientes de los derechos legales de los vendedores y usuarios de software y hardware, y deben apreciar los valores ticos que son la base para tales derechos. Los futuros profesionales deben entender la responsabilidad de la cul se harn cargo, y las posibles consecuencias de sus errores. Deben entender sus limitaciones como tambin las limitaciones de sus herramientas. Todos los profesionales deben hacer un compromiso a largo plazo a permanecer actualizados en sus especialidades escogidas y en la disciplina de la computacin en su conjunto. El material en esta rea del conocimiento se cubre de mejor manera a travs de una combinacin de un curso obligatorio, junto con pequeos mdulos en otros cursos. Por una parte, algunas unidades listadas como principales, SP/Contexto Social de la Computacin., SP/Herramientas Analticas., SP/tica Profesional. y SP/Propiedad Intelectual. no se prestan fcilmente a ser cubiertos en cursos tradicionales. Sin un curso independiente, es difcil cubrir estos tpicos de manera apropiada. Por otro lado, si las consideraciones ticas son cubiertas solo en cursos independientes y no en ``el contexto", ello reforzar la falsa idea que los procesos tcnicos son carentes de cuestiones ticas. Por consiguientes, es importante que muchos cursos tradicionales incluyan mdulos que analicen consideraciones ticas en el contexto del tema tcnico materia del curso. Cursos en reas como ingeniera del software, bases de datos, redes de computadoras e introduccin a la computacin proveen un contexto obvio para el anlisis de cuestiones ticas. Sin embargo, un mdulo relacionado a la tica puede ser desarrollado para casi cualquier curso en la currcula. Se ira explicitamente en contra del espritu de las recomendaciones tener slo un curso independiente. Pasar por todas estas cuestiones en el rea. Evaluar estas cuestiones en esta rea recae en la necesidad
114

de hablar de la responsabilidad del profesional de computacin para que proactivamente ataque estas cuestiones con acciones morales y tcnicas al mismo tiempo. Las cuestiones ticas discutidas en cualquier clase deber ser relacionadas directamente y sugir naturalmente del tema materia de la clase. Los ejemplos incluyen una discusin en el curso de base de datos de agregacin de datos o minera de datos, o una discusin en el curso de ingeniera de software acerca de los conflictos potenciales entre las obligaciones del cliente y las obligaciones del usuario y otros afectador por su trabajo. Tareas de programacin en torno a aplicaciones tales como controlar el movimiento de un lser durante una ciruga ocular pueden ayudar a abordar los impactos profesionales, ticos y sociales de la computacin. Hay un conflicto pedaggico no resuelto entre tener un curso principal en un nivel bajo (primer o segundo ao) en un nivel mayor (tercer ao o superiores). Tener el curso en un nivel bajo: 1. Permite cubrir los mtodos de anlisis (SP/Herramientas Analticas.) antes de analizar las cuestiones ticas en el contexto de diferentes reas tcnicas. 2. Asegura que los estudiantes que empiezan a trabajar tempranamente tendrn conocimiento de algunas cuestiones profesionales y ticas. Por otro lado, ubicar el curso tempranamente puede dar lugar a los siguientes problemas: 1. Los estudiantes de primeros aos tal vez no tengan los conocimientos tcnicos y la madurez intelectual para lograr un anlisis tico profundo. Sin conocimiento bsico de alternativas tcnicas, es difcil considerar sus implicaciones ticas. 2. Los estudiantes necesitan un cierto nivel de madurez y sofisticacin para apreciar los antecedentes y cuestiones implicadas. Por tal motivo, los estudiantes deben completar al menos el curso de matemtica discreta y el segundo curso de ciencia de la computacin. Tambin, si los estudiantes llevan un curso de escritura tcnica, debera ser un pre-requisito o un co-requisito para el curso requerido en el rea de SP. 3. Algunos programas pueden desear usar como una experiencia ``angular" para los estudiantes de ltimos aos. Aunque los items SP/Contexto Social de la Computacin. y SP/Herramientas Analticas. estn listados con un numero de horas asociado, son fundamentales para todos los tpicos. Por lo cul, cuando se cubre el resto de reas, los instructores continuamente deben percatarse de las cuestiones de contexto social y las habilidades de anlisis tico. En la prctica, esto quiere decir que los tpicos en SP/Contexto Social de la Computacin. y SP/Herramientas Analticas. sern reforzados continuamente como materia en otras reas cubiertas.

Subsecciones

2.12.1 SP/Historia de la Computacin. (1 hora)


115

2.12.2 SP/Contexto Social de la Computacin. (3 horas) 2.12.3 SP/Herramientas Analticas. (2 horas) 2.12.4 SP/tica Profesional. (3 horas) 2.12.5 SP/Riesgos. (2 horas) 2.12.6 SP/Operaciones de seguridad. 2.12.7 SP/Propiedad Intelectual. (3 horas) 2.12.8 SP/Privacidad y Libertades Civiles. (2 horas) 2.12.9 SP/Crimen Informtico. 2.12.10 SP/Economa en Computacin. 2.12.11 SP/Estructuras de Trabajo Filosficas.

2.12.1 SP/Historia de la Computacin. (1 hora) Tpicos


Prehistoria - el mundo antes de 1946. Historia del hardware de computadoras, software, redes. Pioneros de la computacin.

Objetivos

Listar las contribuciones de varios pioneros en el campo de la computacin. Comparar la vida diaria antes y despus del advenimiento de las computadoras personales e Internet. Identificar las tendencias continuamente significativas en la historia del campo de la computacin.

2.12.2 SP/Contexto Social de la Computacin. (3 horas) Tpicos


Introduccin a las implicaciones sociales de la computacin. Implicaciones sociales de las redes de comunicacin. Crecimiento, control y acceso a la Internet. Temas relacionados al gnero. Asuntos culturales. Temas internacionales. Accesibilidad: baja representacin de minoras, mujeres y gente con discapacidad en la profesin de computacin. Asuntos de polticas pblicas, por ejemplo: voto electrnico.

Objetivos

Interpretar el contexto social de una implementacin particular. Identificar suposiciones y valores insertados en un diseo particular incluyendo aquellos de naturaleza cultural. Evaluar una implementacin particular a travs del uso de datos empricos.

116

Describir las formas positivas o negativas en las cuales la computacin altera los modos de interaccin entre las personas. Explicar por qu el acceso a redes de computadores y computadoras es restringido en algunos pases. Indicar el rol de los temas culturales para el trabajo en equipo. Analizar el rol y riesgos de la introduccin de la computacin en polticas pblicas y gobierno: por ejemplo voto electrnico. Articular el impacto del deficit de profesionales en computacin.

2.12.3 SP/Herramientas Analticas. (2 horas) Tpicos


Creacin y evaluacin de argumentos ticos. Identificacin y evaluacin de elecciones ticas. Entendimiento del contexto social del diseo. Identificacin de suposiciones y valores.

Objetivos

Analizar un argumento para identificar premisas y conclusiones. Ilustrar el uso del ejemplo, de la analoga, analoga contraria en argumentos ticos. Detectar el uso de falacias lgicas en un argumento. Identificar los involucrados en un determinado asunto y nuestras obligaciones hacia ellos. Articular los puntos de equilibrio ticos en una decisin tica.

2.12.4 SP/tica Profesional. (3 horas) Tpicos


Valores de la comunidad y las leyes con las que vivimos. La naturaleza del profesionalismo. Mentenerse actualizado profesionalmente (en trminos de conocimiento, herramientas, habilidades, temas legales as como habilidad para auto evaluarse y tener fluencia en temas computacionales. Varias formas de acreditacin profesional y las ventajas y desventajas. El rol de la profesin en la poltica pblica. Prestar atencin de las consecuencias ticas del ejercicio profesional. Discrepancia tica y creacin de un canal de denuncias, annimas o no, sobre el incumplimiento de normas internas (whistle-blowing). Cdigos de tica, conducta y prctica (IEEE, ACM, SE, AITP, etc). Tratar con el acoso y discriminacin. Polticas de uso aceptable para la computacin en el lugar de trabajo. Ambiente de trabajo saludable (ergonoma).

Objetivos

117

Identificar los estados progresivos en un incidente whistle-blowing. Especificar las fortalezas y debilidades de cdigos profesionales relevantes como expresiones de profesionalismo y guas para la toma de decisiones. Identificar los tpicos ticos que alcanzan el desarrollo de software, determinar cmo direccionar stos tcnica y ticamente. Desarrollar una poltica para el uso de la computadora con medidas de aplicacin. Analizar un tema de computacin global observando el rol de los profesionales y gobierno en tratar el problema. Evaluar los cdigos profesionales de la tica de organizaciones como la ACM, la IEEE Computer Society y otras. Describir los mecanismos que tipicamente existen para mantenerse actualizado. Identificar las implicancias de los dispositivos ergonmicos en la salud de la gente en el ambiente de trabajo.

2.12.5 SP/Riesgos. (2 horas) Tpicos


Ejemplos histricos de los riesgos del software (tal como el caso Therac-25). Implicaciones de la complicidad del software. Administracin, evaluacin, eliminacin y control del riesgo.

Objetivos

Explicar las limitaciones de la prueba como un medio para asegurar correctitud. Describir las diferencias entre correccin, confiabilidad y seguridad. Discutir el potencial de los problemas ocultos en el reuso de componentes existentes. Describir los mtodos actuales para administrar el riesgo y caracterizar las fortalezas y debilidades de cada uno. Delinear el rol del manejo de riesgo en el diseo y construccin de sistemas.

2.12.6 SP/Operaciones de seguridad. Tpicos


Seguridad fsica. Control de acceso fsico. Control de acceso de personal. Seguridad Operativa. Polticas de seguridad para sistemas/redes. Recuperacin y respuesta. Manejando problemas tcnicos y humanos.

Objetivos

118

Desarrollar un plan de recuperacin de incidentes para manejar los compromisos de una organizacin. Analizar los procedimientos de seguridad establecidos en busca de puntos dbiles que un atacante podra explotar y explicar como los mismos podran fallar. Proponer medidas de seguridad apropiadas para diferentes situaciones. Explicar para una comunidad de usuarios no expertos en seguridad que medidas ellos deben seguir y porque en una situacin en la que sus trabajos no sean realacionados con seguridad.

2.12.7 SP/Propiedad Intelectual. (3 horas) Tpicos


Fundamentos de la propiedad intelectual. Copyrights, patentes y secretos del negocio. Piratera de software. Patentes de software. Asuntos transnacionales concernientes a la propiedad intelectual.

Objetivos

Distinguir entre patentes, copyright y proteccin de secretos del negocio. Discutir el fondo legal del copyright en las leyes nacionales e internacionales. Explicar como las leyes de patentes y el copyright pueden variar internacionalmente. Delinear el desarrollo histrico de las patentes de software. Discutir las consecuencias de la piratera de software sobre los desarrolladores de software y el rol de las organizaciones de soporte relevante.

2.12.8 SP/Privacidad y Libertades Civiles. (2 horas) Tpicos


Bases legales y ticas para la proteccin y la privacidad. Marco tico y legal para la libertad de informacin. Implicaciones de privacidad en bases de datos (ej. recoleccin de datos, almacenamiento, compartir informacin, recoleccin masiva de datos, sistemas de vigilancia de computadora). Estrategias tecnolgicas para la proteccin de la privacidad. Libertad de expresin en el ciber espacio. Implicaciones internacionales e interculturales.

Objetivos

Listar las bases legales para el derecho a la privacidad y a la libertad de expresin en las naciones de cada uno y como estos conceptos varan de pas en pas.
119

Describir las actuales amenazas (basadas en computadoras) a la privacidad. Explicar cmo la Internet puede cambiar el balance histrico en la proteccin a la libertad de expresin. Describir las tendencias en la proteccin de la privacidad con ejemplos en la tecnologa. clarificar el aparente conflicto entre los requerimientos de libertad de la informacin y la proteccin de los derechos del individuo.

2.12.9 SP/Crimen Informtico. Tpicos


Historia y ejemplos del crimen informtico. Cracking, hacking y sus efectos. Virus, gusanos y troyanos. Robo de identidad. Estrategias de prevencin del crimen.

Objetivos

Describir las tendencias en la proteccin de la privacidad en tecnologia. Delinear las bases de los ataques de virus y de negacin de servicio. Enumerar tcnicas para combatir los ataques de crackers. Discutir los diferentes mtodos de crackers y sus motivaciones. Identificar el rol de los profesionales en la seguridad y los inconvenientes relacionados. Indicar medidas a ser tomadas por los individuos y por las organizaciones (incluyendo gobierno) para prevenir el robo de identidad.

2.12.10 SP/Economa en Computacin. Tpicos


Monopolios y sus implicaciones econmicas. Efectos de los suministros de labor calificada en la calidad de los productos computacionales. Estrategias de adjudicacin de precios en el dominio de la computacin. El fenmeno de outsourcing y offshoring, impactos en el empleo y en la economa. Diferencias en el acceso a los recursos computacionales y los posibles efectos de esta. Sustentabilidad del ambiente.

Objetivos

Listar la cuestin de fondo de los esfuerzos anti-monopolio. Describir las diferentes formas en las cuales la industria de la tecnologa de la informacin es afectada por recortes en los suministros laborales.
120

Sugerir y defender las formas para direccionar las limitaciones del acceso a la computacin. Sintetizar la evolucin de las estrategias de adjudicacin de precios para los bienes computacionales y servicios. Discutir los beneficios, las desventajas y las implicaciones del outsourcing y offshoring. Identificar maneras de desarrolar computacin protegiendo el ambiente (ej. operaciones verdes, productos reciclabes, reduccin de emisin de gases).

2.12.11 SP/Estructuras de Trabajo Filosficas. Tpicos


Estructuras de trabajo filosficas, particularmente utilitarismo y teoras deontolgicas. Problemas de relativismo tico. tica cientfica en la perspectiva histrica. Diferencias en los mtodos filosficos y cientficos.

Objetivos

Listar los conceptos bsicos de relativismo, utilitarismo y teoras deontolgicas. Reconocer la distincin entre teora tica y tica profesional. Identificar la debilidad del mtodo ``agente empleado'', legalidad estricta, egosmo novato, relativismo novato, como estructuras de trabajo ticas.

2.13 SE. Ingeniera de Software (29 horas como mnimo) SE/Diseo de Software. (8 horas) SE/Usando APIs. (3 horas) SE/Herramientas y Entornos de Software. (3 horas) SE/Procesos de Software. (2 horas) SE/Especificacin de Requerimientos. (4 horas) SE/Validacin y verificacin de software. (3 horas) SE/Evolucin del Software. (3 horas) SE/Administracin de Proyectos de Software. (3 horas) SE/Computacin Basada en Componentes. SE/Mtodos Formales. SE/Confiabilidad del Software. SE/Desarrollo de Sistemas Especializados. SE/Evaluacin de riesgos. SE/Mejorando la programacin: robustez y seguridad.

Ingeniera de software es la disciplina concerniente a la aplicacin de la teora, conocimiento, y prctica para construir sistemas de software de manera eficaz y eficiente que satisfagan los requerimientos de usuarios y clientes. La Ingeniera de Software es aplicable a pequeos, medianos, y sistemas a gran escala. Abarca todas las
121

fases del ciclo de vida de un sistema de software. El ciclo de vida incluye especificacin y anlisis de requerimientos, diseo, construccin, prueba, despliegue, y operacin y mantenimiento. La Ingeniera de Software emplea mtodos, procesos, tcnicas y mediciones de ingeniera. Se beneficia del uso de herramientas para gestionar el desarrollo de software; analizar y modelar artefactos de software; medir y controlar la calidad; y para asegurar un disciplinado, acercamiento controlado a la evolucin de software y su reutilizacin. El desarrollo del software, el cul puede invoucrar a un solo desarrollor o a un equipo de desarrolladores, requiere la eleccin herramientas, mtodos y enfoques que son ms aplicables para un determinado ambiente de desarrollo. La caja de herramientas de la Ingeniera de Software ha evolucionado a travs de los aos; por ejemplo, el uso de contratos (tales como una clusula ``se requiere", una clusula "se asegura", invariantes de clase, etc.) ahora se considera una buena prctica. Los elementos de la ingeniera de software son aplicables al desarrollo de software en cualquier dominio de la aplicacin de computacin donde el profesionalismo, la calidad, los plazos, y el costo son importantes para producir un sistema de software.

Subsecciones

2.13.1 SE/Diseo de Software. (8 horas) 2.13.2 SE/Usando APIs. (3 horas) 2.13.3 SE/Herramientas y Entornos de Software. (3 horas) 2.13.4 SE/Procesos de Software. (2 horas) 2.13.5 SE/Especificacin de Requerimientos. (4 horas) 2.13.6 SE/Validacin y verificacin de software. (3 horas) 2.13.7 SE/Evolucin del Software. (3 horas) 2.13.8 SE/Administracin de Proyectos de Software. (3 horas) 2.13.9 SE/Computacin Basada en Componentes. 2.13.10 SE/Mtodos Formales. 2.13.11 SE/Confiabilidad del Software. 2.13.12 SE/Desarrollo de Sistemas Especializados. 2.13.13 SE/Evaluacin de riesgos. 2.13.14 SE/Mejorando la programacin: robustez y seguridad. 2.13.15 CN. Ciencia Computacional (Sin mnimo de horas)) 2.13.16 CN/Modelamiento y Simulacin. 2.13.17 CN/Investigacin de Operaciones. 2.13.18 CN/Computacin Paralela.

2.13.1 SE/Diseo de Software. (8 horas) Tpicos


Conceptos y principios fundamentales de diseo. El rol y uso de contratos.


122

Patrones de diseo. Arquitectura de software. Diseo estructurado. Anlisis y diseo orientado a objetos. Diseo a nivel componente. Cualidades de diseo. Aspectos internos tales como bajo acoplamiento. Aspectos externos como confiabilidad,mantenimiento, usabilidad, desempeo. Otros abordajes: centrado en datos, orientado a aspectos, orientado a funciones, orientado a servicios, mtodos giles. Diseo reusable. Uso de material de cdigo abierto.

Objetivos

Discutir las propiedades del buen diseo de softwarem incluyendo la naturaleza y el rol de la documentacin asociada. Evaluar la calidad de mltiples diseos de software basados en principios y conceptos de diseo claves. Seleccionar y aplicar patrones de diseo apropiados en la construccin de una aplicacin de software. Crear y especificar el diseo de software para un producto de software de tamao medio usando una especificacin de requerimientos de software, una metodologa de diseo de programas aceptado (ejemplo orientado a objetos o estructurado) y una notacin de diseo apropiada. Conducir una revisin de diseo de software con material de cdigo abierto utilizando lineamientos apropiados. Evaluar un diseo de software a nivel componente. Evaluar un diseo de software a nivel componente desde la perspectiva de reuso.

2.13.2 SE/Usando APIs. (3 horas) Tpicos


Programacin usando API. Diseo de API. Navegadores de clases (Class browsers) y herramientas relacionadas. Depuracin en el entorno API. Introduccin a la computacin basada en componentes.

Objetivos

Explicar el valor de las interfaces para programacin de aplicaciones (APIs) en el desarrollo de software. Usar navegadores de clases y herramientas relacionadas durante el desarrollo de aplicaciones usando APIs. Disear, implementar, probar y depurar programas que usan paquetes API de larga escala.

123

2.13.3 SE/Herramientas y Entornos de Software. (3 horas) Tpicos


Entornos de programacin. Anlisis de requerimientos y herramientas de modelamiento de diseo. Herramientas de pruebas incluyendo herramientas de anlisis esttico y dinmico. Herramientas de administracin de configuracin. Manejo de la configuracin y herramientas de control de versin. Mecanismos de integracin de herramientas.

Objetivos

Seleccionar con justificacin un apropiado conjunto de herramientas para soportar el desarrollo de un rango de productos de software. Analizar y evaluar un conjunto de herramientas en una rea dada del desarrollo de software (ej: administracin, modelamiento o pruebas). Demostrar la capacidad para usar un rango de herramientas de software en soporte del desarrollo de un producto de software de tamao medio.

2.13.4 SE/Procesos de Software. (2 horas) Tpicos


Ciclo de vida del software y modelos de procesos. Modelos de madurez de capacidades en proceso de software. Abordajes para el proceso de mejora. Modelos del proceso de evaluacin. Mtricas del proceso de software.

Objetivos

Explicar el ciclo de vida del software y sus fases incluyendo las entregas que son producidas (dar un ejemplo concreto). Seleccionar con justificacin los modelos de desarrollo de software ms apropiados para el desarrollo y mantenimiento de un diverso rango de productos de software. Explicar el rol del modelos de madurez de proceso. Comparar el modelo tradicional cascada con el modelo incremental, el modelo gil y otros modelos apropiados. Para cada uno de los diferentes escenarios de proyectos de software, describir la posicin del proyecto en el ciclo de vida del software, identificar las tareas particulares que deben ser desarrolladas seguidamente e identificar las mtricas apropiadas para estas tareas.

2.13.5 SE/Especificacin de Requerimientos. (4 horas)


124

Tpicos

Consideraciones a nivel de sistema. Elicitacin de requerimientos de software. Tcnicas de modelamiento del anlisis de requerimientos. Requerimientos funcionales y no funcionales. Aceptacin de consideraciones de certeza e incerteza con relacin al comportamiento de software y/o sistema. Prototipeo. Conceptos bsicos de tcnicas de especificacin formal.

Objetivos

Aplicar elementos clave y mtodos comunes para la elicitacin y anlisis, para producir un conjunto de requerimientos de software para un sistema de tamao medio. Discutir los retos de mantener software heredado. Usar un mtodo comn, no formal para modelar y especificar (en la forma de un documento de especificacin de requerimientos) los requerimientos para un sistema de software de tamao medio. Conducir una revisin general de un documento de requerimientos de software, usando las mejores prcticas para determinar la calidad del documento. Traducir en lenguaje natural una especificacin de requerimientos de software escrita en un lenguaje de especificacin formal comunmente usado.

2.13.6 SE/Validacin y verificacin de software. (3 horas) Tpicos


Distincin entre verificacin y validacin. Abordajes estticos y dinmicos. Planeamiento de la validacin y documentacin para la validacin. Diferentes tipos de tests, interfase humano-computador, usabilidad, confiabilidad, seguridad, conformidad con la especificacin. Fundamentos del Testing incluyendo la creacin de planes de prueba y la generacin de casos de prueba. Tcnicas de prueba de caja blanca y caja negra. Semilla por defecto. Unidad, integracin, validacin y sistemas de prueba. Prueba orientado a objetos, pruebas de sistema. Medidas de procesos, diseo, programa. Verificacin y validacin de partes que no son componentes (documentacin, archivos de ayuda, material de entrenamiento). Defecto de historial (fault logging), defecto de rastreo y soporte tcnico para esas actividades. Test de regresin. Inspecciones, revisiones, auditoras.

Objetivos
125

Distinguir entre validacin de programas y verificacin. Describir el rol que las herramientas pueden jugar en la validacin de software. Distinguir entre los diferentes tipos y niveles de pruebas (unidad, integracin, sistemas y aceptacin) para productos de software de tamao medio y el material relacionado. Crear, evaluar e implementar un plan de prueba para segmentos de cdigo de tamao medio. Encargarse, como parte de una actividad de equipo, de una inspeccin de un segmento de cdigo de tamao medio. Discutir los temas concernientes a la prueba de software orientado a objetos..

2.13.7 SE/Evolucin del Software. (3 horas) Tpicos


Mantenimiento de software. Caractersticas del software mantenible. Reingeniera. Sistemas heredados. Reuso de software.

Objetivos

Identificar los temas principales asociados con la evolucin del software y explicar su impacto sobre el ciclo de vida del software. Discutir los desafos de mantener sistemas heredados y la necesidad de la ingeniera reversa. Delinear el proceso de pruebas de regresin y su rol en la administracin del lanzamiento. Estimar el impacto de un cambio de requerimiento para un producto existente de tamao medio. Desarrollar un plan para hacer reingeniera a un producto de tamao medio como respuesta a un cambio de requerimientos. Discutir las ventajas y desventajas del reuso de software. Explotar las oportunidades para reusar software en un contexto dado. Identificar debilidades en un simple diseo dado y resaltar como las mismas pueden ser removidad a travs de la reconstruccin (refactoring).

2.13.8 SE/Administracin de Proyectos de Software. (3 horas) Tpicos

Administracin de equipos. a) Procesos de equipo. b) Organizacin de equipos y toma de decisiones.


126

c) Roles y responsabilidades en un equipo de software. d) Identificacin y asignacin de roles. e) Seguimiento del proyecto. f) Resolucin de problemas de equipo.

Asignacin de tiempos y tareas al proyecto. Medicin de software y tcnicas de estimacin. Anlisis de riesgos. a) El asunto de seguridad. b) Sistemas de alta integridad, sistemas de seguridad crticos. c) El rol del riesgo en el ciclo de vida.

Aseguramiento de la calidad de software. a) El rol de las mediciones.

Administracin de la configuracin y versiones de software. Manejo de la versin final (release). Herramientas de administracin de proyectos. Modelos de proceso de software y medidas de proceso.

Objetivos

Demostrar, involucrndose en un equipo de proyecto, los elementos centrales de la construccin y administracin de un equipo. Preparar un plan para un proyecto de software que incluye estimacin de tamao y esfuerzo, asignacin de tiempos y tareas, asignacin de recursos, control de configuracin, administracin de cambios, identificacin y administracin de los riesgos del proyecto. Indicar un abordaje para tratar riesgos que ayudar a entregar el software a tiempo. Comparar y contrastar los diferentes mtodos y tcnicas usados para asegurar la calidad de un producto de software.

2.13.9 SE/Computacin Basada en Componentes. Tpicos

Fundamentos.

127

a) La definicin y naturaleza de los componentes. b) Componentes e interfaces. c) Interfaces como contratos. d) Los beneficios de los componentes. e) Tcnicas bsicas f) Diseo de componentes y ensamblaje. g) Relaciones con el modelo cliente-servidor y con patrones. h) Uso de objetos y servicios del ciclo de vida del objeto. i) Uso de objetos brokers. j) Marshalling.

Aplicaciones (incluyendo el uso de componentes para mviles). Patrones como son utilizados en anlisis y diseo. Contexto de uso incluyendo arquitecturas empresariales. Arquitectura de sistemas basados en componentes. Diseo orientado a componentes. Entornos de aplicacin. Manejo de eventos: deteccin, notificacin y respuesta. Middleware. a) El paradigma orientado a objetos dentro del middleware. b) Agente de peticin de objeto (Object request brokers). c) Monitores del procesamiento de transacciones. d) Sistemas de flujo de informacin (workflow). e) Estado del arte de las herramientas.

Objetivos

Explicar y aplicar principios reconocidos para la construccin de componentes de software de alta calidad. Discutir y seleccionar una arquitectura, para un sistema basado en componentes, disponible para un escenario dado. Identificar el tipo de manejo de eventos implementado en una o mas APIs dadas. Explicar el rol de los objetos en sistemas middleware y la relacin con componentes.
128

Aplicar mtodos orientados a componentes para el diseo de un rango de software incluyendo aquellos requeridos para transacciones concurrentes, servicios de comunicacin confiables, servicios incluyendo interaccin de bases de datos para consulta remota y administracin de bases de datos, comunicacin segura y acceso.

2.13.10 SE/Mtodos Formales. Tpicos


Conceptos de mtodos formales. Lenguajes de especificacin formal. Model checking. Especificaciones ejecutables y no ejecutables. Pre-aserciones y post-aserciones. Verificacin formal. Tools en el soporte a mtodos formales.

Objetivos

Aplicar tcnicas de verificacin formal a segmentos de software con baja complejidad. Discutir el rol de las tcnicas de verificacin formal en el contexto de la validacin de software y comparar los beneficios con los de model checking. Explicar los beneficios potenciales y los defectos de usar lenguajes de especificacin formal. Crear y evaluar pre y post-aserciones para una variedad de situaciones desde lo simple hasta lo complejo. Usar un lenguaje de especificacin formal comn, formular la especificacin de un sistema de software y demostrar los beneficios desde una perspectiva de calidad.

2.13.11 SE/Confiabilidad del Software. Tpicos


Modelos de confiabilidad de software. Redundancia y tolerancia a fallas. Clasificacin de defectos. Mtodos de anlisis probabilsticos.

Objetivos

Demostrar la habilidad para aplicar mltiples mtodos para desarrollar estimadores de confiabilidad para un sistema de software. Identificar y aplicar redundancia y tolerancia a fallas para una aplicacin de tamao medio. Explicar los problemas que existen para lograr altos niveles de confiabilidad.
129

Identificar mtodos que lleven hacia la realizacin de una arquitectura de software que logre un nivel de confiabilidad especfico.

2.13.12 SE/Desarrollo de Sistemas Especializados. Tpicos


Sistemas en tiempo real. Sistemas cliente-servidor. Sistemas distribuidos. Sistemas paralelos. Sistemas basados en web. Sistemas de alta integridad.

Objetivos

Identificar y discutir diferentes sistemas especializados. Discutir el ciclo de vida y tpicos sobre el proceso de software en el mbito de sistemas diseados para un contexto especializado incluyendo sistemas que podran tener que operar en un modo de operacin degradado. Seleccionar, con la justificacin apropiada, mtodos que darn como resultado el desarrollo eficiente y efectivo y el mantenimiento de sistemas de software especializado. Dado un contexto especfico y un conjunto de tpicos profesionales relacionados, discutir como, un ingeniero de software envuelto en el desarrollo de sistemas especializados, debe de responder a estos tpicos. Sintetizar los temas tcnicos centrales asociados con la implementacin del crecimiento de sistemas especializados..

2.13.13 SE/Evaluacin de riesgos. Tpicos


Definicin de trminos: en seguridad, vulnerabilidad, amenazas, brechas de seguridad, peligros. El concepto de riesgo, identificacin de peligros y riesgos. Anlisis de riesgo incluyendo evaluacin. Necesidad de un abordaje completo de sistema que incluya peligros asociados con herramientas. Riesgo y las tecnologas inmaduras. Anlisis de costo beneficio. Principios del manejo de riesgos.

Objetivos

Definir los conceptos de peligros y riesgos.


130

Reconocer riesgos comunes de seguridad en al menos dos sistemas operativos. Describir las categoras de amenazas a sistemas de redes de computadores. Mostrar un abordaje sistemtico para la tarea de identificar peligros y riesgos en una situacin particular. Aplicar los principios bsicos de manejo de riesgos en una variedad de escenarios incluyendo alguna situacin relacionada con seguridad.

2.13.14 SE/Mejorando la programacin: robustez y seguridad. Tpicos

Programacin a la defensiva: a) Principios de diseo y codificacin seguros. b) Principio de la menor parte de privilegio. c) Principios escenarios seguros por defecto.

Principio de aceptacin psicolgica: a) Como detectar problemas potenciales en seguridad de programas. b) Desborde de buffers de otros tipos. c) Condiciones de corrida (race conditions). d) Inicializacin inapropiada incluyendo privilegios escogidos. e) Chequeo de la entrada. f) Asumir xito y correctitud. g) Validacin de presupuestos.

Cmo documentar consideraciones de seguridad en el uso de un programa?.

Objetivos

Reescribir un programa simple para remover vulnerabilidades comunes tales como desborde de buffers, desborde de enteros y condiciones de corrida. Presentar y aplicar los principios de la menor parte de privilegio y escenarios seguros por defecto. Escribir una librera simple que desarrolle algunas tareas no triviales y no finalice la ejecucin de un programa sin observar como este fue ejecutado.

131

2.13.15 CN. Ciencia Computacional (Sin mnimo de horas)) CN/Modelamiento y Simulacin. CN/Investigacin de Operaciones. CN/Computacin Paralela.

Desde los primeros das de la disciplina, las tcnicas de la ciencia computacional se han constituido en una importante rea de investigacin de ciencia de la computacin. Al incrementarse el poder de resolucin de problemas en las computadoras, esta rea, como gran parte de la disciplina, ha crecido tanto en amplitud como en importancia. En la actualidad, la ciencia computacional cientfica constituye una disciplina intelectual por propio derecho, estrechamente relacionada pero no obstante distinta a la ciencia de la computacin. Aunque los cursos de ciencia computacional son componentes extremadamente valiosos de un programa de ciencia de la computacin, el Equipo de Trabajo de CS2001 creen que ninguno de los tpicos en esta rea representan conocimiento bsico. A partir de nuestras encuestas de la currcula y la interaccin con la comunidad de educativa de ciencia de la computacin, estamos convencidos de que no existe concenso que este material es esencial para todos los estudiantes de CC. Sigue siendo una parte vital de la disciplina, pero no tiene que ser una parte de cada programa. Para aquelols que opten por esta va, esta rea ofrece la exposicin a varias ideas y tcnicas valisosas, incluyendo la precisin de representaciones numricas, anlisis de errores, tcnicas numricas, algoritmos y arquitecturas paralelas, modelado y simulacin y visualizacin cientfica. Al mismo tiempo, los estudiantes que tomen cursos en esta rea tiene una oportunidad de aplicar estas tcnicas en un rango amplio de reas de aplicacin, como las siguientes:

Dinmica Molecular Dinmica de Fluidos Mecnica Celestial Pronstico de la Economa Problemas de Optimizacin Anlisis Estrucural de Materiales Bioinformtica Biologa Computacional Modelado Geolgico Tomografa Computarizada

Cada una de las unidades en esta rea corresponde a un curso de semestre completo en la mayora de instituciones. El nivel de especificacin de la descripcin del tema y los objetivos del aprendizaje es por lo tanto diferente de los usados en otras reas en las cules las unidades individuales usualmente requieren bloques de tiempo ms pequeos.

2.13.16 CN/Modelamiento y Simulacin.


132

Tpicos

Definicin de simulacin y modelamiento. Relacin entre simulacin y modelamiento. Propsito incluyendo beneficios y limitaciones: rol observando desempeo, optimizacin, soporte para la toma de decisiones, prediccin, consideraciones de seguridad, para entrenamiento y educacin. reas de aplicacin importante: cuidados en salud incluyendo asistencua en el diagnstico, economa y finanzas, la clase del futuro, entrenamiento en educacin, simulaciones de ciudades y urbansticas, simulacin en ciencia y en ingeniera, juegos, simulacin militar. Diferentes tipos de simulacin: fsica, el ser humano en el ciclo, interaccin, computadores, realidad virtual. El proceso de simulacin, sonido, identificacin de caractersticas llaves de comportamiento, presuposiciones de simplicacin, validacin de las salidas. Construccin del modelo: uso de frmulas matemticas y ecuaciones, grafos, restricciones. Tcnicas y metodologas. Uso de pasos de tiempo (time stepping) para sistemas dinmicos. Consideraciones tericas: Mtodo de Monte Carlo, procesos estocsticos, teora de colas. Tecnologas de soporte a la simulacin y modelamiento: procesadores grficos, dispositivos hpticos de retroalimentacin. Evaluacin y evaluacin de simulaciones en una variedad de contextos. Software en el soporte de simulacin y modelamiento: paquetes, lenguajes.

Objetivos

Explicar los beneficios de la simulacin y modelamiento en un rango de importantes reas de aplicacin. Demostrar la habilidad de aplicar las tcnicas de modelamiento y simulacin a problemas de un rango de reas. Evaluar la simulacin resaltando las ventajas y desventajas.

2.13.17 CN/Investigacin de Operaciones. Tpicos

Programacin lineal. a) Programacin de enteros. b) El mtodo Simplex.

Modelamiento probabilstico. Teora de colas. a) Redes de Petri.


133

b) Modelos y cadenas de Markov.


Optimizacin. Anlisis de redes de trabajo y algoritmos de enrutamiento. Prediccin y estimacin. a) Anlisis de decisin. b) Predicciones. c) Administracin de riesgos. d) Econometra, microeconoma. e) Anlisis de sensibilidad.

Programacin dinmica. Ejemplos de aplicacin. Herramientas de software.

Objetivos

Aplicar las tcnicas fundamentales de investigacin de operaciones. Describir varias tcnicas establecidas para la prediccin y estimacin. Disear, codificar, probar y depurar programas de aplicacin para resolver problemas en el dominio de la investigacin de operaciones.

2.13.18 CN/Computacin Paralela. Tpicos


Revision de los tpicos. Models of computation. Tipos de computation. Tareas paralelas. Datos paralelos. Eventos paralelos. Propiedades. Ancho de banda. Latencia. Escalabilidad. Granularidad. Arquitecturas paralelas. Arquitecturas de procesadores incluyendo mltiples ncleos. Sistemas de Memoria para alto desempeo. Memoria cache y coherencia. Cluster.
134

Paradigmas de programacin paralela. Hebras (threading). Paso de mensajes. Tcnicas dirigidas a eventos. Arquitecturas de software paralelas (MapReduce). Computacin en grilla (grid computing). Comunidades abiertas de computacin distribuida (BOINC, SETI, ...).

Objetivos

Comparar y contrastar para computacin paralela reconociendo las fortalezas y debilidades de cada una. Comparar y contrastar paradigma de programacin paralela reconociendo las fortalezas y debilidades de cada una. Indentificar las propiedades bsicas de ancho de banda, latencia, escalabilidad, granularidad. Disear, cdigo, hacer test y depuracin de computacin paralela.

3. Malla curricular 2010

Subsecciones

3.1 Clasificacin de los cursos por niveles 3.2 Codificacin de los cursos 3.3 Constitucin del Plan de Estudios 3.4 Requisitos de cursos 3.5 Visin grfica de la Malla curricular 3.6 Compatibilidad de la carrera con relacin a estandares internacionales 3.7 Distribucin de tpicos por curso 3.8 Resultados esperados distribudos por curso 3.1 Clasificacin de los cursos por niveles De acuerdo a la Computing Curricula, los cursos son clasificados en 3 niveles: Introductorios, Intermedios y Avanzados como puede ser observado en la Figura 3.1. Los abordajes posibles para iniciar una carrera de este tipo de acuerdo al estndar son: Imperativo, Objetos, Funcional, Visin amplia, Algoritmos, Hardware. Los cursos de nivel intermedio pueden tener las siguientes orientaciones: Basado en tpicos, comprimido, basado en sistemas, orientado a la internet. Los cursos de tercer nivel tienen por objetivo abrir varias posibilidades de especializacin por lo que no estn divididos en categoras.

135

Figura 3.1: Orientaciones de los cursos por niveles.

Esta propuesta de malla curricular est basada en el abordaje funcional en el nivel introductorio y orientado a internet en el nivel intermedio. El abordaje funcional fue escogido porque nos da la oportunidad de concentrarnos en el desarrollo algoritmico del alumno y no en el aprendizaje de sintaxis de un lenguaje en particular. El abordaje orientado a la web se escogi porque hacia eso apuntan las tendencias futuras de la computacin.

3.2 Codificacin de los cursos Los cursos se encuentran codificados bajo el esquema que se muestra en la Figura 3.2:

Figura 3.2: Esquema de codificacin para los cursos. El rea de un curso esta determinada por sus 2 primeras letras. Los posibles cdigos para estas lneas son: 1. 2. 3. 4. CS rea de Ciencia de la Computacin (Computer Science); FG rea de Formacin General; ET rea de Formacin de Empresas de Base Tecnolgica; CB rea de Ciencias Bsicas (Matemtica y Fsica);
136

3.3 Constitucin del Plan de Estudios Esta propuesta puede ser analizada por el nmero de crditos dedicados a cada rea y por niveles de cursos (Introductorios, Intermedios, Avanzados y Proyectos).

Figura 3.3: Distribucin de cursos por reas considerando creditaje.

5. Tabla 3.1: Distribucin de cursos por reas CS Primer Semestre 8 FG 9 5 4 ET CB 5 5 5 9 4 2 2 3 7 4 22 22 22 22 22 22 22 22

Segundo Semestre 12 Tercer Semestre Cuarto Semestre Quinto Semestre Sexto Semestre 13 13 11 16

Sptimo Semestre 20 Octavo Semestre 19

137

Noveno Semestre 14 Dcimo Semestre Total 13 139

5 6 40

3 3 6

22 22

35

220

63.1% 18.1% 2.7% 15.9%

Figura 3.4: Distribucin de crditos por niveles de cursos.

6. La relacin de cursos se muestra a continuacin: Primer Semestre Cdigo Curso Introduccin CS101F Programacin a la 2 2 2 4 O HT HP HL Cr T Requisitos

138

CS105

Estructuras Discretas I

CB101

lgebra y Geometra Introduccin a la Vida

FG103 Universitaria

FG102

Metodologa del Estudio

FG101

Comunicacin

22 Segundo Semestre Cdigo Curso HT HP HL Cr T Requisitos CS101F (1er), CS105 (1er)

CS106

Estructuras Discretas II Introduccin Programacin Objetos Introduccin a la Ciencia de la a la Orientada a

CS101F (1er) 2 2 4 5 O

CS101O

CS100 Computacin

CB102

Anlisis Matemtico I Apreciacin de

CB101 (1er)

FG105

la 1

139

Msica

FG106

Teatro Introduccin a la

FG104 Filosofa

FG112

Matrimonio y Familia

22 Tercer Semestre Cdigo Curso HT HP HL Cr T Requisitos CS105 (1er), CS101O (2do)

CS107

lgebra Abstracta Arquitectura de

CS106 (2do) 2 2 3 O

CS220T Computadores Introduccin CS130 Internet Objetos y Abstraccin de CS102O Datos a

CS101O (2do),CS100 (2do) 2 2 3 O

CS101O (2do) 2 2 2 4 O

CB103

Anlisis Matemtico II Oratoria y

CB102 (2do)

FG203

Expresin 1

140

Personal

FG202

Apreciacin Literaria

FG201

Artes Plsticas Fundamentos Antropolgicos

FG104 (2do) 1 2 2 O

FG107 de la Ciencia

22 Cuarto Semestre Cdigo Curso HT HP HL Cr T Requisitos CS106 (2do)

CS211T

Teora de la Computacin

CS270T

Bases de Datos I Algoritmos y Estructuras de

CS107 (3er)

CS102O (3er) 2 2 2 4 O

CS103O Datos

CB201

Anlisis Matemtico III

CB103 (3er)

CB203

Estadstica y Probabilidades

CB103 (3er)

22 Quinto Semestre

141

Cdig o

Curso

H T

H P

H Requisitos Cr T L CS103O (4to), CB203 (4to)

CS210 T

Anlisis y Diseo de 2 Algoritmos3.1 Ingeniera Software I Bases II Fsica Computacional de Datos 1 2 2 3 O de 2 2 2 4 2 2 4 O

CS290 T

CS102O (3er),CS270T (4to), CS130 (3 O er)

CS271 T

CS270T (4to)

CB103 (3er) 2 2 2 4 O

CB111

Anlisis CB306 Numrico 1 2 2 3 O

CB201 (4to)

FG206

Sociologa

FG210

tica

FG107 (3er)

FG209

Psicologa

2 2 Sexto Semestre Cdigo Curso HT HP HL Cr T Requisitos


142

CS225T

Sistemas Operativos

CS220T (3er)

CS260

Lgica Computacional

CS211T (4to)

CS390

Ingeniera de Software II Estructuras de Datos

CS290T (5to)

CS210T (5to) 2 2 2 4 O

CS315 Avanzadas Matemtica CB307 computacin aplicada a la

CB111 (5to) 2 2 2 4 O

FG204

Teologa I

FG107 (3er)

22 Sptimo Semestre Cdigo Curso Interaccin CS250W Computador CS290T (5to) Humano 1 2 2 3 O HT HP HL Cr T Requisitos CS290T (5to)

CS401

Proyecto I

CS261T

Inteligencia Artificial Seguridad

CS260 (6to), CB203 (4to)

CS336

en 1

O CS103O (4to)

143

Computacin CS210T (5to),CS225T (6to)

CS314

Algoritmos Paralelos Lenguajes de

CS211T (4to),CS210T (5to) 2 2 2 4 O

CS343 Programacin

FG204A

Teologa II

FG204 (6to), FG210 (5to)

22 Octavo Semestre H T H P H L Requisitos

Cdigo

Curso

Cr T

CS402

Proyecto II Calidad de

CS401 (7mo)

CS390 (6to) 2 2 3 O

CS391 Software Computacin Centrada Redes Computacin CS255 Grfica

CS225T (6to), CS336 (7mo) en 1 2 2 3 O

CS230 W

CS315 (6to), CB306 (5to),CB307 (6t O o)

CS280T Aspectos sociales y 2 profesionales de la

O CS401 (7mo)

144

computacin Compiladores CS240S 2 2 2 4 O CS343 (7mo)

Historia FG205 Cultura

de

la 3 3 O

2 2 Noveno Semestre Cdigo Curso HT HP HL Cr T Requisitos CS402 (8vo)

CS403

Proyecto de Tesis Tpicos en Computacin

CS255 (8vo) 2 2 2 4 E

CS355 Grfica

CS393

Mtodos Formales

CS260 (6to)

CS370

Tpicos en Bases de Datos Tpicos en Inteligencia

CS271T (5to)

CS261T (7mo) 2 2 2 4 E

CS361 Artificial

CS360

Computacin Bioinspirada

CS261T (7mo)

145

Computacin CB309 Biolgica Enseanza FG301 Iglesia Historia FG221 Tecnologa de la Social

Molecular 2 2 2 4 E

CS315 (6to)

de

la 3 3 O

FG204A (7mo)

Ciencia

y 1 2 2 O

FG205 (8vo)

Formacin de Empresas de Base ET101 Tecnolgica I 22 Dcimo Semestre H T H P H Requisitos Cr T L 2 2 3 O

CS401 (7mo)

Cdigo Curso

CS356

Programacin de Video Juegos Seminario de

CS261T (7mo),CS355 (9no),CS250W (7 mo)

CS403 (9no), CS280T (8vo) 2 2 3 O

CS404 Tesis Cloud Computing

CS230W (8vo),CS314 (7mo) 1 2 2 3 O

CS331

CS367

Robtica

CS361 (9no)

146

CS232 W

Programacin de Dispositivos Mviles Liderazgo Desempeo y

CS230W (8vo) 1 2 2 3 O

FG350

FG211

tica Profesional

FG204A (7mo) 1 2 2 O

FG220

Anlisis de Realidad Peruana

la 1 2 2 O

FG221 (9no)

ET102

Formacin de Empresas de Base Tecnolgica 2 II

ET101 (9no) 2 3 O

2 2

Total de crditos de la carrera: 220 . 3.4 Requisitos de cursos

Los requisitos de cada curso pueden ser observados en la seccin 3.3 y de forma grfica a continuacin.

147

148

Figura 3.5: Malla curricular Programa Profesional de Ciencia de la Computacin

3.6 Compatibilidad de la carrera con relacin a estandares internacionales En esta seccin presentamos la distribucin de cursos por reas de concentracin en contraste con las propuestas internacionales de las carreras de la Computing Curricula de IEEE-CS/ACM. Es necesario notar que en algunos casos las materias podran aparecen en ms de un eje pues tienen contenido de ms de una rea. Por ejemplo, la materia de sistemas operativos contiene unidades de aplicacin que pueden ser clasificadas en Tecnologa de Informacin pero al mismo tiempo contiene fundamentos de como est estructurado un Sistema Operativo que es del eje de Ciencia de la Computacin. En estos casos el creditaje ha sido divido entre los ejes correspondientes. 1. Hardware y Arquitectura (10 Crditos) o CS220T. Arquitectura de Computadores (3er Sem) o CS367. Robtica (10mo Sem) 2. Ciencia de la Computacin (150.33 Crditos) o CS101F. Introduccin a la Programacin (1er Sem) o CS101O. Introduccin a la Programacin Orientada a Objetos (2do Sem) o CS100. Introduccin a la Ciencia de la Computacin (2do Sem) o CS102O. Objetos y Abstraccin de Datos (3er Sem) o CS211T. Teora de la Computacin (4to Sem) o CS270T. Bases de Datos I (4to Sem) o CS103O. Algoritmos y Estructuras de Datos (4to Sem) o CS210T. Anlisis y Diseo de Algoritmos (5to Sem) o CS271T. Bases de Datos II (5to Sem) o CS225T. Sistemas Operativos (6to Sem) o CS315. Estructuras de Datos Avanzadas (6to Sem) o CS250W. Interaccin Humano Computador (7mo Sem) o CS401. Proyecto I (7mo Sem) o CS261T. Inteligencia Artificial (7mo Sem) o CS314. Algoritmos Paralelos (7mo Sem) o CS343. Lenguajes de Programacin (7mo Sem) o CS402. Proyecto II (8vo Sem) o CS230W. Computacin Centrada en Redes (8vo Sem) o CS255. Computacin Grfica (8vo Sem) o CS280T. Aspectos sociales y profesionales de la computacin (8vo Sem) o CS240S. Compiladores (8vo Sem) o CB309. Computacin Molecular Biolgica (9no Sem) o CS403. Proyecto de Tesis (9no Sem) o CS355. Tpicos en Computacin Grfica (9no Sem) o CS370. Tpicos en Bases de Datos (9no Sem) o CS361. Tpicos en Inteligencia Artificial (9no Sem) o CS360. Computacin Bioinspirada (9no Sem) o CS404. Seminario de Tesis (10mo Sem)
149

3.

4.

5.

6.

7.

8.

9.

CS331. Cloud Computing (10mo Sem) CS367. Robtica (10mo Sem) Ingeniera de Software (44.33 Crditos) o CS101O. Introduccin a la Programacin Orientada a Objetos (2do Sem) o CS102O. Objetos y Abstraccin de Datos (3er Sem) o CS290T. Ingeniera de Software I (5to Sem) o CS390. Ingeniera de Software II (6to Sem) o CS250W. Interaccin Humano Computador (7mo Sem) o CS401. Proyecto I (7mo Sem) o CS402. Proyecto II (8vo Sem) o CS391. Calidad de Software (8vo Sem) o CS403. Proyecto de Tesis (9no Sem) o CS393. Mtodos Formales (9no Sem) o CS404. Seminario de Tesis (10mo Sem) Sistemas de Informacin (7.33 Crditos) o CS401. Proyecto I (7mo Sem) o CS402. Proyecto II (8vo Sem) o CS403. Proyecto de Tesis (9no Sem) o CS404. Seminario de Tesis (10mo Sem) Tecnologa de Informacin (48 Crditos) o CS100. Introduccin a la Ciencia de la Computacin (2do Sem) o CS130. Introduccin a Internet (3er Sem) o CS270T. Bases de Datos I (4to Sem) o CS225T. Sistemas Operativos (6to Sem) o CS250W. Interaccin Humano Computador (7mo Sem) o CS336. Seguridad en Computacin (7mo Sem) o CS230W. Computacin Centrada en Redes (8vo Sem) o CS280T. Aspectos sociales y profesionales de la computacin (8vo Sem) o CS360. Computacin Bioinspirada (9no Sem) o CS356. Programacin de Video Juegos (10mo Sem) o CS331. Cloud Computing (10mo Sem) o CS232W. Programacin de Dispositivos Mviles (10mo Sem) Contenido Empresarial (12 Crditos) o ET101. Formacin de Empresas de Base Tecnolgica I (9no Sem) o ET102. Formacin de Empresas de Base Tecnolgica II (10mo Sem) Matemtica para Computacin (52 Crditos) o CS105. Estructuras Discretas I (1er Sem) o CS106. Estructuras Discretas II (2do Sem) o CS107. lgebra Abstracta (3er Sem) o CB203. Estadstica y Probabilidades (4to Sem) o CB306. Anlisis Numrico (5to Sem) o CS260. Lgica Computacional (6to Sem) o CB307. Matemtica aplicada a la computacin (6to Sem) Ciencias Bsicas (48 Crditos) o CB101. lgebra y Geometra (1er Sem) o CB102. Anlisis Matemtico I (2do Sem) o CB103. Anlisis Matemtico II (3er Sem) o CB201. Anlisis Matemtico III (4to Sem) o CB111. Fsica Computacional (5to Sem) Formacin General (90 Crditos)
150

o o

o o o o o o o o o o o o o o o o o o o o o o

FG103. Introduccin a la Vida Universitaria (1er Sem) FG102. Metodologa del Estudio (1er Sem) FG101. Comunicacin (1er Sem) FG105. Apreciacin de la Msica (2do Sem) FG106. Teatro (2do Sem) FG104. Introduccin a la Filosofa (2do Sem) FG112. Matrimonio y Familia (2do Sem) FG203. Oratoria y Expresin Personal (3er Sem) FG202. Apreciacin Literaria (3er Sem) FG201. Artes Plsticas (3er Sem) FG107. Fundamentos Antropolgicos de la Ciencia (3er Sem) FG206. Sociologa (5to Sem) FG210. tica (5to Sem) FG209. Psicologa (5to Sem) FG204. Teologa I (6to Sem) FG204A. Teologa II (7mo Sem) FG205. Historia de la Cultura (8vo Sem) FG301. Enseanza Social de la Iglesia (9no Sem) FG221. Historia de la Ciencia y Tecnologa (9no Sem) FG350. Liderazgo y Desempeo (10mo Sem) FG211. tica Profesional (10mo Sem) FG220. Anlisis de la Realidad Peruana (10mo Sem)

Considerando esta distribucin, las figuras 3.9 a la 3.15 nos permiten tener una visin grfica de esta malla curricular frente a las propuestas de carreras presentadas por IEEECS/ACM en la Computing Curricula

Figura 3.7: Comparacin CS-UCSP Vs. CS de IEEE-CS/ACM.

151

Figura 3.8: Comparacin CS-UCSP Vs. CS de IEEE-CS/ACM.

Figura 3.9: Comparacin CS-UCSP Vs. CE de IEEE-CS/ACM.

152

Figura 3.10: Comparacin CS-UCSP Vs. CE de IEEE-CS/ACM.

Figura 3.11: Comparacin CS-UCSP Vs. IS de IEEE-CS/ACM.

153

Figura 3.12: Comparacin CS-UCSP Vs. IS de IEEE-CS/ACM.

Figura 3.13: Comparacin CS-UCSP Vs. IT de IEEE-CS/ACM.

154

Figura 3.14: Comparacin CS-UCSP Vs. IT de IEEE-CS/ACM.

Figura 3.15: Comparacin CS-UCSP Vs. SE de IEEE-CS/ACM.

155

Figura 3.16: Comparacin CS-UCSP Vs. SE de IEEE-CS/ACM.

3.7 Distribucin de tpicos por curso Las siguientes tablas nos muestran la distribucin de todos los tpicos del cuerpo del conocimiento de CS en todos los cursos.

Tabla 3.2: Tpicos por curso del 1er al 2do Semestre Primer Sem Segundo Sem .

CS CB FG FG FG CS CS CB FG FG FG FG CS1 CS1 To 10 10 10 10 10 10 10 10 10 10 10 11 01F 01O tal 5 1 3 2 1 6 0 2 5 6 4 2

DS/F unciones,

13

13

156

Relaciones y Conjuntos. (6 horas)

DS/L gica Bsica. (10 horas) 14 2 16

DS/T cnicas de Prueba. (12 horas)

14

14

DS/C onceptos Bsicos de Conteo. (5 horas)

25

25

DS/G rfos y 2 rboles. (4 horas)

25

27

DS/Probab ilidad Discreta. (6 horas)

10

10

PF/Constr 2 ucciones fundamen

10

157

tales. horas)

(9

PF/Al goritmos y Resolucin 10 de Problemas . (6 horas)

16

PF/E structuras de Datos. (10 horas)

PF/Recursi 6 vidad. (4 horas)

AL/A nlisis Bsico de Algoritmo s. (4 horas)

AL/E strategias Algortmic as. (6 horas)

AL/A 4 lgoritmos Fundamen

10

158

tales. (12 horas)

AR/L gica Digital y Represent acin de Datos. (7 horas)

19

21

AR/Arquit ectura y Organizaci n de Computad ores. (9 horas)

AR/I nterfases y Estrategia s de I/O. (3 horas)

AR/Arquit ectura de Memoria. (5 horas)

OS/V isin General de los 2 2

159

Sistemas Operativo s. (2 horas)

NC/Introd uccin. (2 horas)

PL/Vi sin General de los 1 Lenguajes de Programac in. (2 horas)

PL/M quinas 1 Virtuales. (1 horas)

PL/D eclaracin 1 y Tipos. (3 horas)

PL/Mecani smos de 4 Abstracci n. (3 horas)

160

PL/Progra macin 4 Orientada a Objetos. (10 horas)

17

22

Tabla 3.3: Tpicos por curso del 1er al 2do Semestre Primer Sem Segundo Sem .

CS CB FG FG FG CS CS CB FG FG FG FG CS1 CS1 To 10 10 10 10 10 10 10 10 10 10 10 11 01F 01O tal 5 1 3 2 1 6 0 2 5 6 4 2

PL/Progra 1 macin Funcional.

PL/S istemas de Traducci n del Lenguaje.

HC/Funda mentos de la Interacci n Hombre-

161

Computa dor (HCI) (6 horas)

IS/T picos Fundame ntales en Sistemas Inteligent es. (1 horas)

IM/ Sistemas de Base de Datos. (3 horas)

IM/Model amiento de Datos. (4 horas)

IM/ Base de Datos Relacional es.

SP/ Historia 4 de la Computac in. (1

162

horas)

SP/C ontexto Social de la Computac in. (3 horas)

SP/P ropiedad Intelectua l. (3 horas)

SE/ Diseo de 1 Software. (8 horas)

SE/ Usando 2 APIs. (3 horas)

SE/Herra mientas y Entornos 2 de Software. (3 horas)

SE/P rocesos

163

de Software. (2 horas)

SE/Especi ficacin 2 de Requerim ientos. (4 horas) Total 47 60 0 0 0 0 60 48 55 0 0 0 0 0

Tabla 3.4: Tpicos por curso del 3er al 4to Semestre Tercer Sem CS CS 10 22 7 0T Cuarto Sem CS 27 0T .

CS CS1 CB FG FG FG FG CS 13 02 10 20 20 20 10 21 0 O 3 3 2 1 7 1T

CS1 CB CB To 03 20 20 ta O 1 3 l

DS/Gr fos y rboles. (4 horas)

PF/Co nstruccione s fundamenta les. (9 horas)

164

PF/Alg oritmos y Resolucin de Problemas. (6 horas)

PF/Est ructuras de Datos. (10 horas)

PF/Re cursividad. (4 horas)

PF/Pro gramacin Orientada a Eventos. (4 horas)

AL/An lisis Bsico de Algoritmos. (4 horas)

AL/Alg oritmos Fundament ales. (12 horas)

12

15

AL/Co

20

20

165

mputabilida d Bsica. (6 horas)

AL/Cla ses de Complejida d P y NP.

20

20

AL/Te ora de Autmatas.

20

20

AL/Alg oritmos 20 Criptogrfic os.

20

AR/L gica Digital y Representa cin de Datos. (7 horas)

AR/Ar quitectura y Organizaci n de Computado res. (9 horas)

AR/Int

166

erfases y Estrategias de I/O. (3 horas)

AR/Ar quitectura de Memoria. (5 horas)

AR/Or ganizacin Funcional. (6 horas)

AR/Multipr ocesamient o. (6 horas)

AR/M ejoras de Desempeo .

AR/Ar quitecturas Distribuidas .

AR/Dis positivos.

AR/Te

167

ndencias en Computaci n.

NC/Int roduccin. (2 horas)

NC/Co municacin de Redes. (7 horas)

NC/Se guridad de Red. (6 horas)

NC/Or ganizacin de la Web. (3 horas)

Tabla 3.5: Tpicos por curso del 3er al 4to Semestre Tercer Sem Cuarto Sem .

CS CS CS1 CB FG FG FG FG CS1 CB CB CS2 CS2 CS2 To 10 13 02 10 20 20 20 10 03 20 20 20T 11T 70T tal 7 0 O 3 3 2 1 7 O 1 3 6 6

168

NC/Aplica ciones en redes.

NC/Admin istracin de Redes.

NC/Compr esin y Descompr esin.

NC/T ecnologa de Datos Multimedi a.

PL/D eclaracin y Tipos. (3 horas)

PL/Mecan ismos de Abstracci n. (3 horas)

PL/Progra macin Orientada

169

a Objetos. (10 horas)

HC/ Diseo de la Interfaz de Usuario.

HC/ Aspectos de Sistemas de Multimedi a y Multimod ales.

IM/ Modelos de Informaci n. (4 horas)

14

14

IM/S istemas de Base de Datos. (3 horas)

14

14

IM/Model amiento de Datos.

14

14

170

(4 horas)

IM/I ndexacin .

IM/B ase de Datos Relacional es.

14

14

IM/L enguajes de Consultas de Base de Datos.

12

12

IM/ Diseo de Bases de Datos Relacional es.

12

12

SP/P rivacidad y Libertades Civiles. (2 horas)

SE/D iseo de

171

Software. (8 horas)

SE/U sando APIs. (3 horas)

SE/Herra mientas y Entornos de Software. (3 horas)

SE/Especif icacin de Requerimi entos. (4 horas)

SE/V alidacin y verificaci n de software. (3 horas) Total 20 42

30 48

60

84

24

Tabla 3.6: Tpicos por curso del 5to al 6to Semestre

172

Quinto Sem

Sexto Sem

CB CB FG FG FG CS CS CS CB FG CS2 CS2 CS2 CS2 To 11 30 20 21 20 26 39 31 30 20 10T 90T 71T 25T tal 1 6 6 0 9 0 0 5 7 4

AL/A nlisis 12 Bsico de Algoritmos. (4 horas)

12

AL/Es trategias 24 Algortmica s. (6 horas)

24

AL/Al goritmos 16 Fundament ales. (12 horas)

16

AL/Al goritmos 4 Distribuido s. (3 horas)

AL/Cl ases de 4 Complejida d P y NP.

OS/Vi sin

173

General de los Sistemas Operativos. (2 horas)

OS/Pr incipios de los Sistemas Operativos. (2 horas)

OS/Concur rencia. (6 horas)

OS/Planea miento y Despacho. (3 horas)

OS/Admini stracin de Memoria. (3 horas)

OS/Admini stracin de Dispositivo s.

OS/S

174

eguridad y Proteccin.

OS/Si stema de Archivos.

OS/Si stemas Empotrado s y de Tiempo Real.

OS/T olerancia a Fallas.

OS/Ev aluacin del Desempe o de Sistemas.

OS/Sc ripting.

IM/Procesa miento de Transaccio nes.

12

12

IM/B

36

36

175

ases de Datos Distribuida s.

IM/Di seo Fsico de Bases de Datos.

10

10

IM/Almace namiento y Recuperaci n de Informaci n.

10

10

SE/Di seo de Software. (8 horas)

12

12

SE/Us ando APIs. (3 horas)

SE/He rramientas y Entornos de Software. (3 horas)

12

20

SE/Va lidacin y

12

20

176

verificacin de software. (3 horas)

SE/Ev olucin del Software. (3 horas)

12

12

Tabla 3.7: Tpicos por curso del 5to al 6to Semestre Quinto Sem Sexto Sem .

CB CB FG FG FG CS CS CS CB FG CS2 CS2 CS2 CS2 To 11 30 20 21 20 26 39 31 30 20 10T 90T 71T 25T tal 1 6 6 0 9 0 0 5 7 4

SE/Admini stracin de Proyectos de Software. (3 horas)

12

12

SE/Compu tacin Basada en Compone ntes.

14

14

177

SE/D esarrollo de Sistemas Especializ ados.

12

16

SE/E valuacin de riesgos.

SE/ Mejorand o la programa cin: robustez y seguridad. Total 60

60

68

66

66 0

Tabla 3.8: Tpicos por curso del 7mo al 8vo Semestre Sptimo Sem CS2 CS CS 50 40 26 W 1 1T Octavo Sem CS CS CS FG CS CS CS2 CS CS 33 31 34 204 40 39 30 25 28 6 4 3 A 2 1 W 5 0T CS 24 0S . FG T 20 ot 5 al

PF/Pr 1 ogramacin Orientada a

178

Eventos. (4 horas)

PF/Fu ndamentos de seguridad de la Informacin . (4 horas)

PF/Pr ogramacin segura. (2 horas)

AL/Alg oritmos Criptogrfic os.

AL/Alg oritmos Paralelos.

AR/Multipr ocesamient o. (6 horas)

OS/M odelos de seguridad.

NC/Int

12

179

roduccin. (2 horas)

NC/Co municacin de Redes. (7 horas)

12

1 2

NC/Se guridad de Red. (6 horas)

NC/Ad ministraci n de Redes.

NC/Co mpresin y Descompre sin.

10

1 0

PL/Vis in General de los Lenguajes de Programaci n. (2 horas)

PL/M quinas Virtuales. (1 horas)

180

PL/Int roduccin a la Traduccin de Lenguajes. (2 horas)

12

1 2

PL/Pr ogramacin 1 Orientada a Objetos. (10 horas)

PL/Sis temas de Traduccin del Lenguaje.

24

2 4

HC/Fu ndamentos de la Interaccin 6 HombreComputado r (HCI) (6 horas)

HC/Co nstruccin de 6 Interfaces Grficas de Usuario. (2 horas)

181

HC/Ev aluacin de Software 4 Centrado en el usuario.

HC/De sarrollo de Software 5 Centrado en el Humano.

HC/Di seo de la 4 Interfaz de Usuario.

HC/Pr ogramacin de 4 Interfaces Grficas de Usuario.

HC/As pectos de Sistemas de 4 Multimedia y Multimodal es.

HC/As 4 pectos de

182

Colaboraci n y Comunicaci n.

Dise o de interaccin 4 para nuevos ambientes.

Tabla 3.9: Tpicos por curso del 7mo al 8vo Semestre Sptimo Sem CS2 CS CS 50 40 26 W 1 1T Octavo Sem CS CS CS FG CS CS CS2 CS CS 33 31 34 204 40 39 30 25 28 6 4 3 A 2 1 W 5 0T CS 24 0S . FG T 20 ot 5 al

Factor 4 es humanos y seguridad.

GV/T cnicas Fundamenta les en Computaci n Grfica y Visual. (2 horas)

12

1 2

183

GV/Sis temas Grficos. (1 horas)

GV/Modela miento Geomtrico.

GV/Re nderingBsic o.

18

1 8

IS/Tpi cos Fundamenta les en Sistemas Inteligentes. (1 horas)

IS/Bs queda y Satisfaccin de la Restriccin. (5 horas)

IS/Razonami ento basado en conocimient o. (4 horas)

184

IS/Bs queda Avanzada.

IS/Represen tacin Avanzada del Conocimient o y Razonamien to.

IS/Age ntes.

IS/Procesam iento de Lenguaje Natural.

IS/Apr endizaje de Mquina.

10

1 0

IS/Sist emas de Planeamient o.

IS/Rob tica.

185

IS/Perc epcin.

SP/Hist oria de la Computaci n. (1 horas)

SP/Con texto Social de la Computaci n. (3 horas)

SP/Herramie ntas Analticas. (2 horas)

SP/tic a Profesional. (3 horas) 4 4

SP/Rie sgos. (2 horas)

SP/Operacio nes de seguridad.

1 2

SP/Pro

186

piedad Intelectual. (3 horas)

SP/Priv acidad y Libertades Civiles. (2 horas)

SP/Cri men Informtico.

SP/Eco noma en Computaci n.

Tabla 3.8: Tpicos por curso del 7mo al 8vo Semestre Sptimo Sem Octavo Sem .

CS2 CS CS CS CS CS CS CS2 CS FG CS2 FG2 CS2 CS2 To 50 40 33 31 34 40 39 30 25 20 61T 04A 80T 40S tal W 1 6 4 3 2 1 W 5 5

SP/Estru cturas de Trabajo Filosfic

187

as.

CN/Com putacin Paralela. Total 47 0 60

45 13 0

34

45 32

44

Tabla 3.11: Tpicos por curso del 9no al 10mo Semestre Noveno Sem C S 4 0 3 C S 3 5 5 C S 3 9 3 C S 3 7 0 C S 3 6 1 C S 3 6 0 C B 3 0 9 F G 3 0 1 F G 2 2 1 E T 1 0 1 Dcimo Sem C S 3 5 6 C S 4 0 4 C S 3 3 1 C S 3 6 7 F F CS G G 23 3 2 2 5 1 W 0 1 F G 2 2 0 E T 1 0 2 .

T o t al

HC/Fund amentos de la Interacci n Hombre Comput ador (HCI) (6 horas)

GV/Ren

1 0

1 0

188

deringA vanzado .

GV /Tcnica s Avanzad as.

GV/Visu alizacin .

GV/Prog ramaci n de motores de juegos.

2 6

2 6

IS/ Bsqued a Avanzad a.

IS/Apren dizaje de Mquin a.

1 0

1 0

189

IS/ Robtic a.

3 0

3 0

IS/ Percepci n.

3 0

3 0

IM /Minera de Datos.

1 0

1 0

IM/Hipe rmedia.

1 0

1 0

IM /Sistema s Multime dia.

1 0

1 0

IM /Librera s Digitales .

1 0

1 0

SE/ Mtodo s Formale s.

1 4

1 4

190

Total

1 4

4 0

1 8

5 2

6 0

4. Contenido detallado por curso

Subsecciones

4.1 CS101F. Introduccin a la Programacin (Obligatorio) o 4.1.1 Justificacin o 4.1.2 Objetivos Generales o 4.1.3 Contribucin a los resultados o 4.1.4 Unidades 4.1.4.1 SP/Historia de la Computacin. (4 horas) [Nivel Bloom 2] 4.1.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] 4.1.4.3 PL/Declaracin y Tipos. (1 horas) [Nivel Bloom 3] 4.1.4.4 PF/Construcciones fundamentales. (2 horas) [Nivel Bloom 3] 4.1.4.5 PL/Programacin Funcional. (1 horas) [Nivel Bloom 4] 4.1.4.6 PF/Recursividad. (6 horas) [Nivel Bloom 4] 4.1.4.7 AL/Algoritmos Fundamentales. (4 horas) [Nivel Bloom 4] 4.1.4.8 PL/Mecanismos de Abstraccin. (4 horas) [Nivel Bloom 3] 4.1.4.9 PF/Algoritmos y Resolucin de Problemas. (10 horas) [Nivel Bloom 4] 4.1.4.10 DS/Grfos y rboles. (2 horas) [Nivel Bloom 3] 4.1.4.11 PL/Mquinas Virtuales. (1 horas) [Nivel Bloom 2] 4.1.4.12 PL/Programacin Orientada a Objetos. (4 horas) [Nivel Bloom 3] 4.1.4.13 SE/Especificacin de Requerimientos. (2 horas) [Nivel Bloom 2] 4.1.4.14 SE/Diseo de Software. (1 horas) [Nivel Bloom 2] 4.1.4.15 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 3] 4.1.4.16 SE/Usando APIs. (2 horas) [Nivel Bloom 3]

4.2 CS105. Estructuras Discretas I (Obligatorio) o 4.2.1 Justificacin o 4.2.2 Objetivos Generales o 4.2.3 Contribucin a los resultados o 4.2.4 Unidades
191

4.2.4.1 DS/Funciones, Relaciones y Conjuntos. (13 horas) [Nivel Bloom 4] 4.2.4.2 DS/Lgica Bsica. (14 horas) [Nivel Bloom 4] 4.2.4.3 DS/Tcnicas de Prueba. (14 horas) [Nivel Bloom 4] 4.2.4.4 AR/Lgica Digital y Representacin de Datos. (19 horas) [Nivel Bloom 3]

4.3 CB101. lgebra y Geometra (Obligatorio) o 4.3.1 Justificacin o 4.3.2 Objetivos Generales o 4.3.3 Contribucin a los resultados o 4.3.4 Unidades 4.3.4.1 Sistemas de coordenadas. La recta. (12 horas) [Nivel Bloom 4] 4.3.4.2 Cnicas y Coordenadas polares (24 horas) [Nivel Bloom 3] 4.3.4.3 Sistemas de ecuaciones. Matrices y determinantes (24 horas) [Nivel Bloom 3] 4.3.4.4 Vectores en y vectores en (30 horas) [Nivel Bloom 3]

4.4 FG103. Introduccin a la Vida Universitaria (Obligatorio) o 4.4.1 Justificacin o 4.4.2 Objetivos Generales o 4.4.3 Contribucin a los resultados o 4.4.4 Unidades 4.4.4.1 La Experiencia Existencial (24 horas) [Nivel Bloom 3] 4.4.4.2 Visin sobre la Persona Humana (12 horas) [Nivel Bloom 2] 4.4.4.3 Un Mundo en Cambio, vida universitaria y horizontes de Misin (9 horas) [Nivel Bloom 3]

4.5 FG102. Metodologa del Estudio (Obligatorio) o 4.5.1 Justificacin o 4.5.2 Objetivos Generales o 4.5.3 Contribucin a los resultados o 4.5.4 Unidades 4.5.4.1 (8 horas) [Nivel Bloom 3] 4.5.4.2 (8 horas) [Nivel Bloom 2] 4.5.4.3 (8 horas) [Nivel Bloom 2] 4.5.4.4 (7 horas) [Nivel Bloom 3]

192

4.6 FG101. Comunicacin (Obligatorio) o 4.6.1 Justificacin o 4.6.2 Objetivos Generales o 4.6.3 Contribucin a los resultados o 4.6.4 Unidades 4.6.4.1 La Comunicacin y la Lengua (9 horas) [Nivel Bloom 2] 4.6.4.2 El estudio de las estructuras lingsticas (9 horas) [Nivel Bloom 3] 4.6.4.3 La Lectura como Comunicacin Escrita (9 horas) [Nivel Bloom 3] 4.6.4.4 La Redaccin como comunicacin escrita por uno mismo (9 horas) [Nivel Bloom 3] 4.6.4.5 El discurso Oral (9 horas) [Nivel Bloom 3]

4.7 CS106. Estructuras Discretas II (Obligatorio) o 4.7.1 Justificacin o 4.7.2 Objetivos Generales o 4.7.3 Contribucin a los resultados o 4.7.4 Unidades 4.7.4.1 DS/Conceptos Bsicos de Conteo. (25 horas) [Nivel Bloom 4] 4.7.4.2 DS/Grfos y rboles. (25 horas) [Nivel Bloom 3] 4.7.4.3 DS/Probabilidad Discreta. (10 horas) [Nivel Bloom 4]

4.8 CS101O. Introduccin a la Programacin Orientada a Objetos (Obligatorio) o 4.8.1 Justificacin o 4.8.2 Objetivos Generales o 4.8.3 Contribucin a los resultados o 4.8.4 Unidades 4.8.4.1 SP/Historia de la Computacin. (1 horas) [Nivel Bloom 2] 4.8.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] 4.8.4.3 PL/Mquinas Virtuales. (2 horas) [Nivel Bloom 2] 4.8.4.4 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] 4.8.4.5 PF/Construcciones fundamentales. (6 horas) [Nivel Bloom 5] 4.8.4.6 PL/Programacin Orientada a Objetos. (10 horas) [Nivel Bloom 3] 4.8.4.7 PF/Algoritmos y Resolucin de Problemas. (3 horas) [Nivel Bloom 4] 4.8.4.8 PF/Recursividad. (3 horas) [Nivel Bloom 4] 4.8.4.9 AL/Anlisis Bsico de Algoritmos. (2 horas) [Nivel Bloom 4] 4.8.4.10 AL/Algoritmos Fundamentales. (6 horas) [Nivel Bloom 4]

193

4.8.4.11 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] 4.8.4.12 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3]

4.9 CS100. Introduccin a la Ciencia de la Computacin (Obligatorio) o 4.9.1 Justificacin o 4.9.2 Objetivos Generales o 4.9.3 Contribucin a los resultados o 4.9.4 Unidades 4.9.4.1 DS/Lgica Bsica. (2 horas) [Nivel Bloom 4] 4.9.4.2 PF/Construcciones fundamentales. (2 horas) [Nivel Bloom 4] 4.9.4.3 PF/Algoritmos y Resolucin de Problemas. (3 horas) [Nivel Bloom 4] 4.9.4.4 PF/Estructuras de Datos. (2 horas) [Nivel Bloom 2] 4.9.4.5 AL/Anlisis Bsico de Algoritmos. (2 horas) [Nivel Bloom 2] 4.9.4.6 AL/Estrategias Algortmicas. (2 horas) [Nivel Bloom 3] 4.9.4.7 AR/Lgica Digital y Representacin de Datos. (2 horas) [Nivel Bloom 4] 4.9.4.8 AR/Arquitectura y Organizacin de Computadores. (2 horas) [Nivel Bloom 2] 4.9.4.9 AR/Arquitectura de Memoria. (2 horas) [Nivel Bloom 2] 4.9.4.10 AR/Interfases y Estrategias de I/O. (2 horas) [Nivel Bloom 3] 4.9.4.11 OS/Visin General de los Sistemas Operativos. (2 horas) [Nivel Bloom 2] 4.9.4.12 NC/Introduccin. (2 horas) [Nivel Bloom 2] 4.9.4.13 PL/Visin General de los Lenguajes de Programacin. (2 horas) [Nivel Bloom 2] 4.9.4.14 PL/Mquinas Virtuales. (2 horas) [Nivel Bloom 2] 4.9.4.15 PL/Programacin Orientada a Objetos. (1 horas) [Nivel Bloom 3] 4.9.4.16 PL/Sistemas de Traduccin del Lenguaje. (1 horas) [Nivel Bloom 2] 4.9.4.17 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (2 horas) [Nivel Bloom 2] 4.9.4.18 IS/Tpicos Fundamentales en Sistemas Inteligentes. (2 horas) [Nivel Bloom 2] 4.9.4.19 IM/Sistemas de Base de Datos. (2 horas) [Nivel Bloom 2] 4.9.4.20 IM/Modelamiento de Datos. (2 horas) [Nivel Bloom 2] 4.9.4.21 IM/Base de Datos Relacionales. (2 horas) [Nivel Bloom 2] 4.9.4.22 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 2] 4.9.4.23 SP/Propiedad Intelectual. (2 horas) [Nivel Bloom 3]
194

4.9.4.24 SE/Diseo de Software. (2 horas) [Nivel Bloom 2] 4.9.4.25 SE/Usando APIs. (2 horas) [Nivel Bloom 2] 4.9.4.26 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 2] 4.9.4.27 SE/Procesos de Software. (2 horas) [Nivel Bloom 2]

4.10 CB102. Anlisis Matemtico I (Obligatorio) o 4.10.1 Justificacin o 4.10.2 Objetivos Generales o 4.10.3 Contribucin a los resultados o 4.10.4 Unidades 4.10.4.1 Nmeros reales y funciones (20 horas) [Nivel Bloom 3] 4.10.4.2 Sucesiones numricas de nmeros reales (18 horas) [Nivel Bloom 3] 4.10.4.3 Lmites de funciones y continuidad (14 horas) [Nivel Bloom 4] 4.10.4.4 Diferenciacin (18 horas) [Nivel Bloom 4] 4.10.4.5 Aplicaciones (20 horas) [Nivel Bloom 4]

4.11 FG105. Apreciacin de la Msica (Electivo) o 4.11.1 Justificacin o 4.11.2 Objetivos Generales o 4.11.3 Contribucin a los resultados o 4.11.4 Unidades 4.11.4.1 Conceptos Bsicos del Lenguaje Musical (9 horas) [Nivel Bloom 2] 4.11.4.2 Instrumentos Musicales (15 horas) [Nivel Bloom 2] 4.11.4.3 La Msica a Travs de la Historia (15 horas) [Nivel Bloom 4] 4.11.4.4 La Msica a Travs de la Historia Latinoamericana (6 horas) [Nivel Bloom 4]

4.12 FG106. Teatro (Electivo) o 4.12.1 Justificacin o 4.12.2 Objetivos Generales o 4.12.3 Contribucin a los resultados o 4.12.4 Unidades 4.12.4.1 El Arte, la Creatividad y el Teatro (6 horas) [Nivel Bloom 4] 4.12.4.2 El Juego: el quehacer del actor (6 horas) [Nivel Bloom 3] 4.12.4.3 La Expresin Corporal y el Uso Dramtico del Objeto (9 horas) [Nivel Bloom 3]

195

4.12.4.4 Comunicacin no verbal en el Teatro (12 horas) [Nivel Bloom 3] 4.12.4.5 Huellas del Teatro en el Tiempo (El Teatro en la historia) (3 horas) [Nivel Bloom 6] 4.12.4.6 El Montaje Teatral (12 horas) [Nivel Bloom 3]

4.13 FG104. Introduccin a la Filosofa (Obligatorio) o 4.13.1 Justificacin o 4.13.2 Objetivos Generales o 4.13.3 Contribucin a los resultados o 4.13.4 Unidades 4.13.4.1 Introduccin, Nociones, Divisin de la Filosofa (15 horas) [Nivel Bloom 2] 4.13.4.2 Antropologa, Gnoseologa, tica (15 horas) [Nivel Bloom 2] 4.13.4.3 Metafsica (15 horas) [Nivel Bloom 2]

4.14 FG112. Matrimonio y Familia (Electivo) o 4.14.1 Justificacin o 4.14.2 Objetivos Generales o 4.14.3 Contribucin a los resultados o 4.14.4 Unidades 4.14.4.1 Persona y Matrimonio (21 horas) [Nivel Bloom 2] 4.14.4.2 La Familia: Importancia y Derechos (12 horas) [Nivel Bloom 2] 4.14.4.3 Situacin de la Familia en el Mundo Actual (18 horas) [Nivel Bloom 2]

4.15 CS107. lgebra Abstracta (Obligatorio) o 4.15.1 Justificacin o 4.15.2 Objetivos Generales o 4.15.3 Contribucin a los resultados o 4.15.4 Unidades 4.15.4.1 AL/Algoritmos Criptogrficos. (20 horas) [Nivel Bloom 3] 4.15.4.2 Teora de Nmeros (20 horas) [Nivel Bloom 3]

4.16 CS220T. Arquitectura de Computadores (Obligatorio) o 4.16.1 Justificacin o 4.16.2 Objetivos Generales o 4.16.3 Contribucin a los resultados o 4.16.4 Unidades
196

4.16.4.1 AR/Lgica Digital y Representacin de Datos. (4 horas) [Nivel Bloom 4] 4.16.4.2 AR/Arquitectura y Organizacin de Computadores. (8 horas) [Nivel Bloom 3] 4.16.4.3 AR/Arquitectura de Memoria. (6 horas) [Nivel Bloom 3] 4.16.4.4 AR/Interfases y Estrategias de I/O. (6 horas) [Nivel Bloom 3] 4.16.4.5 AR/Organizacin Funcional. (6 horas) [Nivel Bloom 4] 4.16.4.6 AR/Multiprocesamiento. (4 horas) [Nivel Bloom 4] 4.16.4.7 AR/Mejoras de Desempeo. (2 horas) [Nivel Bloom 3] 4.16.4.8 AR/Arquitecturas Distribuidas. (2 horas) [Nivel Bloom 3] 4.16.4.9 AR/Dispositivos. (2 horas) [Nivel Bloom 3] 4.16.4.10 AR/Tendencias en Computacin. (2 horas) [Nivel Bloom 2]

4.17 CS130. Introduccin a Internet (Obligatorio) o 4.17.1 Justificacin o 4.17.2 Objetivos Generales o 4.17.3 Contribucin a los resultados o 4.17.4 Unidades 4.17.4.1 NC/Introduccin. (1 horas) [Nivel Bloom 3] 4.17.4.2 NC/Comunicacin de Redes. (1 horas) [Nivel Bloom 3] 4.17.4.3 NC/Seguridad de Red. (1 horas) [Nivel Bloom 2] 4.17.4.4 NC/Compresin y Descompresin. (1 horas) [Nivel Bloom 2] 4.17.4.5 NC/Administracin de Redes. (1 horas) [Nivel Bloom 2] 4.17.4.6 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 3] 4.17.4.7 NC/Organizacin de la Web. (7 horas) [Nivel Bloom 2] 4.17.4.8 NC/Aplicaciones en redes. (6 horas) [Nivel Bloom 3] 4.17.4.9 HC/Diseo de la Interfaz de Usuario. (2 horas) [Nivel Bloom 3] 4.17.4.10 NC/Tecnologa de Datos Multimedia. (2 horas) [Nivel Bloom 2] 4.17.4.11 HC/Aspectos de Sistemas de Multimedia y Multimodales. (2 horas) [Nivel Bloom 2] 4.17.4.12 SE/Validacin y verificacin de software. (2 horas) [Nivel Bloom 2] 4.17.4.13 SP/Privacidad y Libertades Civiles. (2 horas) [Nivel Bloom 3] 4.17.4.14 Tpicos electivos (4 horas) [Nivel Bloom 2]

4.18 CS102O. Objetos y Abstraccin de Datos (Obligatorio) o 4.18.1 Justificacin o 4.18.2 Objetivos Generales
197

o o

4.18.3 Contribucin a los resultados 4.18.4 Unidades 4.18.4.1 DS/Grfos y rboles. (7 horas) [Nivel Bloom 3] 4.18.4.2 PF/Construcciones fundamentales. (5 horas) [Nivel Bloom 3] 4.18.4.3 PF/Algoritmos y Resolucin de Problemas. (5 horas) [Nivel Bloom 4] 4.18.4.4 PF/Recursividad. (2 horas) [Nivel Bloom 3] 4.18.4.5 PF/Programacin Orientada a Eventos. (2 horas) [Nivel Bloom 3] 4.18.4.6 AL/Anlisis Bsico de Algoritmos. (3 horas) [Nivel Bloom 2] 4.18.4.7 AL/Algoritmos Fundamentales. (3 horas) [Nivel Bloom 3] 4.18.4.8 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] 4.18.4.9 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] 4.18.4.10 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3] 4.18.4.11 SE/Diseo de Software. (5 horas) [Nivel Bloom 2] 4.18.4.12 SE/Usando APIs. (1 horas) [Nivel Bloom 2] 4.18.4.13 SE/Especificacin de Requerimientos. (1 horas) [Nivel Bloom 2]

4.19 CB103. Anlisis Matemtico II (Obligatorio) o 4.19.1 Justificacin o 4.19.2 Objetivos Generales o 4.19.3 Contribucin a los resultados o 4.19.4 Unidades 4.19.4.1 Integracin (18 horas) [Nivel Bloom 4] 4.19.4.2 Funciones trascendentes (14 horas) [Nivel Bloom 4] 4.19.4.3 Integrales Impropias. Sucesiones y series (22 horas) [Nivel Bloom 4] 4.19.4.4 Sucesiones y Series de funciones (18 horas) [Nivel Bloom 4] 4.19.4.5 Introduccin a las Ecuaciones diferenciales (18 horas) [Nivel Bloom 2]

4.20 FG203. Oratoria y Expresin Personal (Electivo) o 4.20.1 Justificacin o 4.20.2 Objetivos Generales o 4.20.3 Contribucin a los resultados o 4.20.4 Unidades 4.20.4.1 La Oratoria (15 horas) [Nivel Bloom 2] 4.20.4.2 El Orador (15 horas) [Nivel Bloom 3] 4.20.4.3 El Discurso (6 horas) [Nivel Bloom 3]
198

4.20.4.4 Material de Apoyo (3 horas) [Nivel Bloom 3]

4.21 FG202. Apreciacin Literaria (Electivo) o 4.21.1 Justificacin o 4.21.2 Objetivos Generales o 4.21.3 Contribucin a los resultados o 4.21.4 Unidades 4.21.4.1 La literatura (0 horas) [Nivel Bloom 2] 4.21.4.2 El Clasicismo (3 horas) [Nivel Bloom 2] 4.21.4.3 Literatura Medieval (3 horas) [Nivel Bloom 2] 4.21.4.4 El Romanticismo (3 horas) [Nivel Bloom 2] 4.21.4.5 El Modernismo (3 horas) [Nivel Bloom 2] 4.21.4.6 Narrativa del Siglo XX (3 horas) [Nivel Bloom 2] 4.21.4.7 Lectura (3 horas) [Nivel Bloom 3]

4.22 FG201. Artes Plsticas (Electivo) o 4.22.1 Justificacin o 4.22.2 Objetivos Generales o 4.22.3 Contribucin a los resultados o 4.22.4 Unidades 4.22.4.1 (9 horas) [Nivel Bloom 5] 4.22.4.2 (9 horas) [Nivel Bloom 5] 4.22.4.3 (9 horas) [Nivel Bloom 1] 4.22.4.4 (6 horas) [Nivel Bloom 1] 4.22.4.5 (6 horas) [Nivel Bloom 3]

4.23 FG107. Fundamentos Antropolgicos de la Ciencia (Obligatorio) o 4.23.1 Justificacin o 4.23.2 Objetivos Generales o 4.23.3 Contribucin a los resultados o 4.23.4 Unidades 4.23.4.1 Visin del Hombre como Fundamento de la Actividad Profesional (0 horas) [Nivel Bloom 2] 4.23.4.2 Reduccionismos Antropolgicos (0 horas) [Nivel Bloom 2] 4.23.4.3 Persona y Cultura (0 horas) [Nivel Bloom 2] 4.23.4.4 El Compromiso Social de la Iglesia (0 horas) [Nivel Bloom 2]

4.24 CS211T. Teora de la Computacin (Obligatorio) o 4.24.1 Justificacin o 4.24.2 Objetivos Generales
199

o o

4.24.3 Contribucin a los resultados 4.24.4 Unidades 4.24.4.1 AL/Computabilidad Bsica. (20 horas) [Nivel Bloom 4] 4.24.4.2 AL/Clases de Complejidad P y NP. (20 horas) [Nivel Bloom 5] 4.24.4.3 AL/Teora de Autmatas. (20 horas) [Nivel Bloom 3]

4.25 CS270T. Bases de Datos I (Obligatorio) o 4.25.1 Justificacin o 4.25.2 Objetivos Generales o 4.25.3 Contribucin a los resultados o 4.25.4 Unidades 4.25.4.1 IM/Modelos de Informacin. (14 horas) [Nivel Bloom 3] 4.25.4.2 IM/Sistemas de Base de Datos. (14 horas) [Nivel Bloom 3] 4.25.4.3 IM/Modelamiento de Datos. (14 horas) [Nivel Bloom 4] 4.25.4.4 IM/Indexacin. (4 horas) [Nivel Bloom 5] 4.25.4.5 IM/Base de Datos Relacionales. (14 horas) [Nivel Bloom 5] 4.25.4.6 IM/Lenguajes de Consultas de Base de Datos. (12 horas) [Nivel Bloom 5] 4.25.4.7 IM/Diseo de Bases de Datos Relacionales. (12 horas) [Nivel Bloom 4]

4.26 CS103O. Algoritmos y Estructuras de Datos (Obligatorio) o 4.26.1 Justificacin o 4.26.2 Objetivos Generales o 4.26.3 Contribucin a los resultados o 4.26.4 Unidades 4.26.4.1 PF/Estructuras de Datos. (8 horas) [Nivel Bloom 5] 4.26.4.2 PF/Recursividad. (4 horas) [Nivel Bloom 5] 4.26.4.3 AL/Algoritmos Fundamentales. (12 horas) [Nivel Bloom 4] 4.26.4.4 Grafos (12 horas) [Nivel Bloom 5] 4.26.4.5 Matrices Esparzas (8 horas) [Nivel Bloom 5] 4.26.4.6 Arboles Equilibrados (16 horas) [Nivel Bloom 5]

4.27 CB201. Anlisis Matemtico III (Obligatorio) o 4.27.1 Justificacin o 4.27.2 Objetivos Generales o 4.27.3 Contribucin a los resultados o 4.27.4 Unidades 4.27.4.1 Geometra en el espacio (8 horas) [Nivel Bloom 3] 4.27.4.2 Curvas y parametrizaciones (20 horas) [Nivel Bloom 3]
200

4.27.4.3 Campos escalares (20 horas) [Nivel Bloom 3] 4.27.4.4 Aplicaciones (12 horas) [Nivel Bloom 3] 4.27.4.5 Integracin Mltiple (12 horas) [Nivel Bloom 4] 4.27.4.6 Campos vectoriales (18 horas) [Nivel Bloom 3]

4.28 CB203. Estadstica y Probabilidades (Obligatorio) o 4.28.1 Justificacin o 4.28.2 Objetivos Generales o 4.28.3 Contribucin a los resultados o 4.28.4 Unidades 4.28.4.1 Estadstica descriptiva (10 horas) [Nivel Bloom 3] 4.28.4.2 Probabilidades (10 horas) [Nivel Bloom 3] 4.28.4.3 Variable aleatoria (10 horas) [Nivel Bloom 4] 4.28.4.4 Distribucin de probabilidad discreta y continua (10 horas) [Nivel Bloom 3] 4.28.4.5 Distribucin de probabilidad conjunta (10 horas) [Nivel Bloom 3] 4.28.4.6 Inferencia estadstica (10 horas) [Nivel Bloom 3]

4.29 CS210T. Anlisis y Diseo de Algoritmos (Obligatorio) o 4.29.1 Justificacin o 4.29.2 Objetivos Generales o 4.29.3 Contribucin a los resultados o 4.29.4 Unidades 4.29.4.1 AL/Anlisis Bsico de Algoritmos. (12 horas) [Nivel Bloom 4] 4.29.4.2 AL/Algoritmos Fundamentales. (16 horas) [Nivel Bloom 5] 4.29.4.3 AL/Estrategias Algortmicas. (24 horas) [Nivel Bloom 5] 4.29.4.4 AL/Algoritmos Distribuidos. (4 horas) [Nivel Bloom 4] 4.29.4.5 AL/Clases de Complejidad P y NP. (4 horas) [Nivel Bloom 5]

4.30 CS290T. Ingeniera de Software I (Obligatorio) o 4.30.1 Justificacin o 4.30.2 Objetivos Generales o 4.30.3 Contribucin a los resultados o 4.30.4 Unidades 4.30.4.1 SE/Diseo de Software. (12 horas) [Nivel Bloom 4] 4.30.4.2 SE/Usando APIs. (6 horas) [Nivel Bloom 3] 4.30.4.3 SE/Herramientas y Entornos de Software. (8 horas) [Nivel Bloom 3] 4.30.4.4 SE/Validacin y verificacin de software. (8 horas) [Nivel Bloom 3]
201

4.30.4.5 SE/Computacin Basada en Componentes. (14 horas) [Nivel Bloom 3] 4.30.4.6 SE/Desarrollo de Sistemas Especializados. (4 horas) [Nivel Bloom 3] 4.30.4.7 SE/Mejorando la programacin: robustez y seguridad. (8 horas) [Nivel Bloom 3]

4.31 CS271T. Bases de Datos II (Obligatorio) o 4.31.1 Justificacin o 4.31.2 Objetivos Generales o 4.31.3 Contribucin a los resultados o 4.31.4 Unidades 4.31.4.1 IM/Diseo Fsico de Bases de Datos. (10 horas) [Nivel Bloom 4] 4.31.4.2 IM/Procesamiento de Transacciones. (12 horas) [Nivel Bloom 5] 4.31.4.3 IM/Almacenamiento y Recuperacin de Informacin. (10 horas) [Nivel Bloom 3] 4.31.4.4 IM/Bases de Datos Distribuidas. (36 horas) [Nivel Bloom 4]

4.32 CB111. Fsica Computacional (Obligatorio) o 4.32.1 Justificacin o 4.32.2 Objetivos Generales o 4.32.3 Contribucin a los resultados o 4.32.4 Unidades 4.32.4.1 FI1 Fundamentos de Fsica y Algebra vectorial (6 horas) [Nivel Bloom 3] 4.32.4.2 FI2 Cinemtica (6 horas) [Nivel Bloom 3] 4.32.4.3 FI3. Dinmica (6 horas) [Nivel Bloom 3] 4.32.4.4 FI4 Trabajo y Energia (6 horas) [Nivel Bloom 3] 4.32.4.5 FI5 Momento lineal (6 horas) [Nivel Bloom 3] 4.32.4.6 FI6 Fluidos y Transferencia de Calor (6 horas) [Nivel Bloom 3] 4.32.4.7 FI7 Termodinmica (6 horas) [Nivel Bloom 3] 4.32.4.8 FI8 Movimiento Oscilatorio y Ondulatorio (8 horas) [Nivel Bloom 3]

4.33 CB306. Anlisis Numrico (Obligatorio) o 4.33.1 Justificacin o 4.33.2 Objetivos Generales o 4.33.3 Contribucin a los resultados o 4.33.4 Unidades 4.33.4.1 CN1.A Introduccin (0 horas) [Nivel Bloom 3]
202

4.33.4.2 CN1.B Soluciones de ecuaciones de una variable (0 horas) [Nivel Bloom 4] 4.33.4.3 CN1.C Interpolacin y aproximacin polinomial (0 horas) [Nivel Bloom 4] 4.33.4.4 CN1. Diferenciacin numrica e integracin numrica (0 horas) [Nivel Bloom 4] 4.33.4.5 CN1.E Problemas de valor inicial para ecuaciones diferenciales ordinarias (0 horas) [Nivel Bloom 3] 4.33.4.6 CN1.F Mtodos iterativos en el lgebra matricial (0 horas) [Nivel Bloom 3]

4.34 FG206. Sociologa (Electivo) o 4.34.1 Justificacin o 4.34.2 Objetivos Generales o 4.34.3 Contribucin a los resultados o 4.34.4 Unidades 4.34.4.1 La Sociedad (0 horas) [Nivel Bloom 2] 4.34.4.2 La Investigacin (0 horas) [Nivel Bloom 2] 4.34.4.3 Procesos de Socializacin (0 horas) [Nivel Bloom 2] 4.34.4.4 Organizacin de la Sociedad (0 horas) [Nivel Bloom 2] 4.34.4.5 Cambios en la Sociedad (0 horas) [Nivel Bloom 2] 4.34.4.6 Comunicacin y Tecnologa (0 horas) [Nivel Bloom 2]

4.35 FG210. tica (Obligatorio) o 4.35.1 Justificacin o 4.35.2 Objetivos Generales o 4.35.3 Contribucin a los resultados o 4.35.4 Unidades 4.35.4.1 La tica Filosfica (9 horas) [Nivel Bloom 2] 4.35.4.2 La accin moral (15 horas) [Nivel Bloom 4] 4.35.4.3 La vida virtuosa (12 horas) [Nivel Bloom 4] 4.35.4.4 Lo ticamente correcto y su conocimiento (9 horas) [Nivel Bloom 4]

4.36 FG209. Psicologa (Electivo) o 4.36.1 Justificacin o 4.36.2 Objetivos Generales o 4.36.3 Contribucin a los resultados o 4.36.4 Unidades 4.36.4.1 Primera Unidad (0 horas) [Nivel Bloom 3] 4.36.4.2 Segunda Unidad (0 horas) [Nivel Bloom 2] 4.36.4.3 Tercera Unidad (0 horas) [Nivel Bloom 2] 4.36.4.4 Cuarta Unidad (0 horas) [Nivel Bloom 2] 4.36.4.5 Quinta Unidad (0 horas) [Nivel Bloom 2]
203

4.36.4.6 Sexta Unidad (0 horas) [Nivel Bloom 2]

4.37 CS225T. Sistemas Operativos (Obligatorio) o 4.37.1 Justificacin o 4.37.2 Objetivos Generales o 4.37.3 Contribucin a los resultados o 4.37.4 Unidades 4.37.4.1 AL/Algoritmos Distribuidos. (3 horas) [Nivel Bloom 3] 4.37.4.2 OS/Visin General de los Sistemas Operativos. (3 horas) [Nivel Bloom 4] 4.37.4.3 OS/Principios de los Sistemas Operativos. (6 horas) [Nivel Bloom 4] 4.37.4.4 OS/Concurrencia. (9 horas) [Nivel Bloom 3] 4.37.4.5 OS/Planeamiento y Despacho. (6 horas) [Nivel Bloom 5] 4.37.4.6 OS/Administracin de Memoria. (6 horas) [Nivel Bloom 5] 4.37.4.7 OS/Administracin de Dispositivos. (6 horas) [Nivel Bloom 5] 4.37.4.8 OS/Seguridad y Proteccin. (6 horas) [Nivel Bloom 2] 4.37.4.9 OS/Sistema de Archivos. (6 horas) [Nivel Bloom 5] 4.37.4.10 OS/Sistemas Empotrados y de Tiempo Real. (6 horas) [Nivel Bloom 4] 4.37.4.11 OS/Tolerancia a Fallas. (3 horas) [Nivel Bloom 2] 4.37.4.12 OS/Evaluacin del Desempeo de Sistemas. (3 horas) [Nivel Bloom 2] 4.37.4.13 OS/Scripting. (3 horas) [Nivel Bloom 3]

4.38 CS260. Lgica Computacional (Obligatorio) o 4.38.1 Justificacin o 4.38.2 Objetivos Generales o 4.38.3 Contribucin a los resultados o 4.38.4 Unidades 4.38.4.1 Lgica de Predicados de Primer Orden (20 horas) [Nivel Bloom 3] 4.38.4.2 Intensificacin en Programacin (20 horas) [Nivel Bloom 3] 4.38.4.3 Extensiones y otras Lgicas (20 horas) [Nivel Bloom 5]

4.39 CS390. Ingeniera de Software II (Obligatorio) o 4.39.1 Justificacin o 4.39.2 Objetivos Generales o 4.39.3 Contribucin a los resultados o 4.39.4 Unidades

204

4.39.4.1 SE/Desarrollo de Sistemas Especializados. (12 horas) [Nivel Bloom 4] 4.39.4.2 SE/Herramientas y Entornos de Software. (12 horas) [Nivel Bloom 3] 4.39.4.3 SE/Validacin y verificacin de software. (12 horas) [Nivel Bloom 4] 4.39.4.4 SE/Evolucin del Software. (12 horas) [Nivel Bloom 3] 4.39.4.5 SE/Administracin de Proyectos de Software. (12 horas) [Nivel Bloom 3] 4.39.4.6 SE/Evaluacin de riesgos. (6 horas) [Nivel Bloom 3]

4.40 CS315. Estructuras de Datos Avanzadas (Obligatorio) o 4.40.1 Justificacin o 4.40.2 Objetivos Generales o 4.40.3 Contribucin a los resultados o 4.40.4 Unidades 4.40.4.1 Tcnicas Bsicas de Implementacin de Estructuras de Datos (16 horas) [Nivel Bloom 5] 4.40.4.2 Mtodos de Acceso Multidimensionales (16 horas) [Nivel Bloom 4] 4.40.4.3 Mtodos de Acceso Mtrico (20 horas) [Nivel Bloom 5] 4.40.4.4 Mtodos de Acceso Aproximados (20 horas) [Nivel Bloom 5] 4.40.4.5 Seminarios (8 horas) [Nivel Bloom 5]

4.41 CB307. Matemtica aplicada a la computacin (Obligatorio) o 4.41.1 Justificacin o 4.41.2 Objetivos Generales o 4.41.3 Contribucin a los resultados o 4.41.4 Unidades 4.41.4.1 Espacios Lineales (0 horas) [Nivel Bloom 4] 4.41.4.2 Transformaciones lineales (0 horas) [Nivel Bloom 4] 4.41.4.3 Autovalores y autovectores (0 horas) [Nivel Bloom 3] 4.41.4.4 Sistemas de ecuaciones diferenciales (0 horas) [Nivel Bloom 3] 4.41.4.5 Teora fundamental (0 horas) [Nivel Bloom 3] 4.41.4.6 Estabilidad de equilibrio (0 horas) [Nivel Bloom 4]

4.42 FG204. Teologa I (Obligatorio) o 4.42.1 Justificacin o 4.42.2 Objetivos Generales o 4.42.3 Contribucin a los resultados o 4.42.4 Unidades 4.42.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2]
205

4.42.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] 4.42.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2]

4.43 CS250W. Interaccin Humano Computador (Obligatorio) o 4.43.1 Justificacin o 4.43.2 Objetivos Generales o 4.43.3 Contribucin a los resultados o 4.43.4 Unidades 4.43.4.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) [Nivel Bloom 3] 4.43.4.2 PL/Programacin Orientada a Objetos. (1 horas) [Nivel Bloom 3] 4.43.4.3 HC/Desarrollo de Software Centrado en el Humano. (5 horas) [Nivel Bloom 4] 4.43.4.4 HC/Evaluacin de Software Centrado en el usuario. (4 horas) [Nivel Bloom 4] 4.43.4.5 HC/Diseo de la Interfaz de Usuario. (4 horas) [Nivel Bloom 3] 4.43.4.6 HC/Construccin de Interfaces Grficas de Usuario. (6 horas) [Nivel Bloom 4] 4.43.4.7 HC/Programacin de Interfaces Grficas de Usuario. (4 horas) [Nivel Bloom 3] 4.43.4.8 HC/Aspectos de Sistemas de Multimedia y Multimodales. (4 horas) [Nivel Bloom 3] 4.43.4.9 HC/Aspectos de Colaboracin y Comunicacin. (4 horas) [Nivel Bloom 3] 4.43.4.10 Diseo de interaccin para nuevos ambientes. (4 horas) [Nivel Bloom 3] 4.43.4.11 Factores humanos y seguridad. (4 horas) [Nivel Bloom 3]

4.44 CS401. Proyecto I (Obligatorio) o 4.44.1 Justificacin o 4.44.2 Objetivos Generales o 4.44.3 Contribucin a los resultados o 4.44.4 Unidades 4.44.4.1 Iniciacin cientfica en el rea de computacin (60 horas) [Nivel Bloom 4]

4.45 CS261T. Inteligencia Artificial (Obligatorio) o 4.45.1 Justificacin o 4.45.2 Objetivos Generales o 4.45.3 Contribucin a los resultados o 4.45.4 Unidades
206

4.45.4.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (2 horas) [Nivel Bloom 3] 4.45.4.2 IS/Bsqueda y Satisfaccin de la Restriccin. (4 horas) [Nivel Bloom 3] 4.45.4.3 IS/Razonamiento basado en conocimiento. (6 horas) [Nivel Bloom 2] 4.45.4.4 IS/Bsqueda Avanzada. (4 horas) [Nivel Bloom 3] 4.45.4.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. (6 horas) [Nivel Bloom 2] 4.45.4.6 IS/Agentes. (6 horas) [Nivel Bloom 2] 4.45.4.7 IS/Procesamiento de Lenguaje Natural. (4 horas) [Nivel Bloom 2] 4.45.4.8 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 5] 4.45.4.9 IS/Sistemas de Planeamiento. (6 horas) [Nivel Bloom 3] 4.45.4.10 IS/Robtica. (6 horas) [Nivel Bloom 2] 4.45.4.11 IS/Percepcin. (6 horas) [Nivel Bloom 3]

4.46 CS336. Seguridad en Computacin (Obligatorio) o 4.46.1 Justificacin o 4.46.2 Objetivos Generales o 4.46.3 Contribucin a los resultados o 4.46.4 Unidades 4.46.4.1 PF/Fundamentos de seguridad de la Informacin. (4 horas) [Nivel Bloom 4] 4.46.4.2 PF/Programacin segura. (4 horas) [Nivel Bloom 4] 4.46.4.3 OS/Modelos de seguridad. (4 horas) [Nivel Bloom 4] 4.46.4.4 AL/Algoritmos Criptogrficos. (4 horas) [Nivel Bloom 3] 4.46.4.5 NC/Seguridad de Red. (8 horas) [Nivel Bloom 3] 4.46.4.6 NC/Administracin de Redes. (8 horas) [Nivel Bloom 3] 4.46.4.7 Factores humanos y seguridad. (2 horas) [Nivel Bloom 4] 4.46.4.8 SP/Operaciones de seguridad. (8 horas) [Nivel Bloom 4] 4.46.4.9 PL/Mquinas Virtuales. (3 horas) [Nivel Bloom 2]

4.47 CS314. Algoritmos Paralelos (Obligatorio) o 4.47.1 Justificacin o 4.47.2 Objetivos Generales o 4.47.3 Contribucin a los resultados o 4.47.4 Unidades 4.47.4.1 CN/Computacin Paralela. (5 horas) [Nivel Bloom 4] 4.47.4.2 AR/Multiprocesamiento. (5 horas) [Nivel Bloom 3] 4.47.4.3 AL/Algoritmos Paralelos. (3 horas) [Nivel Bloom 4] 4.47.4.4 Modelos de Threads con PTHREADs (0 horas) [Nivel Bloom 3]

207

4.47.4.5 Modelos de Threads con OpenMP (0 horas) [Nivel Bloom 3] 4.47.4.6 Modelo de programacin mediante paso de Mensajes con MPI (0 horas) [Nivel Bloom 3] 4.47.4.7 Threading Building Blocks (TBB) (0 horas) [Nivel Bloom 3]

4.48 CS343. Lenguajes de Programacin (Obligatorio) o 4.48.1 Justificacin o 4.48.2 Objetivos Generales o 4.48.3 Contribucin a los resultados o 4.48.4 Unidades 4.48.4.1 El desarrollo histrico de los lenguajes de programacin (4 horas) [Nivel Bloom 2] 4.48.4.2 Lenguajes Imperativos (4 horas) [Nivel Bloom 4] 4.48.4.3 Orientacin a Objetos (8 horas) [Nivel Bloom 4] 4.48.4.4 Lenguajes Funcionales (4 horas) [Nivel Bloom 3] 4.48.4.5 Lenguajes Lgicos (4 horas) [Nivel Bloom 3] 4.48.4.6 Otros Paradigmas (2 horas) [Nivel Bloom 2]

4.49 FG204A. Teologa II (Obligatorio) o 4.49.1 Justificacin o 4.49.2 Objetivos Generales o 4.49.3 Contribucin a los resultados o 4.49.4 Unidades 4.49.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2] 4.49.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] 4.49.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2]

4.50 CS402. Proyecto II (Obligatorio) o 4.50.1 Justificacin o 4.50.2 Objetivos Generales o 4.50.3 Contribucin a los resultados o 4.50.4 Unidades 4.50.4.1 Levantamiento del estado del arte (60 horas) [Nivel Bloom 5]

4.51 CS391. Calidad de Software (Obligatorio) o 4.51.1 Justificacin o 4.51.2 Objetivos Generales o 4.51.3 Contribucin a los resultados o 4.51.4 Unidades
208

4.51.4.1 CMMI v 1.2 (18 horas) [Nivel Bloom 3] 4.51.4.2 People Software Process & Team Software Process (12 horas) [Nivel Bloom 3] 4.51.4.3 Estndares ISO/IEC (18 horas) [Nivel Bloom 3] 4.51.4.4 Tcnicas de Prueba de Software (12 horas) [Nivel Bloom 4]

4.52 CS230W. Computacin Centrada en Redes (Obligatorio) o 4.52.1 Justificacin o 4.52.2 Objetivos Generales o 4.52.3 Contribucin a los resultados o 4.52.4 Unidades 4.52.4.1 NC/Introduccin. (12 horas) [Nivel Bloom 4] 4.52.4.2 NC/Comunicacin de Redes. (12 horas) [Nivel Bloom 3] 4.52.4.3 NC/Compresin y Descompresin. (10 horas) [Nivel Bloom 4] 4.52.4.4 NC/Tecnologias de Redes Locales (16 horas) [Nivel Bloom 3]

4.53 CS255. Computacin Grfica (Obligatorio) o 4.53.1 Justificacin o 4.53.2 Objetivos Generales o 4.53.3 Contribucin a los resultados o 4.53.4 Unidades 4.53.4.1 GV/Sistemas Grficos. (6 horas) [Nivel Bloom 3] 4.53.4.2 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (12 horas) [Nivel Bloom 3] 4.53.4.3 GV/Rendering Bsico. (18 horas) [Nivel Bloom 3] 4.53.4.4 GV/Modelamiento Geomtrico. (9 horas) [Nivel Bloom 3]

4.54 CS280T. Aspectos sociales y profesionales de la computacin (Obligatorio) o 4.54.1 Justificacin o 4.54.2 Objetivos Generales o 4.54.3 Contribucin a los resultados o 4.54.4 Unidades 4.54.4.1 SP/Historia de la Computacin. (2 horas) [Nivel Bloom 2] 4.54.4.2 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 4] 4.54.4.3 SP/Herramientas Analticas. (2 horas) [Nivel Bloom 3] 4.54.4.4 SP/tica Profesional. (4 horas) [Nivel Bloom 4] 4.54.4.5 SP/Riesgos. (2 horas) [Nivel Bloom 4] 4.54.4.6 SP/Operaciones de seguridad. (4 horas) [Nivel Bloom 4]
209

4.54.4.7 SP/Propiedad Intelectual. (4 horas) [Nivel Bloom 4] 4.54.4.8 SP/Privacidad y Libertades Civiles. (4 horas) [Nivel Bloom 4] 4.54.4.9 SP/Crimen Informtico. (2 horas) [Nivel Bloom 4] 4.54.4.10 SP/Economa en Computacin. (2 horas) [Nivel Bloom 2] 4.54.4.11 SP/Estructuras de Trabajo Filosficas. (2 horas) [Nivel Bloom 2]

4.55 CS240S. Compiladores (Obligatorio) o 4.55.1 Justificacin o 4.55.2 Objetivos Generales o 4.55.3 Contribucin a los resultados o 4.55.4 Unidades 4.55.4.1 PL/Visin General de los Lenguajes de Programacin. (8 horas) [Nivel Bloom 4] 4.55.4.2 PL/Introduccin a la Traduccin de Lenguajes. (12 horas) [Nivel Bloom 3] 4.55.4.3 PL/Sistemas de Traduccin del Lenguaje. (24 horas) [Nivel Bloom 2] 4.55.4.4 Paralelismo a nivel de instruccin (4 horas) [Nivel Bloom 2] 4.55.4.5 Optimizacin para el paralelismo y la localidad (4 horas) [Nivel Bloom 2]

4.56 FG205. Historia de la Cultura (Obligatorio) o 4.56.1 Justificacin o 4.56.2 Objetivos Generales o 4.56.3 Contribucin a los resultados o 4.56.4 Unidades 4.56.4.1 (6 horas) [Nivel Bloom 2] 4.56.4.2 (9 horas) [Nivel Bloom 2] 4.56.4.3 (12 horas) [Nivel Bloom 2] 4.56.4.4 (9 horas) [Nivel Bloom 2] 4.56.4.5 (9 horas) [Nivel Bloom 2] 4.56.4.6 La Ilustracin (5 horas) [Nivel Bloom 2]

4.57 CS403. Proyecto de Tesis (Obligatorio) o 4.57.1 Justificacin o 4.57.2 Objetivos Generales o 4.57.3 Contribucin a los resultados o 4.57.4 Unidades 4.57.4.1 Proyecto de Tesis (0 horas) [Nivel Bloom 4] 4.57.4.2 Avance de Tesis (0 horas) [Nivel Bloom 4]
210

4.58 CS355. Tpicos en Computacin Grfica (Electivo) o 4.58.1 Justificacin o 4.58.2 Objetivos Generales o 4.58.3 Contribucin a los resultados o 4.58.4 Unidades

4.59 CS393. Mtodos Formales (Electivo) o 4.59.1 Justificacin o 4.59.2 Objetivos Generales o 4.59.3 Contribucin a los resultados o 4.59.4 Unidades 4.59.4.1 SE/Mtodos Formales. (14 horas) [Nivel Bloom 3] 4.59.4.2 Mtodos y Fundamentos Matematicos (12 horas) [Nivel Bloom 3] 4.59.4.3 Modelamiento (12 horas) [Nivel Bloom 3] 4.59.4.4 Especificacion de Requerimientos (12 horas) [Nivel Bloom 4] 4.59.4.5 Diseo (12 horas) [Nivel Bloom 3] 4.59.4.6 Evolucin (12 horas) [Nivel Bloom 4]

4.60 CS370. Tpicos en Bases de Datos (Obligatorio) o 4.60.1 Justificacin o 4.60.2 Objetivos Generales o 4.60.3 Contribucin a los resultados o 4.60.4 Unidades 4.60.4.1 IM/Minera de Datos. (10 horas) [Nivel Bloom 4] 4.60.4.2 IM/Hipermedia. (10 horas) [Nivel Bloom 4] 4.60.4.3 IM/Sistemas Multimedia. (10 horas) [Nivel Bloom 4] 4.60.4.4 IM/Libreras Digitales. (10 horas) [Nivel Bloom 4]

4.61 CS361. Tpicos en Inteligencia Artificial (Electivo) o 4.61.1 Justificacin o 4.61.2 Objetivos Generales o 4.61.3 Contribucin a los resultados o 4.61.4 Unidades

4.62 CS360. Computacin Bioinspirada (Electivo) o 4.62.1 Justificacin o 4.62.2 Objetivos Generales o 4.62.3 Contribucin a los resultados
211

4.62.4 Unidades 4.62.4.1 Introduccin a la Computacion Bioinspirada (2 horas) [Nivel Bloom 2] 4.62.4.2 Conceptualizacin (4 horas) [Nivel Bloom 2] 4.62.4.3 IS/Bsqueda Avanzada. (8 horas) [Nivel Bloom 3] 4.62.4.4 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 3] 4.62.4.5 Inteligencia de enjambre (6 horas) [Nivel Bloom 3] 4.62.4.6 Sistema inmunolgico artificial (6 horas) [Nivel Bloom 3] 4.62.4.7 Geometria fractal (6 horas) [Nivel Bloom 3] 4.62.4.8 Vida artificial (6 horas) [Nivel Bloom 3] 4.62.4.9 Computacin basada en ADN (6 horas) [Nivel Bloom 3] 4.62.4.10 Computacin cuntica (6 horas) [Nivel Bloom 2]

4.63 CB309. Computacin Molecular Biolgica (Electivo) o 4.63.1 Justificacin o 4.63.2 Objetivos Generales o 4.63.3 Contribucin a los resultados o 4.63.4 Unidades 4.63.4.1 Conceptos Introductorios (0 horas) [Nivel Bloom 3] 4.63.4.2 Alineamiento de Secuencias (0 horas) [Nivel Bloom 4] 4.63.4.3 Clustering (0 horas) [Nivel Bloom 4] 4.63.4.4 rboles Filogenticos (0 horas) [Nivel Bloom 3] 4.63.4.5 Mapeo de Secuencias (0 horas) [Nivel Bloom 3] 4.63.4.6 Introduccin a la Estructura de las Protenas (0 horas) [Nivel Bloom 2]

4.64 FG301. Enseanza Social de la Iglesia (Obligatorio) o 4.64.1 Justificacin o 4.64.2 Objetivos Generales o 4.64.3 Contribucin a los resultados o 4.64.4 Unidades 4.64.4.1 Centralidad de la Persona Humana en la Cultura (8 horas) [Nivel Bloom 2] 4.64.4.2 Perspectiva Histrica de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] 4.64.4.3 Principios y Valores de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] 4.64.4.4 Instancias de Pertenencia: La Familia (8 horas) [Nivel Bloom 2] 4.64.4.5 Comunidad Poltica (7 horas) [Nivel Bloom 2] 4.64.4.6 Orden Econmico y Trabajo (8 horas) [Nivel Bloom 2]

4.65 FG221. Historia de la Ciencia y Tecnologa (Obligatorio)


212

o o o o

4.65.1 Justificacin 4.65.2 Objetivos Generales 4.65.3 Contribucin a los resultados 4.65.4 Unidades 4.65.4.1 Historia de la Tecnologa Primitiva (9 horas) [Nivel Bloom 2] 4.65.4.2 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] 4.65.4.3 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] 4.65.4.4 Historia de la Ciencia y Tecnologa en la Edad Moderna (9 horas) [Nivel Bloom 2] 4.65.4.5 Historia de la Ciencia y La Tecnologa en la Edad Contempornea (6 horas) [Nivel Bloom 2] 4.65.4.6 Filosofa de la tecnologa (12 horas) [Nivel Bloom 4]

4.66 ET101. Formacin de Empresas de Base Tecnolgica I (Obligatorio) o 4.66.1 Justificacin o 4.66.2 Objetivos Generales o 4.66.3 Contribucin a los resultados o 4.66.4 Unidades 4.66.4.1 Diagnostico de Mercado (25 horas) [Nivel Bloom 1] 4.66.4.2 Plan Tecnologico (20 horas) [Nivel Bloom 1] 4.66.4.3 Marco Legal aplicado a las TICs (20 horas) [Nivel Bloom 1] 4.66.4.4 Anlisis Estratgico (25 horas) [Nivel Bloom 1]

4.67 CS356. Programacin de Video Juegos (Electivo) o 4.67.1 Justificacin o 4.67.2 Objetivos Generales o 4.67.3 Contribucin a los resultados o 4.67.4 Unidades 4.67.4.1 GV/Tcnicas Avanzadas. (8 horas) [Nivel Bloom 3] 4.67.4.2 GV/Visualizacin. (4 horas) [Nivel Bloom 3] 4.67.4.3 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (4 horas) [Nivel Bloom 4] 4.67.4.4 GV/Rendering Avanzado. (10 horas) [Nivel Bloom 3] 4.67.4.5 GV/Programacin de motores de juegos. (26 horas) [Nivel Bloom 3]

4.68 CS404. Seminario de Tesis (Obligatorio) o 4.68.1 Justificacin o 4.68.2 Objetivos Generales o 4.68.3 Contribucin a los resultados
213

4.68.4 Unidades 4.68.4.1 Escritura del Borrador de Tesis (60 horas) [Nivel Bloom 5]

4.69 CS331. Cloud Computing (Obligatorio) o 4.69.1 Justificacin o 4.69.2 Objetivos Generales o 4.69.3 Contribucin a los resultados o 4.69.4 Unidades 4.69.4.1 Introduccin a cloud computing (7 horas) [Nivel Bloom 2] 4.69.4.2 Temas de investigacin en cloud computing (8 horas) [Nivel Bloom 2] 4.69.4.3 Cloud data management (10 horas) [Nivel Bloom 3] 4.69.4.4 Data-intensive applications (10 horas) [Nivel Bloom 3] 4.69.4.5 Programando para Cloud Computing (10 horas) [Nivel Bloom 3]

4.70 CS367. Robtica (Electivo) o 4.70.1 Justificacin o 4.70.2 Objetivos Generales o 4.70.3 Contribucin a los resultados o 4.70.4 Unidades 4.70.4.1 IS/Robtica. (30 horas) [Nivel Bloom 4] 4.70.4.2 IS/Percepcin. (30 horas) [Nivel Bloom 3]

4.71 CS232W. Programacin de Dispositivos Mviles (Obligatorio) o 4.71.1 Justificacin o 4.71.2 Objetivos Generales o 4.71.3 Contribucin a los resultados o 4.71.4 Unidades 4.71.4.1 Mobilidad y Manejo de Localidad (8 horas) [Nivel Bloom 4] 4.71.4.2 Manejo de datos en ambientes mviles (10 horas) [Nivel Bloom 2] 4.71.4.3 Mobile Ad Hoc y Sensor Networks (8 horas) [Nivel Bloom 2] 4.71.4.4 Aplicaciones de computacin mvil y ubicua (20 horas) [Nivel Bloom 6]

4.72 FG350. Liderazgo y Desempeo (Obligatorio) o 4.72.1 Justificacin


214

o o o

4.72.2 Objetivos Generales 4.72.3 Contribucin a los resultados 4.72.4 Unidades 4.72.4.1 Aproximacin al liderazgo (20 horas) [Nivel Bloom 2] 4.72.4.2 Liderazgo personal/Maestra personal (45 horas) [Nivel Bloom 3] 4.72.4.3 Liderazgo en grupos (10 horas) [Nivel Bloom 3]

4.73 FG211. tica Profesional (Obligatorio) o 4.73.1 Justificacin o 4.73.2 Objetivos Generales o 4.73.3 Contribucin a los resultados o 4.73.4 Unidades 4.73.4.1 Objetividad moral (8 horas) [Nivel Bloom 2] 4.73.4.2 tica y Nuevas Tecnologas (8 horas) [Nivel Bloom 2] 4.73.4.3 Aplicaciones Prcticas (6 horas) [Nivel Bloom 3]

4.74 FG220. Anlisis de la Realidad Peruana (Obligatorio) o 4.74.1 Justificacin o 4.74.2 Objetivos Generales o 4.74.3 Contribucin a los resultados o 4.74.4 Unidades 4.74.4.1 Orgenes de la peruanidad y la formacin de la conciencia nacional (15 horas) [Nivel Bloom 6] 4.74.4.2 Procesos de integracin y desintegracin nacional del siglo XIX (12 horas) [Nivel Bloom 6] 4.74.4.3 Procesos de integracin y desintegracin nacional del siglo XX (6 horas) [Nivel Bloom 6] 4.74.4.4 El Per en la actualidad: anlisis del sector poltico, social y econmico (9 horas) [Nivel Bloom 6]

4.75 ET102. Formacin de Empresas de Base Tecnolgica II (Obligatorio) o 4.75.1 Justificacin o 4.75.2 Objetivos Generales o 4.75.3 Contribucin a los resultados o 4.75.4 Unidades 4.75.4.1 Valorizacin de Proyectos (20 horas) [Nivel Bloom 3] 4.75.4.2 Marketing de Servicios (30 horas) [Nivel Bloom 3] 4.75.4.3 Negociaciones (10 horas) [Nivel Bloom 4]

4.1 CS101F. Introduccin a la Programacin (Obligatorio)

Semestre: 1er Sem. Crditos: 4


215

Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.1.1 Justificacin 4.1.2 Objetivos Generales 4.1.3 Contribucin a los resultados 4.1.4 Unidades o 4.1.4.1 SP/Historia de la Computacin. (4 horas) [Nivel Bloom 2] o 4.1.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] o 4.1.4.3 PL/Declaracin y Tipos. (1 horas) [Nivel Bloom 3] o 4.1.4.4 PF/Construcciones fundamentales. (2 horas) [Nivel Bloom 3] o 4.1.4.5 PL/Programacin Funcional. (1 horas) [Nivel Bloom 4] o 4.1.4.6 PF/Recursividad. (6 horas) [Nivel Bloom 4] o 4.1.4.7 AL/Algoritmos Fundamentales. (4 horas) [Nivel Bloom 4] o 4.1.4.8 PL/Mecanismos de Abstraccin. (4 horas) [Nivel Bloom 3] o 4.1.4.9 PF/Algoritmos y Resolucin de Problemas. (10 horas) [Nivel Bloom 4] o 4.1.4.10 DS/Grfos y rboles. (2 horas) [Nivel Bloom 3] o 4.1.4.11 PL/Mquinas Virtuales. (1 horas) [Nivel Bloom 2] o 4.1.4.12 PL/Programacin Orientada a Objetos. (4 horas) [Nivel Bloom 3] o 4.1.4.13 SE/Especificacin de Requerimientos. (2 horas) [Nivel Bloom 2] o 4.1.4.14 SE/Diseo de Software. (1 horas) [Nivel Bloom 2] o 4.1.4.15 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 3] o 4.1.4.16 SE/Usando APIs. (2 horas) [Nivel Bloom 3] 4.1.1 Justificacin

Este es el primer curso en la secuencia de los cursos introductorios a la informtica. En este curso se pretende cubrir los conceptos sealados por la Computing Curricula IEEE-CS/ACM 2008, bajo el enfoque functional-first. La programacin es uno de los pilares de la informtica; cualquier profesional del rea, necesitar programar para concretizar sus modelos y propuestas. Este curso introducir a los participantes en los conceptos fundamentales de este arte. Lo tpicos incluyen tipos de datos, estructuras de control, funciones, listas, recursividad y la mecnica de la ejecucin, prueba y depuracin. El curso tambin ofrecer una introduccin al contexto histrico y social de la informtica y una revisin del mbito de esta disciplina.

216

4.1.2 Objetivos Generales 1. Introducir los conceptos fundamentales de programacin y estructuras de datos utilizando un lenguaje funcional. 2. Desarrollar su capacidad de abstraccin, utilizar un lenguaje de programacin funcional. 4.1.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 3 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. k) Nivel Bloom 2 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.1.4 Unidades

Subsecciones

4.1.4.1 SP/Historia de la Computacin. (4 horas) [Nivel Bloom 2] 4.1.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] 4.1.4.3 PL/Declaracin y Tipos. (1 horas) [Nivel Bloom 3] 4.1.4.4 PF/Construcciones fundamentales. (2 horas) [Nivel Bloom 3] 4.1.4.5 PL/Programacin Funcional. (1 horas) [Nivel Bloom 4] 4.1.4.6 PF/Recursividad. (6 horas) [Nivel Bloom 4] 4.1.4.7 AL/Algoritmos Fundamentales. (4 horas) [Nivel Bloom 4] 4.1.4.8 PL/Mecanismos de Abstraccin. (4 horas) [Nivel Bloom 3] 4.1.4.9 PF/Algoritmos y Resolucin de Problemas. (10 horas) [Nivel Bloom 4] 4.1.4.10 DS/Grfos y rboles. (2 horas) [Nivel Bloom 3] 4.1.4.11 PL/Mquinas Virtuales. (1 horas) [Nivel Bloom 2] 4.1.4.12 PL/Programacin Orientada a Objetos. (4 horas) [Nivel Bloom 3]
217

4.1.4.13 SE/Especificacin de Requerimientos. (2 horas) [Nivel Bloom 2] 4.1.4.14 SE/Diseo de Software. (1 horas) [Nivel Bloom 2] 4.1.4.15 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 3] 4.1.4.16 SE/Usando APIs. (2 horas) [Nivel Bloom 3]

4.1.4.1 SP/Historia de la Computacin. (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Brookshear, 2012,,] Tpicos 1. Prehistoria - el mundo antes de 1946. 2. Historia del hardware de computadoras, software, redes. 3. Pioneros de la computacin. Objetivos 1. Listar las contribuciones de varios pioneros en el campo de la computacin. 2. Comparar la vida diaria antes y despus del advenimiento de las computadoras personales e Internet. 3. Identificar las tendencias continuamente significativas en la historia del campo de la computacin. 4.1.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Historia de los lenguajes de programacin. 2. Paradigmas de programacin. Objetivos 1. Listar la evolucin de los lenguajes de programacin identificando como es que su historia nos ha conducido a los paradigmas actuales. 2. Identificar al menos una caracterstica distintiva para cada uno de los paradigmas de programacin cubiertos en esta unidad. 4.1.4.3 PL/Declaracin y Tipos. (1 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. La concepcin de tipos como un conjunto de valores unidos a un conjunto de operaciones. 2. Vista general del chequeo de tipos. Objetivos 1. Explicar el valor de los modelos de declaracin, especialmente con respecto a la programacin en mayor escala.
218

2. Identificar y describir las propiedades de una variable, tales como su: direccin asociada, valor, mbito, persistencia y tamao. 3. Discutir la incompatibilidad de tipos. 4. Demostrar las diferentes formas de enlace, visibilidad, mbito y manejo del tiempo de vida. 5. Defender la importancia de los tipos y el chequeo de tipos para brindar abstraccin y seguridad. 6. Evaluar las ventajas y desventajas en el manejo del tiempo de vida (conteo por referencia vs. recoleccin de basura). 4.1.4.4 PF/Construcciones fundamentales. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Sintaxis bsica y semntica de un lenguaje de ms alto nivel. Variables, tipos, expresiones y asignaciones. Entrada y salida simple. Estructuras de control condicionales e iterativas. Funciones y paso de parmetros. Descomposicin estructurada.

Objetivos 1. Analizar y explicar el comportamiento de programas simples involucrando las estructuras de programacin fundamental cubiertas por esta unidad. 2. Modificar y extender programas cortos que usan condicionales estndar, estructuras de control iterativas y funciones. 3. Disear, implementar, probar y depurar un programa que use cada una de las siguientes estructuras fundamentales de programacin: clculos bsicos, entrada y salida simple, estructuras estndar condicionales e iterativas y definicin de funciones. 4. Escoger la estructura apropiada condicional e iterativa para una estructura de programacin dada. 5. Aplicar tcnicas de descomposicin estructurada o funcional para dividir un programa en pequeas partes. 6. Describir los mecanismos de paso de parmetros. 4.1.4.5 PL/Programacin Funcional. (1 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. Panorama general y motivacin de los lenguajes funcionales. 2. Recursin sobre listas, nmeros naturales, rboles y otros datos definidos recursivamente. 3. Pragmticas (depuracin en dividir y vencers, persistencia de las estructuras de datos). Objetivos
219

1. Delinear las fortalezas y debilidades del paradigma de programacin funcional. 2. Disear, codificar, probar y depurar programas usando el paradigma funcional. 3. Explicar el uso de funciones como datos, incluyendo el concepto de cerraduras. 4.1.4.6 PF/Recursividad. (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. El concepto de recursividad. Funciones matemticas recursivas. Funciones recursivas simples. Estrategias de dividir y conquistar.

Objetivos 1. Describir el concepto de recursividad y dar ejemplos de su uso. 2. Identificar el caso base y el caso general de un problema definido recursivamente. 3. Comparar soluciones iterativas y recursivas para problemas elementales tal como factorial. 4. Describir la tcnica dividir y conquistar. 5. Implementar, probar y depurar funciones y procedimientos recursivos simples. 6. Describir como la recursividad puede ser implementada usando una pila. 7. Determinar cuando una solucin recursiva es apropiada para un problema. 4.1.4.7 AL/Algoritmos Fundamentales. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Algoritmos numricos simples. Bsqueda secuencial y binaria. Algoritmos cuadrticos de ordenamiento (seleccin, insercin). rboles de bsqueda binaria. Recorridos por amplitud y profundidad.

Objetivos 1. Implementar los algoritmos cuadrticos ms comunes y los algoritmos de ordenamiento . 2. Disear e implementar una funcin de (hash) apropiada para una aplicacin. 3. Disear e implementar un algoritmo de resolucin de colisiones para tablas de hash. 4. Discutir la eficiencia computacional de los principales algoritmos de ordenamiento, bsqueda y (hashing). 5. Discutir otros factores, adems de la eficiencia computacional, que influyen en la eleccin de los algoritmos, tales como tiempo de programacin, mantenimiento y el uso de patrones especficos de aplicacin en los datos de entrada.

220

6. Resolver problemas usando los algoritmos de grafos fundamentales, incluyendo bsqueda por amplitud y profundidad; caminos ms cortos con uno y mltiples orgenes, cerradura transitiva, ordenamiento topolgico y al menos un algoritmo de rbol de expansin mnima. 7. Demostrar las siguientes capacidades: evaluar algoritmos, seleccionar una opcin de un rango posible, proveer una justificacin para tal eleccin e implementar el algoritmo.. 4.1.4.8 PL/Mecanismos de Abstraccin. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. Procedimientos, funciones e iteradores como mecanismos de abstraccin. Mecanismos de parametrizacin (referencia vs. valor). Tipos de parmetros y tipos parametrizados. Mdulos en lenguajes de programacin.

Objetivos 1. Explicar como los mecanismos de abstraccin soportan la creacin de componentes de software reusables. 2. Demostrar la diferencia entre paso de parmetros por valor y por referencia. 3. Defender la importancia de la abstraccin especialmente con respecto a la programacin en mayor escala. 4.1.4.9 PF/Algoritmos y Resolucin de Problemas. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Estrategias para la solucin de problemas. El rol de los algoritmos en el proceso de solucin de problemas. Estrategias de implementacin para algoritmos. Estrategias de depuracin. El Concepto y propiedades de algoritmos.

Objetivos 1. Discutir la importancia de los algoritmos en el proceso de solucin de problemas. 2. Identificar las propiedades necesarias de un buen algoritmo. 3. Crear algoritmos para resolver problemas simples. 4. Usar pseudocdigo o un lenguaje de programacin para implementar, probar y depurar algoritmos para resolver problemas simples. 5. Describir estrategias tiles para depuracin. 4.1.4.10 DS/Grfos y rboles. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos
221

1. rboles. 2. Estrategias de recorrido. Objetivos 1. Ilustrar con ejemplos la terminologa bsica de teora de grafos y algunas de las propiedades y casos especiales de cada una. 2. Mostrar diferentes mtodos de recorrido en rboles y grafos. 3. Modelar problemas en Ciencias de la Computacin usando grafos y rboles. 4.1.4.11 PL/Mquinas Virtuales. (1 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. El concepto de mquina virtual. Objetivos 1. Describir la importancia y poder de la abstraccin en el contexto de mquinas virtuales. 4.1.4.12 PL/Programacin Orientada a Objetos. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Clases y subclases. 2. Polimorfismo (polimorfismo de subtipo vs. herencia). 3. Jerarquas de clases. Objetivos 1. Disear, implementar y probar la implementacion de la relacin esun IsKindOf entre objetos usando jerarqua de clases y herencia. 2. Comparar y contrastar las nociones de sobrecarga y sobreescritura de mtodos en un lenguaje de programacin. 4.1.4.13 SE/Especificacin de Requerimientos. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,] Tpicos 1. Conceptos bsicos de tcnicas de especificacin formal. Objetivos 1. Traducir en lenguaje natural una especificacin de requerimientos de software escrita en un lenguaje de especificacin formal comunmente usado. 4.1.4.14 SE/Diseo de Software. (1 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos
222

1. Conceptos y principios fundamentales de diseo. Objetivos 1. Discutir las propiedades del buen diseo de softwarem incluyendo la naturaleza y el rol de la documentacin asociada. 4.1.4.15 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Entornos de programacin. 2. Anlisis de requerimientos y herramientas de modelamiento de diseo. Objetivos 1. Seleccionar con justificacin un apropiado conjunto de herramientas para soportar el desarrollo de un rango de productos de software. 4.1.4.16 SE/Usando APIs. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Programacin usando API. Objetivos 1. Explicar el valor de las interfaces para programacin de aplicaciones (APIs) en el desarrollo de software.

4.2 CS105. Estructuras Discretas I (Obligatorio)


Semestre: 1er Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 4 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.2.1 Justificacin 4.2.2 Objetivos Generales 4.2.3 Contribucin a los resultados 4.2.4 Unidades o 4.2.4.1 DS/Funciones, Relaciones y Conjuntos. (13 horas) [Nivel Bloom 4]
223

o o o

4.2.4.2 DS/Lgica Bsica. (14 horas) [Nivel Bloom 4] 4.2.4.3 DS/Tcnicas de Prueba. (14 horas) [Nivel Bloom 4] 4.2.4.4 AR/Lgica Digital y Representacin de Datos. (19 horas) [Nivel Bloom 3]

4.2.1 Justificacin Las estructuras discretas son fundamentales para la ciencia de la computacin. Es evidente que las estructuras discretas son usadas en las reas de estructura de datos y algoritmos , sin embargo son tambin importantes en otras, como por ejemplo en la verificacin, en criptografa y mtodos formales.

4.2.2 Objetivos Generales 1. Desarrollar Operaciones asociadas con conjuntos, funciones y relaciones. 2. Relacionar ejemplos prcticos al modelo apropiado de conjunto, funcin o relacin. 3. Conocer las diferentes tcnicas de conteo ms utilizadas. 4. Describir como las herramientas formales de lgica simblica son utilizadas. 5. Describir la importancia y limitaciones de la lgica de predicados. 6. Bosquejar la estructura bsica y dar ejemplos de cada tipo de prueba descrita en esta unidad. 7. Relacionar las ideas de induccin matemtica con la recursividad y con estructuras definidas recursivamente. 8. Enunciar, identificar y habituarse a los conceptos ms importantes de Conjuntos Parcialmente Ordenados y Ltices 9. Analizar, comentar y aceptar las nociones bsicas de lgebras Booleanas. 10. 4.2.3 Contribucin a los resultados 11. a) Nivel Bloom 3 12. Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. 13. i) Nivel Bloom 3 14. Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. 15. j) Nivel Bloom 3 16. Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.2.4 Unidades

Subsecciones
224

4.2.4.1 DS/Funciones, Relaciones y Conjuntos. (13 horas) [Nivel Bloom 4] 4.2.4.2 DS/Lgica Bsica. (14 horas) [Nivel Bloom 4] 4.2.4.3 DS/Tcnicas de Prueba. (14 horas) [Nivel Bloom 4] 4.2.4.4 AR/Lgica Digital y Representacin de Datos. (19 horas) [Nivel Bloom 3]

4.2.4.1 DS/Funciones, Relaciones y Conjuntos. (13 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,Johnsonbaugh, 1999] Tpicos 1. Funciones subyectivas, inyectivas, inversos, composicin). 2. Relaciones (reflexibilidad, simetra, transitividad, relaciones de equivalencia). 3. Conjuntos (Diagramas de Venn, complementos, producto cartesiano, conjuntos potencia). 4. Principio de las casillas (pigeonhole). 5. Cardinalidad y Conteo. Objetivos 1. Explicar con ejemplos la terminologa bsica de funciones, relaciones y conjuntos. 2. Desarrollar las operaciones asociadas con conjuntos, funciones y relaciones. 3. Relacionar ejemplos prcticos al modelo apropiado de conjunto, funcin o relacin e interpretar la operacin asociada y terminologa en el contexto. 4. Demostrar los principios bsicos del conteo, incluyendo el uso de la diagonalizacin y el principio de las casillas (pigeonhole). 4.2.4.2 DS/Lgica Bsica. (14 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,Johnsonbaugh, 1999] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Lgica proposicional. Conectivos lgicos. Tablas de verdad. Formas normales (conjuntiva y disyuntiva). Validacin. Lgica de predicados. Cuantificacin universal y existencial. Modus ponens y modus tollens. Limitaciones de la lgica de predicados.

Objetivos 1. Aplicar mtodos formales de lgica simblica proposicional y de predicados. 2. Describir como las herramientas formales de lgica simblica son utilizadas para modelar algoritmos en situaciones reales.
225

3. Usar demostraciones lgico-formales y razonamiento lgico para solucionar problemas tales como rompecabezas (puzzles). 4. Describir la importancia y limitaciones de la lgica de predicados. 4.2.4.3 DS/Tcnicas de Prueba. (14 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,Johnsonbaugh, 1999] Tpicos 1. Nociones de implicacin, opuesta, inversa, contrapositiva, negacin y contradiccin. 2. La estructura de pruebas matemticas. 3. Pruebas directas. 4. Pruebas por contra-ejemplos. 5. Pruebas por contraposicin. 6. Pruebas por contradiccin. 7. Induccin Matemtica. 8. Induccin fuerte. 9. Definiciones matemticas recursivas. 10. Buenas prcticas. Objetivos 1. Bosquejar la estructura bsica y dar ejemplos de cada tipo de prueba descrita en esta unidad. 2. Discutir que tipo de prueba es mejor para un problema dado. 3. Relacionar las ideas de induccin matemtica con la recursividad y con estructuras definidas recursivamente. 4. Identificar las diferencias entre induccin matemtica e induccin fuerte dando ejemplos de su apropiado uso en cada caso. 4.2.4.4 AR/Lgica Digital y Representacin de Datos. (19 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. 7. Conjuntos Parcialmente Ordenados. Elementos extremos de un conjunto parcialmente ordenado. Ltices. lgebras Booleanas. Funciones Booleanas. Introduccin a la lgica digital (compuertas lgicas, flip-flops, circuitos). Expresiones lgicas y expresiones booleanas.

Objetivos 1. Bosquejar la estructura bsica y dar ejemplos de cada tipo de prueba descrita en esta unidad. 2. Discutir que tipo de prueba es mejor para un problema dado.

226

3. Relacionar las ideas de induccin matemtica con la recursividad y con estructuras definidas recursivamente.

4.3 CB101. lgebra y Geometra (Obligatorio)


Semestre: 1er Sem. Crditos: 5 Horas del curso: Teora: 4 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.3.1 Justificacin 4.3.2 Objetivos Generales 4.3.3 Contribucin a los resultados 4.3.4 Unidades o 4.3.4.1 Sistemas de coordenadas. La recta. (12 horas) [Nivel Bloom 4] o 4.3.4.2 Cnicas y Coordenadas polares (24 horas) [Nivel Bloom 3] o 4.3.4.3 Sistemas de ecuaciones. Matrices y determinantes (24 horas) [Nivel Bloom 3] o 4.3.4.4 Vectores en y vectores en (30 horas) [Nivel Bloom 3] 4.3.1 Justificacin Curso introductorio, soporte de los posteriores cursos de Anlisis Matemtico, estudia el plano y el espacio, haciendo nfasis es su aspecto vectorial y su interpretacin geomtrica, lo que permite visualizar conceptos que posteriormente se vern en forma abstracta.

4.3.2 Objetivos Generales 1. Familiarizarse y manejar las matrices, determinantes y sus relaciones con los sistemas de ecuaciones y aplicaciones. 2. Establecer relaciones lineales y cuadrticas en el plano y en el espacio. 3. Relacionar el lgebra con la geometra, de modo que visualice problemas que de otro modo seran abstractos. 4. 4.3.3 Contribucin a los resultados 5. a) Nivel Bloom 3 6. Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. 7. i) Nivel Bloom 2 8. Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin.
227

9. j) Nivel Bloom 4 10. Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.3.4 Unidades

Subsecciones

4.3.4.1 Sistemas de coordenadas. La recta. (12 horas) [Nivel Bloom 4] 4.3.4.2 Cnicas y Coordenadas polares (24 horas) [Nivel Bloom 3] 4.3.4.3 Sistemas de ecuaciones. Matrices y determinantes (24 horas) [Nivel Bloom 3] 4.3.4.4 Vectores en y vectores en (30 horas) [Nivel Bloom 3]

4.3.4.1 Sistemas de coordenadas. La recta. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. El plano cartesiano 2. La Recta, Ecuaciones de la recta Objetivos 1. Identificar, graficar una recta y manejarla en sus diferentes formas. 4.3.4.2 Cnicas y Coordenadas polares (24 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Cnicas 2. Coordenadas Polares Objetivos 1. Reconocer las ecuaciones de las cnicas. Trazar la grfica de una cnica descrita en su forma cannica y viceversa. 2. Manejar el cambio de coordenadas polares a cartesianas y viceversa 3. Trazar la grfica de una curva en coordenadas polares 4.3.4.3 Sistemas de ecuaciones. Matrices y determinantes (24 horas) [Nivel Bloom 3]

228

Referencias Bibliogrficas: [Strang, 2003,] Tpicos 1. Sistemas de ecuaciones lineales 2. Matrices 3. Determinantes Objetivos 1. Resolver sistemas de ecuaciones lineales utilizando los mtodos de eliminacin 2. Determinar la consistencia e inconsistencia de un sistema 3. Identificar y manipular los diferentes tipos de matrices, as como el lgebra de matrices 4. Relacionar las matrices con los sistemas de ecuaciones lineales 5. Calcular determinantes e inversas de matrices 4.3.4.4 Vectores en y vectores en (30 horas) [Nivel Bloom 3]

Referencias Bibliogrficas: [] Tpicos 1. Vectores en 2. Vectores en Objetivos 1. Manipular las operaciones con vectores. Interpretarlos geomtricamente. 2. Aplicar los vectores a la resolucin de problemas geomtricos. 3. Formular y analizar la ecuacin vectorial de la recta y el plano. Manipular ecuaciones de planos

4.4 FG103. Introduccin a la Vida Universitaria (Obligatorio)


Semestre: 1er Sem. Crditos: 3 Horas del curso: Teora: 3 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.4.1 Justificacin 4.4.2 Objetivos Generales 4.4.3 Contribucin a los resultados 4.4.4 Unidades o 4.4.4.1 La Experiencia Existencial (24 horas) [Nivel Bloom 3] o 4.4.4.2 Visin sobre la Persona Humana (12 horas) [Nivel Bloom 2]
229

4.4.4.3 Un Mundo en Cambio, vida universitaria y horizontes de Misin (9 horas) [Nivel Bloom 3]

4.4.1 Justificacin El alumno inicia una nueva etapa en su crecimiento personal en bsqueda de una formacin profesional que le permita desenvolverse en el mundo. Para responder a sus expectativas es necesario acompaarlo a descubrir sus anhelos existenciales, de manera que no slo se forme en lo acadmico e intelectual sino que adems comprenda y trabaje por formarse como un ser humano integral. Esto implica ayudarlo a que lleve adelante una profundizacin en los temas fundamentales de su conocimiento personal, de la antropologa del ser humano y de su participacin en el medio social, de manera particular en la vida universitaria. Su realizacin como buen profesional depende de una buena formacin personal y cultural que le brinde horizontes amplios, que sustenten y proyecten su conocimiento y quehacer tcnicos e intelectuales y que le permitan contribuir a la evangelizacin de la cultura y al cambio cultural.

4.4.2 Objetivos Generales 1. Que el alumno logre mediante su insercin en la vida universitaria una disposicin de apertura a su propio mundo interior y a su misin en el mundo, de cara a cuestionarse a si mismo para lograr un crecimiento personal que permita su despliegue integral y profesional. R 2. 4.4.3 Contribucin a los resultados 3. ) Nivel Bloom 3 4. Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.4.4 Unidades

Subsecciones

4.4.4.1 La Experiencia Existencial (24 horas) [Nivel Bloom 3] 4.4.4.2 Visin sobre la Persona Humana (12 horas) [Nivel Bloom 2] 4.4.4.3 Un Mundo en Cambio, vida universitaria y horizontes de Misin (9 horas) [Nivel Bloom 3]

4.4.4.1 La Experiencia Existencial (24 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,,] Tpicos

230

1. 2. 3. 4. 5. 6.

Introduccin al Curso, porque ests aqui Origen y Formacin de las Universidades Sentido de la Vida y vocacin profesional Obstaculos para el autoconocimiento. Soledad Alienacin y Mscaras. Comunicacin y encuentro con los dems:Obstaculos comunicacin, ser para el encuentro y ventana de la amistad

y niveles

de

Objetivos 1. Que el alumno tenga una apertura para descubrir su propio anhelo de felicidad. 2. Que el alumno sea capaz de discernir entre la felicidad autntica y el sentirse bien. 3. Que el alumno inicie un proceso de reconciliacin personal 4. Que el alumno descubra la necesidad de tener un encuentro mas profundo con los dems 4.4.4.2 Visin sobre la Persona Humana (12 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. Preguntas fundamentales y Misterio de la Persona Persona humana: Unidad Bio- Psico - Espiritual Creacin y Dinamismos fundamentales Libertad: Libertad poseida, en acto y de eleccin Equivocado uso de la libertad, conciencia del mal,el pecado personal y las cuatro rupturas 6. Cristo Modelo de Hombre: vida cristiana y misin 7. Vocacin General y particular en el Proyecto de Vida. 8. Aceptacin y Reconciliacin Personal Objetivos 1. Que el alumno, mediante la concepcin antropolgica desde la Filosofa y la Teologa, pueda reconocer la dignidad y vocacin de toda persona humana. 2. Que el alumno descubra la necesidad del auto conocimiento como camino para su realizacin personal y respuesta a su misin y vocacin particular. 4.4.4.3 Un Mundo en Cambio, vida universitaria y horizontes de Misin (9 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Reflexiones de cara al Tercer Milenio: Crisis del Mundo Evangelizacin de la cultura. Identidad y misin de la Universidad: la Universidad Catlica. La Universidad Catlica San Pablo El alumno San Pablo, Misin del alumno San Pablo

Objetivos
231

1. Que el alumno tome conciencia de la realidad de crisis que presenta el mundo actual. 2. Generar un compromiso personal y grupal ante la crisis presente. 3. Que el alumno conozca la U.C.S.P. dentro del contexto histrico de las universidades 4. Que el alumno descubra a su universidad como mbito de despliegue y espacio para crear cultura.

4.5 FG102. Metodologa del Estudio (Obligatorio)


Semestre: 1er Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.5.1 Justificacin 4.5.2 Objetivos Generales 4.5.3 Contribucin a los resultados 4.5.4 Unidades o 4.5.4.1 (8 horas) [Nivel Bloom 3] o 4.5.4.2 (8 horas) [Nivel Bloom 2] o 4.5.4.3 (8 horas) [Nivel Bloom 2] o 4.5.4.4 (7 horas) [Nivel Bloom 3] 4.5.1 Justificacin El curso tiene su fundamentacin en la necesidad de hacer que los estudiantes respondan a la exigencia acadmica de la Universidad para ser exitosos en el logro de sus objetivos. Ese xito debe ser consecuencia de un desempeo definidamente intencionado, de la asimilacin de su responsabilidad y de la comprensin de los procesos intelectuales que realiza. Los alumnos en formacin profesional necesitan mejorar su actitud frente al trabajo y exigencia acadmicos, entendida como el camino para ser mejor y alcanzar logros positivos. Adems conviene que entiendan el proceso mental que se da en el ejercicio del estudio para lograr el aprendizaje; as sabrn dnde y cmo hacer los ajustes ms convenientes a sus necesidades. Asimismo, requieren dominar variadas formas de estudiar, para que puedan seleccionar las estrategias ms convenientes a su personal estilo de aprender y a la naturaleza de cada asignatura. De ese modo podrn aplicarlos a su trabajo universitario, haciendo exitoso su esfuerzo. Metodologa del estudio es un curso de formacin tericoprctico cuyo propsito es ayudar a los alumnos a tomar consciencia de su rol como estudiantes, potenciar fortalezas que favorezcan la adaptacin a la realidad universitaria, fortalecer la disposicin y actitud para el trabajo acadmico, conocer los procesos mentales que comportan el aprendizaje y ejercitarse en el
232

dominio de recursos y tcnicas de estudio que les permitan formular su propio mtodo de trabajo acadmico para un exitoso desempeo en las dems asignaturas. El curso de metodologa del estudio, por tanto, tiene un carcter instrumental que proporciona conceptos, promueve un cambio de actitud y favorece el dominio de tcnicas para el trabajo acadmico 4.5.2 Objetivos Generales 1. Demostrar una actitud frente al trabajo acadmico que lo lleve a interesarse por la comprensin del proceso de aprendizaje. 2. Comprender y potenciar las fortalezas que requiere un estudiante para un mejor desempeo y ejercitarse para dominar el uso de tcnicas de estudio que lo lleven a formular su propio mtodo para el trabajo acadmico, optimizando su rendimiento con menor desgaste y mayor eficiencia. 3. 4. 5. 6. 7. 8. 9. 4.5.3 Contribucin a los resultados f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural.

4.5.4 Unidades

Subsecciones

4.5.4.1 (8 horas) [Nivel Bloom 3] 4.5.4.2 (8 horas) [Nivel Bloom 2] 4.5.4.3 (8 horas) [Nivel Bloom 2] 4.5.4.4 (7 horas) [Nivel Bloom 3]

4.5.4.1 (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,,,] Tpicos 1. La exigencia en el trabajo universitario. Objetivos del curso. 2. La postura del estudiante ante el reto del trabajo universitario. Problemas del universitario. 3. Las habilidades intelectuales que requiere el universitario
233

4. Organizacin personal y de los recursos. Plan de mejora personal. 5. Tcnicas de estudio. Primera parte: Ideas principales de textos y subrayado. Objetivos 1. Comprender el significado de estar en la universidad, de la exigencia que representa, de los problemas del universitario que se inicia, de las habilidades que debe desarrollar como tal; para fortalecer una actitud comprometida con su ser estudiante. 2. Conocer y aplicar los criterios para el aparato crtico, para el tratamiento de la informacin acadmica. 4.5.4.2 (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,,,] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Conocimiento de uno mismo: Auto concepto y autoestima. La voluntad: importancia y fortalecimiento. Las conductas personales: Conductas pasiva, agresiva y asertiva. Capacidad para superar el fracaso: La resiliencia. La inteligencia emocional. La mente, la memoria y la atencin. La Inteligencia y las inteligencias mltiples. Tcnicas de estudio. El resumen, las notas al margen.

Objetivos 1. Comprender la necesidad de desarrollar fortalezas y disposiciones que para el desempeo acadmico y relacional, en la universidad. 2. Comprender los procesos mentales que se dan en el aprendizaje para evaluar y monitorear el propio proceso de estudiar para aprender. 4.5.4.3 (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,,,,,] Tpicos 1. El mtodo de estudio, como conjunto de estrategias y uso de herramientas o tcnicas que favorecen el aprendizaje. 2. La lectura como herramienta principal para el aprendizaje. 3. Tipos de lectura. La lectura acadmica. 4. Etapas de la lectura: Sensorial, perceptiva, extrapolativa. 5. El anlisis en la lectura. 6. Meza de Vernet y su Anlisis de las partes, de la estructura, de las funciones de las relaciones. 7. Tcnicas de estudio. Los mapas conceptuales. Los esquemas. Objetivos 1. Comprender los procesos para el aprendizaje y la relacin entre Conocimiento y Aprendizaje, la lectura analtica como medio principal para aprender, las leyes
234

del aprendizaje, los pasos o fases del aprendizaje. Optar por el aprendizaje significativo. 2. Explicar conceptos y ejemplificar situaciones para el ejercicio de en la capacidad para expresar el conocimiento, con lenguaje adecuado, pertinente de forma oral y escrita. 4.5.4.4 (7 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,,,] Tpicos 1. 2. 3. 4. 5. 6. Los estilos de aprendizaje. El estilo personal. Tcnicas de estudio. Los mapas mentales para la toma de apuntes. Tcnicas de estudio: Los mapas mentales para la exposicin. Los grupos de estudio, como estrategia. Los exmenes y maneras de afrontarlos. Las tcnicas de relajacin.

Objetivos 1. Elegir y usar un mtodo de estudio como un conjunto de estrategias, organizacin y tcnicas de estudio libremente implementado, como consecuencia de la comprensin del estilo personal de aprendizaje. 2. Usar lenguaje inteligible y adecuado para expresar el conocimiento, con lenguaje adecuado, pertinente de forma oral y escrita. 4.6 FG101. Comunicacin (Obligatorio)

Semestre: 1er Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.6.1 Justificacin 4.6.2 Objetivos Generales 4.6.3 Contribucin a los resultados 4.6.4 Unidades o 4.6.4.1 La Comunicacin y la Lengua (9 horas) [Nivel Bloom 2] o 4.6.4.2 El estudio de las estructuras lingsticas (9 horas) [Nivel Bloom 3] o 4.6.4.3 La Lectura como Comunicacin Escrita (9 horas) [Nivel Bloom 3] o 4.6.4.4 La Redaccin como comunicacin escrita por uno mismo (9 horas) [Nivel Bloom 3] o 4.6.4.5 El discurso Oral (9 horas) [Nivel Bloom 3]
235

4.6.1 Justificacin La institucin en su Proyecto Educativo seala la importancia de la Formacin Humana de sus alumnos, que mejor vehculo para contribuir a este objetivo que el curso de Comunicacin, que contribuye al desarrollo y perfeccionamiento de las capacidades comunicativas, del alumno a partir de la construccin de significados. Estos aprendizajes se constituyen en base fundamental para introducir a los educandos en su realidad cultural y profesional.

4.6.2 Objetivos Generales 1. Desarrollar su capacidad de comunicacin y su sentido crtico y reflexivo 2. Reconocer estructuras bsicas en comunicacin, capacitando al alumno en el uso correcto de la gramtica castellana, ortografa y lexicologa. 3. Identificar la realidad del alumno, facilitando habilidades y destrezas en la expresin oral y escrita. 4. Desarrollar su sensibilidad para apreciar la funcin esttica del lenguaje. 5. 6. 7. 8. 9. 4.6.3 Contribucin a los resultados d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas.

4.6.4 Unidades

Subsecciones

4.6.4.1 La Comunicacin y la Lengua (9 horas) [Nivel Bloom 2] 4.6.4.2 El estudio de las estructuras lingsticas (9 horas) [Nivel Bloom 3] 4.6.4.3 La Lectura como Comunicacin Escrita (9 horas) [Nivel Bloom 3] 4.6.4.4 La Redaccin como comunicacin escrita por uno mismo (9 horas) [Nivel Bloom 3] 4.6.4.5 El discurso Oral (9 horas) [Nivel Bloom 3]

4.6.4.1 La Comunicacin y la Lengua (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,] Tpicos 1. Fundamentos del Proceso Comunicativo: la comunicacin, proceso, elementos y clases. 2. La Lengua como medio esencial de comunicacin: La Lengua y las unidades que la conforman, los signos lingsticos. 3. La lengua oral y escrita: Sistema, Norma y Habla.

236

4. Las funciones del lenguaje en el proceso comunicativo: Informativa (representacin de la realidad), persuasiva (apelacin al oyente), expresiva (la expresin del hablante). 5. La riqueza lnica y su importancia en la comunicacin y en la formacin profesional. Objetivos 1. Reconocer, definir y aplicar la naturaleza de la Comunicacin como factor fnico de las relaciones sociales y profesionales. 2. Reconocer y apreciar la Lengua como medio esencial de la comunicacin,a partir del anlisis de sus unidades. 3. Diferenciar las caractersticas del cdigo lingstico oral y escrito, como medio primordial de comunicacin. 4. Distinguir, valorar y aplicar las funciones del lenguaje como factor del conocimiento de la realidad y de las relaciones sociales. 5. Incrementar su vocabulario a travs de la investigacin y consignacin de palabras propias de la carrera elegida.

4.6.4.2 El estudio de las estructuras lingsticas (9 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,,,] Tpicos 1. Relaciones entre los signos lingsticos: relaciones paradigmticas y sintcticas. 2. La estructura del discurso: relaciones globales en el texto, intencionalidad y propsito del autor y del texto. 3. La estructura del prrafo: relaciones pragmticas, representacin esquemtica de las relaciones. 4. La Estructura de la Oracin: Relaciones lineales, estructuras nominales y verbales (sintagmas). 5. Funciones de las palabras en la oracin: conectores lgicos y referencias. 6. Operaciones de expansin, supresin, sustitucin y cambio. 7. Criterios de correccin y ejemplaridad idiomtica: acento y entonacin, la morfologa, errores a evitar, la sintaxis: solecismos, correccin ortogrfica: tildes, signos de puntuacin y letras de escritura dudosa. Objetivos 1. Desarrollar la capacidad de abstraccin y de relacin a travs del anlisis de las estructuras lingsticas. 2. Diferenciar las relaciones lgicas entre las ideas presentadas en los textos. 3. Construir en orden lgico, diversos tipos de textos empleando ideas principales y secundarias. 4. Analizar los contextos oracionales como elemento base de una expresin completa. 5. Desarrollar la competencia lingstica mediante la permanente ejercitacin ortogrfica, morfolgica y sintctica. 4.6.4.3 La Lectura como Comunicacin Escrita (9 horas) [Nivel Bloom 3]
237

Referencias Bibliogrficas: [,,,,,,] Tpicos 1. La asimilacin de la lectura: El acto de la lectura: Comunicacin entre el texto y el lector. 2. El placer de leer. 3. El proceso de la lectura: Estrategias de comprensivo, interpretacin y comentario de textos. 4. Clases de textos: narrativos, informativos y argumentales. 5. Recursos de planificacin y organizacin para la lectura de textos. 6. El resumen, la recensin esquemnica o grfica. El resumen y la recensin en prosa. 7. La correccin de la Forma (ortogrfica) y del Fondo (redaccin). Objetivos 1. Aplicar y analizar las estructuras lingsticas, con el fin de asimilar y valorar textos. 2. Descubrir y manejar las diferentes estructuras de distintos discursos escritos. 3. Alcanzar el manejo adecuado de los procesos lgicos de sntesis, 4. Demostrar preocupacin por la fase correctiva de la produccin de textos. 4.6.4.4 La Redaccin como comunicacin escrita por uno mismo (9 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,,,] Tpicos 1. La produccin de textos: el proceso de redaccin, fases y criterios. 2. Aspectos redaccionales semnticos: claridad, coherencia, propiedad e integridad. 3. Los documentos de redaccin comercial o administrativa: Informe, Memorando, Solicitud, Comunicado, oficio, etc. Objetivos 1. Mejorar su redaccin, formando en cuanta pauta y normas sealadas. 2. Elaborar textos empleando micro estructuras. 3. Iniciarse y/o perfeccionarse en la redaccin del tipo administrativo o comercial. 4.6.4.5 El discurso Oral (9 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,,,] Tpicos 1. La comunicacin oral en grupo pequeo: caractersticas y cualidades en la conversacin, el lenguaje no verbal. 2. La comunicacin en pblico: manejo del auditorio (tensin), argumentacin. 3. Diferentes tipos de producciones orales: Discursos informativos, Discursos argumentativos. 4. Formas oratorias: Tipo conferencia, Tipo deliberativo: debate, panel, mesa redonda. Objetivos
238

1. Distinguir entre una comunicacin oral en grupo pequeo y en pblico, aprendiendo a manejar la persuasin, a travs de la argumentacin en el discurso oratorio. 2. Reconocer y discriminar las ideas que estructuran los diferentes discursos oratorios. 3. Evidenciar y valorar las producciones orales, demostrando respeto y tolerancia por el emisor y su mensaje. 4. Producir diferentes discursos oratorios, aplicando las formas en que pueden estructurarse.

4.7 CS106. Estructuras Discretas II (Obligatorio)


Semestre: 2do Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS101F. Introduccin a la Programacin (1er Sem) o CS105. Estructuras Discretas I (1er Sem) Slabo: Slabo (PDF)

Subsecciones

4.7.1 Justificacin 4.7.2 Objetivos Generales 4.7.3 Contribucin a los resultados 4.7.4 Unidades o 4.7.4.1 DS/Conceptos Bsicos de Conteo. (25 horas) [Nivel Bloom 4] o 4.7.4.2 DS/Grfos y rboles. (25 horas) [Nivel Bloom 3] o 4.7.4.3 DS/Probabilidad Discreta. (10 horas) [Nivel Bloom 4] 4.7.1 Justificacin Para entender las tcnicas computacionales avanzadas, los estudiantes debern tener un fuerte conocimiento de las diversas estructuras discretas, estructuras que sern implementadas y usadas en laboratorio en el lenguaje de programacin.

4.7.2 Objetivos Generales 1. Que el alumno sea capaz de modelar problemas de ciencia de la computacin usando grafos y rboles relacionados con estructuras de datos 2. Que el alumno aplicar eficientemente estrategias de recorrido para poder buscar datos de una manera ptima 3. 4.7.3 Contribucin a los resultados 4. a) Nivel Bloom 3
239

5. Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. 6. b) Nivel Bloom 4 7. Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. 8. i) Nivel Bloom 3 9. Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. 10. j) Nivel Bloom 3 11. Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.7.4 Unidades

Subsecciones

4.7.4.1 DS/Conceptos Bsicos de Conteo. (25 horas) [Nivel Bloom 4] 4.7.4.2 DS/Grfos y rboles. (25 horas) [Nivel Bloom 3] 4.7.4.3 DS/Probabilidad Discreta. (10 horas) [Nivel Bloom 4]

4.7.4.1 DS/Conceptos Bsicos de Conteo. (25 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Argumentos de conteo. a) Reglas de suma y producto. b) Principios de inclusin y exclusin. c) Progresiones aritmticas y geomtricas. d) Nmeros de Fibonacci. 2. Principio de las casillas (pigeonhole). 3. Permutaciones y combinaciones. a)
240

Definiciones bsicas. b) Identidad de Pascal. c) El teorema binomial. 4. Resolucin de relaciones de recurrencia. a) Ejemplos comunes. b) El teorema maestro. Objetivos 1. Calcular permutaciones y combinaciones de un conjunto e interpretar el significado en el contexto de una aplicacin particular. 2. Establecer la definicin del Teorema Maestro. 3. Solucionar una clase de ecuaciones recurrentes bsicas. 4. Analizar un problema para crear ecuaciones de recurrencia relevantes o identificar preguntas importantes de conteo. 4.7.4.2 DS/Grfos y rboles. (25 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Johnsonbaugh, 1999] Tpicos 1. 2. 3. 4. 5. rboles. Grafos no dirigidos. Grafos dirigidos. rboles de expansin. Estrategias de recorrido.

Objetivos 1. Ilustrar con ejemplos la terminologa bsica de teora de grafos y algunas de las propiedades y casos especiales de cada una. 2. Mostrar diferentes mtodos de recorrido en rboles y grafos. 3. Modelar problemas en Ciencias de la Computacin usando grafos y rboles. 4. Relacionar grafos y rboles con estructura de datos, algoritmos y conteo. 4.7.4.3 DS/Probabilidad Discreta. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. Espacios de probabilidad finita, medidas de probabilidad y eventos. 2. Probabilidad condicional, independencia, teorema de Bayes.
241

3. Variables aleatorias enteras, esperanza. Objetivos 1. Calcular las probabilidades de eventos y la esperanza de variables aleatorias para problemas elementales como juegos de azar. 2. Diferenciar entre eventos dependientes e indepedientes. 3. Aplicar el teorema del binomio a eventos independientes y el teorema Bayes a eventos dependientes. 4. Aplicar las herramientas de probabilidad para resolver problemas tales como el mtodo de Monte Carlo y el anlisis de caso promedio de algoritmos y (hashing).

4.8 CS101O. Introduccin a la Programacin Orientada a Objetos (Obligatorio)


Semestre: 2do Sem. Crditos: 5 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 4 horas; Prerrequisitos: o CS101F. Introduccin a la Programacin (1er Sem) Slabo: Slabo (PDF)

Subsecciones

4.8.1 Justificacin 4.8.2 Objetivos Generales 4.8.3 Contribucin a los resultados 4.8.4 Unidades o 4.8.4.1 SP/Historia de la Computacin. (1 horas) [Nivel Bloom 2] o 4.8.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] o 4.8.4.3 PL/Mquinas Virtuales. (2 horas) [Nivel Bloom 2] o 4.8.4.4 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] o 4.8.4.5 PF/Construcciones fundamentales. (6 horas) [Nivel Bloom 5] o 4.8.4.6 PL/Programacin Orientada a Objetos. (10 horas) [Nivel Bloom 3] o 4.8.4.7 PF/Algoritmos y Resolucin de Problemas. (3 horas) [Nivel Bloom 4] o 4.8.4.8 PF/Recursividad. (3 horas) [Nivel Bloom 4] o 4.8.4.9 AL/Anlisis Bsico de Algoritmos. (2 horas) [Nivel Bloom 4] o 4.8.4.10 AL/Algoritmos Fundamentales. (6 horas) [Nivel Bloom 4] o 4.8.4.11 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] o 4.8.4.12 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3]

242

4.8.1 Justificacin Este es el segundo curso en la secuencia de los cursos introductorios a la informtica. El curso servir como puente entre el paradigma de la imperativo y el orientado al objeto, a dems introducir a los participantes en los diversos temas del rea de computacin como: algoritmos, estructuras de datos, ingeniera del software, etc.

4.8.2 Objetivos Generales 1. Introducir al alumno a los fundamentos del paradigma de orientacin a objetos, permitiendo asimilar los conceptos necesarios para desarrollar sistemas de informacin. 4.8.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. k) Nivel Bloom 3 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.8.4 Unidades

Subsecciones

4.8.4.1 SP/Historia de la Computacin. (1 horas) [Nivel Bloom 2] 4.8.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] 4.8.4.3 PL/Mquinas Virtuales. (2 horas) [Nivel Bloom 2] 4.8.4.4 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] 4.8.4.5 PF/Construcciones fundamentales. (6 horas) [Nivel Bloom 5]
243

4.8.4.6 PL/Programacin Orientada a Objetos. (10 horas) [Nivel Bloom 3] 4.8.4.7 PF/Algoritmos y Resolucin de Problemas. (3 horas) [Nivel Bloom 4] 4.8.4.8 PF/Recursividad. (3 horas) [Nivel Bloom 4] 4.8.4.9 AL/Anlisis Bsico de Algoritmos. (2 horas) [Nivel Bloom 4] 4.8.4.10 AL/Algoritmos Fundamentales. (6 horas) [Nivel Bloom 4] 4.8.4.11 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] 4.8.4.12 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3]

4.8.4.1 SP/Historia de la Computacin. (1 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Prehistoria - el mundo antes de 1946. 2. Historia del hardware de computadoras, software, redes. 3. Pioneros de la computacin. Objetivos 1. Listar las contribuciones de varios pioneros en el campo de la computacin. 2. Comparar la vida diaria antes y despus del advenimiento de las computadoras personales e Internet. 3. Identificar las tendencias continuamente significativas en la historia del campo de la computacin. 4.8.4.2 PL/Visin General de los Lenguajes de Programacin. (1 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Breve revisin de los paradigmas de programacin. 2. Comparacin entre programacin funcional y programacin imperativa 3. Historia de los lenguajes de programacin. Objetivos 1. Listar la evolucin de los lenguajes de programacin identificando como es que su historia nos ha conducido a los paradigmas actuales. 2. Identificar al menos una caracterstica distintiva para cada uno de los paradigmas de programacin cubiertos en esta unidad. 3. Evaluar las ventajas y desventajas entre los diferentes paradigmas, considerando temas tales como: eficiencia de espacio, eficiencia en el tiempo (para ambas partes computadora y programador), seguridad y el poder de las expresiones. 4.8.4.3 PL/Mquinas Virtuales. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. El concepto de mquina virtual.
244

2. Jerarquas de las mquinas virtuales. 3. Lenguajes intermedios. Objetivos 1. Describir la importancia y poder de la abstraccin en el contexto de mquinas virtuales. 2. Explicar los beneficios de los lenguajes intermedios en el proceso de compilacin. 3. Evaluar las ventajas y desventajas entre desempeo vs. portabilidad. 4.8.4.4 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. La concepcin de tipos como un conjunto de valores unidos a un conjunto de operaciones. 2. Declaracin de modelos (enlace, visibilidad, alcance y tiempo de vida). 3. Vista general del chequeo de tipos. Objetivos 1. Explicar el valor de los modelos de declaracin, especialmente con respecto a la programacin en mayor escala. 2. Identificar y describir las propiedades de una variable, tales como su: direccin asociada, valor, mbito, persistencia y tamao. 3. Discutir la incompatibilidad de tipos. 4. Demostrar las diferentes formas de enlace, visibilidad, mbito y manejo del tiempo de vida. 5. Defender la importancia de los tipos y el chequeo de tipos para brindar abstraccin y seguridad. 4.8.4.5 PF/Construcciones fundamentales. (6 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. Sintaxis bsica y semntica de un lenguaje de ms alto nivel. Variables, tipos, expresiones y asignaciones. Entrada y salida simple. Estructuras de control condicionales e iterativas. Funciones y paso de parmetros. Descomposicin estructurada.

Objetivos 1. Analizar y explicar el comportamiento de programas simples involucrando las estructuras de programacin fundamental cubiertas por esta unidad.

245

2. Modificar y extender programas cortos que usan condicionales estndar, estructuras de control iterativas y funciones. 3. Disear, implementar, probar y depurar un programa que use cada una de las siguientes estructuras fundamentales de programacin: clculos bsicos, entrada y salida simple, estructuras estndar condicionales e iterativas y definicin de funciones. 4. Escoger la estructura apropiada condicional e iterativa para una estructura de programacin dada. 5. Aplicar tcnicas de descomposicin estructurada o funcional para dividir un programa en pequeas partes. 6. Describir los mecanismos de paso de parmetros. 4.8.4.6 PL/Programacin Orientada a Objetos. (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Diseo orientado a objetos. Encapsulacin y ocultamiento de la informacin. Separacin de comportamiento e implementacin. Clases y subclases. Herencia (sobreescritura, despacho dinmico). Polimorfismo (polimorfismo de subtipo vs. herencia). Jerarquas de clases. Clases de tipo coleccin y protocolos de iteracin. Representaciones internas de objetos y tablas de mtodos.

Objetivos 1. Justificar la filosofa de diseo orientado a objetos y los conceptos de encapsulacin, abstraccin, herencia y polimorfismo. 2. Disear, implementar, probar y depurar programas simples en un lenguaje de programacin orientado a objetos. 3. Describir como los mecanismos de clases soportan encapsulacin y ocultamiento de la informacin. 4. Disear, implementar y probar la implementacion de la relacin esun IsKindOf entre objetos usando jerarqua de clases y herencia. 5. Comparar y contrastar las nociones de sobrecarga y sobreescritura de mtodos en un lenguaje de programacin. 6. Explicar la relacin entre la estructura esttica de una clase y la estructura dinmica de las instancias de dicha clases. 7. Describir como los iteradores acceden a los elementos de un contenedor. 4.8.4.7 PF/Algoritmos y Resolucin de Problemas. (3 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos

246

1. 2. 3. 4. 5.

Estrategias para la solucin de problemas. El rol de los algoritmos en el proceso de solucin de problemas. Estrategias de implementacin para algoritmos. Estrategias de depuracin. El Concepto y propiedades de algoritmos.

Objetivos 1. Discutir la importancia de los algoritmos en el proceso de solucin de problemas. 2. Identificar las propiedades necesarias de un buen algoritmo. 3. Crear algoritmos para resolver problemas simples. 4. Usar pseudocdigo o un lenguaje de programacin para implementar, probar y depurar algoritmos para resolver problemas simples. 5. Describir estrategias tiles para depuracin. 4.8.4.8 PF/Recursividad. (3 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. El concepto de recursividad. Funciones matemticas recursivas. Funciones recursivas simples. Estrategias de dividir y conquistar. Backtracking recursivo.

Objetivos 1. Describir el concepto de recursividad y dar ejemplos de su uso. 2. Identificar el caso base y el caso general de un problema definido recursivamente. 3. Comparar soluciones iterativas y recursivas para problemas elementales tal como factorial. 4. Describir la tcnica dividir y conquistar. 5. Implementar, probar y depurar funciones y procedimientos recursivos simples. 6. Describir como la recursividad puede ser implementada usando una pila. 7. Discutir problemas para los cuales el backtracking es una solucin apropiada. 8. Determinar cuando una solucin recursiva es apropiada para un problema. 4.8.4.9 AL/Anlisis Bsico de Algoritmos. (2 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. Identificar la diferencias entre el comportamiento entre el mejor, mediano y peor caso. Objetivos

247

1. Determinar la complejidad de tiempo y espacio de algoritmos simples. 4.8.4.10 AL/Algoritmos Fundamentales. (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Algoritmos numricos simples. 2. Bsqueda secuencial y binaria. 3. Algoritmos cuadrticos de ordenamiento (seleccin, insercin). 4. Algoritmos de tipo (Quicksort, heapsort, mergesort). 5. Tablas de (hash) incluyendo estrategias de solucin para las colisiones. 6. rboles de bsqueda binaria. 7. Representacin de grafos (Listas y Matrices de adyacencia). 8. Recorridos por amplitud y profundidad. 9. El algoritmo del camino ms corto (algoritmos de Dijkstra y Floyd). 10. Cerradura transitiva (algoritmo de Floyd). 11. rbol de expansin mnima (algoritmos de Kruskal y Prim). 12. Ordenamiento Topolgico. Objetivos 1. Implementar los algoritmos cuadrticos ms comunes y los algoritmos de ordenamiento . 2. Disear e implementar una funcin de (hash) apropiada para una aplicacin. 3. Disear e implementar un algoritmo de resolucin de colisiones para tablas de hash. 4. Discutir la eficiencia computacional de los principales algoritmos de ordenamiento, bsqueda y (hashing). 5. Discutir otros factores, adems de la eficiencia computacional, que influyen en la eleccin de los algoritmos, tales como tiempo de programacin, mantenimiento y el uso de patrones especficos de aplicacin en los datos de entrada. 6. Resolver problemas usando los algoritmos de grafos fundamentales, incluyendo bsqueda por amplitud y profundidad; caminos ms cortos con uno y mltiples orgenes, cerradura transitiva, ordenamiento topolgico y al menos un algoritmo de rbol de expansin mnima. 7. Demostrar las siguientes capacidades: evaluar algoritmos, seleccionar una opcin de un rango posible, proveer una justificacin para tal eleccin e implementar el algoritmo..

4.8.4.11 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos
248

1. 2. 3. 4. 5.

Procedimientos, funciones e iteradores como mecanismos de abstraccin. Mecanismos de parametrizacin (referencia vs. valor). Registros de activacin y administracin de almacenamiento. Tipos de parmetros y tipos parametrizados. Mdulos en lenguajes de programacin.

Tpicos 1. 2. 3. 4. 5. Procedimientos, funciones e iteradores como mecanismos de abstraccin. Mecanismos de parametrizacin (referencia vs. valor). Registros de activacin y administracin de almacenamiento. Tipos de parmetros y tipos parametrizados. Mdulos en lenguajes de programacin.

4.8.4.12 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997,Meyer, 1998] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Diseo orientado a objetos. Encapsulacin y ocultamiento de la informacin. Separacin de comportamiento e implementacin. Clases y subclases. Herencia (sobreescritura, despacho dinmico). Polimorfismo (polimorfismo de subtipo vs. herencia). Jerarquas de clases. Clases de tipo coleccin y protocolos de iteracin. Representaciones internas de objetos y tablas de mtodos.

Objetivos 1. Justificar la filosofa de diseo orientado a objetos y los conceptos de encapsulacin, abstraccin, herencia y polimorfismo. 2. Disear, implementar, probar y depurar programas simples en un lenguaje de programacin orientado a objetos. 3. Describir como los mecanismos de clases soportan encapsulacin y ocultamiento de la informacin. 4. Disear, implementar y probar la implementacion de la relacin esun IsKindOf entre objetos usando jerarqua de clases y herencia. 5. Comparar y contrastar las nociones de sobrecarga y sobreescritura de mtodos en un lenguaje de programacin. 6. Explicar la relacin entre la estructura esttica de una clase y la estructura dinmica de las instancias de dicha clases. 7. Describir como los iteradores acceden a los elementos de un contenedor.

4.9 CS100. Introduccin a la Ciencia de la Computacin (Obligatorio)

Semestre: 2do Sem. Crditos: 3


249

Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.9.1 Justificacin 4.9.2 Objetivos Generales 4.9.3 Contribucin a los resultados 4.9.4 Unidades o 4.9.4.1 DS/Lgica Bsica. (2 horas) [Nivel Bloom 4] o 4.9.4.2 PF/Construcciones fundamentales. (2 horas) [Nivel Bloom 4] o 4.9.4.3 PF/Algoritmos y Resolucin de Problemas. (3 horas) [Nivel Bloom 4] o 4.9.4.4 PF/Estructuras de Datos. (2 horas) [Nivel Bloom 2] o 4.9.4.5 AL/Anlisis Bsico de Algoritmos. (2 horas) [Nivel Bloom 2] o 4.9.4.6 AL/Estrategias Algortmicas. (2 horas) [Nivel Bloom 3] o 4.9.4.7 AR/Lgica Digital y Representacin de Datos. (2 horas) [Nivel Bloom 4] o 4.9.4.8 AR/Arquitectura y Organizacin de Computadores. (2 horas) [Nivel Bloom 2] o 4.9.4.9 AR/Arquitectura de Memoria. (2 horas) [Nivel Bloom 2] o 4.9.4.10 AR/Interfases y Estrategias de I/O. (2 horas) [Nivel Bloom 3] o 4.9.4.11 OS/Visin General de los Sistemas Operativos. (2 horas) [Nivel Bloom 2] o 4.9.4.12 NC/Introduccin. (2 horas) [Nivel Bloom 2] o 4.9.4.13 PL/Visin General de los Lenguajes de Programacin. (2 horas) [Nivel Bloom 2] o 4.9.4.14 PL/Mquinas Virtuales. (2 horas) [Nivel Bloom 2] o 4.9.4.15 PL/Programacin Orientada a Objetos. (1 horas) [Nivel Bloom 3] o 4.9.4.16 PL/Sistemas de Traduccin del Lenguaje. (1 horas) [Nivel Bloom 2] o 4.9.4.17 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (2 horas) [Nivel Bloom 2] o 4.9.4.18 IS/Tpicos Fundamentales en Sistemas Inteligentes. (2 horas) [Nivel Bloom 2] o 4.9.4.19 IM/Sistemas de Base de Datos. (2 horas) [Nivel Bloom 2] o 4.9.4.20 IM/Modelamiento de Datos. (2 horas) [Nivel Bloom 2] o 4.9.4.21 IM/Base de Datos Relacionales. (2 horas) [Nivel Bloom 2] o 4.9.4.22 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 2] o 4.9.4.23 SP/Propiedad Intelectual. (2 horas) [Nivel Bloom 3] o 4.9.4.24 SE/Diseo de Software. (2 horas) [Nivel Bloom 2] o 4.9.4.25 SE/Usando APIs. (2 horas) [Nivel Bloom 2]
250

o o

4.9.4.26 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 2] 4.9.4.27 SE/Procesos de Software. (2 horas) [Nivel Bloom 2]

4.9.1 Justificacin La Ciencia de la Computacin es un campo de estudio enorme con muchas especialidades y aplicaciones. Este curso brindar a sus participantes, una visin panormica de la informtica y mostrar sus campos ms representativos, como son: Algoritmos, Estructuras de de Datos, Sistemas Operativos, Bases de Datos, etc. 4.9.2 Objetivos Generales 1. Brindar un panorama del rea del conocimiento que es cubierta en la ciencia de la computacin. 4.9.3 Contribucin a los resultados

a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. e) Nivel Bloom 3 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 4 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Nivel Bloom 4 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3
251

Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.9.4 Unidades

Subsecciones

4.9.4.1 DS/Lgica Bsica. (2 horas) [Nivel Bloom 4] 4.9.4.2 PF/Construcciones fundamentales. (2 horas) [Nivel Bloom 4] 4.9.4.3 PF/Algoritmos y Resolucin de Problemas. (3 horas) [Nivel Bloom 4] 4.9.4.4 PF/Estructuras de Datos. (2 horas) [Nivel Bloom 2] 4.9.4.5 AL/Anlisis Bsico de Algoritmos. (2 horas) [Nivel Bloom 2] 4.9.4.6 AL/Estrategias Algortmicas. (2 horas) [Nivel Bloom 3] 4.9.4.7 AR/Lgica Digital y Representacin de Datos. (2 horas) [Nivel Bloom 4] 4.9.4.8 AR/Arquitectura y Organizacin de Computadores. (2 horas) [Nivel Bloom 2] 4.9.4.9 AR/Arquitectura de Memoria. (2 horas) [Nivel Bloom 2] 4.9.4.10 AR/Interfases y Estrategias de I/O. (2 horas) [Nivel Bloom 3] 4.9.4.11 OS/Visin General de los Sistemas Operativos. (2 horas) [Nivel Bloom 2] 4.9.4.12 NC/Introduccin. (2 horas) [Nivel Bloom 2] 4.9.4.13 PL/Visin General de los Lenguajes de Programacin. (2 horas) [Nivel Bloom 2] 4.9.4.14 PL/Mquinas Virtuales. (2 horas) [Nivel Bloom 2] 4.9.4.15 PL/Programacin Orientada a Objetos. (1 horas) [Nivel Bloom 3] 4.9.4.16 PL/Sistemas de Traduccin del Lenguaje. (1 horas) [Nivel Bloom 2] 4.9.4.17 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (2 horas) [Nivel Bloom 2] 4.9.4.18 IS/Tpicos Fundamentales en Sistemas Inteligentes. (2 horas) [Nivel Bloom 2] 4.9.4.19 IM/Sistemas de Base de Datos. (2 horas) [Nivel Bloom 2] 4.9.4.20 IM/Modelamiento de Datos. (2 horas) [Nivel Bloom 2] 4.9.4.21 IM/Base de Datos Relacionales. (2 horas) [Nivel Bloom 2] 4.9.4.22 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 2] 4.9.4.23 SP/Propiedad Intelectual. (2 horas) [Nivel Bloom 3] 4.9.4.24 SE/Diseo de Software. (2 horas) [Nivel Bloom 2] 4.9.4.25 SE/Usando APIs. (2 horas) [Nivel Bloom 2] 4.9.4.26 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 2] 4.9.4.27 SE/Procesos de Software. (2 horas) [Nivel Bloom 2]

4.9.4.22 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Brookshear, 2012]

252

Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin a las implicaciones sociales de la computacin. Implicaciones sociales de las redes de comunicacin. Crecimiento, control y acceso a la Internet. Temas relacionados al gnero. Asuntos culturales. Temas internacionales. Accesibilidad: baja representacin de minoras, mujeres y gente con discapacidad en la profesin de computacin. 8. Asuntos de polticas pblicas, por ejemplo: voto electrnico. Objetivos 1. Interpretar el contexto social de una implementacin particular. 2. Identificar suposiciones y valores insertados en un diseo particular incluyendo aquellos de naturaleza cultural. 3. Evaluar una implementacin particular a travs del uso de datos empricos. 4. Describir las formas positivas o negativas en las cuales la computacin altera los modos de interaccin entre las personas. 5. Explicar por qu el acceso a redes de computadores y computadoras es restringido en algunos pases. 6. Indicar el rol de los temas culturales para el trabajo en equipo. 7. Analizar el rol y riesgos de la introduccin de la computacin en polticas pblicas y gobierno: por ejemplo voto electrnico. 8. Articular el impacto del deficit de profesionales en computacin. 4.9.4.23 SP/Propiedad Intelectual. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Brookshear, 2012] Tpicos 1. 2. 3. 4. 5. Fundamentos de la propiedad intelectual. Copyrights, patentes y secretos del negocio. Piratera de software. Patentes de software. Asuntos transnacionales concernientes a la propiedad intelectual.

Objetivos 1. Distinguir entre patentes, copyright y proteccin de secretos del negocio. 2. Discutir el fondo legal del copyright en las leyes nacionales e internacionales. 3. Explicar como las leyes de patentes y el copyright pueden variar internacionalmente. 4. Delinear el desarrollo histrico de las patentes de software. 5. Discutir las consecuencias de la piratera de software sobre los desarrolladores de software y el rol de las organizaciones de soporte relevante. 4.9.4.24 SE/Diseo de Software. (2 horas) [Nivel Bloom 2]
253

Referencias Bibliogrficas: [Brookshear, 2012] Tpicos 1. Conceptos y principios fundamentales de diseo. Objetivos 1. Discutir las propiedades del buen diseo de softwarem incluyendo la naturaleza y el rol de la documentacin asociada. 4.9.4.25 SE/Usando APIs. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Brookshear, 2012] Tpicos 1. Programacin usando API. Objetivos 1. Explicar el valor de las interfaces para programacin de aplicaciones (APIs) en el desarrollo de software.

4.9.4.26 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Brookshear, 2012] Tpicos 1. Entornos de programacin. Objetivos 1. Analizar y evaluar un conjunto de herramientas en una rea dada del desarrollo de software (ej: administracin, modelamiento o pruebas). 4.9.4.27 SE/Procesos de Software. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Brookshear, 2012] Tpicos 1. Ciclo de vida del software y modelos de procesos. Objetivos 1. Explicar el ciclo de vida del software y sus fases incluyendo las entregas que son producidas (dar un ejemplo concreto).

4.10 CB102. Anlisis Matemtico I (Obligatorio)


Semestre: 2do Sem. Crditos: 5 Horas del curso: Teora: 4 horas; Prctica: 2 horas; Prerrequisitos: o CB101. lgebra y Geometra (1er Sem)
254

Slabo: Slabo (PDF)

Subsecciones

4.10.1 Justificacin 4.10.2 Objetivos Generales 4.10.3 Contribucin a los resultados 4.10.4 Unidades o 4.10.4.1 Nmeros reales y funciones (20 horas) [Nivel Bloom 3] o 4.10.4.2 Sucesiones numricas de nmeros reales (18 horas) [Nivel Bloom 3] o 4.10.4.3 Lmites de funciones y continuidad (14 horas) [Nivel Bloom 4] o 4.10.4.4 Diferenciacin (18 horas) [Nivel Bloom 4] o 4.10.4.5 Aplicaciones (20 horas) [Nivel Bloom 4]

4.10.1 Justificacin Un aspecto muy importante en el nivel universitario lo constituye el clculo diferencial, aspecto que constituye la piedra angular de las posteriores asignaturas de matemticas as como de la utilidad de la matemtica en la solucin de problemas aplicados a la ciencia y la tecnologa. Cualquier profesional con rango universitario debe por lo tanto tener conocimiento amplio de esta asignatura, pues se convertir en su punto de partida para los intereses de su desarrollo profesional; as tambin ser soporte para no tener dificultades en las asignaturas de matemtica y fsica de toda la carrera. 4.10.2 Objetivos Generales 1. Asimilar y manejar los conceptos de funcin, sucesin y relacionarlos con los de lmites y continuidad. 2. Describir, analizar, disear y formular modelos continuos que dependan de una variable. 3. Conocer y manejar la propiedades del clculo diferencial y aplicarlas a la resolucin de problemas. 4.10.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin.

255

j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.10.4 Unidades

Subsecciones

4.10.4.1 Nmeros reales y funciones (20 horas) [Nivel Bloom 3] 4.10.4.2 Sucesiones numricas de nmeros reales (18 horas) [Nivel Bloom 3] 4.10.4.3 Lmites de funciones y continuidad (14 horas) [Nivel Bloom 4] 4.10.4.4 Diferenciacin (18 horas) [Nivel Bloom 4] 4.10.4.5 Aplicaciones (20 horas) [Nivel Bloom 4]

4.10.4.1 Nmeros reales y funciones (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Simmons, 1995,Bartle and Sherbert, 1999] Tpicos 1. Nmeros reales 2. Funciones de variable real Objetivos 1. Comprender la importancia del sistema de los nmeros reales (construccin), manipular los axiomas algebraicos y de orden. 2. Comprender el concepto de funcin. Manejar dominios, operaciones, grficas, inversas. 4.10.4.2 Sucesiones numricas de nmeros reales (18 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [vila, 1993,Bartle and Sherbert, 1999] Tpicos 1. Sucesiones 2. Covergencia 3. Lmites. Operaciones con sucesiones Objetivos 1. Entender el concepto de sucesin y su importancia. 2. Conecer los principales tipos de sucesiones, manejar sus propiedades 3. Manejar y calcular lmites de sucesiones

256

4.10.4.3 Lmites de funciones y continuidad (14 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Apostol, 1997,vila, 1993,Simmons, 1995] Tpicos 1. Lmites 2. Continuidad 3. Aplicaciones de funciones continuas. Teorema del valor intermedio Objetivos 1. Comprender el concepto de lmite. calcular lmites 2. Analizar la continuidad de una funcin 3. Aplicar el teorema del valor intermedio 4.10.4.4 Diferenciacin (18 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Apostol, 1997,Bartle and Sherbert, 1999,Simmons, 1995] Tpicos 1. Definicin. reglas de derivacin 2. Incrementos y diferenciales 3. Regla de la cadena. Derivacin implcita Objetivos 1. Comprender el concepto de derivada e interpretarlo. 2. Manipular las reglas de derivacin 4.10.4.5 Aplicaciones (20 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Simmons, 1995,Apostol, 1997] Tpicos 1. 2. 3. 4. 5. Funciones crecientes, decrecientes Extremos de funciones Razn de cambio Lmites infinitos Teorema de Taylor

Objetivos 1. Utilizar la derivada para hallar extremos de funciones 2. Resolver problemas aplicativos 3. Utilizar el Teorema de Taylor

4.11 FG105. Apreciacin de la Msica (Electivo)


Semestre: 2do Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas;
257

Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.11.1 Justificacin 4.11.2 Objetivos Generales 4.11.3 Contribucin a los resultados 4.11.4 Unidades o 4.11.4.1 Conceptos Bsicos del Lenguaje Musical (9 horas) [Nivel Bloom 2] o 4.11.4.2 Instrumentos Musicales (15 horas) [Nivel Bloom 2] o 4.11.4.3 La Msica a Travs de la Historia (15 horas) [Nivel Bloom 4] o 4.11.4.4 La Msica a Travs de la Historia Latinoamericana (6 horas) [Nivel Bloom 4]

4.11.1 Justificacin El egresado de la Universidad San Pablo, no slo deber ser un excelente profesional, conocedor de la ms avanzada tecnologa, sino tambin, un ser humano sensible y de amplia cultura. En esta perspectiva, el curso proporciona los instrumentos conceptuales bsicos para una ptima comprensin de las obras musicales como producto cultural y artstico creado por el hombre. 4.11.2 Objetivos Generales 1. Analizar de manera crtica las diferentes manifestaciones artsticas a travs de la historia identificando su naturaleza expresiva, compositiva y caractersticas estticas as como las nuevas tendencias artsticas identificando su relacin directa con los actuales indicadores socioculturales. Demostrar conducta sensible, crtica, creativa y asertiva, y conductas valorativas como indicadores de un elevado desarrollo personal. 4.11.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. n) Nivel Bloom 3 Aplicar conocimientos de humanidades en su labor profesional.
258

4.11.4 Unidades

Subsecciones

4.11.4.1 Conceptos Bsicos del Lenguaje Musical (9 horas) [Nivel Bloom 2] 4.11.4.2 Instrumentos Musicales (15 horas) [Nivel Bloom 2] 4.11.4.3 La Msica a Travs de la Historia (15 horas) [Nivel Bloom 4] 4.11.4.4 La Msica a Travs de la Historia Latinoamericana (6 horas) [Nivel Bloom 4]

4.11.4.1 Conceptos Bsicos del Lenguaje Musical (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: 1984] Tpicos [Aopland, 1999,Salvat editores, 1989,Hrlimann,

1. La msica en la vida del hombre. Concepto. El Sonido: cualidades. 2. Los elementos de la msica. Actividades y audiciones. Objetivos 1. Dotar al alumno de un lenguaje musical bsico, que le permita apreciar y emitir un juicio con propiedad. 4.11.4.2 Instrumentos Musicales (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Salvat editores, 1989,Hrlimann, 1984] Tpicos 1. La voz, el canto y sus intrpretes. Prctica de canto. 2. Los instrumentos musicales. El conjunto instrumental. 3. El estilo, gnero y las formas musicales. Actividades y audiciones. Objetivos 1. Que el alumno conozca, discrimine y aprecie los elementos que integran la obra de arte musical. 4.11.4.3 La Msica a Travs de la Historia (15 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Palisca, 2006,Hrlimann, 1984] Tpicos 1. 2. 3. 4. 5. 6. El origen de la msica - fuentes. La msica en la antigedad. La msica medieval: Msica religiosa. Canto Gregoriano. Msica profana. El Renacimiento: Msica instrumental y msica vocal. El Barroco y sus representantes. Nuevos instrumentos, nuevas formas. El Clasicismo. Las formas clsicas y sus ms destacados representantes. El Romanticismo y el Nacionalismo, caractersticas generales instrumentos y formas. Las escuelas nacionalistas europeas.
259

7. La msica contempornea: Impresionismo, Postromanticismo, Expresionismo y las nuevas corrientes de vanguardia. Objetivos 1. Que el alumno conozca y distinga con precisin los diferentes momentos del desarrollo musical. 2. Dotar al alumno de un repertorio mnimo que le permita poner en prctica lo aprendido antes de emitir una apreciacin crtica de ellas. 4.11.4.4 La Msica a Travs de la Historia Latinoamericana (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Palisca, 2006,Xavier, 2007,Juan, 1984,Isabel, ] Tpicos 1. 2. 3. 4. Principales corrientes musicales del Siglo XX. La msica peruana: Autctona, Mestiza, Manifestaciones musicales actuales. Msica arequipea, principales expresiones. Msica latinoamericana y sus principales manifestaciones.

Objetivos 1. Que el alumno conozca e identifique las diferentes manifestaciones populares actuales. 2. Que el alumno Se identifique con sus races musicales.

4.12 FG106. Teatro (Electivo)


Semestre: 2do Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.12.1 Justificacin 4.12.2 Objetivos Generales 4.12.3 Contribucin a los resultados 4.12.4 Unidades o 4.12.4.1 El Arte, la Creatividad y el Teatro (6 horas) [Nivel Bloom 4] o 4.12.4.2 El Juego: el quehacer del actor (6 horas) [Nivel Bloom 3] o 4.12.4.3 La Expresin Corporal y el Uso Dramtico del Objeto (9 horas) [Nivel Bloom 3] o 4.12.4.4 Comunicacin no verbal en el Teatro (12 horas) [Nivel Bloom 3]
260

o o

4.12.4.5 Huellas del Teatro en el Tiempo (El Teatro en la historia) (3 horas) [Nivel Bloom 6] 4.12.4.6 El Montaje Teatral (12 horas) [Nivel Bloom 3]

4.12.3 Contribucin a los resultados f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.12.4 Unidades

Subsecciones

4.12.4.1 El Arte, la Creatividad y el Teatro (6 horas) [Nivel Bloom 4] 4.12.4.2 El Juego: el quehacer del actor (6 horas) [Nivel Bloom 3] 4.12.4.3 La Expresin Corporal y el Uso Dramtico del Objeto (9 horas) [Nivel Bloom 3] 4.12.4.4 Comunicacin no verbal en el Teatro (12 horas) [Nivel Bloom 3] 4.12.4.5 Huellas del Teatro en el Tiempo (El Teatro en la historia) (3 horas) [Nivel Bloom 6] 4.12.4.6 El Montaje Teatral (12 horas) [Nivel Bloom 3]

4.12.4.1 El Arte, la Creatividad y el Teatro (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. Qu es el Arte? Una experiencia vivencial y personal. La llave maestra: la creatividad. La importancia del teatro en la formacin personal y profesional. Utilidad y enfoque del arte teatral.

Objetivos 1. Reconocer la vigencia del Arte y la creatividad en el desarrollo personal y social. 2. Relacionar al estudiante con su grupo valorando la importancia de la comunicacin humana y del colectivo social. 3. Reconocer nociones bsicas del teatro. 4.12.4.2 El Juego: el quehacer del actor (6 horas) [Nivel Bloom 3]
261

Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. Juego, luego existo. El juego del nio y el juego dramtico. Juegos de integracin grupal y Juegos de creatividad. La secuencia teatral.

Objetivos 1. Reconocer el juego como herramienta fundamental del teatro. 2. Interiorizar y revalorar el juego como aprendizaje creativo. 3. Acercar al estudiante de manera espontnea y natural, a la vivencia teatral. 4.12.4.3 La Expresin Corporal y el Uso Dramtico del Objeto (9 horas) [Nivel Bloom 3] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. 5. 6. Toma de conciencia del cuerpo. Toma de conciencia del espacio Toma de conciencia del Tiempo Creacin de secuencias individuales y colectivas: Cuerpo, espacio y tiempo. El uso dramtico del elemento: El juego teatral. Presentaciones teatrales con el uso del elemento.

Objetivos 1. Experimentar con nuevas formas de expresin y comunicacin. 2. Conocer algunos mecanismos de control y manejo corporal. 3. Brindar caminos para que el alumno pueda desarrollar creativamente su imaginacin, su capacidad de relacin y captacin de estmulos auditivos, rtmicos y visuales. 4. Conocer y desarrollar el manejo de su espacio propio y de sus relaciones espaciales. 5. Experimentar estados emocionales diferentes y climas colectivos nuevos 4.12.4.4 Comunicacin no verbal en el Teatro (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. 5. 6. 7. Relajacin, concentracin y respiracin. Desinhibicin e interaccin con el grupo. La improvisacin. Equilibrio, peso, tiempo y ritmo. Anlisis del movimiento. Tipos de movimiento. La presencia teatral. La Danza, la coreografa teatral.

Objetivos

262

1. Ejercitarse en el manejo de destrezas comunicativas no verbales. 2. Practicar juegos y ejercicios de lenguaje corporal, individual y grupalmente. 3. Expresar libre y creativamente sus emociones y sentimientos y su visin de la sociedad a travs de representaciones originales con diversos lenguajes. 4. Conocer los tipos de actuacin. 4.12.4.5 Huellas del Teatro en el Tiempo (El Teatro en la historia) (3 horas) [Nivel Bloom 6] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. 5. 6. El orgen del teatro, el teatro griego y el teatro romano. El teatro medieval , la comedia del arte. De la pasin a la razn: Romanticismo e Ilustracin. El teatro realista, teatro pico. Brech y Stanislavski. El teatro del absurdo, teatro contemporneo y teatro total. Teatro en el Per: Yuyashkani, La Tarumba, pataclaun, otros.

Objetivos 1. Conocer la influencia que la sociedad a ejercido en el teatro y la respuesta de este arte ante los diferentes momentos de la historia. 2. Apreciar el valor y aporte de las obras de dramaturgos importantes. 3. Analizar el contexto social del arte teatral. 4. Reflexionar sobre el Teatro Peruano y arequipeo. 4.12.4.6 El Montaje Teatral (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. 5. Apreciacin teatral. Expectacin de una o ms obras teatrales. El espacio escnico. Construccin del personaje Creacin y montaje de una obra teatral . Presentacin en pblico de pequeas obras haciendo uso de vestuario, maquillaje, escenografa, utilera y del empleo dramtico del objeto.

Objetivos 1. Emplear la creacin teatral, como manifestacin de ideas y sentimientos propios ante la sociedad. 2. Aplicar las tcnicas practicadas y los conocimientos aprendidos en una apreciacin y/o expresin teatral concreta que vincule el rol de la educacin. 3. Intercambiar experiencias y realizar presentaciones breves de ejercicios teatrales en grupo, frente a pblico.

4.13 FG104. Introduccin a la Filosofa (Obligatorio)

Semestre: 2do Sem. Crditos: 3


263

Horas del curso: Teora: 3 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.13.1 Justificacin 4.13.2 Objetivos Generales 4.13.3 Contribucin a los resultados 4.13.4 Unidades o 4.13.4.1 Introduccin, Nociones, Divisin de la Filosofa (15 horas) [Nivel Bloom 2] o 4.13.4.2 Antropologa, Gnoseologa, tica (15 horas) [Nivel Bloom 2] o 4.13.4.3 Metafsica (15 horas) [Nivel Bloom 2]

4.13.1 Justificacin Todos los hombres por naturaleza quieren conocer (Aristteles, Metafsica). La riqusima experiencia del mundo propia del hombre no tiene instintos proporcionados que la dirijan. Es un ser radicalmente abierto: el ser de todo lo que existe es su hbitat natural (Platn). Necesita llegar al en s al ser de las cosas para sobrevivir y florecer. Por lo mismo, naturalmente se pregunta sobre la realidad a todo nivel y crece segn su vastsimo potencial en la medida que enriquece su relacin con la realidad, hasta llegar a su Fundamento. El curso versa sobre la dimensin de principios que, con el rigor propio de su nivel, dan razn de todas las particularidades. 4.13.2 Objetivos Generales 1. Lo propio de ingeniero es brindar soluciones de alta fiabilidad a problemas prcticos. Pero todas ellas suponen una buena comprensin de los principios que gobiernan esas soluciones. Este curso se extiende lgicamente a la exploracin de los principios que gobiernan y dan razn de la realidad natural y humana. 4.13.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.13.4 Unidades

264

Subsecciones

4.13.4.1 Introduccin, Nociones, Divisin de la Filosofa (15 horas) [Nivel Bloom 2] 4.13.4.2 Antropologa, Gnoseologa, tica (15 horas) [Nivel Bloom 2] 4.13.4.3 Metafsica (15 horas) [Nivel Bloom 2]

4.13.4.1 Introduccin, Nociones, Divisin de la Filosofa (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,] Tpicos 1. Presentacin del curso: visin global y motivaciones para el curso. 2. Introduccin: Buscar y escuchar, La filosofa como respuesta, Exigencias para conocer la realidad, Qu quiero?, El asombro como punto de partida de la filosofa. 3. Nocin de filosofa: Filosofa , La filosofa abierta al ser, La tarea de la filosofa. 4. Divisin de la filosofa y distincin con otras ciencias: Divisin de la filosofa, La filosofa y la fe, La filosofa y la ciencia, La filosofa cristiana. Objetivos 1. Introducir al alumno a la naturaleza de la filosofa y a su importancia para la vida. 2. Introducir las nociones esenciales de la filosofa. 3. Que el alumno comprenda el alcance de la filosofa y su diferenciacin con otras disciplinas. 4.13.4.2 Antropologa, Gnoseologa, tica (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Introduccin a la Antropologa: Quin soy?, Persona, un ser para el encuentro, Persona libre, Persona que conoce, La persona y sus dinamismos fundamentales, La dignidad humana. 2. Introduccin a la Gnoseologa: Cmo conocemos la realidad?, Frente a la realidad cognoscible y misteriosa, Naturaleza y alcance del conocimiento. 3. Introduccin a la tica: Qu es bueno hacer?, tica y moral, Fundamentos de la tica, La ley moral (La ley en general, La ley eterna o sobrenatural, La ley natural, Ley positiva), Acto del hombre y acto humano, El abandono de la metafsica y sus consecuencias para la tica. Objetivos 1. Introducir al alumno a las nociones y principios fundamentales de la Antropologa Filosfica. 2. Introducir al alumno a las nociones y principios fundamentales de una Teora del Conocimiento general y cientfico que de hecho de razn de las acciones humanas de actuar en base a ese conocimiento, es decir, un teora realista moderada
265

3. Introducir al alumno a las nociones y principios fundamentales de la tica como reflexin sobre la libertad y felicidad humana en relacin con la realidad. 4.13.4.3 Metafsica (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,] Tpicos 1. Metafsica, parte I Nociones fundamentales y la intuicin del ser: El misterio como constitutivo de la realidad, El misterio del ser, Metafsica o la filosofa como pregunta por el ser, Ens y esse, Descripcin de la nocin de ente, Descripcin de la nocin de ser, La analoga. 2. Metafsica, parte II Ser y devenir, La clave de acto y potencia: Significado de la palabra acto , Significado de la palabra potencia , Clases de acto y potencia, Distinciones para una mejor comprensin, Potencia pasiva y acto primero, Potencia activa y acto segundo, Aporte de Santo Toms en cuanto a la naturaleza del acto, Relacin entre potencia y acto, La prioridad del acto, Aplicaciones del principio constitutivo de los entes. 3. Metafsica, parte III Sustancia y accidentes: La sustancia, Los accidentes, El ser como acto propio de la sustancia (El ser de la sustancia y de los accidentes, La sustancia como ente en sentido propio, Los accidentes como actualidad de la sustancia, Sustancia y accidentes; acto y potencia). 4. Metafsica, parte IV Ser y esencia: Qu es la esencia? Polisemia de la palabra ser , Ser o existencia? Distinciones entre ser y esencia, La materia y la forma sustancial: constitucin metafsica de las sustancias corpreas, Las propiedades trascendentales (Unidad, Verdad, Bondad, Belleza) 5. Metafsica, parte V: Causalidad: Causalidad (causa material, causa formal, causa eficiente, causa final), La causa eficiente, La causa final. Objetivos 1. Introducir al alumno a las nociones y principios fundamentales de la Metafsica como dimensin inherente a todo cuestionamiento humano sobre la realidad.

4.14 FG112. Matrimonio y Familia (Electivo)


Semestre: 2do Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.14.1 Justificacin 4.14.2 Objetivos Generales 4.14.3 Contribucin a los resultados


266

4.14.4 Unidades o 4.14.4.1 Persona y Matrimonio (21 horas) [Nivel Bloom 2] o 4.14.4.2 La Familia: Importancia y Derechos (12 horas) [Nivel Bloom 2] o 4.14.4.3 Situacin de la Familia en el Mundo Actual (18 horas) [Nivel Bloom 2]

4.14.1 Justificacin La familia es una comunidad de personas que tiene su origen en el matrimonio entre un hombre y una mujer. "Intima comunidad de vida y amor'', que forman los padres con sus hijos y potencialmente otros miembros. El matrimonio expresa: la comunin de vida que un varn y una mujer establecen entre si, libre, pblicamente, y para toda la vida, en orden al perfeccionamiento mutuo y a la generacin y educacin de los hijos. Para la persona: Es la "escuela de humanidad ms completa y rica'' : la entrega reciproca del varn y la mujer unidos en matrimonio, crea un ambiente en el que el nio aprende lo que significa amar y ser amado, y descubre as su dignidad personal y la del otro. Para la sociedad: La vida en familia es el fundamento de la sociedad. La persona inicia all, la vida en sociedad. La autoridad, la estabilidad, y la vida en relacin en el seno de la familia, constituyen por otra parte, los fundamentos de la seguridad y fraternidad en el seno de la sociedad. 4.14.2 Objetivos Generales 1. Comprender que la familia es una comunin de vida y amor, fundado en el matrimonio entre un hombre y una mujer, para toda la vida en orden al perfeccionamiento mutuo y a la procreacin y educacin de los hijos. 2. Que el alumno entienda los criterios fundamentales sobre los que descansa una recta comprensin de la persona, el matrimonio y la familia 3. Que el alumno tenga elementos para comprender la vida afectiva como un llamado a la vida matrimonial y familiar 4. Comprender la importancia de la familia para la persona y para la sociedad entera. 4.14.3 Contribucin a los resultados n) Nivel Bloom 2 Aplicar conocimientos de humanidades en su labor profesional. ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.14.4 Unidades

267

Subsecciones

4.14.4.1 Persona y Matrimonio (21 horas) [Nivel Bloom 2] 4.14.4.2 La Familia: Importancia y Derechos (12 horas) [Nivel Bloom 2] 4.14.4.3 Situacin de la Familia en el Mundo Actual (18 horas) [Nivel Bloom 2]

4.14.4.1 Persona y Matrimonio (21 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [S.S Juan Pablo II, ] Tpicos 1. Introduccin 2. Persona Humana: Unidad. Niveles de accin. Las emociones. Integracin. 3. Matrimonio: Algunas definiciones. El dilogo: una forma de amar. Bienes del matrimonio. Caractersticas del matrimonio. El amor conyugal y la apertura a la vida. Castidad y sexualidad.El matrimonio como institucin Objetivos 1. Que el alumno se entienda como un ser creado para el encuentro e invitado a participar del amor, y como el matrimonio responde a su naturaleza ms profunda. 4.14.4.2 La Familia: Importancia y Derechos (12 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Concilio Vaticano II, ,Pontificio Consejo Justicia y Paz, 2005,Santa Sede, 1983] Tpicos 1. La Familia: Concepto. Relaciones familiares. La familia: Comunidad de personas. Proceso de cambio social y cultural. Nuevo enfoque: Perspectiva de Familia. 2. Los Derechos de la familia. Objetivos 1. Que el alumno se entienda como un ser creado para el encuentro e invitado a participar del amor, y como el matrimonio responde a su naturaleza ms profunda. 4.14.4.3 Situacin de la Familia en el Mundo Actual (18 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Biblia, 1975] Tpicos 1. 2. 3. 4. 5. 6. Ideologa de Gnero. Divorcio. Convivencia y relaciones libres. Homosexualidad. Anticoncepcin y mito poblacional. El Futuro de la humanidad.

268

Objetivos 1. Comprender la importancia de la familia como clula fundamental de la sociedad y corazn de la civilizacin.

4.15 CS107. lgebra Abstracta (Obligatorio)


Semestre: 3er Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS105. Estructuras Discretas I (1er Sem) o CS101O. Introduccin a la Programacin Orientada a Objetos (2do Sem) Slabo: Slabo (PDF)

Subsecciones

4.15.1 Justificacin 4.15.2 Objetivos Generales 4.15.3 Contribucin a los resultados 4.15.4 Unidades o 4.15.4.1 AL/Algoritmos Criptogrficos. (20 horas) [Nivel Bloom 3] o 4.15.4.2 Teora de Nmeros (20 horas) [Nivel Bloom 3]

4.15.1 Justificacin El lgebra abstracta tiene un lado prctico que explotaremos para comprender en profundidad temas de computacin como criptografa y lgebra relacional. 4.15.2 Objetivos Generales 1. Conocer las tcnicas y mtodos de encriptacin de datos. 4.15.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 3 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. j) Nivel Bloom 3
269

Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.15.4 Unidades

Subsecciones

4.15.4.1 AL/Algoritmos Criptogrficos. (20 horas) [Nivel Bloom 3] 4.15.4.2 Teora de Nmeros (20 horas) [Nivel Bloom 3]

4.15.4.1 AL/Algoritmos Criptogrficos. (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Revisin histrica de la criptografa. Criptografa de llaves privadas y el problema del intercambio de llaves. Criptografa de llaves pblicas. Firmas digitales. Protocolos de seguridad. Aplicaciones (pruebas de cero-conocimiento, autenticacin y otros).

Objetivos 1. Describir algoritmos numrico-tericos bsicos eficientes, incluyendo el mximo comn divisor, inversa multiplicativa mod n y elevar a potencias mod n. 2. Describir al menos un cripto-sistema de llave pblica, incluyendo una suposicin necesaria de complejidad terica sobre su seguridad. 3. Crear extensiones simples de protocolos criptogrficos, usando protocolos conocidos y primitivas criptogrficas. 4.15.4.2 Teora de Nmeros (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Teora de los nmeros Aritmtica Modular Teorema del Residuo Chino Factorizacin Grupos, teora de la codificacin y mtodo de enumeracin de Polya Cuerpos finitos y diseos combinatorios

270

Objetivos 1. Establecer la importancia de la teora de nmeros en la criptografa 2. Utilizar las propiedades de las estructuras algebraicas en el estudio de la teora algebraica de cdigos

4.16 CS220T. Arquitectura de Computadores (Obligatorio)


Semestre: 3er Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS106. Estructuras Discretas II (2do Sem) Slabo: Slabo (PDF)

Subsecciones

4.16.1 Justificacin 4.16.2 Objetivos Generales 4.16.3 Contribucin a los resultados 4.16.4 Unidades o 4.16.4.1 AR/Lgica Digital y Representacin de Datos. (4 horas) [Nivel Bloom 4] o 4.16.4.2 AR/Arquitectura y Organizacin de Computadores. (8 horas) [Nivel Bloom 3] o 4.16.4.3 AR/Arquitectura de Memoria. (6 horas) [Nivel Bloom 3] o 4.16.4.4 AR/Interfases y Estrategias de I/O. (6 horas) [Nivel Bloom 3] o 4.16.4.5 AR/Organizacin Funcional. (6 horas) [Nivel Bloom 4] o 4.16.4.6 AR/Multiprocesamiento. (4 horas) [Nivel Bloom 4] o 4.16.4.7 AR/Mejoras de Desempeo. (2 horas) [Nivel Bloom 3] o 4.16.4.8 AR/Arquitecturas Distribuidas. (2 horas) [Nivel Bloom 3] o 4.16.4.9 AR/Dispositivos. (2 horas) [Nivel Bloom 3] o 4.16.4.10 AR/Tendencias en Computacin. (2 horas) [Nivel Bloom 2]

4.16.1 Justificacin El conocimiento de la estructura y funcionamiento de un sistema de cmputo sobre el cual gira el entorno de programacin. Con ello se establece los lmites de las aplicaciones que se desarrollen en la plataforma adecuada. Permite dotar al alumno de conceptos para la evaluacin de los rendimientos de las distintas configuraciones de equipos y su mantenimiento. 4.16.2 Objetivos Generales

271

1. Permitir al alumno gestionar adecuadamente el hardware y el software de un sistema de cmputo. 2. Garantizar el buen desempeo y la eficiencia de la futura codificacin. 4.16.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. k) Nivel Bloom 4 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.16.4 Unidades

Subsecciones

4.16.4.1 AR/Lgica Digital y Representacin de Datos. (4 horas) [Nivel Bloom 4] 4.16.4.2 AR/Arquitectura y Organizacin de Computadores. (8 horas) [Nivel Bloom 3] 4.16.4.3 AR/Arquitectura de Memoria. (6 horas) [Nivel Bloom 3] 4.16.4.4 AR/Interfases y Estrategias de I/O. (6 horas) [Nivel Bloom 3] 4.16.4.5 AR/Organizacin Funcional. (6 horas) [Nivel Bloom 4] 4.16.4.6 AR/Multiprocesamiento. (4 horas) [Nivel Bloom 4] 4.16.4.7 AR/Mejoras de Desempeo. (2 horas) [Nivel Bloom 3] 4.16.4.8 AR/Arquitecturas Distribuidas. (2 horas) [Nivel Bloom 3] 4.16.4.9 AR/Dispositivos. (2 horas) [Nivel Bloom 3] 4.16.4.10 AR/Tendencias en Computacin. (2 horas) [Nivel Bloom 2]

4.16.4.1 AR/Lgica Digital y Representacin de Datos. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin a la lgica digital (compuertas lgicas, flip-flops, circuitos). Expresiones lgicas y expresiones booleanas. Representacin datos numricos. Aritmtica con signo y sin signo. Rango, precisin y errores en aritmtica de punto flotante. Representacin de texto, audio e imgenes. Compresin de datos.

272

Objetivos 1. Disear un circuito simple usando los bloques de construccin fundamentales. 2. Apreciar el efecto de las operaciones AND, OR, NOT y XOR en datos binarios. 3. Entender como nmeros, texto, imgenes y sonido pueden ser representados en forma digital y discutir las limitaciones en cada representacin. 4. Entender los errores debido a los efectos de redondeo y como su propagacin afecta la precisin de clculos encadenados. 5. Apreciar como los datos pueden ser comprimidos para reducir los requerimientos de almacenamiento incluyendo el concepto de prdida de informacin debido a la compresin. 4.16.4.2 AR/Arquitectura y Organizacin de Computadores. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Visin panormica de ls historia de las computadoras digitales. 2. Introduccin al conjunto de instrucciones de la arquitectura, microarquitectura y arquitectura del sistema. 3. Arquitectura del procesador, tipos de instruccin, conjuntos de registros y modos de direccionamiento. 4. Estructuras del procesador, memoria a registros y arquitecturas de carga/almacenamiento. 5. Secuencias de instrucciones, flujos de control, llamadas a subrutinas y mecanismos de retorno. 6. Estructura de programas a nivel de mquina. 7. Limitaciones de arquitecturas de bajo nivel. 8. Soporte de arquitecturas de bajo nivel para lenguajes de alto nivel. Objetivos 1. Describir el progreso de las computadoras desde los tubos de vacio hasta la Very Large Scale Integration (VLSI). 2. Apreciar el conjunto de instrucciones de la arquitectura, Industry Standard Architecture (ISA) y la naturaleza de instrucciones a nivel de mquina en trminos de su funcionalidad y uso de recursos (registros y memoria). 3. Entender la relacion entre el conjunto de instrucciones de arquitectura, microarquitectura y arquitectura del sistema asi como sus roles en el desarrollo de la computadora. 4. Prestar atencin a las varias clases de instrucciones: movimiento de datos, aritmtica, lgica y control de flujo. 5. Apreciar la diferencia entre ISAs registro-a-memoria e ISAs de carga/almacenamiento. 6. Apreciar como las operaciones condicionales estn implemenentadas a nivel de mquina. 7. Entender la forma en la cual se ejecuta el llamado y retorno de subrutinas.

273

8. Apreciar como la falta de recursos en Proveedores de Servicios de Internet (Internet Service Providers- ISP) tiene un impacto en los lenguajes de alto nivel y en el diseo de compiladores. 9. Entender como, a nivel de lenguaje emsamblador, los parmetros son pasados a las subrutinas y como se crea y accesa un ambiente de trabajo local. 4.16.4.3 AR/Arquitectura de Memoria. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. Sistemas de almacenamiento y su tecnologa (semiconductores, magnticos). Estndares de almacenamiento (CD-ROM, DVD, Blue-Ray). Jerarqua de memoria, latencia y rendimiento (throughput). Memorias cache, principios de su operacin, polticas de reemplazo, cache multinivel.

Objetivos 1. Identificar los tipos principales de la tecnologa de memoria. 2. Apreciar la necesidad de estndares de almacenamiento para mecanismos complejos de almacenamiento de datos tales como un DVD. 3. Entender porque la jerarqua de memorias es necesaria para reducir la latencia efectiva de la memoria. 4. Apreciar que la mayora de datos en el bus de memoria de debe a a trfico de recarga en la memoria cache. 5. Describir las varias formas de organizar la memoria cache y apreciar el punto de equilibrio entre costo y desempeo para cada configuracin. 6. Apreciar la necesidad de la coherencia de la memoria cache en sistemas de mltiples procesadores. 4.16.4.4 AR/Interfases y Estrategias de I/O. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Fundamentos de entrada y salida: protocolos de inicio de comunicacin (handshaking) y buffering. 2. Mecanismos de interrupcin: en forma de vector y con prioridades, notificacin de interrupcin. 3. Buses: protocolos de buses, arbitraje, Acceso directo a memoria (DMA). 4. Buses modernos: Peripheral Component Interconnect Express (PCIe), USB, Hypertransport. Objetivos 1. Apreciar la necesidad de comunicaciones open-loop y closed-loop y el uso de buffer para el control de flujo de datos.
274

2. Explicar como las interrupciones son utilizadas para implementar controles de I/I y transferencia de datos. 3. Identificar varios tipos de buses en un sistema de computadoras y entender como los dispositivos compiten y ganan el acceso al bus. 4. Prestar atencin al progreso de la tecnologa de buses y entender las caractersticas y el desempeo de un cojunto de buses modernos (seriales y paralelos). 4.16.4.5 AR/Organizacin Funcional. (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Revisin de lenguajes de transferencia de registro, para describir las operaciones internas en un computador. 2. Micro arquitecturas estructuradas y microprogramadas. 3. Pipelining de instrucciones y paralelismo a nivel de instrucciones (InstructionLevel Parallelism) . 4. Visin general de arquitecturas super escalares. 5. Desempeo de procesador y del sistema. 6. Desempeo: sus medidas y limitaciones. 7. El significado de la disipacin de calor y sus efectos en estructuras de computadores. Objetivos 1. Revisar el uso de lenguajes de transferencias de registros para describir operaciones internas de un computador. 2. Entender como una unidad de control de CPU interpreta una instruccin a nivel de mquina de forma directa o como un microprograma. 3. Apreciar como el desempeo de un procesador puede mejorar a travs de la sobreposicin de intrucciones simultaneamente. 4. Entender la diferencia entre el desempeo del procesador y desempeo del sistema (ej. los efectos de la memoria del sistema y desempeo global de buses y software). 5. Apreciar como arquitecturas superescalares utilizan unidades aritmticas mltiples para ejecutar ms de una instruccin por ciclo de reloj.. 6. Entender como el desempeo de una computadora es medido en trminos de Millones de Instruciones por Segundo (Million of Instrucctions Per Second MIPS) o como un promedio de un conjunto de pruebas con nmeros con punto flotante y enteros (SPECmarks) as como sus limitaciones para ambas medidas. 7. Apreciar la relacin entre disipacin de calor y desempeo de computadoras y la necesidad de minimizar el consumo de energia en aplicaciones mviles. 4.16.4.6 AR/Multiprocesamiento. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos
275

1. 2. 3. 4. 5. 6. 7.

La ley de Amdahl. Procesamiento en vectores pequeos (operaciones multimedia). Procesadores Multincleos y Multihebras. La taxonoma de Flynn: Estructuras multiprocesador y arquitecturas. Sistemas de programacin de mltiples procesadores. GPU y procesadores grficos de propsito especial. Introduccin a la lgica reconfigurable y procesadores de propsito especial.

Objetivos 1. Discutir el concepto de procesamiento paralelo y la relacin entre paralelismo y desempeo. 2. Apreciar que los tipos de datos multimedia (ej. audio y datos visuales de 8/16 bits) pueden ser procesados en paralelo en registros de 64 bits para mejorar el desempeo. 3. Entender como el desempeo puede ser mejorado incorporando mltiples procesadores en un nico chip. 4. Apreciar la necesidad de expresar algoritmos en una forma que permita la ejecucin en procesadores paralelos. 5. Entender como los procesadores grficos de propsito especial (GPUs) pueden acelerar el desempeo de aplicaciones grficas. 6. Entender la organizacin de estructuras computacionales que puedan ser electronicamente configuradas y reconfiguradas. 4.16.4.7 AR/Mejoras de Desempeo. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. 7. Prediccin de bifurcacin. Ejecucin especulativa. Arquitectura superescalar. Ejecucin fallida (Out-of-order). Multi-hebras. Escalabilidad. Introduccin a las arquitecturas Very Long y Executive-Process/Interactive Control (EPIC). 8. Prioridad de acceso a memoria. Objetivos 1. Explicar el concepto de prediccin de ramificacin y su uso en la mejora del desempeo mquinas en paralelas. 2. Entender como la ejecucin especulativa puede mejorar el desempeo. 3. Proveer una descripcin detallada de arquitecturas super escalares y la necesidad de asegurar la correctitud del programa cuando se ejecutan instrucciones fallidas (out-of-order). 4. Explicar la ejecucin especulativa e identificar las condiciones que la justifican.

Instruction

Word (VLIW)

276

5. Discutir las ventajas en el desempeo que las multihebras pueden ofrecer junto con los factores que dificultan obtener el mximo beneficio de esta estrategia. 6. Apreciar la naturaleza de las arquitecturas VLIW y EPIC y su diferencia entre ellas asi como entre procesadores superescalares. 7. Entender como un procesador reordena cargas y descargas de memoria para incrementar su desempeo. 4.16.4.8 AR/Arquitecturas Distribuidas. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin a LANs y WANs y la historia de las redes y de la Internet. Diseo de protocolos por capas, estndares de redes. Computacin en redes y multimedia distribuida. Computacin mvil e inalmbrica. Streams and datagramas. Conceptos de redes en la capa fsica. Conceptos en la capa de enlace de datos (framing, control de errores, control de flujos, protocolos). 8. Conexin entre redes y ruteo (algoritmos de ruteo y control de congestin). 9. Servicios de la capa de transporte (establecimiento de conexin y asuntos de desempeo). Objetivos 1. Explicar los componentes bsicos de sistemas de redes y diferenciar entre LANs y WANs. 2. Discutir asuntos de arquitecturales involucrados en el diseo de protocolos de red por capas. 3. Explicar en qu se diferencian las arquitecturas de redes y de sistemas distribuidos. 4. Apreciar los requerimientos especiales de la computacin inalmbrica. 5. Entender la diferencia entre los roles de la capa fsica y la capa de enlace de datos y apreciar como inperfecciones en la capa fsica son manejadas en la capa de enlace de datos. 6. Describir tecnologas emergentes y el rea de computacin centradas en redes as como evaluar las capacidades y limitaciones actuales y su potencial a corto plazo. 7. Entender como la capa de redes puede detectar y corregir errores. 4.16.4.9 AR/Dispositivos. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Representacin digital de valores analgicos-cuantificacin y muestreo. 2. Sonido y audio, imagenes y grficos, animacin y video multimedia.
277

3. Estndares multimedia: audio, msica, grficos, imagen, telefona, video, TV. 4. Sensores de entrada: temperatura, presin, posicin y movimiento. 5. Dispositivos de entrada: ratn, teclado (texto y musical), escaners, touch screens, de voz. 6. Dispositivos de salida: visuales displays e impresoras. 7. Codificacin y decodificacin de sistemas multimedia incluyendo compresin y descompresin. 8. Ejemplos de sistemas basados en computadores: Global Positioning System (GPS), MPEG-1 Audio Layer 3 (MP3), cmaras digitales. Objetivos 1. Entender como cantidades analgicas, como la presin, pueden ser representadas en forma digital y como el uso de representaciones finitas lleva a errores de cuantificacin. 2. Apreciar la necesidad de estndares multimedia y estar preparado para explicar, en lenguaje no tcnico, que es lo que busca el estndar. 3. Entender como seales multimedia usualmente deben ser comprimidos para convservar el ancho de banda usando codificacin con prdida (lossless or lossy). 4. Discutir el diseo, construccin y principios operativos de sensores de voltaje en un conductor elctrico (Hall-effect) y medidores de tensin (strain gauges). 5. Apreciar como operan los dispositivos de entrada tpicos. 6. Entender los principios de operacin y desempeo de varios dispositivos visuales displays. 7. Estudiar la operacin de dispositivos basados en computadoras de alto desempeo tales como cmaras digitales. 4.16.4.10 AR/Tendencias en Computacin. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. Tecnologa de semiconductores y la ley de Moore. Limitaciones de la tecnologa de semiconductores. Computacin cuntica. Computacin ptica. Computacin Molecular (Biolgica). Nuevas tecnologas de memorias.

Objetivos 1. Apreciar la base fsica fundamental de la computacin moderna. 2. Entender como las propiedades fsicas de la materia imponen limitaciones a la tecnologa de computadores. 3. Apreciar como la naturaleza cuntica de la materia puede ser explotada para permitir paralelismo masivo. 4. Apreciar como la luz puede ser usada para realizar ciertos tipos de clculo.

278

5. Entender como las propiedades de molculas complejas pueden ser explotadas por computadoras orgnicas. 6. Entender las tendencias en el diseo de memorias tales como Ovonic Unified Memories (OUM) y memorias ferromagnticas.

4.17 CS130. Introduccin a Internet (Obligatorio)


Semestre: 3er Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS101O. Introduccin a la Programacin Orientada a Objetos (2do Sem) o CS100. Introduccin a la Ciencia de la Computacin (2do Sem) Slabo: Slabo (PDF)

Subsecciones

4.17.1 Justificacin 4.17.2 Objetivos Generales 4.17.3 Contribucin a los resultados 4.17.4 Unidades o 4.17.4.1 NC/Introduccin. (1 horas) [Nivel Bloom 3] o 4.17.4.2 NC/Comunicacin de Redes. (1 horas) [Nivel Bloom 3] o 4.17.4.3 NC/Seguridad de Red. (1 horas) [Nivel Bloom 2] o 4.17.4.4 NC/Compresin y Descompresin. (1 horas) [Nivel Bloom 2] o 4.17.4.5 NC/Administracin de Redes. (1 horas) [Nivel Bloom 2] o 4.17.4.6 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 3] o 4.17.4.7 NC/Organizacin de la Web. (7 horas) [Nivel Bloom 2] o 4.17.4.8 NC/Aplicaciones en redes. (6 horas) [Nivel Bloom 3] o 4.17.4.9 HC/Diseo de la Interfaz de Usuario. (2 horas) [Nivel Bloom 3] o 4.17.4.10 NC/Tecnologa de Datos Multimedia. (2 horas) [Nivel Bloom 2] o 4.17.4.11 HC/Aspectos de Sistemas de Multimedia y Multimodales. (2 horas) [Nivel Bloom 2] o 4.17.4.12 SE/Validacin y verificacin de software. (2 horas) [Nivel Bloom 2] o 4.17.4.13 SP/Privacidad y Libertades Civiles. (2 horas) [Nivel Bloom 3] o 4.17.4.14 Tpicos electivos (4 horas) [Nivel Bloom 2]

4.17.4.6 SE/Herramientas y Entornos de Software. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Brookshear, 2005,Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos
279

1. Entornos de programacin. 2. Anlisis de requerimientos y herramientas de modelamiento de diseo. 3. Herramientas de pruebas incluyendo herramientas de anlisis esttico y dinmico. 4. Herramientas de administracin de configuracin. 5. Manejo de la configuracin y herramientas de control de versin. 6. Mecanismos de integracin de herramientas. Objetivos 1. Seleccionar con justificacin un apropiado conjunto de herramientas para soportar el desarrollo de un rango de productos de software. 2. Analizar y evaluar un conjunto de herramientas en una rea dada del desarrollo de software (ej: administracin, modelamiento o pruebas). 3. Demostrar la capacidad para usar un rango de herramientas de software en soporte del desarrollo de un producto de software de tamao medio. 4.17.4.7 NC/Organizacin de la Web. (7 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos 1. .WebTechnologies 2. .Characteristics 3. .Role 4. .Nature 5. .WebProtocols 6. .Support 7. .Developing 8. .Publishing 9. .Grid 10. .WebServices Objetivos 1. Explicar los diferentes roles y repsonsabilidades de los clientes y servidores para un conjunto de posibles aplicaciones. 2. Seleccionar un conjunto de herramientas que aseguren un mtodo eficiente para implementar varias posibilidades cliente-servidor. 3. Disear y construir una aplicacin interactiva simple basada en la web (por ejemplo, un fomulario web simple que colecte informacin desde el cliente y almacene esto en un archivo en el servidor y un servidor que responda a los datos del formulario y produzca un resultado.). 4.17.4.8 NC/Aplicaciones en redes. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos
280

1. Protocolos en la capa de aplicacin. 2. Interfases Web: navegadores y APIs. 3. Tecnologa de bsqueda en la web. 4. Principios de la ingeniera web. 5. Sitios web dirigidos a bases de datos. 6. Llamadas a procedimientos remotos (RPC). 7. Objetos ligeros distribuidos. 8. El rol del middleware. 9. Herramientas de soporte. 10. Tpicos de seguridad en sistemas de objetos distribuidos. 11. Aplicaciones empresariales basadas en web. a) Arquitecturas orientadas a servicios. Objetivos 1. Ilustrar como aplicaciones web interactivas cliente-servidor de tamao medio pueden ser construidas usando diferentes tipos de tecnologas web. 2. Demostrar como implementar un sitio web basado en bases de datos, explicando las tecnologas relevantes involucradas en cada capa de la arquitectura y los lmites de desempeo correspondientes. 3. Ilustrar el estado actual de la efectividad de una bsqueda Web. 4. Implementar una aplicacin que invoque el API de una aplicacin basada en la Web. 5. Implementar un sistema distribuido utilizando dos frameworks de objetos distribuidos y compararlos con respecto al desempeo y seguridad. 6. Discutir asuntos de seguridad y estrategias en una aplicacin empresarial basada en web. 4.17.4.9 HC/Diseo de la Interfaz de Usuario. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos 1. Panorama de las diferentes clases de interfaces de usuario: referidas a la funcin (inteligentes, adaptativas, ambientales), enfocadas en el modo de interaccin (comandos, grficas, multimedia), orientadas a los dispositivos de entrada/salida usados (pen-based, speech-based), segn la plataforma para la que han sido diseadas (PC, handheld, etc.). 2. Estilos y paradigmas de interaccin: lnea de comandos, men, voz, gestos, WIMP (window, icon, menu, pointing device). 3. Uso correcto del lenguaje visual en el diseo de interfaces grficas de usuario (GUI): distribucin y proporciones (layout), tipografa, color y texturas, imgenes (signos, smbolos e conos), animacin, secuenciacin, indicadores sonoros (earcons), e identidad visual. 4. Seleccin y uso de controles visuales (widgets)adecuados para usuarios y tareas. 5. Ms all del diseo de ventanas simples: metforas, representacin y despliegue. 6. Interaccin multimodal: visual, auditiva y hptica (tctil y afines).
281

7. Interaccin 3D y realidad virtual. 8. Diseo para dispositivos pequeos como celulares. 9. Manejo de fallas humanas y de sistema. 10. Interaccin y comunicacin multi cultural. Objetivos 1. Listar los estilos comunes de interaccin y las diferentes clases de interfaces de usuario. 2. Explicar los principios del buen diseo aplicables a: ventanas y formularios, controles comunes (widgets), presentacin de pantallas secuenciadas, dilogos de mensajes de errores y excepciones, ayuda en lnea y manuales de usuario. 3. Disear, prototipar y evaluar una GUI 2D simple aplicando los conocimientos aprendidos en las unidades: HC/Evaluacin de Software Centrado en el usuario. y HC/Desarrollo de Software Centrado en el Humano.. 4. Discutir los retos de interaccin que existen al desplazarnos de interfaces 2D a interfaces 3D. 5. Justificar las razones y conveniencia de transportar una aplicacin desde un entorno convencional a un dispositivo mvil. 4.17.4.10 NC/Tecnologa de Datos Multimedia. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Sonido y audio, imgenes y grficos, animacin y video. Estndares multimedia (audio, msica, imgenes, telefona, video, TV). Planeamiento de capacidad y asuntos de desempeo. Dispositivos de entrada/salida (scaners, cmaras digitales, pantallas de tacto, activacin por voz). Teclado MIDI, sintetizadores. Estndares de almacenamiento (discos pticos magnticos, CD-ROM, DVD). Servidores multimedia y sistemas de archivos. Herramientas para soporte al desarrollo multimedia.

Objetivos 1. Para cada uno de los varios estndares multimedia, describir en un lenguaje no tcnico lo que el estndar realiza y explicar como los aspectos de percepcin humana podran ser sensibles a las limitaciones de dicho estndar. 2. Evaluar el potencial de un sistema de computadores para alojar una aplicacin de un grupo de posibles aplicaciones multimedia, incluyendo una evaluacin de requerimientos de sistemas multimedia en la tecnologa de redes sobre la que se trabaja. 3. Describir las caractersticas de un sistema de computador (incluyendo identificacin de herramientas de soporte y estndares apropiados) que tienen que alojar la implementacin de una de varias aplicaciones multimedia posibles. 4. Implemetar una aplicacin multimedia de tamao moderado.

282

4.17.4.11 HC/Aspectos de Sistemas de Multimedia y Multimodales. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos 1. Categorizacin y arquitecturas de informacin: jerarquas, mallas (grids), hipermedia, redes. 2. Recuperacin de informacin y desempeo humano. 3. Bsqueda Web. 4. Usabilidad de los lenguajes de consultas a base de datos. 5. Grficos. 6. Sonido. 7. Diseo de la Interaccin Humano-Computador de sistemas de informacin multimedia. 8. Reconocimiento de voz y procesamiento de lenguaje natural. 9. Microdispositivos de informacin (appliances) y computacin mvil. 10. Visualizaciones interactivas. 11. Diseos para la navegacin y presentacin de informacin. 12. Interfases tctiles. Objetivos 1. Discutir en que se diferencia la recuperacin de informacin del procesamiento de transacciones. 2. Explicar como la organizacin de la informacin apoya la recuperacin de la misma. 3. Describir los principales problemas de usabilidad de los lenguajes de consultas de bases de datos. 4. Explicar en particular el estado actual de la tecnologa de reconocimiento de voz y en general el estado del procesamiento de lenguaje natural. 5. Disear, prototipar y evaluar un sistema de informacin multimedia simple ilustrando el conocimiento de los conceptos mostrados en las unidades HC/Desarrollo de Software Centrado en el Humano., HC/Diseo de la Interfaz de Usuario. y HC/Aspectos de Sistemas de Multimedia y Multimodales.. 4.17.4.12 SE/Validacin y verificacin de software. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos 1. 2. 3. 4. Distincin entre verificacin y validacin. Abordajes estticos y dinmicos. Planeamiento de la validacin y documentacin para la validacin. Diferentes tipos de tests, interfase humano-computador, usabilidad, confiabilidad, seguridad, conformidad con la especificacin. 5. Fundamentos del Testing incluyendo la creacin de planes de prueba y la generacin de casos de prueba.
283

6. Tcnicas de prueba de caja blanca y caja negra. 7. Semilla por defecto. 8. Unidad, integracin, validacin y sistemas de prueba. 9. Prueba orientado a objetos, pruebas de sistema. 10. Medidas de procesos, diseo, programa. 11. Verificacin y validacin de partes que no son componentes (documentacin, archivos de ayuda, material de entrenamiento). 12. Defecto de historial (fault logging), defecto de rastreo y soporte tcnico para esas actividades. 13. Test de regresin. 14. Inspecciones, revisiones, auditoras. Objetivos 1. Distinguir entre validacin de programas y verificacin. 2. Describir el rol que las herramientas pueden jugar en la validacin de software. 3. Distinguir entre los diferentes tipos y niveles de pruebas (unidad, integracin, sistemas y aceptacin) para productos de software de tamao medio y el material relacionado. 4. Crear, evaluar e implementar un plan de prueba para segmentos de cdigo de tamao medio. 5. Encargarse, como parte de una actividad de equipo, de una inspeccin de un segmento de cdigo de tamao medio. 6. Discutir los temas concernientes a la prueba de software orientado a objetos.. 4.17.4.13 SP/Privacidad y Libertades Civiles. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos 1. Bases legales y ticas para la proteccin y la privacidad. 2. Marco tico y legal para la libertad de informacin. 3. Implicaciones de privacidad en bases de datos (ej. recoleccin de datos, almacenamiento, compartir informacin, recoleccin masiva de datos, sistemas de vigilancia de computadora). 4. Estrategias tecnolgicas para la proteccin de la privacidad. 5. Libertad de expresin en el ciber espacio. 6. Implicaciones internacionales e interculturales. Objetivos 1. Listar las bases legales para el derecho a la privacidad y a la libertad de expresin en las naciones de cada uno y como estos conceptos varan de pas en pas. 2. Describir las actuales amenazas (basadas en computadoras) a la privacidad. 3. Explicar cmo la Internet puede cambiar el balance histrico en la proteccin a la libertad de expresin. 4. Describir las tendencias en la proteccin de la privacidad con ejemplos en la tecnologa.
284

5. clarificar el aparente conflicto entre los requerimientos de libertad de la informacin y la proteccin de los derechos del individuo. 4.17.4.14 Tpicos electivos (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Greenlaw and Hepp, 1998,Rosenfeld and Morville, 1998] Tpicos 1. Otros tpicos de actualidad. Objetivos 1. Que el estudiante conozca temas de actualidad en cuanto a Internet.

4.18 CS102O. Objetos y Abstraccin de Datos (Obligatorio)


Semestre: 3er Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS101O. Introduccin a la Programacin Orientada a Objetos (2do Sem) o Ingls(200) Slabo: Slabo (PDF)

Subsecciones

4.18.1 Justificacin 4.18.2 Objetivos Generales 4.18.3 Contribucin a los resultados 4.18.4 Unidades o 4.18.4.1 DS/Grfos y rboles. (7 horas) [Nivel Bloom 3] o 4.18.4.2 PF/Construcciones fundamentales. (5 horas) [Nivel Bloom 3] o 4.18.4.3 PF/Algoritmos y Resolucin de Problemas. (5 horas) [Nivel Bloom 4] o 4.18.4.4 PF/Recursividad. (2 horas) [Nivel Bloom 3] o 4.18.4.5 PF/Programacin Orientada a Eventos. (2 horas) [Nivel Bloom 3] o 4.18.4.6 AL/Anlisis Bsico de Algoritmos. (3 horas) [Nivel Bloom 2] o 4.18.4.7 AL/Algoritmos Fundamentales. (3 horas) [Nivel Bloom 3] o 4.18.4.8 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] o 4.18.4.9 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] o 4.18.4.10 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3] o 4.18.4.11 SE/Diseo de Software. (5 horas) [Nivel Bloom 2] o 4.18.4.12 SE/Usando APIs. (1 horas) [Nivel Bloom 2]
285

4.18.4.13 SE/Especificacin de Requerimientos. (1 horas) [Nivel Bloom 2]

4.18.1 Justificacin Este es el tercer curso en la secuencia de los cursos introductorios a la informtica. En este curso se pretende cubrir los conceptos sealados por la Computing Curricula IEEE(c)-ACM 2001, bajo el enfoque functional-first. El paradigma orientado a objetos nos permite combatir la complejidad haciendo modelos a partir de abstracciones de los elementos del problema y utilizando tcnicas como encapsulamiento, modularidad, polimorfismo y herencia. El dominio de estos temas permitir que los participantes puedan dar soluciones computacionales a problemas de diseo sencillos del mundo real. 4.18.2 Objetivos Generales 1. Introducir al alumno a los fundamentos del paradigma de orientacin a objetos, permitiendo asimilar los conceptos necesarios para desarrollar un sistema de informacin. 4.18.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 3 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. k) Nivel Bloom 3

286

Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.18.4 Unidades

Subsecciones

4.18.4.1 DS/Grfos y rboles. (7 horas) [Nivel Bloom 3] 4.18.4.2 PF/Construcciones fundamentales. (5 horas) [Nivel Bloom 3] 4.18.4.3 PF/Algoritmos y Resolucin de Problemas. (5 horas) [Nivel Bloom 4] 4.18.4.4 PF/Recursividad. (2 horas) [Nivel Bloom 3] 4.18.4.5 PF/Programacin Orientada a Eventos. (2 horas) [Nivel Bloom 3] 4.18.4.6 AL/Anlisis Bsico de Algoritmos. (3 horas) [Nivel Bloom 2] 4.18.4.7 AL/Algoritmos Fundamentales. (3 horas) [Nivel Bloom 3] 4.18.4.8 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] 4.18.4.9 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] 4.18.4.10 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3] 4.18.4.11 SE/Diseo de Software. (5 horas) [Nivel Bloom 2] 4.18.4.12 SE/Usando APIs. (1 horas) [Nivel Bloom 2] 4.18.4.13 SE/Especificacin de Requerimientos. (1 horas) [Nivel Bloom 2]

4.18.4.1 DS/Grfos y rboles. (7 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Johnsonbaugh, 1999] Tpicos 1. 2. 3. 4. 5. rboles. Grafos no dirigidos. Grafos dirigidos. rboles de expansin. Estrategias de recorrido.

Objetivos 1. Ilustrar con ejemplos la terminologa bsica de teora de grafos y algunas de las propiedades y casos especiales de cada una. 2. Mostrar diferentes mtodos de recorrido en rboles y grafos. 3. Modelar problemas en Ciencias de la Computacin usando grafos y rboles. 4. Relacionar grafos y rboles con estructura de datos, algoritmos y conteo. 4.18.4.2 PF/Construcciones fundamentales. (5 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos
287

1. 2. 3. 4. 5. 6.

Sintaxis bsica y semntica de un lenguaje de ms alto nivel. Variables, tipos, expresiones y asignaciones. Entrada y salida simple. Estructuras de control condicionales e iterativas. Funciones y paso de parmetros. Descomposicin estructurada.

Objetivos 1. Analizar y explicar el comportamiento de programas simples involucrando las estructuras de programacin fundamental cubiertas por esta unidad. 2. Modificar y extender programas cortos que usan condicionales estndar, estructuras de control iterativas y funciones. 3. Disear, implementar, probar y depurar un programa que use cada una de las siguientes estructuras fundamentales de programacin: clculos bsicos, entrada y salida simple, estructuras estndar condicionales e iterativas y definicin de funciones. 4. Escoger la estructura apropiada condicional e iterativa para una estructura de programacin dada. 5. Aplicar tcnicas de descomposicin estructurada o funcional para dividir un programa en pequeas partes. 6. Describir los mecanismos de paso de parmetros. 4.18.4.3 PF/Algoritmos y Resolucin de Problemas. (5 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. 2. 3. 4. 5. Estrategias para la solucin de problemas. El rol de los algoritmos en el proceso de solucin de problemas. Estrategias de implementacin para algoritmos. Estrategias de depuracin. El Concepto y propiedades de algoritmos.

Objetivos 1. Discutir la importancia de los algoritmos en el proceso de solucin de problemas. 2. Identificar las propiedades necesarias de un buen algoritmo. 3. Crear algoritmos para resolver problemas simples. 4. Usar pseudocdigo o un lenguaje de programacin para implementar, probar y depurar algoritmos para resolver problemas simples. 5. Describir estrategias tiles para depuracin. 4.18.4.4 PF/Recursividad. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos
288

1. 2. 3. 4. 5.

El concepto de recursividad. Funciones matemticas recursivas. Funciones recursivas simples. Estrategias de dividir y conquistar. Backtracking recursivo.

Objetivos 1. Describir el concepto de recursividad y dar ejemplos de su uso. 2. Identificar el caso base y el caso general de un problema definido recursivamente. 3. Comparar soluciones iterativas y recursivas para problemas elementales tal como factorial. 4. Describir la tcnica dividir y conquistar. 5. Implementar, probar y depurar funciones y procedimientos recursivos simples. 6. Describir como la recursividad puede ser implementada usando una pila. 7. Discutir problemas para los cuales el backtracking es una solucin apropiada. 8. Determinar cuando una solucin recursiva es apropiada para un problema. 4.18.4.5 PF/Programacin Orientada a Eventos. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. Mtodos para la manipulacin de eventos. 2. Propagacin de eventos. 3. Manejo de excepciones. Objetivos 1. Explicar la diferencia entre programacin orientada a eventos y programacin por lnea de comandos. 2. Disear, codificar, probar y depurar programas de manejo de eventos simples que respondan a eventos del usuario. 3. Desarrollar cdigo que responda a las condiciones de excepcin lanzadas durante la ejecucin. 4.18.4.6 AL/Anlisis Bsico de Algoritmos. (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. Anlisis asinttico de lmites en los casos promedio y superior. 2. Identificar la diferencias entre el comportamiento entre el mejor, mediano y peor caso. Objetivos 1. Determinar la complejidad de tiempo y espacio de algoritmos simples.

289

4.18.4.7 AL/Algoritmos Fundamentales. (3 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. Algoritmos numricos simples. 2. Bsqueda secuencial y binaria. 3. Algoritmos cuadrticos de ordenamiento (seleccin, insercin). 4. Algoritmos de tipo (Quicksort, heapsort, mergesort). 5. Tablas de (hash) incluyendo estrategias de solucin para las colisiones. 6. rboles de bsqueda binaria. 7. Representacin de grafos (Listas y Matrices de adyacencia). 8. Recorridos por amplitud y profundidad. 9. El algoritmo del camino ms corto (algoritmos de Dijkstra y Floyd). 10. Cerradura transitiva (algoritmo de Floyd). 11. rbol de expansin mnima (algoritmos de Kruskal y Prim). 12. Ordenamiento Topolgico. Objetivos 1. Implementar los algoritmos cuadrticos ms comunes y los algoritmos de ordenamiento . 2. Disear e implementar una funcin de (hash) apropiada para una aplicacin. 3. Disear e implementar un algoritmo de resolucin de colisiones para tablas de hash. 4. Discutir la eficiencia computacional de los principales algoritmos de ordenamiento, bsqueda y (hashing). 5. Discutir otros factores, adems de la eficiencia computacional, que influyen en la eleccin de los algoritmos, tales como tiempo de programacin, mantenimiento y el uso de patrones especficos de aplicacin en los datos de entrada. 6. Resolver problemas usando los algoritmos de grafos fundamentales, incluyendo bsqueda por amplitud y profundidad; caminos ms cortos con uno y mltiples orgenes, cerradura transitiva, ordenamiento topolgico y al menos un algoritmo de rbol de expansin mnima. 7. Demostrar las siguientes capacidades: evaluar algoritmos, seleccionar una opcin de un rango posible, proveer una justificacin para tal eleccin e implementar el algoritmo.. 4.18.4.8 PL/Declaracin y Tipos. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Meyer, 1998] Tpicos 1. La concepcin de tipos como un conjunto de valores unidos a un conjunto de operaciones.
290

2. Declaracin de modelos (enlace, visibilidad, alcance y tiempo de vida). 3. Vista general del chequeo de tipos. 4. Recoleccin de basura. Objetivos 1. Explicar el valor de los modelos de declaracin, especialmente con respecto a la programacin en mayor escala. 2. Identificar y describir las propiedades de una variable, tales como su: direccin asociada, valor, mbito, persistencia y tamao. 3. Discutir la incompatibilidad de tipos. 4. Demostrar las diferentes formas de enlace, visibilidad, mbito y manejo del tiempo de vida. 5. Defender la importancia de los tipos y el chequeo de tipos para brindar abstraccin y seguridad. 6. Evaluar las ventajas y desventajas en el manejo del tiempo de vida (conteo por referencia vs. recoleccin de basura). 4.18.4.9 PL/Mecanismos de Abstraccin. (5 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. 2. 3. 4. 5. Procedimientos, funciones e iteradores como mecanismos de abstraccin. Mecanismos de parametrizacin (referencia vs. valor). Registros de activacin y administracin de almacenamiento. Tipos de parmetros y tipos parametrizados. Mdulos en lenguajes de programacin.

Tpicos 1. 2. 3. 4. 5. Procedimientos, funciones e iteradores como mecanismos de abstraccin. Mecanismos de parametrizacin (referencia vs. valor). Registros de activacin y administracin de almacenamiento. Tipos de parmetros y tipos parametrizados. Mdulos en lenguajes de programacin.

4.18.4.10 PL/Programacin Orientada a Objetos. (7 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stroustrup, 1997,Meyer, 1998] Tpicos 1. 2. 3. 4. 5. 6. Diseo orientado a objetos. Encapsulacin y ocultamiento de la informacin. Separacin de comportamiento e implementacin. Clases y subclases. Herencia (sobreescritura, despacho dinmico). Polimorfismo (polimorfismo de subtipo vs. herencia).
291

7. Jerarquas de clases. 8. Clases de tipo coleccin y protocolos de iteracin. 9. Representaciones internas de objetos y tablas de mtodos. Objetivos 1. Justificar la filosofa de diseo orientado a objetos y los conceptos de encapsulacin, abstraccin, herencia y polimorfismo. 2. Disear, implementar, probar y depurar programas simples en un lenguaje de programacin orientado a objetos. 3. Describir como los mecanismos de clases soportan encapsulacin y ocultamiento de la informacin. 4. Disear, implementar y probar la implementacion de la relacin esun IsKindOf entre objetos usando jerarqua de clases y herencia. 5. Comparar y contrastar las nociones de sobrecarga y sobreescritura de mtodos en un lenguaje de programacin. 6. Explicar la relacin entre la estructura esttica de una clase y la estructura dinmica de las instancias de dicha clases. 7. Describir como los iteradores acceden a los elementos de un contenedor. 4.18.4.11 SE/Diseo de Software. (5 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. Conceptos y principios fundamentales de diseo. 2. El rol y uso de contratos. 3. Patrones de diseo. Objetivos 1. Discutir las propiedades del buen diseo de softwarem incluyendo la naturaleza y el rol de la documentacin asociada. 2. Conducir una revisin de diseo de software con material de cdigo abierto utilizando lineamientos apropiados. 4.18.4.12 SE/Usando APIs. (1 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. 2. 3. 4. 5. Programacin usando API. Diseo de API. Navegadores de clases (Class browsers) y herramientas relacionadas. Depuracin en el entorno API. Introduccin a la computacin basada en componentes.

Objetivos

292

1. Explicar el valor de las interfaces para programacin de aplicaciones (APIs) en el desarrollo de software. 2. Usar navegadores de clases y herramientas relacionadas durante el desarrollo de aplicaciones usando APIs. 3. Disear, implementar, probar y depurar programas que usan paquetes API de larga escala. 4.18.4.13 SE/Especificacin de Requerimientos. (1 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Stroustrup, 1997] Tpicos 1. Tcnicas de modelamiento del anlisis de requerimientos. 2. Prototipeo. 3. Conceptos bsicos de tcnicas de especificacin formal. Objetivos 1. Discutir los retos de mantener software heredado. 2. Usar un mtodo comn, no formal para modelar y especificar (en la forma de un documento de especificacin de requerimientos) los requerimientos para un sistema de software de tamao medio. 3. Traducir en lenguaje natural una especificacin de requerimientos de software escrita en un lenguaje de especificacin formal comunmente usado.

4.19 CB103. Anlisis Matemtico II (Obligatorio)


Semestre: 3er Sem. Crditos: 5 Horas del curso: Teora: 4 horas; Prctica: 2 horas; Prerrequisitos: o CB102. Anlisis Matemtico I (2do Sem) Slabo: Slabo (PDF)

Subsecciones

4.19.1 Justificacin 4.19.2 Objetivos Generales 4.19.3 Contribucin a los resultados 4.19.4 Unidades o 4.19.4.1 Integracin (18 horas) [Nivel Bloom 4] o 4.19.4.2 Funciones trascendentes (14 horas) [Nivel Bloom 4] o 4.19.4.3 Integrales Impropias. Sucesiones y series (22 horas) [Nivel Bloom 4] o 4.19.4.4 Sucesiones y Series de funciones (18 horas) [Nivel Bloom 4] o 4.19.4.5 Introduccin a las Ecuaciones diferenciales (18 horas) [Nivel Bloom 2]
293

4.19.1 Justificacin Estudia la integral de funciones en una variable, series numricas y de funciones as como una introduccin a las ecuaciones diferenciales, base para los siguientes cursos de Anlisis Matemtico y Fsica. 4.19.2 Objetivos Generales 1. Comprender el concepto de integral, calcular integrales y aplicar la integral a la resolucin de problemas 2. Manejar, manipular las sucesiones y series. Determinar la convergencia de una serie numrica y de funciones. 3. Comprender el concepto de ecuacin diferencial, resolver ecuaciones y aplicarlas (como modelos) a la resolucin de problemas. 4.19.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.19.4 Unidades

Subsecciones

4.19.4.1 Integracin (18 horas) [Nivel Bloom 4] 4.19.4.2 Funciones trascendentes (14 horas) [Nivel Bloom 4] 4.19.4.3 Integrales Impropias. Sucesiones y series (22 horas) [Nivel Bloom 4] 4.19.4.4 Sucesiones y Series de funciones (18 horas) [Nivel Bloom 4] 4.19.4.5 Introduccin a las Ecuaciones diferenciales (18 horas) [Nivel Bloom 2]

4.19.4.1 Integracin (18 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Apostol, 1997,Simmons, 1995] Tpicos
294

1. Integral definida 2. Integral indefinida Objetivos 1. Comprender el proceso de deduccin de la integral definida y su relacin con el cocepto de rea. 2. Calcular integrales definidas 3. Asimilar el Teorema fundamental del clculo. Manejar los mtodos de integracin. 4. Aplicar la integral a problemas. 4.19.4.2 Funciones trascendentes (14 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Apostol, 1997,Simmons, 1995] Tpicos 1. 2. 3. 4. 5. Funcin logaritmo Funcin exponencial Funciones trigonomtricas e inversas Derivacin e integracin Regla de L'Hopital

Objetivos 1. Conocer las funciones trascendentes y su importancia. Calcular derivadas e integrales 2. Manejar y ejecutar aplicaciones de las funciones trascendentes 4.19.4.3 Integrales Impropias. Sucesiones y series (22 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Apostol, 1997,Bartle, 1976,Simmons, 1995] Tpicos 1. 2. 3. 4. Integrales impropias Sucesiones Series. Criterios de convergencia

Objetivos 1. Manejar el concepto de integral impropia, calcular integrales 2. Conocer y manejar los diferentes series. Determinar la convergencia de una serie 3. Manejar los criterios de convergencia 4.19.4.4 Sucesiones y Series de funciones (18 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Apostol, 1997,Simmons, 1995,Bartle, 1976] Tpicos 1. Convergencia uniforme y puntual 2. Series de potencias. Series de Taylor
295

3. Integracin de series Objetivos 1. Asimilar y comprender los conceptos de convergencia puntual y uniforme 2. Aproximar funciones mediante series de potencias. Manejar y utilizar las series de Taylor 4.19.4.5 Introduccin a las Ecuaciones diferenciales (18 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Apostol, 1997] Tpicos 1. Ecuaciones diferenciales de primer orden 2. Ecuaciones lineales de segundo orden Objetivos 1. Comprender el concepto de ecuacin diferencial y su aplicabilidad en las ciencias. 2. Resolver ecuaciones diferenciales de primer orden y segundo orden 3. Aplicar ecuaciones diferenciales a la resolucin de problemas

4.20 FG203. Oratoria y Expresin Personal (Electivo)


Semestre: 3er Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.20.1 Justificacin 4.20.2 Objetivos Generales 4.20.3 Contribucin a los resultados 4.20.4 Unidades o 4.20.4.1 La Oratoria (15 horas) [Nivel Bloom 2] o 4.20.4.2 El Orador (15 horas) [Nivel Bloom 3] o 4.20.4.3 El Discurso (6 horas) [Nivel Bloom 3] o 4.20.4.4 Material de Apoyo (3 horas) [Nivel Bloom 3]

296

4.20.1 Justificacin En la sociedad competitiva como la nuestra, se exige que la persona sea un comunicador eficaz y sepa utilizar sus potencialidades a fin de resolver problemas y enfrentar los desafos del mundo moderno dentro de la actividad laboral, intelectual y social. Tener el conocimiento no basta, lo importante es saber comunicarlo y en la medida que la persona sepa emplear sus facultades comunicativas, derivar en xito o fracaso aquello que tenga que realizar en su desenvolvimiento personal y profesional. Por ello es necesario para lograr un buen decir, recurrir a conocimientos, estrategias y recursos, que debe tener todo orador, para llegar con claridad, precisin y conviccin al interlocutor 4.20.2 Objetivos Generales 1. Organizar y asumir la palabra desde la perspectiva del orador, en cualquier situacin, en forma ms correcta, coherente y adecuada, mediante el uso de conocimientos y habilidades lingsticas, buscando en todo momento su realizacin personal y social a travs de su expresin, teniendo como base la verdad y la preparacin constante. 4.20.3 Contribucin a los resultados n) Nivel Bloom 3 Aplicar conocimientos de humanidades en su labor profesional. ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.20.4 Unidades

Subsecciones

4.20.4.1 La Oratoria (15 horas) [Nivel Bloom 2] 4.20.4.2 El Orador (15 horas) [Nivel Bloom 3] 4.20.4.3 El Discurso (6 horas) [Nivel Bloom 3] 4.20.4.4 Material de Apoyo (3 horas) [Nivel Bloom 3]

4.20.4.1 La Oratoria (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Monroe, 1976,Rodrguez, ] Tpicos 1. La Oratoria
297

2. 3. 4. 5.

La funcin de la palabra. El proceso de la comunicacin. Bases racionales y emocionales de la oratoria. Fuentes de conocimiento para la oratoria: niveles de cultura general.

Objetivos 1. El alumno puede interpretar, ejemplificar y generalizar las bases de la oratoria como fundamento terico y prctico. 4.20.4.2 El Orador (15 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Rodrguez, ,Monroe, 1976,Altamirano, 2008,Briz et al., 2008,Polito, 2004] Tpicos 1. 2. 3. 4. Cualidades de un buen orador. Normas para hablar en clase. Oradores con historia y su ejemplo. El cuerpo humano como instrumento de comunicacin: cuerpo y voz en el discurso.

Objetivos 1. El alumno puede interpretar, ejemplificar y generalizar conocimientos y habilidades de la comunicacin oral mediante la experiencia de grandes oradores y la suya propia. 2. El alumno puede implementar, usar, elegir y desempear los conocimientos adquiridos para expresarse en pblico en forma eficiente, inteligente y agradable. 4.20.4.3 El Discurso (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Rodrguez, ,Monroe, 1976,Altamirano, 2008,Briz et al., 2008,Polito, 2004] Tpicos 1. Composiciones - Los primeros discursos en clase. 2. Clases de discurso. 3. El propsito del discurso. Discursos informativos. Discursos persuasivos. Discursos sociales, de entretenimiento. 4. El auditorio. 5. Redaccin de discurso. Objetivos 1. El alumno puede crear, elaborar hiptesis, discernir y experimentar al producir sus propios discursos de manera correcta, coherente y oportuna teniendo en cuenta su propsito y hacia quin los dirige.l

298

2. El alumno puede ponderar, juzgar, relacionar y apoyar sus propios discursos y los de sus compaeros. 4.20.4.4 Material de Apoyo (3 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Rodrguez, ] Tpicos 1. Las fichas, apuntes, citas. 2. Recursos tcnicos. Objetivos 1. El alumno puede reconocer y utilizar material de apoyo en forma adecuada y correcta para hacer ms eficiente su discurso. Nota: esta unidad se desarrollar a lo largo del curso.

4.21 FG202. Apreciacin Literaria (Electivo)


Semestre: 3er Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.21.1 Justificacin 4.21.2 Objetivos Generales 4.21.3 Contribucin a los resultados 4.21.4 Unidades o 4.21.4.1 La literatura (0 horas) [Nivel Bloom 2] o 4.21.4.2 El Clasicismo (3 horas) [Nivel Bloom 2] o 4.21.4.3 Literatura Medieval (3 horas) [Nivel Bloom 2] o 4.21.4.4 El Romanticismo (3 horas) [Nivel Bloom 2] o 4.21.4.5 El Modernismo (3 horas) [Nivel Bloom 2] o 4.21.4.6 Narrativa del Siglo XX (3 horas) [Nivel Bloom 2] o 4.21.4.7 Lectura (3 horas) [Nivel Bloom 3]

4.21.1 Justificacin La Universidad Catlica San Pablo dentro de su proyecto Educativo seala la importancia de la Formacin Humana de sus alumnos, que mejor vehculo para contribuir a este objetivo que la Literatura que es un importante medio de expresin
299

humana, a travs de estas conocemos el ama de los pueblos y el pensamiento, vivencias, sueos, sufrimientos y esperanzas del hombre a travs de los tiempos. 4.21.2 Objetivos Generales 1. Este curso contribuye a entender la literatura como un medio de expresin del ser humano. 4.21.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. n) Nivel Bloom 3 Aplicar conocimientos de humanidades en su labor profesional. 4.21.4 Unidades

Subsecciones

4.21.4.1 La literatura (0 horas) [Nivel Bloom 2] 4.21.4.2 El Clasicismo (3 horas) [Nivel Bloom 2] 4.21.4.3 Literatura Medieval (3 horas) [Nivel Bloom 2] 4.21.4.4 El Romanticismo (3 horas) [Nivel Bloom 2] 4.21.4.5 El Modernismo (3 horas) [Nivel Bloom 2] 4.21.4.6 Narrativa del Siglo XX (3 horas) [Nivel Bloom 2] 4.21.4.7 Lectura (3 horas) [Nivel Bloom 3]

4.21.4.1 La literatura (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. La comunicacin Literaria Gneros Literarios El comentario y anlisis de testos. El lenguaje, herramienta fundamental de la Literatura: Sus posibilidades e imposibilidades.

Objetivos

300

1. Definir y caracterizar la Literatura, indicando sus gneros, recursos y lenguaje. 2. Valorar la expresin Literaria en su esencia, adoptando una postura de apertura y sensibilidad hacia ella. 4.21.4.2 El Clasicismo (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. Homero ``La Iliada'' Sfocles ``Edipo Rey'' Virgilio ``La Eneida'' Literatura Cristiana ``La Biblia''

Objetivos 1. Conocer y Valorar el Clasicismo y la Literatura Clsica. 2. Leer, comentar y apreciar fragmentos selectos de Literatura Clsica. 4.21.4.3 Literatura Medieval (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Dante Alighieri ``La Divina Comedia'' ``Poema del Mio Cid'' San Agustn ``Confesiones'' El Renacimiento Shakespeare ``Hamlet'' Miguel de Cervantes ``Don Quijote''

Objetivos 1. 2. 3. 4. Sealar caractersticas bsicas de la Edad Media y de la Literatura Medieval. Leer, analizar y valorar textos de literatura medieval. Caracterizar el Renacimiento Valorar textos renacentistas.

4.21.4.4 El Romanticismo (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. 7. Goethe ``Werther'' Allan Poe ``Narraciones Extraordinarias'' A. Bcquer ``Rimas y Leyendas'' Mariano Melgar ``Yarav'' Realismo Ruso Fedor Dostoievski ``Crimen y Castigo'' Manuel Gonzles Prada ``Paginas Libres''

Objetivos

301

1. Valorar la literatura del Romanticismo a travs de la lectura de textos romnticos. 2. Caracterizar el Realismo y leer y analizar fragmentos de literatura realista. 4.21.4.5 El Modernismo (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Rubn Daro 2. Antonio Machado 3. El Postmodernismo-.Gabriela Mistral, Csar Vallejo. Objetivos 1. Caracterizar e Movimiento Literario Modernista y Post-Modernista. 2. Leer y valorar selectos textos Modernistas y Post Modernistas. 4.21.4.6 Narrativa del Siglo XX (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Franz Kafka ``Metamorfosis'' Albert Camus ``La Peste'' Dramatica del siglo XX Bertolt Brecht, Garcia Lorca Poesia del siglo XX Pablo Neruda Octavio Paz Javier Heraud

Objetivos 1. Leer, analizar y valorar selectos textos de literatura del siglo XX, ubicndolos en su respectivo contexto histrico. 4.21.4.7 Lectura (3 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Gabriel Garca Mrquez ``Cien aos de Soledad'' Arturo Prez Reverte Camili Jos Cela Mario Vargas Llosa, Alfredo Bryce E. Otros Autores de hoy Isabel Allende, Jos Saramago, Paulo Coelho.

4.22 FG201. Artes Plsticas (Electivo)

Semestre: 3er Sem. Crditos: 2


302

Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.22.1 Justificacin 4.22.2 Objetivos Generales 4.22.3 Contribucin a los resultados 4.22.4 Unidades o 4.22.4.1 (9 horas) [Nivel Bloom 5] o 4.22.4.2 (9 horas) [Nivel Bloom 5] o 4.22.4.3 (9 horas) [Nivel Bloom 1] o 4.22.4.4 (6 horas) [Nivel Bloom 1] o 4.22.4.5 (6 horas) [Nivel Bloom 3]

4.22.1 Justificacin El curso es importante para la formacin, analtica, crtica y practica de la Historia del Arte, el curso de una visin de acontecimientos artsticos resultados de experiencias humanas que nos muestra el pasado y nos proyecta al futuro. 4.22.2 Objetivos Generales 1. Conocer los acontecimientos de la Historia Universal y tener un estudio critico. 2. Proporcionar al estudiante una aproximacin a la realidad en el estudio de la Historia del Arte. 3. Proporcionar al estudiante el manejo apropiado de los materiales en pintura. 4.22.3 Contribucin a los resultados ) Nivel Bloom 3 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.22.4 Unidades

303

Subsecciones

4.22.4.1 (9 horas) [Nivel Bloom 5] 4.22.4.2 (9 horas) [Nivel Bloom 5] 4.22.4.3 (9 horas) [Nivel Bloom 1] 4.22.4.4 (6 horas) [Nivel Bloom 1] 4.22.4.5 (6 horas) [Nivel Bloom 3]

4.22.4.1 (9 horas) [Nivel Bloom 5] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Orgenes de la Comunicacin Visual. Problemas de Comunicacin Visual. El centro ms potente. La gravedad. Elementos del Diseo: Espacio, punto, forma, equilibrio, simetra, proporcin. Elementos compositivos en una obra artstica. Anlisis Visual y crtico de la misma. Esttica e iconografa.

Objetivos 1. Comprensin de los trminos Arte y Esttica. 2. Entender a la comunicacin, como base en las Artes visuales. 4.22.4.2 (9 horas) [Nivel Bloom 5] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Introduccin. Historia. El ojo, la visin - La luz. La memoria visual. (Psicologa). El recuerdo del Color. Crculo cromtico. Grises (escala de 3 a 10) Mezclas=Armona en Pintura.

Objetivos 1. Conocer y sensibilizar el uso del color. 2. Conocer: Teoras sobre el color y su consecutiva aplicacin al entorno. 4.22.4.3 (9 horas) [Nivel Bloom 1] Referencias Bibliogrficas: Tpicos 1. Historia del Arte: Concepto, crtica y apreciacin. 2. Introduccin, conceptos.
304

3. 4. 5. 6. 7. 8.

Cultura, civilizacin e historia. La prehistoria: Arte Paleoltico, Neoltico. Chauvet y Caral. Mesopotamia y Persia. Asirios y Babilonios: Escultura - Pintura. Antiguo Egipto: Arquitectura, pintura y escultura.

Objetivos 1. Desarrollar las diferentes pocas de la Historia Humana; las manifestaciones artsticas y como estas influencian a travs de los siglos. 2. Formar modelos de apreciacin a travs de los conocimientos adquiridos. 4.22.4.4 (6 horas) [Nivel Bloom 1] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. 5. Arte Grecia y Roma. Edad Media: Arte Bizantino, Romnico y Gtico. Renacimiento. El Barroco e influencia en Per. Impresionismo, fotografa y cine.

Objetivos 1. Conocer las diferentes manifestaciones del Arte durante estos ltimos tres milenios y el legado de nuestros antepasados; revalorarlos conociendo su historia y proyectarla al presente y futuro. 4.22.4.5 (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: Tpicos 1. 2. 3. 4. Siglo XX Cubismo (Guernica) Per: Arte Inca y Arte Colonial. Proyecto de investigacin. Exposicin del Proyecto.

Objetivos 1. Desarrollar un proyecto de investigacin grupal, anlisis conceptual, tcnico, etc. de una obra de un pintor universal con trayectoria.

4.23 FG107. Fundamentos Antropolgicos de la Ciencia (Obligatorio)


Semestre: 3er Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos:
305

FG104. Introduccin a la Filosofa (2do Sem)

Slabo: Slabo (PDF)

Subsecciones

4.23.1 Justificacin 4.23.2 Objetivos Generales 4.23.3 Contribucin a los resultados 4.23.4 Unidades o 4.23.4.1 Visin del Hombre como Fundamento de la Actividad Profesional (0 horas) [Nivel Bloom 2] o 4.23.4.2 Reduccionismos Antropolgicos (0 horas) [Nivel Bloom 2] o 4.23.4.3 Persona y Cultura (0 horas) [Nivel Bloom 2] o 4.23.4.4 El Compromiso Social de la Iglesia (0 horas) [Nivel Bloom 2]

4.23.1 Justificacin La formacin profesional tiene efectos importantes en la conducta de la persona humana, toda vez que el desarrollo de sus capacidades, le permite una manera de desplegarse y de relacionarse consigo mismo, con los dems y con el mundo creado. La posibilidad de caer en reduccionismos antropolgicos y de tener una visin inadecuada de al persona humana en su desempeo profesional, hace necesario ahondar y reflexionar en una correcta aproximacin al ser humano as como realizar un anlisis profundo del compromiso personal, social y moral que implica el ser profesional. 4.23.2 Objetivos Generales 1. Que el estudiante comprenda que el estudio del hombre es fundamental para la actividad profesional. 2. Que la actividad profesional no se vea afectada por reduccionismos de diversos tipos. 4.23.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. n) Nivel Bloom 3 Aplicar conocimientos de humanidades en su labor profesional.
306

o) Nivel Bloom 3 Mejorar las condiciones de la sociedad poniendo la tecnologa al servicio del ser humano. 4.23.4 Unidades

Subsecciones

4.23.4.1 Visin del Hombre como Fundamento de la Actividad Profesional (0 horas) [Nivel Bloom 2] 4.23.4.2 Reduccionismos Antropolgicos (0 horas) [Nivel Bloom 2] 4.23.4.3 Persona y Cultura (0 horas) [Nivel Bloom 2] 4.23.4.4 El Compromiso Social de la Iglesia (0 horas) [Nivel Bloom 2]

4.23.4.1 Visin del Hombre como Fundamento de la Actividad Profesional (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,,] Tpicos 1. Quin soy? 2. Por qu existo?. 3. Necesidad del hombre de comprenderse. 4. El misterio del hombre y su conocimiento. 5. Un ser contingente con hambre de infinito. 6. Ser bio-psico-espiritual. 7. Dinamismos fundamentales. 8. Naturaleza y dignidad del ser humano. 9. El hombre como sujeto: ser nico e irrepetible. 10. Autoconciencia autodeterminacin. 11. El sentido de la vida y el ser profesional. 12. El hombre: un ser para el encuentro. 13. Desarrollo de la perspectiva dinmica del ser humano como persona y como profesional: relacin con uno mismo, relacin con los dems, relacin con el mundo creado, relacin con el fundamento de mi vida. 14. El problema del mal: el profesional y las rupturas, las 3 concupiscencias, la reconciliacin. 15. Ser persona y ser profesional. 16. Conceptos bsicos sobre la Libertad. 17. Libertad de eleccin y libertad de acto. 18. La Recta accin. 19. La Prudencia aplicada a la toma de decisiones.

307

20. La relevancia de las decisiones empresariales y la moral: la persona jurdica y la toma de decisiones. 21. Actos moralmente buenos y malos. Objetivos 1. Entender al hombre como un todo como fundamenteo para el ejercicio profesional. 4.23.4.2 Reduccionismos Antropolgicos (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,,] Tpicos 1. Los reduccionismos antropolgicos: determinismo, psicologismo, economicismo, marxismo, liberalismo, comunismo, estatismo, cientificismo. 2. Exposicin y critica de los principales antropologas de nuestro tiempo. 3. El fin ultimo del hombre y el fin ultimo de la organizacin o empresa. 4. El trabajo como mbito de realizacin del hombre. Objetivos 1. Entender al hombre como un todo y no de forma parcial o incompleta. 4.23.4.3 Persona y Cultura (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,,] Tpicos 1. El hombre como creador de cultura: la cultura personal y la cultural organizacional. 2. El profesional como agente de cambio cultural. 3. Cultura y anti-cultura en el ambito laboral. 4. Qu es la Tecnologa? Tecnologa y mundo actual. 5. Impacto de la tecnologa en la cultura actual. 6. La mentalidad tecnologista. Dimensin antropolgica y cultural de la tecnologa. 7. Es neutral la tecnologa? Persona, cultura y productos tecnolgicos. 8. Consideraciones ticas relativas a la tecnologa. Objetivos 1. Entender al hombre como creador e cultura. 4.23.4.4 El Compromiso Social de la Iglesia (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,,] Tpicos 1. El Desarrollo integral y los valores humanos: aproximacin humana y social a los valores. 2. La solidaridad. 3. La subsidiaridad.
308

4. 5. 6. 7. 8.

El desarrollo integral: el hombre como centro del desarrollo. La pobreza y la responsabilidad social de la empresa: qu es ser pobre. Pobreza y dignidad humana. El compromiso social de ser profesional. La responsabilidad social de la empresa, el compromiso social del dueo de los factores de produccin.

Objetivos 1. Entender y poder poner en prctica el compromiso social del la Iglesia para el beneficio del hombre y de la sociedad.

4.24 CS211T. Teora de la Computacin (Obligatorio)


Semestre: 4to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS106. Estructuras Discretas II (2do Sem) Slabo: Slabo (PDF)

Subsecciones

4.24.1 Justificacin 4.24.2 Objetivos Generales 4.24.3 Contribucin a los resultados 4.24.4 Unidades o 4.24.4.1 AL/Computabilidad Bsica. (20 horas) [Nivel Bloom 4] o 4.24.4.2 AL/Clases de Complejidad P y NP. (20 horas) [Nivel Bloom 5] o 4.24.4.3 AL/Teora de Autmatas. (20 horas) [Nivel Bloom 3]

4.24.1 Justificacin Este curso hace nfasis en los lenguajes formales, modelos de computacin y computabilidad, adems de incluir fundamentos de la complejidad computacional y de los problemas NP completos. 4.24.2 Objetivos Generales 1. Que el alumno aprenda los conceptos fundamentales de la teora de lenguajes formales

309

4.24.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.24.4 Unidades

Subsecciones

4.24.4.1 AL/Computabilidad Bsica. (20 horas) [Nivel Bloom 4] 4.24.4.2 AL/Clases de Complejidad P y NP. (20 horas) [Nivel Bloom 5] 4.24.4.3 AL/Teora de Autmatas. (20 horas) [Nivel Bloom 3]

4.24.4.1 AL/Computabilidad Bsica. (20 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Mquinas de estado finito. Gramticas libres del contexto. Problemas tratables e intratables. Funciones no computables. El problema de la parada. Implicaciones de la no-computabilidad.

Objetivos 1. Discutir el concepto de mquinas de estado finito. 2. Explicar las gramticas libres de contexto. 3. Disear una mquina de estados finitos determinstica para aceptar un lenguage especfico.
310

4. Explicar cmo algunos problemas no tienen solucin algortmica. 5. Proveer ejemplos que ilustren el concepto de no-computabilidad. 4.24.4.2 AL/Clases de Complejidad P y NP. (20 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. Definicin de las clases P y NP. NP-completitud (El teorema de Cook). Problemas NP-completos estndares. Tcnicas de reduccin.

Objetivos 1. Definir las clases P y NP. 2. Explicar el significado de la NP-Completitud. 3. Probar que un problema es NP-completo reducciendo un problema NPCompleto clsico conocido a ste. 4.24.4.3 AL/Teora de Autmatas. (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Autmatas finitos determinsticos (DFAs). 2. Autmatas finitos no determinsticos (NFAs). 3. Equivalencias entre los DFAs y NFAs. 4. Expresiones regulares. 5. El teorema del bombeo (pumping) para expresiones regulares. 6. Autmatas de pila (PDAs). 7. Relacin entre los PDAs y las gramticas libres del contexto. 8. Propiedades de las gramticas libres del contexto. 9. Mquinas de Turing. 10. Mquinas de Turing no determinsticas. 11. Conjuntos y lenguajes. 12. La jerarqua de Chomsky. 13. La tesis de Church-Turing. Objetivos 1. Determinar la localizacin de un lenguaje en la jerarqua de Chomsky (conjuntos regulares, libres del contexto, sensibles al contexto y lenguajes enumerables recursivos). 2. Probar que un lenguaje se encuentra en una clase especfica y que este no se encuentra en la siguiente clase inferior.

311

3. Conversiones entre notaciones potentes equivalentes para un lenguaje, incluyendo conversiones entre DFAs, NFAs y expresiones regulares as como entre PDAs y CFGs. 4. Explicar al menos un algoritmo de de anlisis de arriba hacia abajo (parsing topdown) o de anlisis de abajo hacia arriba (bottom-up). 5. Explicar la tesis de Church-Turing y su importancia.

4.25 CS270T. Bases de Datos I (Obligatorio)


Semestre: 4to Sem. Crditos: 5 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 4 horas; Prerrequisitos: o CS107. lgebra Abstracta (3er Sem) Slabo: Slabo (PDF)

Subsecciones

4.25.1 Justificacin 4.25.2 Objetivos Generales 4.25.3 Contribucin a los resultados 4.25.4 Unidades o 4.25.4.1 IM/Modelos de Informacin. (14 horas) [Nivel Bloom 3] o 4.25.4.2 IM/Sistemas de Base de Datos. (14 horas) [Nivel Bloom 3] o 4.25.4.3 IM/Modelamiento de Datos. (14 horas) [Nivel Bloom 4] o 4.25.4.4 IM/Indexacin. (4 horas) [Nivel Bloom 5] o 4.25.4.5 IM/Base de Datos Relacionales. (14 horas) [Nivel Bloom 5] o 4.25.4.6 IM/Lenguajes de Consultas de Base de Datos. (12 horas) [Nivel Bloom 5] o 4.25.4.7 IM/Diseo de Bases de Datos Relacionales. (12 horas) [Nivel Bloom 4]

4.25.1 Justificacin La gestin de la informacin (IM) juega un rol principal en casi todas las reas donde los computadores son usados. Esta rea incluye la captura, digitalizacin, representacin, organizacin, transformacin y presentacin de informacin; algortmos para mejorar la eficiencia y efectividad del acceso y actualizacin de informacin almacenada, modelamiento de datos y abstraccin, y tcnicas de almacenamiento de archivos fsicos. Este tambin abarca la seguridad de la informacin, privacidad, integridad y proteccin en un ambiente compartido. Los estudiantes necesitan ser capaces de desarrollar
312

modelos de datos conceptuales y fsicos, determinar que mtodos de (IM) y tcnicas son apropiados para un problema dado, y ser capaces de seleccionar e implementar una apropiada solucin de IM que refleje todas las restricciones aplicables, incluyendo escalabilidad y usabilidad. 4.25.2 Objetivos Generales 1. Que el alumno aprenda a representar informacin en una base de datos priorizando la eficiencia en la recuperacin de la misma 2. Que el alumno aprenda los conceptos fundamentales de gestin de bases de datos. Esto incluye aspectos de diseo de bases de datos, lenguajes de bases de datos y realizacin de bases de datos 3. Discutir el modelo de bases de datos con base en el lgebra relacional, clculo relacional y en el estudio de sentencias SQL. 4.25.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. e) Nivel Bloom 3 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.25.4 Unidades

313

Subsecciones

4.25.4.1 IM/Modelos de Informacin. (14 horas) [Nivel Bloom 3] 4.25.4.2 IM/Sistemas de Base de Datos. (14 horas) [Nivel Bloom 3] 4.25.4.3 IM/Modelamiento de Datos. (14 horas) [Nivel Bloom 4] 4.25.4.4 IM/Indexacin. (4 horas) [Nivel Bloom 5] 4.25.4.5 IM/Base de Datos Relacionales. (14 horas) [Nivel Bloom 5] 4.25.4.6 IM/Lenguajes de Consultas de Base de Datos. (12 horas) [Nivel Bloom 5] 4.25.4.7 IM/Diseo de Bases de Datos Relacionales. (12 horas) [Nivel Bloom 4]

4.25.4.1 IM/Modelos de Informacin. (14 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Veryard, 1994,Elmasri and Navathe, 2004,Oppel, 2004,] Tpicos 1. Almacenamiento y recuperacin de informacin (IS&R). 2. Aplicaciones de administracin de la informacin. 3. Representacin y captura de la informacin. 4. Asociacin de Metadata/schema con los datos 5. Indexacin y anlisis. 6. Bsqueda, recuperacin, enlace, navegacin. 7. Privacidad, integridad, seguridad y preservacin de la informacin. 8. Escalabilidad, eficiencia y efectividad. 9. Escalabilidad, eficiencia y efectividad. 10. Conceptos relacionados con asegurar informacin (persistencia de datos). Objetivos 1. Comparar y contrastar la informacin con datos y conocimiento. 2. Criticar y defender las aplicaciones de informacin de tamao pequeo y mediano con respecto a la satisfaccin de las necesidades reales del usuario. 3. Mostrar explicitamente la relacin entre metadata/schema almacenados y los datos. 4. Explicar el uso de consultas declarativas. 5. Dar una version declarativa de una consulta de navegacin. 6. Describir varias soluciones tcnicas para problemas relacionados a la privacidad, integridad, seguridad y preservacin de la informacin. 7. Explicar las medidas de eficiencia (estimacin, tiempo de respuesta) y efectividad (precision - recall). 8. Describir mtodos para asegurar que los sistemas de informacin pueden escalar de lo individual a lo global. 9. Identificar asuntos relacionados a la persistencia de datos en una organizacin. 10. Describir vulnerabilidades de la integridad de datos en escenarios especficos.

314

4.25.4.2 IM/Sistemas de Base de Datos. (14 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Rob and Coronel, 2004,Elmasri and Navathe, 2004,Date, 2005,] Tpicos 1. 2. 3. 4. 5. Historia y motivacin de los sistemas de base datos. Componentes de los sistemas de base de datos. Funciones DBMS. Arquitectura de base de datos e independencia de datos. Uso de un lenguaje de consultas declarativo.

Objetivos 1. Explicar las caractersticas que distinguen a las bases de datos de los mtodos tradicionales de programacin con archivos de datos. 2. Citar el objetivo, funciones, modelos, componentes, aplicaciones y el impacto social de los sistemas de bases de datos. 3. Describir los componentes de un sistema de base de datos y dar ejemplos de su uso. 4. Identificar las funciones superiores DBMS y describir su rol en un sistema de base de datos. 5. Explicar los conceptos de independencia de datos y su importancia en un sistema de base de datos. 6. Usar un lenguaje de consulta para elicitar la informacin de una base de datos. 4.25.4.3 IM/Modelamiento de Datos. (14 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Simsion and Witt, 2004,Elmasri and Navathe, 2004,] Tpicos 1. 2. 3. 4. 5. Modelamiento de datos. Modelos conceptuales (incluyendo entidad-relacin y UML). Modelo orientado a objetos. Modelo de datos relacional. Modelos de datos semiestructurados (expresados utilizando DTD o XMLSchema).

Objetivos 1. Categorizar los modelos de datos basados en los tipos de conceptos que ellos proveen para describir la estructura de las bases de datos, esto es, el modelo de datos conceptual, el modelo de datos fsico y el modelo de datos representacional. 2. Describir los conceptos de modelado y la notacin del modelo entidad-relacin y UML, incluyendo su uso en modelamiento de datos.

315

3. Describir los principales conceptos del modelo OO tal como la identidad del objeto, constructores de tipos, encapsulacin, herencia, polimorfismo y creacin de versiones. 4. Definir la terminologa fundamental usada en el modelo de datos relacional. 5. Describir los principios bsicos del modelo de datos relacional. 6. Ilustrar los conceptos de modelamiento y notacin del modelo de datos relacional. 7. Describir las diferencias en los modelos de datos relacional y semiestructurado. 8. Generar un modelo semiestructurado (DTD o XMLSchema) equivalente a un esquema relacional dado. 4.25.4.4 IM/Indexacin. (4 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Whitehorn and Marklyn, 2001,Date, 2005,] Tpicos 1. 2. 3. 4. 5. 6. El impacto masivo de los ndices en el desempeo de consultas. La estructura bsica de un ndice. Menteniendo un buffer de datos en memoria. Creacin de ndices con SQL. Indexacin de texto. Indexacin de la web y como trabajan los motores de bsqueda.

Objetivos 1. Generar un archivo ndice para una soleccin de recursos. 2. Explicar el rol de un ndice invertido en la localizacin de un documento en una coleccin. 3. Explicar como el proceso de encontrar la raiz de una palabra (stemming) y las palabras no relevantes (stop words) afectan la indexacin. 4. Identificar los ndices apropiados para un determinaso esquema relacional un una consulta dada. 5. Estimar el tiempo de recuperacin de la informacin con y sin ndices.

4.25.4.5 IM/Base de Datos Relacionales. (14 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Whitehorn and Marklyn, 2001,Date, 2005,] Tpicos 1. Mapeo del esquema conceptual al esquema relacional. 2. Entidad e integridad referencial. 3. lgebra relacional y clculo relacional. Objetivos

316

1. Preparar un esquema relacional de un modelo conceptual usando el modelo entidad-relacin. 2. Explicar y demostrar los conceptos de restricciones de la integridad de la entidad y restricciones de la integridad referencial (incluyendo la definicin del concepto de llave fornea). 3. Demostrar el uso de las operaciones del lgebra relacional desde la teora de conjuntos matemticos (unin, interseccin, diferencia y producto cartesiano) y las operaciones de lgebra relacional desarrolladas especficamente para bases de datos relacionales (select (restrict) , product, join ydivision). 4. Demostrar consultas en el lgebra relacional. 5. Demostrar consultas en el clculo relacional de tuplas. 4.25.4.6 IM/Lenguajes de Consultas de Base de Datos. (12 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Dietrich, 2001,Elmasri and Navathe, 2004,Celko, 2005,] Tpicos 1. Sntesis de los lenguajes de bases de datos. 2. SQL (definicin de datos, formulacin de consultas, actualizacin del sublenguaje, restricciones e integridad). 3. Query by Example (QBE) y entornos de 4ta generacin. 4. Consultas no procedurales incrustadas en un lenguaje procedimental. 5. Introduccin al lenguaje de consultas orientado a objectos. 6. Procedimientos almacenados. Objetivos 1. Crear un esquema de base de datos relacional en SQL que incorpora restricciones de integridad referencial, integridad-entidad, llaves. 2. Demostrar la definicin de datos en SQL y recuperar informacin de una base de datos usando la sentencia SQL SELECT. 3. Evaluar un conjunto de estrategias de procesamiento de consultas y seleccionar la ptima. 4. Crear una consulta no procedimental por medio de llenado de plantillas de relaciones para construir un ejemplo del resultado de la consulta deseada. 5. Incrustar consultas orientadas a objetos en un lenguaje tal como C++ o Java (ejemplo, SELECT Col.Method FROM Object). 6. Escribir un procedimiento almacenado que reciba parmetros y que tanga algn flujo de control para proveer alguna funcionalidad. 4.25.4.7 IM/Diseo de Bases de Datos Relacionales. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Harrington, 2002,Elmasri and Navathe, 2004,Date, 2005,] Tpicos

317

1. Diseo base de datos. 2. Dependencia funcional. 3. Descomposicin de un esquema: lossless-join y propiedades de preservacin de independencia de una descomposicin. 4. Llaves candidatas, super llaves, cerradura de un conjunto de atributos. 5. Formas normales (1NF, 2NF, 3NF, BCNF). 6. Dependencia multivaluada (4NF). 7. Join dependency (PJNF, 5NF). 8. Representacin terica. Objetivos 1. Determinar la dependencia funcional entre dos o ms atributos que son un subconjunto de una relacin. 2. Conectar las restricciones expresadas como llave primaria y llaves forneas con dependencias funcionales. 3. Calcular cerradura de un conjunto de atributos bajo una dependencia funcional dada. 4. Determinar si un conjunto de atributos forma o no una super llave y/o es candidato a ser llave para una dependencia funcional dada. 5. Evaluar una descomposicin propuesta para decir si tiene o no tiene losslessjoin y preservacin de dependencia. 6. Describir que significa 1NF, 2NF, 3NF y BCNF. 7. Identificar si una relacin es una 1NF, 2NF, 3NF o BCNF. 8. Normalizar una 1NF en un conjunto de relaciones en 3NF (o BCNF) y desnormalizar un esquema relacional. 9. Explicar el impacto de la normalizacin sobre la eficiencia de las operaciones de base de datos, especialmente la utilizacin de consultas. 10. Describir que es una dependencia multivaluada y que tipo de restricciones sta especifica. 11. Explicar por qu 4NF es til en el diseo del esquema.

4.26 CS103O. Algoritmos y Estructuras de Datos (Obligatorio)


Semestre: 4to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS102O. Objetos y Abstraccin de Datos (3er Sem) Slabo: Slabo (PDF)

Subsecciones
318

4.26.1 Justificacin 4.26.2 Objetivos Generales 4.26.3 Contribucin a los resultados 4.26.4 Unidades o 4.26.4.1 PF/Estructuras de Datos. (8 horas) [Nivel Bloom 5] o 4.26.4.2 PF/Recursividad. (4 horas) [Nivel Bloom 5] o 4.26.4.3 AL/Algoritmos Fundamentales. (12 horas) [Nivel Bloom 4] o 4.26.4.4 Grafos (12 horas) [Nivel Bloom 5] o 4.26.4.5 Matrices Esparzas (8 horas) [Nivel Bloom 5] o 4.26.4.6 Arboles Equilibrados (16 horas) [Nivel Bloom 5]

4.26.1 Justificacin El fundamento terico de todas las ramas de la informtica descansa sobre los algoritmos y estructuras de datos, este curso brindar a los participantes una introduccin a estos tmas, formando as una base que servir para los siguientes cursos en la carrera. 4.26.2 Objetivos Generales 1. Hacer que el alumno entienda la importancia de los algoritmos para la solucin de problemas. 2. Introducir al alumno hacia el campo de la aplicacin de las estructuras de dato 4.26.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. i) Nivel Bloom 4 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin.
319

j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. k) Nivel Bloom 3 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.26.4 Unidades

Subsecciones

4.26.4.1 PF/Estructuras de Datos. (8 horas) [Nivel Bloom 5] 4.26.4.2 PF/Recursividad. (4 horas) [Nivel Bloom 5] 4.26.4.3 AL/Algoritmos Fundamentales. (12 horas) [Nivel Bloom 4] 4.26.4.4 Grafos (12 horas) [Nivel Bloom 5] 4.26.4.5 Matrices Esparzas (8 horas) [Nivel Bloom 5] 4.26.4.6 Arboles Equilibrados (16 horas) [Nivel Bloom 5]

4.26.4.1 PF/Estructuras de Datos. (8 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [] Tpicos 1. Representacin de datos numricos 2. Rango, precisin y errores de redondeo. 3. Arreglos. 4. Registros. 5. Cadenas y procesamiento de cadenas. 6. Representacin de caracteres. 7. Administracin del almacenamiento en tiempo de ejecucin. 8. Punteros y referencias. 9. Estructuras enlazadas. 10. Estrategias de implementacin para pilas, colas y tablas hash. 11. Estrategias de implementacin para grafos y rboles. 12. Estrategias para escoger la estructura de datos correcta. Objetivos 1. Describir la representacin de datos numricos y de caracteres
320

2. Entender como la precisin y el redondeo puede afectar los clculos numricos. 3. Discutir la representacin y uso de tipos de datos primitivos y estructuras de datos incorporadas en el lenguaje. 4. Describir aplicaciones comunes para cada estructura de datos en la lista de temas. 5. Implementar estructuras de datos definidas por el usuario en un lenguaje de alto nivel. 6. Comparar implementaciones alternativas de estructuras de datos considerando su desempeo. 7. Escribir programas que usan cada una de las siguientes estructuras de datos: arreglos, registros, cadenas, listas enlazadas, pilas, colas y tablas de hash. 8. Comparar y contrastar los costos y beneficios de las implementaciones dinmicas y estticas de las estructuras de datos. 9. Escoger la estructura de datos apropiada para modelar un problema dado. 4.26.4.2 PF/Recursividad. (4 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. El concepto de recursividad. Funciones matemticas recursivas. Funciones recursivas simples. Estrategias de dividir y conquistar. Backtracking recursivo.

Objetivos 1. Describir el concepto de recursividad y dar ejemplos de su uso. 2. Identificar el caso base y el caso general de un problema definido recursivamente. 3. Comparar soluciones iterativas y recursivas para problemas elementales tal como factorial. 4. Describir la tcnica dividir y conquistar. 5. Implementar, probar y depurar funciones y procedimientos recursivos simples. 6. Describir como la recursividad puede ser implementada usando una pila. 7. Discutir problemas para los cuales el backtracking es una solucin apropiada. 8. Determinar cuando una solucin recursiva es apropiada para un problema. 4.26.4.3 AL/Algoritmos Fundamentales. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Algoritmos numricos simples. 2. Bsqueda secuencial y binaria. 3. Algoritmos cuadrticos de ordenamiento (seleccin, insercin).
321

4. Algoritmos de tipo (Quicksort, heapsort, mergesort). 5. Tablas de (hash) incluyendo estrategias de solucin para las colisiones. 6. rboles de bsqueda binaria. 7. Representacin de grafos (Listas y Matrices de adyacencia). 8. Recorridos por amplitud y profundidad. 9. El algoritmo del camino ms corto (algoritmos de Dijkstra y Floyd). 10. Cerradura transitiva (algoritmo de Floyd). 11. rbol de expansin mnima (algoritmos de Kruskal y Prim). 12. Ordenamiento Topolgico. Objetivos 1. Implementar los algoritmos cuadrticos ms comunes y los algoritmos de ordenamiento . 2. Disear e implementar una funcin de (hash) apropiada para una aplicacin. 3. Disear e implementar un algoritmo de resolucin de colisiones para tablas de hash. 4. Discutir la eficiencia computacional de los principales algoritmos de ordenamiento, bsqueda y (hashing). 5. Discutir otros factores, adems de la eficiencia computacional, que influyen en la eleccin de los algoritmos, tales como tiempo de programacin, mantenimiento y el uso de patrones especficos de aplicacin en los datos de entrada. 6. Resolver problemas usando los algoritmos de grafos fundamentales, incluyendo bsqueda por amplitud y profundidad; caminos ms cortos con uno y mltiples orgenes, cerradura transitiva, ordenamiento topolgico y al menos un algoritmo de rbol de expansin mnima. 7. Demostrar las siguientes capacidades: evaluar algoritmos, seleccionar una opcin de un rango posible, proveer una justificacin para tal eleccin e implementar el algoritmo.. 4.26.4.4 Grafos (12 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [] Tpicos 1. Concepto de Grafos. 2. Grafos Dirigidos y Grafos no Dirigidos. 3. Utilizacin de los Grafos. 4. Medida de la Eficiencia. En tiempo y espacio. 5. Matrices de Adyacencia. 6. Matrices de Adyacencia etiquetada. 7. Listas de Adyacencia. 8. Implementacin de Grafos usando Matrices de Adyacencia. 9. Implementacin de Grafos usando Listas de Adyacencia. 10. Insercin, Bsqueda y Eliminacin de nodos y aristas. 11. Algoritmos de bsqueda en grafos.
322

Objetivos 1. Adquirir destreza para realizar una implementacin correcta. 2. Desarrollar los conocimientos para decidir cuando es mejor usar una tcnica de implementacin que otra.

4.26.4.5 Matrices Esparzas (8 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. Conceptos Iniciales. Matrices poco densas Medida de la Eficiencia en Tiempo y en Espacio Creacin de la matriz esparza esttica vs Dinmicas. Mtodos de insercin, bsqueda y eliminacin

Objetivos 1. Comprender el uso y implementacion de matrices esparzas.

4.26.4.6 Arboles Equilibrados (16 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. rboles AVL. Medida de la Eficiencia. Rotaciones Simples y Compuestas Insercin, Eliminacin y Bsqueda. rboles B , B+ B* y Patricia.

Objetivos 1. Comprender las funciones bsicas de estas estructuras complejas con el fin de adquirir la capacidad para su implementacin.

4.27 CB201. Anlisis Matemtico III (Obligatorio)


Semestre: 4to Sem. Crditos: 5 Horas del curso: Teora: 4 horas; Prctica: 2 horas; Prerrequisitos: o CB103. Anlisis Matemtico II (3er Sem) Slabo: Slabo (PDF)

323

Subsecciones

4.27.1 Justificacin 4.27.2 Objetivos Generales 4.27.3 Contribucin a los resultados 4.27.4 Unidades o 4.27.4.1 Geometra en el espacio (8 horas) [Nivel Bloom 3] o 4.27.4.2 Curvas y parametrizaciones (20 horas) [Nivel Bloom 3] o 4.27.4.3 Campos escalares (20 horas) [Nivel Bloom 3] o 4.27.4.4 Aplicaciones (12 horas) [Nivel Bloom 3] o 4.27.4.5 Integracin Mltiple (12 horas) [Nivel Bloom 4] o 4.27.4.6 Campos vectoriales (18 horas) [Nivel Bloom 3]

4.27.1 Justificacin Es una extensin de los cursos de Anlisis Matemtico I y Anlisis Matemtico II, tomando en cuenta dos o ms variables, indispensables para aquellas materias que requieren trabajar con geometra en curvas y superficies, as como en procesos de bsqueda de puntos extremos. 4.27.2 Objetivos Generales 1. Diferenciar e integrar funciones vectoriales de variable real, entender y manejar el concepto de parametrizacin. Describir una curva en forma paramtrica. 2. Describir, analizar, disear y formular modelos continuos que dependen de ms de una variable. 3. Establecer relaciones entre diferenciacin e integracin y aplicar el clculo diferencial e integral ala resolucin de problemas geomtricos y de optimizacin. 4.27.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4

324

Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.27.4 Unidades

Subsecciones

4.27.4.1 Geometra en el espacio (8 horas) [Nivel Bloom 3] 4.27.4.2 Curvas y parametrizaciones (20 horas) [Nivel Bloom 3] 4.27.4.3 Campos escalares (20 horas) [Nivel Bloom 3] 4.27.4.4 Aplicaciones (12 horas) [Nivel Bloom 3] 4.27.4.5 Integracin Mltiple (12 horas) [Nivel Bloom 4] 4.27.4.6 Campos vectoriales (18 horas) [Nivel Bloom 3]

4.27.4.1 Geometra en el espacio (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Apstol, 1973,Simmons, 1995] Tpicos 1. como espacio eucldeo y lgebra. 2. Superficies bsicas en el espacio. Objetivos 1. Manejar el lgebra vectorial en 2. Identificar tipos de superficies en el espacio 3. Graficar superficies bsicas 4.27.4.2 Curvas y parametrizaciones (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Apstol, 1973,Simmons, 1995] Tpicos 1. Funciones vectoriales de variable real. Reparametrizaciones 2. Diferenciacin e integracin 3. Velocidad, aceleracin, curvatura, torsin Objetivos 1. Describir las diferentes caractersticas de una curva 4.27.4.3 Campos escalares (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Apstol, 1973,Bartle, 1976,Simmons, 1995] Tpicos 1. Curvas de nivel
325

2. Lmites y continuidad 3. Diferenciacin Objetivos 1. Graficar campos escalares 2. Discutir la existencia de un lmite y la continuidad de un campo escalar 3. Calcular derivadas parciales y totales. 4.27.4.4 Aplicaciones (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Apstol, 1973,Simmons, 1995,Bartle, 1976] Tpicos 1. Mximos y mnimos 2. Multiplicadores de Lagrange Objetivos 1. Interpretar la nocin de gradiente en curvas de nivel y en superficies de nivel 2. Usar tcnicas para hallar extremos 4.27.4.5 Integracin Mltiple (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Apstol, 1973] Tpicos 1. 2. 3. 4. Integracin de Riemann Integracin sobre regiones Cambio de coordenadas Aplicaciones

Objetivos 1. Reconocer regiones de integracin adecuadas 2. Realizar cambios de coordenadas adecuados 3. Aplicar la integracin mltiple a problemas 4.27.4.6 Campos vectoriales (18 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Apstol, 1973] Tpicos 1. Integrales de linea 2. campos conservativos 3. Integrales de superficie Objetivos 1. 2. 3. 4. Calcular la integral de linea de campos vectoriales Reconocer campos conservativos Hallar funciones potenciales de campos conservativos Hallar integrales de superficies y aplicarlas
326

4.28 CB203. Estadstica y Probabilidades (Obligatorio)


Semestre: 4to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CB103. Anlisis Matemtico II (3er Sem) Slabo: Slabo (PDF)

Subsecciones

4.28.1 Justificacin 4.28.2 Objetivos Generales 4.28.3 Contribucin a los resultados 4.28.4 Unidades o 4.28.4.1 Estadstica descriptiva (10 horas) [Nivel Bloom 3] o 4.28.4.2 Probabilidades (10 horas) [Nivel Bloom 3] o 4.28.4.3 Variable aleatoria (10 horas) [Nivel Bloom 4] o 4.28.4.4 Distribucin de probabilidad discreta y continua (10 horas) [Nivel Bloom 3] o 4.28.4.5 Distribucin de probabilidad conjunta (10 horas) [Nivel Bloom 3] o 4.28.4.6 Inferencia estadstica (10 horas) [Nivel Bloom 3]

4.28.1 Justificacin Provee de una introduccin a la teora de las probabilidades e inferencia estadstica con aplicaciones, necesarias en el anlisis de datos, diseo de modelos aleatorios y toma de decisiones. 4.28.2 Objetivos Generales 1. Que el alumno aprenda a utilizar las herramientas de la estadstica para tomar decisiones ante situaciones de incertidumbre. 2. Que el alumno aprenda a obtener conclusiones a partir de datos experimentales. 3. Que el alumno pueda extraer conslusiones tiles sobre la totalidad de una poblacin basndose en informacin. recolectada 4.28.3 Contribucin a los resultados a) Nivel Bloom 3

327

Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.28.4 Unidades

Subsecciones

4.28.4.1 Estadstica descriptiva (10 horas) [Nivel Bloom 3] 4.28.4.2 Probabilidades (10 horas) [Nivel Bloom 3] 4.28.4.3 Variable aleatoria (10 horas) [Nivel Bloom 4] 4.28.4.4 Distribucin de probabilidad discreta y continua (10 horas) [Nivel Bloom 3] 4.28.4.5 Distribucin de probabilidad conjunta (10 horas) [Nivel Bloom 3] 4.28.4.6 Inferencia estadstica (10 horas) [Nivel Bloom 3]

4.28.4.1 Estadstica descriptiva (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Presentacin de datos 2. Medidas de localizacin central 3. Medidas de dispersin Objetivos 1. Presentar resumir y describir datos. 4.28.4.2 Probabilidades (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Espacios muestrales y eventos 2. Axiomas y propiedades de probabilidad
328

3. Probabilidad condicional 4. Independencia, 5. Teorema de Bayes Objetivos 1. 2. 3. 4. 5. Identificar espacios aleatorios disear modelos probabilsticos Identificar eventos como resultado de un experimento aleatorio Calcular la probabilidad de ocurrencia de un evento Hallar la probabilidad usando condicionalidad, independencia y Bayes

4.28.4.3 Variable aleatoria (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Definicin y tipos de variables aleatorias Distribucin de probabilidades Funciones densidad Valor esperado Momentos

Objetivos 1. Identificar variables aleatorias que describan un espacio muestra 2. Construir la distribucin o funcin de densidad. 3. Caracterizar distribuciones o funciones densidad conjunta. 4.28.4.4 Distribucin de probabilidad discreta y continua (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Distribuciones de probabilidad bsicas 2. Densidades de probabilidad bsicas 3. Funciones de variable aleatoria Objetivos 1. Calcular probabilidad de una variable aleatoria con distribucin o funcin densidad 2. Identificar la distribucin o funcin densidad que describe un problema aleatorio 3. Probar propiedades de distribuciones o funciones de densidad 4.28.4.5 Distribucin de probabilidad conjunta (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Variables aleatorias distribuidas conjuntamente
329

2. 3. 4. 5.

Valores esperados, covarianza y correlacin Las estadsticas y sus distribuciones Distribucin de medias de muestras Distribucin de una combinacin lineal

Objetivos 1. Encontrar la distribucin conjunta de dos variables aleatorias discretas o continuas 2. Hallar las distribuciones marginales o condicionales de variables aleatorias conjuntas 3. Determinar dependencia o independencia de variables aleatorias 4. Probar propiedades que son consecuencia del teorema del lmite central 4.28.4.6 Inferencia estadstica (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Estimacin estadstica 2. Prueba de hiptesis 3. Prueba de hiptesis usando ANOVA Objetivos 1. 2. 3. 4. Probar si un estimador es insesgado, consistente o suficiente Hallar intervalo intervalos de confianza para estimar parmetros Tomar decisiones de parmetros en base a pruebas de hiptesis Probar hiptesis usando ANOVA

4.29 CS210T. Anlisis y Diseo de Algoritmos (Obligatorio)


Semestre: 5to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS103O. Algoritmos y Estructuras de Datos (4to Sem) o CB203. Estadstica y Probabilidades (4to Sem) Slabo: Slabo (PDF)

Subsecciones

4.29.1 Justificacin 4.29.2 Objetivos Generales


330

4.29.3 Contribucin a los resultados 4.29.4 Unidades o 4.29.4.1 AL/Anlisis Bsico de Algoritmos. (12 horas) [Nivel Bloom 4] o 4.29.4.2 AL/Algoritmos Fundamentales. (16 horas) [Nivel Bloom 5] o 4.29.4.3 AL/Estrategias Algortmicas. (24 horas) [Nivel Bloom 5] o 4.29.4.4 AL/Algoritmos Distribuidos. (4 horas) [Nivel Bloom 4] o 4.29.4.5 AL/Clases de Complejidad P y NP. (4 horas) [Nivel Bloom 5]

4.29.1 Justificacin Los algoritmos son pieza clave para la ciencia de la computacin. El rendimiento de sistema de software depende slo de dos cosas: a) La bsqueda de algoritmos y b) La eficiencia conveniente de varias capas de implementacin. El diseo de buenos algoritmos es por otra parte crucial para el buen funcionamiento de todo sistema de software. Ms aun, el estudio de algoritmos provee el buen entendimiento de la naturaleza del problema, as como tambin, tcnicas independientes para la posible solucin, independientemente de un lenguaje de programacin, paradigma de programacin, hardware de computador o cualquier otro aspecto de implementacin.(Computing Curricula IEEE-CS & ACM). 4.29.2 Objetivos Generales 1. Permitir que el alumno pueda realizar el anlisis y dise de algoritmos eficientes para la solucin de problemas complejos. 2. Proveer al alumno de una serie de tcnicas, de anisis y diseo para la evaluacin e implementacin de algoritmos. 4.29.3 Contribucin a los resultados a) Nivel Bloom 6 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 5 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 5
331

Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.29.4 Unidades

Subsecciones

4.29.4.1 AL/Anlisis Bsico de Algoritmos. (12 horas) [Nivel Bloom 4] 4.29.4.2 AL/Algoritmos Fundamentales. (16 horas) [Nivel Bloom 5] 4.29.4.3 AL/Estrategias Algortmicas. (24 horas) [Nivel Bloom 5] 4.29.4.4 AL/Algoritmos Distribuidos. (4 horas) [Nivel Bloom 4] 4.29.4.5 AL/Clases de Complejidad P y NP. (4 horas) [Nivel Bloom 5]

4.29.4.1 AL/Anlisis Bsico de Algoritmos. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Graham et al., 1994] Tpicos 1. Anlisis asinttico de lmites en los casos promedio y superior. 2. Identificar la diferencias entre el comportamiento entre el mejor, mediano y peor caso. 3. Notacin Big , little , Omega y Theta . 4. Clases de complejidad estndar. 5. Medicin emprica de desempeo. 6. Puntos de equilibrio entre tiempo vs espacio en algoritmos. 7. Uso relaciones de recurrencia para el anlisis de algoritmos recursivos. Objetivos 1. Explicar el uso de las notaciones Big O, Omega y Theta para describir la cantidad de trabajo hecha por un algoritmo. 2. Uso de notaciones Big , Omega y Theta para determinar los lmites asintticos superior, inferior y el ms prximo en tiempo y espacio en complejidad de algoritmos . 3. Determinar la complejidad de tiempo y espacio de algoritmos simples. 4. Deducir la relacin de recurrencia que describe la complejidad de tiempo de algoritmos definidos recursivamente. 5. Solucionar relaciones de recurrencia elemental. 4.29.4.2 AL/Algoritmos Fundamentales. (16 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Cormen et al., 2001]
332

Tpicos 1. Algoritmos numricos simples. 2. Bsqueda secuencial y binaria. 3. Algoritmos cuadrticos de ordenamiento (seleccin, insercin). 4. Algoritmos de tipo (Quicksort, heapsort, mergesort). 5. Tablas de (hash) incluyendo estrategias de solucin para las colisiones. 6. rboles de bsqueda binaria. 7. Representacin de grafos (Listas y Matrices de adyacencia). 8. Recorridos por amplitud y profundidad. 9. El algoritmo del camino ms corto (algoritmos de Dijkstra y Floyd). 10. Cerradura transitiva (algoritmo de Floyd). 11. rbol de expansin mnima (algoritmos de Kruskal y Prim). 12. Ordenamiento Topolgico. Objetivos 1. Implementar los algoritmos cuadrticos ms comunes y los algoritmos de ordenamiento . 2. Disear e implementar una funcin de (hash) apropiada para una aplicacin. 3. Disear e implementar un algoritmo de resolucin de colisiones para tablas de hash. 4. Discutir la eficiencia computacional de los principales algoritmos de ordenamiento, bsqueda y (hashing). 5. Discutir otros factores, adems de la eficiencia computacional, que influyen en la eleccin de los algoritmos, tales como tiempo de programacin, mantenimiento y el uso de patrones especficos de aplicacin en los datos de entrada. 6. Resolver problemas usando los algoritmos de grafos fundamentales, incluyendo bsqueda por amplitud y profundidad; caminos ms cortos con uno y mltiples orgenes, cerradura transitiva, ordenamiento topolgico y al menos un algoritmo de rbol de expansin mnima. 7. Demostrar las siguientes capacidades: evaluar algoritmos, seleccionar una opcin de un rango posible, proveer una justificacin para tal eleccin e implementar el algoritmo.. 4.29.4.3 AL/Estrategias Algortmicas. (24 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Cormen et al., 2001] Tpicos 1. 2. 3. 4. 5. Algoritmos de fuerza bruta (brute-force). Algoritmos voraces (greedy). Divide y vencers. Backtracking. Branch-and-bound.
333

6. Heursticos. 7. Emparejamiento de patrones y algoritmos de cadenas/texto. 8. Algoritmos de aproximacin numrica. Objetivos 1. Describir las desventajas de los algoritmos de fuerza bruta. 2. Para cada una de las diferentes clases de algoritmos (fuerza bruta, voraces, dividir y conquistar,Backtracking, Branch-and-bound y heursticos), identificar un ejemplo del comportamiento humano cotidiano que ejemplifique el concepto bsico. 3. Implementar un algoritmo voraz para resolver apropiadamente un problema. 4. Implementar un algoritmo de divide y vencers para solucionar apropiadamente un problema. 5. Utilizar Backtracking para solucionar problemas tal como el de navegacin en un laberinto. 6. Describir varios mtodos de solucin de problemas heursticos. 7. Utilizar emparejamiento de patrones para analizar subcadenas. 8. Utilizar aproximacin numrica para resolver problemas matemticos, tal como el de encontrar las races de un polinomio. 4.29.4.4 AL/Algoritmos Distribuidos. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Cormen et al., 2001] Tpicos 1. 2. 3. 4. Consenso y eleccin. Deteccin de finalizacin. Tolerancia a fallas. Estabilizacin.

Objetivos 1. 2. 3. 4. 5. Explicar el paradigma distribuido. Explicar un algoritmo distribuido simple. Determinar cuando usar los algoritmos de consenso o eleccin. Distinguir entre relojes fsicos y lgicos. Describir el ordenamiento relativo de eventos en un algoritmo distribuido.

4.29.4.5 AL/Clases de Complejidad P y NP. (4 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Guerequeta and Vallecillo, 1998] Tpicos 1. Definicin de las clases P y NP. 2. NP-completitud (El teorema de Cook). 3. Problemas NP-completos estndares.
334

4. Tcnicas de reduccin. Objetivos 1. Definir las clases P y NP. 2. Explicar el significado de la NP-Completitud. 3. Probar que un problema es NP-completo reducciendo un problema NPCompleto clsico conocido a ste.

4.30 CS290T. Ingeniera de Software I (Obligatorio)


Semestre: 5to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS102O. Objetos y Abstraccin de Datos (3er Sem) o CS270T. Bases de Datos I (4to Sem) o CS130. Introduccin a Internet (3er Sem) Slabo: Slabo (PDF)

Subsecciones

4.30.1 Justificacin 4.30.2 Objetivos Generales 4.30.3 Contribucin a los resultados 4.30.4 Unidades o 4.30.4.1 SE/Diseo de Software. (12 horas) [Nivel Bloom 4] o 4.30.4.2 SE/Usando APIs. (6 horas) [Nivel Bloom 3] o 4.30.4.3 SE/Herramientas y Entornos de Software. (8 horas) [Nivel Bloom 3] o 4.30.4.4 SE/Validacin y verificacin de software. (8 horas) [Nivel Bloom 3] o 4.30.4.5 SE/Computacin Basada en Componentes. (14 horas) [Nivel Bloom 3] o 4.30.4.6 SE/Desarrollo de Sistemas Especializados. (4 horas) [Nivel Bloom 3] o 4.30.4.7 SE/Mejorando la programacin: robustez y seguridad. (8 horas) [Nivel Bloom 3]

4.30.1 Justificacin La tara de desarrollar software, excepto para aplicaciones sumamente simples, exige la ejecucin de un proceso de desarrollo bien definido. Los profesionales de esta rea
335

requieren un alto grado de conocimiento de los diferentes modelos e proceso de desarrollo, para que sean capaces de elegir el ms idneo para cada proyecto de desarrollo. Por otro lado, el desarrollo de sistemas de mediana y gran escala requiere del uso de bibliotecas de patrones y componentes y del dominio de tcnicas relacionadas al diseo basado en componentes. 4.30.2 Objetivos Generales 1. Brindar al alumno un marco terico y prctico para el desarrollo de software bajo estndares de calidad. 2. Familiarizar al alumno con los procesos de modelamiento y construccin de software a travs del uso de herramientas CASE. 3. Los alumnos debe ser capaces de seleccionar Arquitecturas y Plataformas tecnolgicas ad-hoc a los escenarios de implementacin. 4. Aplicar el modelamiento basado en componentes y fin de asegurar variables como calidad, costo y time-to-market en los procesos de desarrollo. 5. Brindar a los alumnos mejores prcticas para la verificacin y validacin del software. 4.30.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de

336

tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. k) Nivel Bloom 3 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.30.4 Unidades

Subsecciones

4.30.4.1 SE/Diseo de Software. (12 horas) [Nivel Bloom 4] 4.30.4.2 SE/Usando APIs. (6 horas) [Nivel Bloom 3] 4.30.4.3 SE/Herramientas y Entornos de Software. (8 horas) [Nivel Bloom 3] 4.30.4.4 SE/Validacin y verificacin de software. (8 horas) [Nivel Bloom 3] 4.30.4.5 SE/Computacin Basada en Componentes. (14 horas) [Nivel Bloom 3] 4.30.4.6 SE/Desarrollo de Sistemas Especializados. (4 horas) [Nivel Bloom 3] 4.30.4.7 SE/Mejorando la programacin: robustez y seguridad. (8 horas) [Nivel Bloom 3]

4.30.4.1 SE/Diseo de Software. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Pressman, 2005,Sommerville, 2008,Larman, 2008] Tpicos 1. Conceptos y principios fundamentales de diseo. 2. El rol y uso de contratos. 3. Patrones de diseo. 4. Arquitectura de software. 5. Diseo estructurado. 6. Anlisis y diseo orientado a objetos. 7. Diseo a nivel componente. 8. Cualidades de diseo. 9. Aspectos internos tales como bajo acoplamiento. 10. Aspectos externos como confiabilidad,mantenimiento, usabilidad, desempeo. 11. Otros abordajes: centrado en datos, orientado a aspectos, orientado a funciones, orientado a servicios, mtodos giles. 12. Diseo reusable. 13. Uso de material de cdigo abierto. Objetivos

337

1. Discutir las propiedades del buen diseo de softwarem incluyendo la naturaleza y el rol de la documentacin asociada. 2. Evaluar la calidad de mltiples diseos de software basados en principios y conceptos de diseo claves. 3. Seleccionar y aplicar patrones de diseo apropiados en la construccin de una aplicacin de software. 4. Crear y especificar el diseo de software para un producto de software de tamao medio usando una especificacin de requerimientos de software, una metodologa de diseo de programas aceptado (ejemplo orientado a objetos o estructurado) y una notacin de diseo apropiada. 5. Conducir una revisin de diseo de software con material de cdigo abierto utilizando lineamientos apropiados. 6. Evaluar un diseo de software a nivel componente. 7. Evaluar un diseo de software a nivel componente desde la perspectiva de reuso. 4.30.4.2 SE/Usando APIs. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2005,Sommerville, 2008] Tpicos 1. 2. 3. 4. 5. Programacin usando API. Diseo de API. Navegadores de clases (Class browsers) y herramientas relacionadas. Depuracin en el entorno API. Introduccin a la computacin basada en componentes.

Objetivos 1. Explicar el valor de las interfaces para programacin de aplicaciones (APIs) en el desarrollo de software. 2. Usar navegadores de clases y herramientas relacionadas durante el desarrollo de aplicaciones usando APIs. 3. Disear, implementar, probar y depurar programas que usan paquetes API de larga escala. 4.30.4.3 SE/Herramientas y Entornos de Software. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2005,Sommerville, 2008,Long, 1991] Tpicos 1. Entornos de programacin. 2. Anlisis de requerimientos y herramientas de modelamiento de diseo. 3. Herramientas de pruebas incluyendo herramientas de anlisis esttico y dinmico. 4. Herramientas de administracin de configuracin. 5. Manejo de la configuracin y herramientas de control de versin.
338

6. Mecanismos de integracin de herramientas. Objetivos 1. Seleccionar con justificacin un apropiado conjunto de herramientas para soportar el desarrollo de un rango de productos de software. 2. Analizar y evaluar un conjunto de herramientas en una rea dada del desarrollo de software (ej: administracin, modelamiento o pruebas). 3. Demostrar la capacidad para usar un rango de herramientas de software en soporte del desarrollo de un producto de software de tamao medio. 4.30.4.4 SE/Validacin y verificacin de software. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2005,Sommerville, 2008,Larman, 2008] Tpicos 1. 2. 3. 4. Distincin entre verificacin y validacin. Abordajes estticos y dinmicos. Planeamiento de la validacin y documentacin para la validacin. Diferentes tipos de tests, interfase humano-computador, usabilidad, confiabilidad, seguridad, conformidad con la especificacin. 5. Fundamentos del Testing incluyendo la creacin de planes de prueba y la generacin de casos de prueba. 6. Tcnicas de prueba de caja blanca y caja negra. 7. Semilla por defecto. 8. Unidad, integracin, validacin y sistemas de prueba. 9. Prueba orientado a objetos, pruebas de sistema. 10. Medidas de procesos, diseo, programa. 11. Verificacin y validacin de partes que no son componentes (documentacin, archivos de ayuda, material de entrenamiento). 12. Defecto de historial (fault logging), defecto de rastreo y soporte tcnico para esas actividades. 13. Test de regresin. 14. Inspecciones, revisiones, auditoras. Objetivos 1. Distinguir entre validacin de programas y verificacin. 2. Describir el rol que las herramientas pueden jugar en la validacin de software. 3. Distinguir entre los diferentes tipos y niveles de pruebas (unidad, integracin, sistemas y aceptacin) para productos de software de tamao medio y el material relacionado. 4. Crear, evaluar e implementar un plan de prueba para segmentos de cdigo de tamao medio. 5. Encargarse, como parte de una actividad de equipo, de una inspeccin de un segmento de cdigo de tamao medio. 6. Discutir los temas concernientes a la prueba de software orientado a objetos..
339

4.30.4.5 SE/Computacin Basada en Componentes. (14 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2005,Sommerville, 2008,Larman, 2008] Tpicos 1. Fundamentos. a) La definicin y naturaleza de los componentes. b) Componentes e interfaces. c) Interfaces como contratos. d) Los beneficios de los componentes. e) Tcnicas bsicas f) Diseo de componentes y ensamblaje. g) Relaciones con el modelo cliente-servidor y con patrones. h) Uso de objetos y servicios del ciclo de vida del objeto. i) Uso de objetos brokers. j) Marshalling. 2. Aplicaciones (incluyendo el uso de componentes para mviles). 3. Patrones como son utilizados en anlisis y diseo. Contexto de uso incluyendo arquitecturas empresariales.
340

4. 5. 6. 7. 8.

Arquitectura de sistemas basados en componentes. Diseo orientado a componentes. Entornos de aplicacin. Manejo de eventos: deteccin, notificacin y respuesta. Middleware. a) El paradigma orientado a objetos dentro del middleware. b) Agente de peticin de objeto (Object request brokers). c) Monitores del procesamiento de transacciones. d) Sistemas de flujo de informacin (workflow). e) Estado del arte de las herramientas.

Objetivos 1. Explicar y aplicar principios reconocidos para la construccin de componentes de software de alta calidad. 2. Discutir y seleccionar una arquitectura, para un sistema basado en componentes, disponible para un escenario dado. 3. Identificar el tipo de manejo de eventos implementado en una o mas APIs dadas. 4. Explicar el rol de los objetos en sistemas middleware y la relacin con componentes. 5. Aplicar mtodos orientados a componentes para el diseo de un rango de software incluyendo aquellos requeridos para transacciones concurrentes, servicios de comunicacin confiables, servicios incluyendo interaccin de bases de datos para consulta remota y administracin de bases de datos, comunicacin segura y acceso. 4.30.4.6 SE/Desarrollo de Sistemas Especializados. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2005,Sommerville, 2008,Larman, 2008] Tpicos 1. Sistemas en tiempo real. 2. Sistemas cliente-servidor.
341

3. 4. 5. 6.

Sistemas distribuidos. Sistemas paralelos. Sistemas basados en web. Sistemas de alta integridad.

Objetivos 1. Identificar y discutir diferentes sistemas especializados. 2. Discutir el ciclo de vida y tpicos sobre el proceso de software en el mbito de sistemas diseados para un contexto especializado incluyendo sistemas que podran tener que operar en un modo de operacin degradado. 3. Seleccionar, con la justificacin apropiada, mtodos que darn como resultado el desarrollo eficiente y efectivo y el mantenimiento de sistemas de software especializado. 4. Dado un contexto especfico y un conjunto de tpicos profesionales relacionados, discutir como, un ingeniero de software envuelto en el desarrollo de sistemas especializados, debe de responder a estos tpicos. 5. Sintetizar los temas tcnicos centrales asociados con la implementacin del crecimiento de sistemas especializados.. 4.30.4.7 SE/Mejorando la programacin: robustez y seguridad. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2005,Sommerville, 2008,Larman, 2008] Tpicos 1. Programacin a la defensiva: a) Principios de diseo y codificacin seguros. b) Principio de la menor parte de privilegio. c) Principios escenarios seguros por defecto. 2. Principio de aceptacin psicolgica: a) Como detectar problemas potenciales en seguridad de programas. b) Desborde de buffers de otros tipos.

342

c) Condiciones de corrida (race conditions). d) Inicializacin inapropiada incluyendo privilegios escogidos. e) Chequeo de la entrada. f) Asumir xito y correctitud. g) Validacin de presupuestos. 3. Cmo documentar consideraciones de seguridad en el uso de un programa?. Objetivos 1. Reescribir un programa simple para remover vulnerabilidades comunes tales como desborde de buffers, desborde de enteros y condiciones de corrida. 2. Presentar y aplicar los principios de la menor parte de privilegio y escenarios seguros por defecto. 3. Escribir una librera simple que desarrolle algunas tareas no triviales y no finalice la ejecucin de un programa sin observar como este fue ejecutado.

4.31 CS271T. Bases de Datos II (Obligatorio)


Semestre: 5to Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS270T. Bases de Datos I (4to Sem) o Ingls(300) Slabo: Slabo (PDF)

Subsecciones

4.31.1 Justificacin
343

4.31.2 Objetivos Generales 4.31.3 Contribucin a los resultados 4.31.4 Unidades o 4.31.4.1 IM/Diseo Fsico de Bases de Datos. (10 horas) [Nivel Bloom 4] o 4.31.4.2 IM/Procesamiento de Transacciones. (12 horas) [Nivel Bloom 5] o 4.31.4.3 IM/Almacenamiento y Recuperacin de Informacin. (10 horas) [Nivel Bloom 3] o 4.31.4.4 IM/Bases de Datos Distribuidas. (36 horas) [Nivel Bloom 4]

4.31.1 Justificacin La Gestin de la Informacin (IM-Information Management) juega un rol principal en casi todas las reas donde los computadores son usados. Esta rea incluye la captura, digitalizacin, representacin, organizacin, transformacin y presentacin de informacin; algortmos para mejorar la eficiencia y efectividad del acceso y actualizacin de informacin almacenada, modelamiento de datos y abstraccin, y tcnicas de almacenamiento de archivos fsicos. Este tambin abarca la seguridad de la informacin, privacidad, integridad y proteccin en un ambiente compartido. Los estudiantes necesitan ser capaces de desarrollar modelos de datos conceptuales y fsicos, determinar que mtodos de IM y tcnicas son apropiados para un problema dado, y ser capaces de seleccionar e implementar una apropiada solucin de IM que refleje todas las restricciones aplicables, incluyendo escalabilidad y usabilidad. 4.31.2 Objetivos Generales 1. Hacer que el alumno entienda las diferentes aplicaciones que tienen las bases de datos, en las diversas reas de conocimiento. 2. Mostrar las formas adecuadas de almacenamiento de informacin basada en sus diversos enfoques y su posterior recuperacin de informacin. 4.31.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. e) Nivel Bloom 3 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. i) Nivel Bloom 3
344

Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.31.4 Unidades

Subsecciones

4.31.4.1 IM/Diseo Fsico de Bases de Datos. (10 horas) [Nivel Bloom 4] 4.31.4.2 IM/Procesamiento de Transacciones. (12 horas) [Nivel Bloom 5] 4.31.4.3 IM/Almacenamiento y Recuperacin de Informacin. (10 horas) [Nivel Bloom 3] 4.31.4.4 IM/Bases de Datos Distribuidas. (36 horas) [Nivel Bloom 4]

4.31.4.1 IM/Diseo Fsico de Bases de Datos. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Burleson, 2004,Date, 2005,Celko, 2005] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Almacenamiento y estructura de archivo. Archivos indexados. Archivos hashed. Archivos de firma (signature). Arboles B. Archivos con ndice denso. Archivos con registros de longitud de variable. Eficiencia de la base de datos y afinamiento (tuning).

Objetivos 1. Explicar los conceptos de registros, tipos de registros y archivos, as como tambin las diferentes tcnicas para colocar registros de archivos en un disco. 2. Dar ejemplos de aplicaciones de ndices primarios, secundarios y clusterizados. 3. Distinguir entre un ndice denso y uno no denso. 4. Implementar ndices multinivel dinmicos usando rboles B. 5. Explicar la teora y aplicacin de tcnicas hash interno y externo. 6. Usar dispersin (hash) para facilitar la expansin de archivos dinmicos.
345

7. Describir las relaciones entre compresin, dispersin (hash) y bsquedas eficientes en base de datos. 8. Evaluar costos y beneficios de diferentes esquemas de dispersin. 9. Explicar cmo el diseo la base de datos fsicas afecta a la eficiencia de las transacciones en base de datos.. 4.31.4.2 IM/Procesamiento de Transacciones. (12 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Bernstein and Newcomer, 1997,Elmasri and Navathe, 2004] Tpicos 1. Transacciones. 2. Recuperacin y falla. 3. Control de concurrencia. Objetivos 1. Crear una transaccin mediante la incrustacin de SQL en un programa de aplicacin. 2. Explicar el concepto de compromiso implcito. 3. Describir los temas especficos para la ejecucin de transacciones eficientes. 4. Explicar cundo y por qu el rollback es necesario y cmo el logging asegura un rollback apropiado. 5. Explicar los efectos de los diferentes niveles de aislamiento sobre los mecanismos de control de concurrencia. 6. Escoger el nivel de aislamiento apropiado para implementar un protocolo de transaccin especificado. 4.31.4.3 IM/Almacenamiento y Recuperacin de Informacin. (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Brusilovsky et al., 1998,Elmasri and Navathe, 2004] Tpicos 1. Caracteres, cadenas, cdigos, texto. 2. Documentos, publicacin electrnica, marcado markup y lenguaje de marcado. 3. rboles digitales, archivos invertidos, rboles PAT, archivos signature, indexacin. 4. Anlisis morfolgico, extraccin de la raz de una palabra (stemming), frases, stop list. 5. Distribucin de la frecuencia de trminos, incerteza, difusibilidad, por peso. 6. Spacio vectorial, probabilsticos, lgico y modelos avanzados. 7. Necesidad de informacin, relevancia, evaluacin, efectividad. 8. Tesauro, ontologas, clasificacin y categorizacin, metadata. 9. Informacin bibliogrfica, bibliometra, citaciones. 10. Ruteo y filtrado (en comunidad).
346

11. Bsqueda y estrategias de bsqueda, comportamiento de bsqueda de informacin, modelamiento de usuario, retroalimentacin. 12. Sumarizacin y visualizacin de informacin. 13. Integracin de citaciones, palabras clave, esquemas de clasificacin y otros trminos. 14. Sistemas y protocolos (incluyendo Z39.50, OPACs, motores WWW, sistemas de investigacin). Objetivos 1. Explicar el almacenamiento de informacin bsico y conceptos de recuperacin.. 2. Describir qu temas son especficos para la recuperacin de informacin eficiente. 3. Dar aplicaciones de estrategias de bsqueda alternativa y explicar por qu la estrategia de bsqueda particular es apropiada para la aplicacin. 4. Realizar investigacin basada en Internet. 5. Disear e implementar un sistema de almacenamiento y recuperacin de tamao pequeo a medio. 4.31.4.4 IM/Bases de Datos Distribuidas. (36 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Ozsu and Valduriez, 1999,Date, 2005] Tpicos 1. 2. 3. 4. 5. 6. Almacenamiento de datos distribuido. Procesamiento de consultas distribuidas. Modelo de transaccin distribuido. Control de concurrencia. Soluciones heterogneas y homogneas. Cliente-servidor.

Objetivos 1. Explicar las tcnicas usadas para la fragmentacin, replicacin, alocacin de datos durante el proceso de diseo de bases de datos distribuidas. 2. Evaluar estrategias simples para ejecutar una consulta distribuida para seleccionar la estrategia que minimice la cantidad de transferencia de datos. 3. Explicar cmo el protocolo de commit en dos fases es usado para tratar una transaccin que accese a una base de datos almacenada en mltiples nodos. 4. Describir el control de concurrencia distribuido basado en la distincin de tcnicas de copiado y el mtodo de voto. 5. Describir los tres niveles de software en el modelo cliente-servidor.

4.32 CB111. Fsica Computacional (Obligatorio)

Semestre: 5to Sem. Crditos: 4


347

Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CB103. Anlisis Matemtico II (3er Sem) Slabo: Slabo (PDF)

Subsecciones

4.32.1 Justificacin 4.32.2 Objetivos Generales 4.32.3 Contribucin a los resultados 4.32.4 Unidades o 4.32.4.1 FI1 Fundamentos de Fsica y Algebra vectorial (6 horas) [Nivel Bloom 3] o 4.32.4.2 FI2 Cinemtica (6 horas) [Nivel Bloom 3] o 4.32.4.3 FI3. Dinmica (6 horas) [Nivel Bloom 3] o 4.32.4.4 FI4 Trabajo y Energia (6 horas) [Nivel Bloom 3] o 4.32.4.5 FI5 Momento lineal (6 horas) [Nivel Bloom 3] o 4.32.4.6 FI6 Fluidos y Transferencia de Calor (6 horas) [Nivel Bloom 3] o 4.32.4.7 FI7 Termodinmica (6 horas) [Nivel Bloom 3] o 4.32.4.8 FI8 Movimiento Oscilatorio y Ondulatorio (8 horas) [Nivel Bloom 3]

4.32.1 Justificacin Fsica Computacional es un curso que le permitir al estudiante entender las leyes de fsica de macropartculas y micropartculas considerado desde un punto material hasta un sistemas de partculas; debindose tener en cuenta que los fenmenos aqu estudiados van desde la mecnica clsica hasta la mecnica cuntica;Cinemtica, Dinmica, Trabajo y Energa, Termodinmica, Fluidos, Oscilaciones, Electrodinmica y Fsica Cunticas; adems se debe asociar que stos problemas deben ser resueltos con algoritmos computacionales. Poseer capacidad y habilidad en la interpretacin de problemas clsicos y cunticos con condiciones de frontera reales que contribuyen en la elaboracin de soluciones eficientes y factibles en diferentes reas de la Ciencia de la Computacin. 4.32.2 Objetivos Generales 1. Identificar los principios que rigen la materia. 2. Utilizar las leyes fsicas para la solucin de problemas. 3. Aplicar la simulacin a sistemas fsicos.

348

4.32.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida.

4.32.4 Unidades

Subsecciones

4.32.4.1 FI1 Fundamentos de Fsica y Algebra vectorial (6 horas) [Nivel Bloom 3] 4.32.4.2 FI2 Cinemtica (6 horas) [Nivel Bloom 3] 4.32.4.3 FI3. Dinmica (6 horas) [Nivel Bloom 3] 4.32.4.4 FI4 Trabajo y Energia (6 horas) [Nivel Bloom 3] 4.32.4.5 FI5 Momento lineal (6 horas) [Nivel Bloom 3] 4.32.4.6 FI6 Fluidos y Transferencia de Calor (6 horas) [Nivel Bloom 3] 4.32.4.7 FI7 Termodinmica (6 horas) [Nivel Bloom 3] 4.32.4.8 FI8 Movimiento Oscilatorio y Ondulatorio (8 horas) [Nivel Bloom 3]

4.32.4.1 FI1 Fundamentos de Fsica y Algebra vectorial (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Thijssen, 1999,Raymond A. Serway, 2009,Alonso and Finn, 1995] Tpicos 1. 2. 3. 4. 5. Introduccin. Naturaleza de la Fsica. Relacin de la fsica con las ciencias bsicas y aplicadas. Modelo idealizado. Magnitudes fsicas elementales.
349

6. 7. 8. 9.

Propiedades de los vectores. Componentes de un vector y vectores unitarios. Producto de vectores. Ejercicios y problemas.

Objetivos 1. Entender y trabajar con las magnitudes fsicas del SI. 2. Abstraer de la naturaleza los conceptos fsicos rigurosos y representarlos en modelos vectoriales. 3. Entender y aplicar los conceptos vectoriales a problemas fsicos reales. 4.32.4.2 FI2 Cinemtica (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Thijssen, 1999,Rieger., 2002,Schwarz., 1998,Hugh D. Young, 2007,Raymond A. Serway, 2009] Tpicos 1. 2. 3. 4. 5. 6. 7. Velocidad y Aceleracin Instantnea. Interpretacin algebraico y geomtrico Cada Libre. Movimiento Compuesto. Movimiento Circular. Aplicacin con POO Ejercicios y problemas.

Objetivos 1. Describir matemticamente el movimiento mecnico de una partcula unidimensional como un cuerpo de dimensiones despreciables. 2. Conocer y aplicar conceptos de magnitudes cinemticas. 3. Describir el comportamiento de movimiento de partculas, terica y graficamente. 4. Conocer representaciones vectoriales de estos movimientos unidimensionales. 5. Resolver problemas. 4.32.4.3 FI3. Dinmica (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Thijssen, 1999,Rieger., 2002,Schwarz., 1998,Hugh D. Young, 2007,Raymond A. Serway, 2009] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Fuerzas e interacciones. Masa inercial. Peso. Condiciones de Equilibrio. Leyes de Newton Dinmica del movimiento compuesto. Aplicacin de las leyes de Newton. Aplicacin con POO. Ejercicios y problemas.
350

Objetivos 1. 2. 3. 4. 5. 6. Conocer los conceptos de fuerza. Conocer las interacciones de la materia a travs de la inercia. Conocer los conceptos de equilibrio. Conocer y aplicar las leyes de Newton. Conocer y aplicar las leyes de la dinmica lineal y circular. Resolver problemas.

4.32.4.4 FI4 Trabajo y Energia (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Thijssen, 1999,Schwarz., 1998,Hugh D. Young, 2007,Raymond A. Serway, 2009] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Trabajo realizado por una fuerza constante. Trabajo realizado por fuerzas variables. Trabajo y energa cintica. Potencia. Energa potencial gravitatoria. Energa potencial elstica. Fuerzas conservativas y no conservativas. Principios de conservacin de la energa. Ejercicios y problemas.

Objetivos 1. 2. 3. 4. 5. Establecer los conceptos de trabajo y energa. Conocer tipos de energa. Establecer la relacin energa convencional y no convencional. Conocer y aplicar los conceptos de conservacin de energa. Resolver problemas.

4.32.4.5 FI5 Momento lineal (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Thijssen, 1999,Schwarz., 1998,Hugh D. Young, 2007,Raymond A. Serway, 2009]Tpicos 1. 2. 3. 4. 5. Momento lineal. Conservacin del momento lineal. Centro de masa y de gravedad. Movimiento de un sistema de partculas. Ejercicios y problemas.

Objetivos 1. 2. 3. 4. Establecer los conceptos de momento lineal. Conocer los conceptos de conservacin del momento lineal. Conocer el momento de un sistema de partculas. Resolver problemas.
351

4.32.4.6 FI6 Fluidos y Transferencia de Calor (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Mermin, 2006,Gould, 2006,Hugh D. Young, 2007,Raymond A. Serway, 2009]Tpicos 1. 2. 3. 4. Esttica de Fluidos. Dinmica de fluidos. Viscosidad. Ejercicios y problemas.

Objetivos 1. Conocer los conceptos y principios que rigen a los fluidos. 2. Conocer el movimiento de fluidos 3. Resolver problemas. 4.32.4.7 FI7 Termodinmica (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Pang, 2006,Shabana, 2008,Schwarz., 1998,Hugh D. Young, 2007,Raymond A. Serway, 2009] Tpicos 1. 2. 3. 4. 5. Calor y Temperatura. Leyes de la Termodinmica. Transferencia de calor. Ecuacin del Calor. Ejercicios y problemas.

Objetivos 1. 2. 3. 4. Establecer los conceptos de temperatura. Comprender las leyes de la termodinmica. Conocer los conceptos de transferencia de calor. Resolver problemas.

4.32.4.8 FI8 Movimiento Oscilatorio y Ondulatorio (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Landau et al., 2007,Borneianu, 2008,Hugh D. Young, 2007] Tpicos 1. 2. 3. 4. 5. 6. 7. Movimiento armnico simple Sistema masa - resorte. El pndulo. Movimiento amortiguado Resonancia Ondas mecnicas. Resolver problemas.

Objetivos 1. Establecer los conceptos de oscilacin.


352

2. Conocer los sistemas amortiguados. 3. Conocer fenmenos de resonancia. 4. Analizar las diferentes magnitudes que intervienen en el movimiento ondulatorio para su aplicacin a variados casos 5. Resolver problemas.

4.33 CB306. Anlisis Numrico (Obligatorio)


Semestre: 5to Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CB201. Anlisis Matemtico III (4to Sem) Slabo: Slabo (PDF)

Subsecciones

4.33.1 Justificacin 4.33.2 Objetivos Generales 4.33.3 Contribucin a los resultados 4.33.4 Unidades o 4.33.4.1 CN1.A Introduccin (0 horas) [Nivel Bloom 3] o 4.33.4.2 CN1.B Soluciones de ecuaciones de una variable (0 horas) [Nivel Bloom 4] o 4.33.4.3 CN1.C Interpolacin y aproximacin polinomial (0 horas) [Nivel Bloom 4] o 4.33.4.4 CN1. Diferenciacin numrica e integracin numrica (0 horas) [Nivel Bloom 4] o 4.33.4.5 CN1.E Problemas de valor inicial para ecuaciones diferenciales ordinarias (0 horas) [Nivel Bloom 3] o 4.33.4.6 CN1.F Mtodos iterativos en el lgebra matricial (0 horas) [Nivel Bloom 3]

4.33.1 Justificacin En este curso se estudia y analiza algoritmos numricos que contribuyen en la elaboracin de soluciones eficientes y tiles en diferentes reas de las ciencias de la computacin

353

4.33.2 Objetivos Generales 1. Se presentarn procedimientos numricos ms importantes para la resolucin de ecuaciones no lineales, sistemas lineales y no lineales, junto con los mtodos para la determinacin de valores y vectores propios. 2. Se tratarn los temas de interpolacin y aproximacin de funciones y la derivacin e integracin numrica. 3. Se har el anlisis y desarrollo de mtodos numricos necesarios para la resolucin de problemas en computacin. 4.33.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.33.4 Unidades

Subsecciones

4.33.4.1 CN1.A Introduccin (0 horas) [Nivel Bloom 3] 4.33.4.2 CN1.B Soluciones de ecuaciones de una variable (0 horas) [Nivel Bloom 4] 4.33.4.3 CN1.C Interpolacin y aproximacin polinomial (0 horas) [Nivel Bloom 4] 4.33.4.4 CN1. Diferenciacin numrica e integracin numrica (0 horas) [Nivel Bloom 4] 4.33.4.5 CN1.E Problemas de valor inicial para ecuaciones diferenciales ordinarias (0 horas) [Nivel Bloom 3] 4.33.4.6 CN1.F Mtodos iterativos en el lgebra matricial (0 horas) [Nivel Bloom 3]
354

4.33.4.1 CN1.A Introduccin (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. Aritmtica de punto flotante. 2. Error, estabilidad, convergencia. 3. Series de Taylor. Objetivos 1. Comparar y contrastar las tcnicas de anlisis numrico presentadas en esta unidad. 2. Definir error, estabilidad y conceptos de precisin de mquina, as como tambin la inexactitud de las aproximaciones computacionales. 3. Identificar las fuentes de inexactitud en aproximaciones computacionales. 4. Disear, codificar, probar y depurar programas que implementen mtodos numricos.

4.33.4.2 CN1.B Soluciones de ecuaciones de una variable (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. Soluciones iterativas para encontrar races (Mtodo de Newton). Objetivos 1. Comparar y contrastar las tcnicas de anlisis numrico presentadas en esta unidad. 2. Definir error, estabilidad y conceptos de precisin de mquina, as como tambin la inexactitud de las aproximaciones computacionales. 3. Identificar las fuentes de inexactitud en aproximaciones computacionales. 4. Disear, codificar, probar y depurar programas que implementen mtodos numricos. 4.33.4.3 CN1.C Interpolacin y aproximacin polinomial (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. Ajuste de curva, funcin de aproximacin. Objetivos 1. Comparar y contrastar las tcnicas de anlisis numrico presentadas en esta unidad. 2. Definir error, estabilidad y conceptos de precisin de mquina, as como tambin la inexactitud de las aproximaciones computacionales.
355

3. Identificar las fuentes de inexactitud en aproximaciones computacionales. 4. Disear, codificar, probar y depurar programas que implementen mtodos numricos. 4.33.4.4 CN1. Diferenciacin numrica e integracin numrica (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,Zill, 2002] Tpicos 1. Diferenciacin numrica e integracin (regla de Simpson). 2. Mtodos implcito y explicito. Objetivos 1. Comparar y contrastar las tcnicas de anlisis numrico presentadas en esta unidad. 2. Definir error, estabilidad y conceptos de precisin de mquina, as como tambin la inexactitud de las aproximaciones computacionales. 3. Identificar las fuentes de inexactitud en aproximaciones computacionales. 4. Disear, codificar, probar y depurar programas que implementen mtodos numricos. 4.33.4.5 CN1.E Problemas de valor inicial para ecuaciones diferenciales ordinarias (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Ecuaciones diferenciales (Mtodo de Euler). Objetivos 1. Comparar y contrastar las tcnicas de anlisis numrico presentadas en esta unidad. 2. Definir error, estabilidad y conceptos de precisin de mquina, as como tambin la inexactitud de las aproximaciones computacionales. 3. Identificar las fuentes de inexactitud en aproximaciones computacionales. 4. Disear, codificar, probar y depurar programas que implementen mtodos numricos. 4.33.4.6 CN1.F Mtodos iterativos en el lgebra matricial (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. lgebra lineal. 2. Diferencia finita. Objetivos

356

1. Comparar y contrastar las tcnicas de anlisis numrico presentadas en esta unidad. 2. Definir error, estabilidad y conceptos de precisin de mquina, as como tambin la inexactitud de las aproximaciones computacionales. 3. Identificar las fuentes de inexactitud en aproximaciones computacionales. 4. Disear, codificar, probar y depurar programas que implementen mtodos numricos.

4.34 FG206. Sociologa (Electivo)


Semestre: 5to Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.34.1 Justificacin 4.34.2 Objetivos Generales 4.34.3 Contribucin a los resultados 4.34.4 Unidades o 4.34.4.1 La Sociedad (0 horas) [Nivel Bloom 2] o 4.34.4.2 La Investigacin (0 horas) [Nivel Bloom 2] o 4.34.4.3 Procesos de Socializacin (0 horas) [Nivel Bloom 2] o 4.34.4.4 Organizacin de la Sociedad (0 horas) [Nivel Bloom 2] o 4.34.4.5 Cambios en la Sociedad (0 horas) [Nivel Bloom 2] o 4.34.4.6 Comunicacin y Tecnologa (0 horas) [Nivel Bloom 2]

4.34.1 Justificacin La complejidad de la vida social y la rapidez con que se suceden los cambios sociales requieren de explicaciones que vayan mas all del sentido comn, en este sentido la sociologa aporta con nuevas ideas y perspectivas de explicacin a los problemas que la modernidad ha ido generando. 4.34.2 Objetivos Generales 1. Identificar las tendencias clasicas y actuales en sociologa. 4.34.3 Contribucin a los resultados n) Nivel Bloom 3
357

Aplicar conocimientos de humanidades en su labor profesional. 4.34.4 Unidades

Subsecciones

4.34.4.1 La Sociedad (0 horas) [Nivel Bloom 2] 4.34.4.2 La Investigacin (0 horas) [Nivel Bloom 2] 4.34.4.3 Procesos de Socializacin (0 horas) [Nivel Bloom 2] 4.34.4.4 Organizacin de la Sociedad (0 horas) [Nivel Bloom 2] 4.34.4.5 Cambios en la Sociedad (0 horas) [Nivel Bloom 2] 4.34.4.6 Comunicacin y Tecnologa (0 horas) [Nivel Bloom 2]

4.34.4.1 La Sociedad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. La sociedad Factores que identifican a las sociedades Evolucin de las sociedades La sociologa como ciencia La Relacin Principal Realidad Social y conocimiento de la realidad social.

Objetivos 1. Discutir el concepto de sociedad y los elementos que permiten clasificarla 2. La sociologa como Ciencia. 4.34.4.2 La Investigacin (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Proceso de Investigacin 2. Rol de la teora en la Investigacin 3. La investigacin cuantitativa 4. Encuesta 5. Censo 6. Modelos 7. La investigacin cualitativa 8. Grupo focal 9. Observacin 10. Entrevista 11. La historia de vida Objetivos
358

1. Analizar los mtodos de la Investigacin Sociolgica. 4.34.4.3 Procesos de Socializacin (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. La cultura una visin Global. La socializacin a travs del curso de la vida. Grupos y Organizaciones sociales Las estructuras sociales

Objetivos 1. Analizar los procesos de socializacin y factores que la condicionan. 4.34.4.4 Organizacin de la Sociedad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Estratificacin social 2. Estratificacin Racial 3. Estratificacin de genero Objetivos 1. Analizar las formas en que se organiza y estratifica la sociedad. 4.34.4.5 Cambios en la Sociedad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. Globalizacin Impacto en nuestras vidas Los efectos en las sociedades subdesarrolladas Las desigualdades sociales

Objetivos 1. Anlisis de un mundo en cambio

4.34.4.6 Comunicacin y Tecnologa (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Los medios de comunicacin El Impacto de la Televisin Las teoras de la comunicacin social Nuevas tecnologas de comunicacin Globalizacin y medios de comunicacin
359

Objetivos 1. Anlisis de un mundo en cambio

4.35 FG210. tica (Obligatorio)


Semestre: 5to Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: o FG107. Fundamentos Antropolgicos de la Ciencia (3er Sem) Slabo: Slabo (PDF)

Subsecciones

4.35.1 Justificacin 4.35.2 Objetivos Generales 4.35.3 Contribucin a los resultados 4.35.4 Unidades o 4.35.4.1 La tica Filosfica (9 horas) [Nivel Bloom 2] o 4.35.4.2 La accin moral (15 horas) [Nivel Bloom 4] o 4.35.4.3 La vida virtuosa (12 horas) [Nivel Bloom 4] o 4.35.4.4 Lo ticamente correcto y su conocimiento (9 horas) [Nivel Bloom 4]

4.35.1 Justificacin Brindar al alumno criterios de discernimiento general y particular, as como pautas morales para que con ellos oriente su conducta personal, de modo que se oriente a su realizacin integral mediante actos queridos, conscientes, libres y responsables. 4.35.2 Objetivos Generales 1. Formar la conciencia del estudiante para que pueda conducirse moralmente en el mbito personal y profesional. 4.35.3 Contribucin a los resultados e) Nivel Bloom 2 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. ) Nivel Bloom 2
360

Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. n) Nivel Bloom 2 Aplicar conocimientos de humanidades en su labor profesional. 4.35.4 Unidades

Subsecciones

4.35.4.1 La tica Filosfica (9 horas) [Nivel Bloom 2] 4.35.4.2 La accin moral (15 horas) [Nivel Bloom 4] 4.35.4.3 La vida virtuosa (12 horas) [Nivel Bloom 4] 4.35.4.4 Lo ticamente correcto y su conocimiento (9 horas) [Nivel Bloom 4]

4.35.4.1 La tica Filosfica (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. Presentacin del curso. Lo tico y moral. La tica como rama de la filosofa. La necesidad de la metafsica. La experiencia moral. El problema del relativismo y su solucin.

Objetivos 1. Presentar una primera nocin de la tica y de los problemas relativos a esta rama de la filosofa. 4.35.4.2 La accin moral (15 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. Caracterizacin del actuar humano. 2. Libertad, conciencia y voluntariedad. Distintos niveles de libertad. Factores que afectan la voluntariedad. 3. El papel de la afectividad en la moralidad. 4. La felicidad como fin ltimo del ser humano. Objetivos

361

1. Hacer un anlisis del acto humano, presentando sus condiciones y especificando su moralidad. 4.35.4.3 La vida virtuosa (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,] Tpicos 1. Qu se entiende por virtud. 2. La virtud moral: caracterizacin y modo de adquisicin; el carcter dinmico de la virtud. 3. Relacin entre las distintas virtudes ticas. Las virtudes cardinales. Los vicios. Objetivos 1. Presentar el ideal filosfico de la vida virtuosa destacando algunas virtudes fundamentales. 4.35.4.4 Lo ticamente correcto y su conocimiento (9 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. La correccin en lo tico. El conocimiento de lo ticamente correcto. La llamada ``recta razn'' y la ``verdad prctica''. Las leyes morales: ley natural y ley positiva. La conciencia moral: definicin, tipos, deformaciones. La valoracin moral de las acciones concretas.

Objetivos 1. Presentar las nociones de recta razn, conciencia moral, y moral natural destacando el conocimiento de la ley moral natural.

4.36 FG209. Psicologa (Electivo)


Semestre: 5to Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.36.1 Justificacin
362

4.36.2 Objetivos Generales 4.36.3 Contribucin a los resultados 4.36.4 Unidades o 4.36.4.1 Primera Unidad (0 horas) [Nivel Bloom 3] o 4.36.4.2 Segunda Unidad (0 horas) [Nivel Bloom 2] o 4.36.4.3 Tercera Unidad (0 horas) [Nivel Bloom 2] o 4.36.4.4 Cuarta Unidad (0 horas) [Nivel Bloom 2] o 4.36.4.5 Quinta Unidad (0 horas) [Nivel Bloom 2] o 4.36.4.6 Sexta Unidad (0 horas) [Nivel Bloom 2]

4.36.1 Justificacin Es necesario que los alumnos puedan llegar a entender los principios fundamentales en los que se basa la Psicologa general desde un aporte cientfico pero tambin critico tomando en cuenta a la persona como unidad biopsicoespiritual. 4.36.2 Objetivos Generales 1. Identificar las tendencias clasicas y actuales en psicologa. 4.36.3 Contribucin a los resultados n) Nivel Bloom 2 Aplicar conocimientos de humanidades en su labor profesional. 4.36.4 Unidades

Subsecciones

4.36.4.1 Primera Unidad (0 horas) [Nivel Bloom 3] 4.36.4.2 Segunda Unidad (0 horas) [Nivel Bloom 2] 4.36.4.3 Tercera Unidad (0 horas) [Nivel Bloom 2] 4.36.4.4 Cuarta Unidad (0 horas) [Nivel Bloom 2] 4.36.4.5 Quinta Unidad (0 horas) [Nivel Bloom 2] 4.36.4.6 Sexta Unidad (0 horas) [Nivel Bloom 2]

4.36.4.1 Primera Unidad (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Conceptos Bsicos: Ciencia de la Psicologa. 2. Concepto de Campo de aplicacin. 3. Introspeccin, extrospeccin, anlisis y experimentacin. Objetivos
363

1. Identificacin del rol de la psicologa en sus diversos contextos. 2. Precisiones sobre la Psicologa y su importancia. 3. Destacar los diferentes modelos de investigacin en psicologa. 4.36.4.2 Segunda Unidad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Tipologas del temperamento. 2. Estructuras de personalidad. 3. Configuracin de los aspectos cognitivos, emocionales y volitivos. 4. Teoras de corte psicoanaltico. 5. Teoras cognitivo conductuales. 6. Teoras de Aprendizaje e imitacin. 7. Teoras humanistas. 8. Desarrollo de la inteligencia cognitiva y la inteligencia emocional. 9. Desarrollo sensorial: percepcin, atencin. 10. Desarrollo emocional: emociones, afectos, motivaciones. Objetivos 1. Identificar la conformacin de los aspectos ligados al desarrollo del temperamento, 2. carcter y personalidad. 3. Conocer las teoras sobre fundamentos de la personalidad. 4. Ubicar los aspectos mas relevantes d as estructuras de personalidad. 4.36.4.3 Tercera Unidad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Etapa Prenatal: el valor de la vida humana. Infancia y Niez: forjando las bases. Adolescencia: Etapa del despliegue y potencialidades. Adultez senectud: Familia y trabajo. El proceso de salud-enfermedad. Principales trastornos psicolgicos

Objetivos 1. Comprensin del proceso evolutivo y el desarrollo humano en sus diversos aspectos. 2. Analizar las variables de adaptacin y desadaptacin psicolgica. 4.36.4.4 Cuarta Unidad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Definicin del estrs, la calcificacin, los estresares psicosociales. 2. El proceso de enfermar por estrs. El sndrome general de adaptacin.
364

3. Relacionar los aspectos de las vivencias emocionales y su repercusin en el orden de lo anmico pero tambin de lo orgnico incluso, de lo inmunolgico. 4. Afrontamiento asertivo vs. Afrontamiento nocivo. Objetivos 1. Conceptualizacin del estrs y los procesos de enfermar en lo cotidiano. 2. Conocer los aspectos de la Psiconeuroinmunologa: emociones, inmunologa, psicologa. 3. Estrs y capacidad de Afrontamiento. 4. Estrs en la vida cotidiana y el sndrome del Bournaut o estrs laboral 4.36.4.5 Quinta Unidad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Conceptualizacin, Familia, topologa, adaptacin, disfuncin. 2. Axiomas de la comunicacin, comunicacin analgica y digital, tropiezos en la comunicacin, PNL. 3. Anlisis de los estilos de liderazgo en la comunicacin intra e interpersonal. Objetivos 1. Diferenciacin entre los diversos manejos de interaccin en el contexto familiar. 2. Conocimiento de los aspectos vinculados a Comunicacin interpersonal. 3. Liderazgo y comunicacin. 4.36.4.6 Sexta Unidad (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Personas, valores y familia. Inteligencia emocional. Sicopatologa y desadaptacin. Asertividad y comunicacin. Autoestima y liderazgo.

Objetivos 1. Trabajos de discusin, seminarios y talleres por grupos en diversos tpicos tratados en el curso

4.37 CS225T. Sistemas Operativos (Obligatorio)


Semestre: 6to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos:
365

CS220T. Arquitectura de Computadores (3er Sem)

Slabo: Slabo (PDF)

Subsecciones

4.37.1 Justificacin 4.37.2 Objetivos Generales 4.37.3 Contribucin a los resultados 4.37.4 Unidades o 4.37.4.1 AL/Algoritmos Distribuidos. (3 horas) [Nivel Bloom 3] o 4.37.4.2 OS/Visin General de los Sistemas Operativos. (3 horas) [Nivel Bloom 4] o 4.37.4.3 OS/Principios de los Sistemas Operativos. (6 horas) [Nivel Bloom 4] o 4.37.4.4 OS/Concurrencia. (9 horas) [Nivel Bloom 3] o 4.37.4.5 OS/Planeamiento y Despacho. (6 horas) [Nivel Bloom 5] o 4.37.4.6 OS/Administracin de Memoria. (6 horas) [Nivel Bloom 5] o 4.37.4.7 OS/Administracin de Dispositivos. (6 horas) [Nivel Bloom 5] o 4.37.4.8 OS/Seguridad y Proteccin. (6 horas) [Nivel Bloom 2] o 4.37.4.9 OS/Sistema de Archivos. (6 horas) [Nivel Bloom 5] o 4.37.4.10 OS/Sistemas Empotrados y de Tiempo Real. (6 horas) [Nivel Bloom 4] o 4.37.4.11 OS/Tolerancia a Fallas. (3 horas) [Nivel Bloom 2] o 4.37.4.12 OS/Evaluacin del Desempeo de Sistemas. (3 horas) [Nivel Bloom 2] o 4.37.4.13 OS/Scripting. (3 horas) [Nivel Bloom 3]

4.37.1 Justificacin Un Sistema Operativo es un programa que acta como intermediario entre el usuario y la mquina. El propsito de un sistema operativo es proveer un ambiente en que el usuario pueda ejecutar sus aplicaciones. En este curso se estudiar el diseo del ncleo de los sistemas operativos. Adems el curso contempla actividades prcticas en donde se resolvern problemas de concurrencia y se modificar el funcionamiento de un pseudo Sistema Operativo. 4.37.2 Objetivos Generales 1. Conocer los elementos bsicos del diseo de los sistemas operativos
366

4.37.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. e) Nivel Bloom 2 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 2 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Nivel Bloom 4 Incorporarse a un proceso de aprendizaje profesional continuo. 4.37.4 Unidades

Subsecciones

4.37.4.1 AL/Algoritmos Distribuidos. (3 horas) [Nivel Bloom 3] 4.37.4.2 OS/Visin General de los Sistemas Operativos. (3 horas) [Nivel Bloom 4] 4.37.4.3 OS/Principios de los Sistemas Operativos. (6 horas) [Nivel Bloom 4] 4.37.4.4 OS/Concurrencia. (9 horas) [Nivel Bloom 3] 4.37.4.5 OS/Planeamiento y Despacho. (6 horas) [Nivel Bloom 5] 4.37.4.6 OS/Administracin de Memoria. (6 horas) [Nivel Bloom 5] 4.37.4.7 OS/Administracin de Dispositivos. (6 horas) [Nivel Bloom 5] 4.37.4.8 OS/Seguridad y Proteccin. (6 horas) [Nivel Bloom 2] 4.37.4.9 OS/Sistema de Archivos. (6 horas) [Nivel Bloom 5] 4.37.4.10 OS/Sistemas Empotrados y de Tiempo Real. (6 horas) [Nivel Bloom 4] 4.37.4.11 OS/Tolerancia a Fallas. (3 horas) [Nivel Bloom 2] 4.37.4.12 OS/Evaluacin del Desempeo de Sistemas. (3 horas) [Nivel Bloom 2] 4.37.4.13 OS/Scripting. (3 horas) [Nivel Bloom 3]

4.37.4.1 AL/Algoritmos Distribuidos. (3 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,] Tpicos

367

1. 2. 3. 4.

Consenso y eleccin. Deteccin de finalizacin. Tolerancia a fallas. Estabilizacin.

Objetivos 1. 2. 3. 4. 5. Explicar el paradigma distribuido. Explicar un algoritmo distribuido simple. Determinar cuando usar los algoritmos de consenso o eleccin. Distinguir entre relojes fsicos y lgicos. Describir el ordenamiento relativo de eventos en un algoritmo distribuido.

4.37.4.2 OS/Visin General de los Sistemas Operativos. (3 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. Rol y propsito de los sistemas operativos. Historia del desarrollo de los sistemas operativos. Funcionalidad de un sistema operativo tpico. Mecanismos de soporte a modelos cliente-servidor, dispositivos hand-held. Asuntos de diseo (eficiencia, robustez, flexibilidad, portabilidad, seguridad, compatibilidad). 6. Influencias de la seguridad, redes, multimedia, ventanas. Objetivos 1. Explicar los objetivos y funciones de los sistemas operativos modernos. 2. Describir como los sistemas operativos han evolucionado en el tiempo desde sistemas primitivos batch a sofisticados sistemas multiusuarios. 3. Analizar las ventajas y desventajas inherentes en el diseo de sistemas operativos. 4. Describir las funciones de un sistema operativo contemporneo con respecto a la conveniencia, eficiencia y habilidad para evolucionar. 5. Discutir sistemas operativos de tipos distribuido, para redes y cliente-servidor y como ellos difieren de un sistema operativo para un nico usuario. 6. Identificar las amenazas potenciales a sistemas operativos y el diseo de caractersticas de seguridad para resguardarlos. 7. Describir como los temas tales como el software de cdigo abierto y el incremento del uso de Internet estn influyendo el diseo de sistemas operativos. 4.37.4.3 OS/Principios de los Sistemas Operativos. (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,]

368

Tpicos 1. Mtodos de estructuracin (monolticos, por capas, modulares, modelos de microkernel). 2. Abstracciones, procesos y recursos. 3. Conceptos de Application Program Interfaces (APIs). 4. Necesidad de las aplicaciones y evolucin de las tcnicas de hardware y software. 5. Organizacin de dispositivos. 6. Interrupciones: mtodos e implementaciones. 7. Concepto de estado de usuario/sistema y proteccin, transicin al modo Kernel. Objetivos 1. Explicar el concepto de una capa lgica. 2. Explicar los beneficios de la construccin de capas abstractas de forma jerrquica. 3. Defender la necesidad de APIs y middleware. 4. Describir como los recursos computacionales son utilizados por software de aplicacin y administrados por software del sistema. 5. Contrastar el modo usuario y el modo kernel en un sistema operativo. 6. Discutir las ventajas y desventajas de utilizar procesamiento de interrupciones. 7. Comparar y contrastar las diversas formas de estructurar un sistema operativo tales como orientado a objetos, modular, microkernel y por capas. 8. Explicar el uso de una lista de dispositivos y una cola de controladores drivers de entrada y salida. 4.37.4.4 OS/Concurrencia. (9 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,] Tpicos 1. Estados y diagramas de estados. 2. Estructuras (lista de procesos listos para ejecucin, bloques de control de procesos, etc). 3. Despachos y cambio de contexto. 4. El rol de las interrupciones. 5. Ejecucin concurrente: ventajas y desventajas. 6. El problema de exclusin mutua y algunas soluciones. 7. (Deadlock): causas, condiciones y prevencin. 8. Modelos y mecanismos de sincronizacin (semforos, monitores, variables de condicin y punto de encuentro rendezvous). 9. Problemas del productor-consumidor y sincronizacin. 10. Problemas de multiprocesamiento (Spin-Locks, reentrada). Objetivos
369

1. Describir la necesidad de la concurrencia dentro de la estructura de un sistema operativo. 2. Demostrar los problemas potenciales en tiempo de ejecucin originados por la operacin concurrente de muchas tareas separadas. 3. Resumir la gama de mecanismos que pueden ser empleados en el nivel de sistemas operativos para entender los sistemas concurrentes y describir los beneficios de cada uno. 4. Explicar los diferentes estados que una tarea podra atravesar y las estructuras de datos necesarias para soportar la administracin de muchas tareas. 5. Listar los diferentes mtodos para resolver el problema de la exclusin mutua en un sistema operativo. 6. Describir las razones por las cuales utilizar interrupciones, despachos y cambio de contexto para soportar la concurrencia en un sistema operativo. 7. Crear estados y diagramas de transicin para el dominio de problemas simples. 8. Discutir la utilidad de estructuras de datos, tales como pilas y colas en el manejo de concurrencia. 9. Explicar las condiciones que nos conducen al Deadlock 4.37.4.5 OS/Planeamiento y Despacho. (6 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. Planeamiento preventivo y no preventivo. Planeamiento y polticas. Procesos y hebras. Deadlines y preocesos de tiempo real.

Objetivos 1. Comparar y contrastar los algoritmos comunes usados para el planeamiento preventivo y no preventivo de tareas en sistemas operativos, tales como prioridad, desempeo, comparacin y esquemas de particin justa. 2. Describir las relaciones entre los algoritmos de planeamiento y dominios de aplicacin. 3. Discutir los tipos de planeamiento del procesador tales como: corto plazo (short-term), mediano plazo (medium-term), largo plazo (long-term) y entrada/salida. 4. Describir la diferencia entre procesos y hebras. 5. Comparar y contrastar las aproximaciones dinmicas y estticas de planeamiento en tiempo real. 6. Discutir la necesidad de planeamiento preventivo y de plazos (deadline). 7. Identificar las formas en que la lgica incorporada en los algoritmos de planeamiento son aplicables a otros dominios, tales como entrada/salida de disco, planeamiento de red, planeamiento del proyecto y otros problemas no relacionados a la computacin.

370

4.37.4.6 OS/Administracin de Memoria. (6 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,,] Tpicos 1. Revisin de la memoria fsica y de la administracin de la memoria de hardware. 2. Paginamiento y memoria virtual. 3. Conjuntos de trabajos y eliminacin de memoria trashing. 4. Caching. Objetivos 1. Explicar la jerarqua de la memoria y los puntos de equilibrio entre costo y desempeo. 2. Explicar el concepto de memoria virtual y cmo esta es soportada en hardware y software. 3. Resumir los principios de memoria virtual aplicados a caching, paginamiento y segmentacin. 4. Evaluar los intercambios en trminos de tamao de memoria (memoria principal, memoria cache, memoria auxiliar) y velocidad del procesador. 5. Sustentar las distintas opciones de asignacin de memoria a las tareas, citando las ventajas de cada una. 6. Describir las razones y el uso de la memoria cache. 7. Discutir el concepto de trashing, tanto en trminos del porqu de su ocurrencia y de las tcnicas usadas para reconocer y administrar el problema. 4.37.4.7 OS/Administracin de Dispositivos. (6 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. Caractersticas de dispositivos seriales y paralelos. Diferencias de abstraccin de dispositivos. Estrategias de buffering. Acceso directo a memoria. Recuperacin de fallas.

Objetivos 1. Explicar la diferencia clave entre dispositivos seriales y paralelos, e identificar las condiciones en las cuales cada uno es apropiado. 2. Identificar las relaciones entre el hardware fsico y los dispositivos virtuales mantenidos por el sistema operativo. 3. Explicar elbufferingy describir las estrategias de como implementarlo.

371

4. Diferenciar los mecanismos usados en interfaces con diversos dispositivos (incluyendo dispositivoshandheld, redes, multimedia) en una computadora y explicar las implicancias de esto para el diseo de un sistema operativo. 5. Describir las ventajas y desventajas del acceso directo a memoria y discutir las circunstancias en las cuales su uso es garantizado. 6. Identificar los requerimientos para la recuperacin de fallas. 7. Implementar un driver simple para un conjunto de posibles dispositivos. 4.37.4.8 OS/Seguridad y Proteccin. (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. Visin paranormica de la seguridad del sistema. Poltica y mecanismos de separacin. Mtodos de seguridad y dispositivos. Proteccin, control de acceso y autenticacin. Copias de seguridad.

Objetivos 1. Defender las necesidades de proteccin y seguridad y el rol de las consideraciones ticas en el uso de la computadores. 2. Listar las caractersticas y limitaciones de un sistema operativo usado para brindar proteccin y seguridad. 3. Explicar los mecanismos disponibles en un sistema operativo para el control de acceso a recursos. 4. Llevar a cabo tareas simples de administracin del sistema (sysadmin) de acuerdo a una poltica de seguridad, por ejemplo creacin de cuentas, modificacin de permisos, aplicacin de parches de seguridad y copias de seguridad de rutina. 4.37.4.9 OS/Sistema de Archivos. (6 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,,] Tpicos 1. Sistemas de archivos: particionamiento, montaje/desmontaje, sistemas de archivos virtuales.s 2. Directorios: contenidos y estructura. 3. Sistemas de archivos: particionamiento, montaje/desmontaje, sistemas de archivos virtuales. 4. Tcnicas de implementacin estndares. 5. Archivos mapeados en memoria. 6. Sistemas de archivos de propsito especial. 7. Nombrado, bsqueda, acceso, copias de respaldo.

372

Objetivos 1. Listar todas las consideraciones que soportan los sistemas de archivos. 2. Comparar y contrastar los diferentes abordajes de la organizacin de archivos reconociendo las fortalezas y debilidades de cada uno. 3. Sumarizar como el desarrollo del hardware ha conducido los cambios en nuestras prioridades para el diseo y la administracin de sistemas de archivos. 4.37.4.10 OS/Sistemas Empotrados y de Tiempo Real. (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,] Tpicos 1. Planeamiento de tareas y procesos. 2. Requerimientos de la administracin de memoria/disco en un ambiente de tiempo real. 3. Fallos, riesgos y recuperacin. 4. Preocupaciones especiales en sistemas de tiempo real. Objetivos 1. Describir que hace a un sistema ser un sistema en tiempo real. 2. Explicar la presencia y describir las caractersticas de latencia en sistemas de tiempo real. 3. Resumir las preocupaciones especiales que presentan los sistemas en tiempo real y como esas preocupaciones son abordadas. 4.37.4.11 OS/Tolerancia a Fallas. (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. Conceptos fundamentales: sistemas confiables y disponibles. Redundancia espacial y temporal. Mtodos usados para implementar la tolerancia a fallas. Ejemplos de sistemas confiables.

Objetivos 1. Explicar la relevancia de los trminos: tolerancia a fallas, confiabilidad y disponibilidad. 2. Delinear un conjunto de mtodos para implementar la tolerancia a fallas en un sistema operativo. 3. Explicar como un sistema operativo puede continuar funcionando despus de que una falla ocurre.

373

4.37.4.12 OS/Evaluacin del Desempeo de Sistemas. (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,] Tpicos 1. Por qu el desempeo de sistemas necesita ser evaluado?. 2. Qu se evalua?. 3. Polticas para caching, paginamiento, planeamiento, administracin de memoria, seguridad y otros. 4. Modelos de evaluacin: determinsticos, analticos, de simulacin u otros especficos de la implementacin. 5. Cmo recolectar datos de evaluacin (perfiles mecanismos de rastreo). Objetivos 1. Describir las mtricas de desempeo utilizadas para determinar como el sistema funciona. 2. Explicar los principales modelos usados para evaluar un sistema. 4.37.4.13 OS/Scripting. (3 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. Scripting y el rol de los lenguajes scripts. Comandos bsicos del sistema. Creacin de scripts, paso de parmetros. Ejecucin de un script. Influencias del scripting en la programacin.

Objetivos 1. Resumir un conjunto de comandos tpicos proveidos por el sistema operativo. 2. Demostrar la funcionalidad tpica de un lenguaje script e interpretar las implicaciones para la programacin. 3. Demostrar los mecanismos de implementacin de scripts y el rol de los scripts en la implementacin e integracin del sistema. 4. Implementar un script simple que muestre el paso de parmetros.

4.38 CS260. Lgica Computacional (Obligatorio)


Semestre: 6to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS211T. Teora de la Computacin (4to Sem)
374

Slabo: Slabo (PDF)

Subsecciones

4.38.1 Justificacin 4.38.2 Objetivos Generales 4.38.3 Contribucin a los resultados 4.38.4 Unidades o 4.38.4.1 Lgica de Predicados de Primer Orden (20 horas) [Nivel Bloom 3] o 4.38.4.2 Intensificacin en Programacin (20 horas) [Nivel Bloom 3] o 4.38.4.3 Extensiones y otras Lgicas (20 horas) [Nivel Bloom 5]

4.38.1 Justificacin El presente es un curso avanzado de lgica para informticos. De entre las distintas aplicaciones de la lgica en la informtica, se pueden destacar, entre otras, las tcnicas de verificacin formal de programas, la programacin lgica o la inteligencia artificial. Como complemento a los fundamentos tericos del curso, se introduce el problema de la demostracin automtica de teoremas. Se presentan diferentes heursticas para la demostracin automtica de teoremas, as como distintos sistemas implementados con los que comprobar la potencia de las tcnicas expuestas. Los sistemas de demostracin automtica de teoremas resultan particularmente tiles en el desarrollo de mtodos formales en la ingeniera del software. 4.38.2 Objetivos Generales 1. Conocer los mtodos de la lgica (lgica de predicados y de la lgica modal) que ms se utilizan hoy en da en ciencia de la computacin, ingeniera del software e inteligencia artificial. 2. Desarrollar habilidades y aptitudes para la representacin formal del conocimiento, la operacin simblica sobre sistemas formales, la demostracin de teoremas y la interpretacin semntica. 3. Habilitar al alumno para saber pensar de forma lgica, analtica, crtica y estructurada y con ello argumentar e inferir correctamente. 4. Comprender los mecanismos computacionales asociados a las problemticas de la demostracin automtica y la programacin lgica, y descubrir la importancia del control en su resolucin. 4.38.3 Contribucin a los resultados a) Nivel Bloom 4

375

Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. .38.4 Unidades

Subsecciones

4.38.4.1 Lgica de Predicados de Primer Orden (20 horas) [Nivel Bloom 3] 4.38.4.2 Intensificacin en Programacin (20 horas) [Nivel Bloom 3] 4.38.4.3 Extensiones y otras Lgicas (20 horas) [Nivel Bloom 5]

4.38.4.1 Lgica de Predicados de Primer Orden (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. Sintaxis y Semntica El mtodo axiomtico y el mtodo interpretativo Demostracin automtica de teoremas Los agentes inteligentes y la lgica

Objetivos 1. Fundamentar que la lgica constituye la base matemtica del software 2. Desarrollar slidas bases formales mediante la lgica: en el proceso de representacin del conocimiento, as como en el proceso deductivo. 4.38.4.2 Intensificacin en Programacin (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Programacin Lgica 2. Programacin Lgica Avanzada 3. La sntesis de programas a partir de especificaciones

376

Objetivos 1. Presentar los conceptos fundamentales del paradigma de programacin lgica 2. Presentar algunas tcnicas de Anlisis y Depuracin de programas lgicos 3. Presentar una introduccin a la programacin automtica. 4.38.4.3 Extensiones y otras Lgicas (20 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. Lgicas Multivalentes Lgica Hoare Lgica Modal Lgica Temporal

Objetivos 1. Representar aspectos complejos de la realidad en la que no es factible asignar asignar un rango de dos valores de verdad a los enunciados( lgica trivalente y lgica difusa) 2. Establecer las nociones fundamentales de especificacin formal y verificacin de programas

4.39 CS390. Ingeniera de Software II (Obligatorio)


Semestre: 6to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS290T. Ingeniera de Software I (5to Sem) Slabo: Slabo (PDF)

Subsecciones

4.39.1 Justificacin 4.39.2 Objetivos Generales 4.39.3 Contribucin a los resultados 4.39.4 Unidades o 4.39.4.1 SE/Desarrollo de Sistemas Especializados. (12 horas) [Nivel Bloom 4] o 4.39.4.2 SE/Herramientas y Entornos de Software. (12 horas) [Nivel Bloom 3] o 4.39.4.3 SE/Validacin y verificacin de software. (12 horas) [Nivel Bloom 4]
377

o o o

4.39.4.4 SE/Evolucin del Software. (12 horas) [Nivel Bloom 3] 4.39.4.5 SE/Administracin de Proyectos de Software. (12 horas) [Nivel Bloom 3] 4.39.4.6 SE/Evaluacin de riesgos. (6 horas) [Nivel Bloom 3]

4.39.1 Justificacin Los tpicos de este curso extienden las ideas del diseo y desarrollo de software desde la secuencia de introduccin a la programacin para abarcar los problemas encontrados en proyectos de gran escala. Es una visin ms amplia y completa de la Ingeniera de Software apreciada desde un punto de vista de Proyectos. 4.39.2 Objetivos Generales 1. Capacitar a los alumnos para formar parte y definir equipos de desarrollo de software que afronten problemas de envergadura real. 2. Familiarizar a los alumnos con el proceso de administracin de un proyecto de software de tal manera que sea capaz de crear, mejorar y utilizar herramientas y mtricas que le permitan realizar la estimacin y seguimiento de un proyecto de software. 3. Crear , evaluar e implementar un plan de prueba para segmentos de cdigo de tamao medio , Distinguir entre los diferentes tipos de pruebas , sentar las bases para crear, mejorar los procedimientos de prueba y las herramientas utilizadas con ese propsito. 4. Seleccionar con justificacin un apropiado conjunto de herramientas para soportar el desarrollo de un rango de productos de software. 5. Crear , mejorar y utilizar los patrones existentes para el mantenimiento de software . Dar a conocer las caractersticas y patrones de diseo para la reutilizacin de software. 6. Identificar y discutir diferentes sistemas especializados , crear , mejorar y utilizar los patrones especializados para el diseo , implementacin , mantenimiento y prueba de sistemas especializados 4.39.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn.

378

f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. k) Nivel Bloom 3 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.39.4 Unidades

Subsecciones

4.39.4.1 SE/Desarrollo de Sistemas Especializados. (12 horas) [Nivel Bloom 4] 4.39.4.2 SE/Herramientas y Entornos de Software. (12 horas) [Nivel Bloom 3] 4.39.4.3 SE/Validacin y verificacin de software. (12 horas) [Nivel Bloom 4] 4.39.4.4 SE/Evolucin del Software. (12 horas) [Nivel Bloom 3] 4.39.4.5 SE/Administracin de Proyectos de Software. (12 horas) [Nivel Bloom 3] 4.39.4.6 SE/Evaluacin de riesgos. (6 horas) [Nivel Bloom 3]

4.39.4.1 SE/Desarrollo de Sistemas Especializados. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Pressman, 2004,Blum, 1992,Schach, 2004,Wang and King, 2000,Keyes, 2004,Windle and Abreo, 2002,Priest and Sanchez, 2001,Schach, 2004,Montangero, 1996,Ambriola, 2001,Conradi, 2000,Oquendo, 2003] Tpicos 1. Sistemas en tiempo real. 2. Sistemas cliente-servidor. 3. Sistemas distribuidos.
379

4. Sistemas paralelos. 5. Sistemas basados en web. 6. Sistemas de alta integridad. Objetivos 1. Identificar y discutir diferentes sistemas especializados. 2. Discutir el ciclo de vida y tpicos sobre el proceso de software en el mbito de sistemas diseados para un contexto especializado incluyendo sistemas que podran tener que operar en un modo de operacin degradado. 3. Seleccionar, con la justificacin apropiada, mtodos que darn como resultado el desarrollo eficiente y efectivo y el mantenimiento de sistemas de software especializado. 4. Dado un contexto especfico y un conjunto de tpicos profesionales relacionados, discutir como, un ingeniero de software envuelto en el desarrollo de sistemas especializados, debe de responder a estos tpicos. 5. Sintetizar los temas tcnicos centrales asociados con la implementacin del crecimiento de sistemas especializados.. 4.39.4.2 SE/Herramientas y Entornos de Software. (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2004,Blum, 1992,Schach, 2004,Wang and King, 2000,Keyes, 2004,Windle and Abreo, 2002,Priest and Sanchez, 2001,Schach, 2004,Montangero, 1996,Ambriola, 2001,Conradi, 2000,Oquendo, 2003] Tpicos 1. Entornos de programacin. 2. Anlisis de requerimientos y herramientas de modelamiento de diseo. 3. Herramientas de pruebas incluyendo herramientas de anlisis esttico y dinmico. 4. Herramientas de administracin de configuracin. 5. Manejo de la configuracin y herramientas de control de versin. 6. Mecanismos de integracin de herramientas. Objetivos 1. Seleccionar con justificacin un apropiado conjunto de herramientas para soportar el desarrollo de un rango de productos de software. 2. Analizar y evaluar un conjunto de herramientas en una rea dada del desarrollo de software (ej: administracin, modelamiento o pruebas). 3. Demostrar la capacidad para usar un rango de herramientas de software en soporte del desarrollo de un producto de software de tamao medio. 4.39.4.3 SE/Validacin y verificacin de software. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Pressman, 2004,Blum, 1992,Schach, 2004,Wang and King, 2000,Keyes, 2004,Windle and Abreo, 2002,Priest and Sanchez, 2001,Schach, 2004,Montangero, 1996,Ambriola, 2001,Conradi, 2000,Oquendo, 2003]
380

Tpicos 1. 2. 3. 4. Distincin entre verificacin y validacin. Abordajes estticos y dinmicos. Planeamiento de la validacin y documentacin para la validacin. Diferentes tipos de tests, interfase humano-computador, usabilidad, confiabilidad, seguridad, conformidad con la especificacin. 5. Fundamentos del Testing incluyendo la creacin de planes de prueba y la generacin de casos de prueba. 6. Tcnicas de prueba de caja blanca y caja negra. 7. Semilla por defecto. 8. Unidad, integracin, validacin y sistemas de prueba. 9. Prueba orientado a objetos, pruebas de sistema. 10. Medidas de procesos, diseo, programa. 11. Verificacin y validacin de partes que no son componentes (documentacin, archivos de ayuda, material de entrenamiento). 12. Defecto de historial (fault logging), defecto de rastreo y soporte tcnico para esas actividades. 13. Test de regresin. 14. Inspecciones, revisiones, auditoras. Objetivos 1. Distinguir entre validacin de programas y verificacin. 2. Describir el rol que las herramientas pueden jugar en la validacin de software. 3. Distinguir entre los diferentes tipos y niveles de pruebas (unidad, integracin, sistemas y aceptacin) para productos de software de tamao medio y el material relacionado. 4. Crear, evaluar e implementar un plan de prueba para segmentos de cdigo de tamao medio. 5. Encargarse, como parte de una actividad de equipo, de una inspeccin de un segmento de cdigo de tamao medio. 6. Discutir los temas concernientes a la prueba de software orientado a objetos.. 4.39.4.4 SE/Evolucin del Software. (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2004,Blum, 1992,Schach, 2004,Wang and King, 2000,Keyes, 2004,Windle and Abreo, 2002,Priest and Sanchez, 2001,Schach, 2004,Montangero, 1996,Ambriola, 2001,Conradi, 2000,Oquendo, 2003] Tpicos 1. 2. 3. 4. 5. Mantenimiento de software. Caractersticas del software mantenible. Reingeniera. Sistemas heredados. Reuso de software.

381

Objetivos 1. Identificar los temas principales asociados con la evolucin del software y explicar su impacto sobre el ciclo de vida del software. 2. Discutir los desafos de mantener sistemas heredados y la necesidad de la ingeniera reversa. 3. Delinear el proceso de pruebas de regresin y su rol en la administracin del lanzamiento. 4. Estimar el impacto de un cambio de requerimiento para un producto existente de tamao medio. 5. Desarrollar un plan para hacer reingeniera a un producto de tamao medio como respuesta a un cambio de requerimientos. 6. Discutir las ventajas y desventajas del reuso de software. 7. Explotar las oportunidades para reusar software en un contexto dado. 8. Identificar debilidades en un simple diseo dado y resaltar como las mismas pueden ser removidad a travs de la reconstruccin (refactoring). 4.39.4.5 SE/Administracin de Proyectos de Software. (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2004,Blum, 1992,Schach, 2004,Wang and King, 2000,Keyes, 2004,Windle and Abreo, 2002,Priest and Sanchez, 2001,Schach, 2004,Montangero, 1996,Ambriola, 2001,Conradi, 2000,Oquendo, 2003] Tpicos 1. Administracin de equipos. a) Procesos de equipo. b) Organizacin de equipos y toma de decisiones. c) Roles y responsabilidades en un equipo de software. d) Identificacin y asignacin de roles. e) Seguimiento del proyecto. f) Resolucin de problemas de equipo.
382

2. Asignacin de tiempos y tareas al proyecto. 3. Medicin de software y tcnicas de estimacin. 4. Anlisis de riesgos. a) El asunto de seguridad. b) Sistemas de alta integridad, sistemas de seguridad crticos. c) El rol del riesgo en el ciclo de vida. 5. Aseguramiento de la calidad de software. a) El rol de las mediciones. 6. Administracin de la configuracin y versiones de software. Manejo de la versin final (release). 7. Herramientas de administracin de proyectos. 8. Modelos de proceso de software y medidas de proceso. Objetivos 1. Demostrar, involucrndose en un equipo de proyecto, los elementos centrales de la construccin y administracin de un equipo. 2. Preparar un plan para un proyecto de software que incluye estimacin de tamao y esfuerzo, asignacin de tiempos y tareas, asignacin de recursos, control de configuracin, administracin de cambios, identificacin y administracin de los riesgos del proyecto. 3. Indicar un abordaje para tratar riesgos que ayudar a entregar el software a tiempo. 4. Comparar y contrastar los diferentes mtodos y tcnicas usados para asegurar la calidad de un producto de software. 4.39.4.6 SE/Evaluacin de riesgos. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2004,Blum, 1992,Schach, 2004,Wang and King, 2000,Keyes, 2004,Windle and Abreo, 2002,Priest and Sanchez, 2001,Schach, 2004,Montangero, 1996,Ambriola, 2001,Conradi, 2000,Oquendo, 2003] Tpicos 1. Definicin de trminos: en seguridad, vulnerabilidad, amenazas, brechas de seguridad, peligros.
383

2. El concepto de riesgo, identificacin de peligros y riesgos. 3. Anlisis de riesgo incluyendo evaluacin. 4. Necesidad de un abordaje completo de sistema que incluya peligros asociados con herramientas. 5. Riesgo y las tecnologas inmaduras. 6. Anlisis de costo beneficio. 7. Principios del manejo de riesgos. Objetivos 1. 2. 3. 4. Definir los conceptos de peligros y riesgos. Reconocer riesgos comunes de seguridad en al menos dos sistemas operativos. Describir las categoras de amenazas a sistemas de redes de computadores. Mostrar un abordaje sistemtico para la tarea de identificar peligros y riesgos en una situacin particular. 5. Aplicar los principios bsicos de manejo de riesgos en una variedad de escenarios incluyendo alguna situacin relacionada con seguridad.

4.40 CS315. Estructuras de Datos Avanzadas (Obligatorio)


Semestre: 6to Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS210T. Anlisis y Diseo de Algoritmos (5to Sem) Slabo: Slabo (PDF)

Subsecciones

4.40.1 Justificacin 4.40.2 Objetivos Generales 4.40.3 Contribucin a los resultados 4.40.4 Unidades o 4.40.4.1 Tcnicas Bsicas de Implementacin de Estructuras de Datos (16 horas) [Nivel Bloom 5] o 4.40.4.2 Mtodos de Acceso Multidimensionales (16 horas) [Nivel Bloom 4] o 4.40.4.3 Mtodos de Acceso Mtrico (20 horas) [Nivel Bloom 5] o 4.40.4.4 Mtodos de Acceso Aproximados (20 horas) [Nivel Bloom 5] o 4.40.4.5 Seminarios (8 horas) [Nivel Bloom 5]

384

4.40.1 Justificacin Los algoritmos y estructuras de datos son una parte fundamental de la ciencia de la computacin que nos permiten organizar la informacin de una manera ms eficiente, por lo que es importante para todo profesional del rea tener una slida formacin en este aspecto. En el curso de estructuras de datos avanzadas nuestro objetivo es que el alumno conozca y analize estructuras complejas, como los Mtodos de Acceso Multidimensional, Mtodos de Acceso Espacio-Temporal y Mtodos de Acceso Mtrico, etc. 4.40.2 Objetivos Generales 1. Que el alumno entienda, disee, implemente, aplique y proponga estructuras de datos innovadoras para solucionar problemas relacionados al tratamiento de datos multidimensionales, recuperacin de informacin por similitud, motores de bsqueda y otros problemas computacionales. 4.40.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. g) Nivel Bloom 4 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. k) Nivel Bloom 3

385

Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.40.4 Unidades

Subsecciones

4.40.4.1 Tcnicas Bsicas de Implementacin de Estructuras de Datos (16 horas) [Nivel Bloom 5] 4.40.4.2 Mtodos de Acceso Multidimensionales (16 horas) [Nivel Bloom 4] 4.40.4.3 Mtodos de Acceso Mtrico (20 horas) [Nivel Bloom 5] 4.40.4.4 Mtodos de Acceso Aproximados (20 horas) [Nivel Bloom 5] 4.40.4.5 Seminarios (8 horas) [Nivel Bloom 5]

4.40.4.1 Tcnicas Bsicas de Implementacin de Estructuras de Datos (16 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Programacin estructurada Programacin Orientada a Objetos Tipos Abstractos de Datos Independencia del lenguaje de programacin del usuario de la estructura Independencia de Plataforma Control de concurrencia Proteccin de Datos Niveles de encapsulamiento (struct, class, namespace, etc)

Objetivos 1. Que el alumno entienda las diferencias bsicas que involucran las distintas tcnicas de implementacin de estructuras de datos 2. Que el alumno analice las ventajas y desventajas de cada una de las tcnicas existentes 4.40.4.2 Mtodos de Acceso Multidimensionales (16 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Mtodos de Acceso para datos puntuales 2. Mtodos de Acceso para datos no puntuales 3. Problemas relacionados con el aumento de dimensin Objetivos

386

1. Que el alumno entienda conozca e implemente algunos Mtodos de Acceso para datos multidimensionales y espacio temporales 2. Que el alumno entienda el potencial de estos Mtodos de Acceso en el futuro de las bases de datos comerciales 4.40.4.3 Mtodos de Acceso Mtrico (20 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,] Tpicos 1. Mtodos de Acceso Mtrico para distancias discretas 2. Mtodos de Acceso Mtrico para distancias continuas Objetivos 1. Que el alumno entienda conozca e implemente algunos mtodos de acceso mtrico 2. Que el alumno entienda la importancia de estos Mtodos de Acceso para la Recuperacin de Informacin por Similitud 4.40.4.4 Mtodos de Acceso Aproximados (20 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,] Tpicos 1. Space Filling Curves 2. Locality Sensitive Hashing Objetivos 1. Que el alumno entienda conozca e implemente algunos mtodos de acceso aproximados 2. Que el alumno entienda la importancia de estos Mtodos de Acceso para la Recuperacin de Informacin por Similitud en entornos donde la Escalabilidad sea una factor muy importante 4.40.4.5 Seminarios (8 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [] Tpicos 1. Mtodos de Acceso Espacio Temporal 2. Estructuras de Datos con programacin genrica Objetivos 1. Que el alumno pueda discutir sobre los ltimos avances en mtodos de acceso para distintos dominios de conocimiento

4.41 CB307. Matemtica aplicada a la computacin (Obligatorio)

Semestre: 6to Sem. Crditos: 4


387

Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CB111. Fsica Computacional (5to Sem) Slabo: Slabo (PDF)

Subsecciones

4.41.1 Justificacin 4.41.2 Objetivos Generales 4.41.3 Contribucin a los resultados 4.41.4 Unidades o 4.41.4.1 Espacios Lineales (0 horas) [Nivel Bloom 4] o 4.41.4.2 Transformaciones lineales (0 horas) [Nivel Bloom 4] o 4.41.4.3 Autovalores y autovectores (0 horas) [Nivel Bloom 3] o 4.41.4.4 Sistemas de ecuaciones diferenciales (0 horas) [Nivel Bloom 3] o 4.41.4.5 Teora fundamental (0 horas) [Nivel Bloom 3] o 4.41.4.6 Estabilidad de equilibrio (0 horas) [Nivel Bloom 4]

4.41.1 Justificacin Este curso es importante porque desarrolla tpicos del lgebra Lineal y de Ecuaciones Diferenciales Ordinarias tiles en todas aquellas reas de la ciencia de la computacin donde se trabaja con sistemas lineales y sistemas dinmicos. 4.41.2 Objetivos Generales 1. Que el alumno tenga la base matemtica para el modelamiento de sistemas lineales y sistemas dinmicos necesarios en el rea de Computacin Grfica e Inteligencia Artificial. 4.41.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4
388

Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.41.4 Unidades

Subsecciones

4.41.4.1 Espacios Lineales (0 horas) [Nivel Bloom 4] 4.41.4.2 Transformaciones lineales (0 horas) [Nivel Bloom 4] 4.41.4.3 Autovalores y autovectores (0 horas) [Nivel Bloom 3] 4.41.4.4 Sistemas de ecuaciones diferenciales (0 horas) [Nivel Bloom 3] 4.41.4.5 Teora fundamental (0 horas) [Nivel Bloom 3] 4.41.4.6 Estabilidad de equilibrio (0 horas) [Nivel Bloom 4]

4.41.4.1 Espacios Lineales (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Strang, 2003,Apstol, 1973] Tpicos 1. 2. 3. 4. 5. 6. Espacios vectoriales. Independencia, base y dimensin. Dimensiones y ortogonalidad de los cuatro subespacios. Aproximaciones por mnimos cuadrados. Proyecciones Bases ortogonales y Gram-Schmidt

Objetivos 1. Identificar espacios generados por vectores linealmente independientes 2. Construir conjuntos de vectores ortogonales 3. Aproximar funciones por polinomios trigonomtricos 4.41.4.2 Transformaciones lineales (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Strang, 2003,Apstol, 1973] Tpicos 1. 2. 3. 4. Concepto de transformacin lineal. Matriz de una transformacin lineal. Cambio de base. Diagonalizacin y pseudoinversa

Objetivos 1. Determinar el ncleo y la imagen de una transformacin


389

2. Construir la matriz de una transformacin 3. Determinar la matriz de cambio de base 4.41.4.3 Autovalores y autovectores (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Strang, 2003,Apstol, 1973] Tpicos 1. 2. 3. 4. 5. Diagonalizacin de una matriz Matrices simtricas Matrices definidas positivas Matrices similares La descomposicin de valor singular

Objetivos 1. Encontrar la representacin diagonal de una matriz 2. Determinar la similaridad entre matrices 3. Reducir una forma cuadrtica real a diagonal 4.41.4.4 Sistemas de ecuaciones diferenciales (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Zill, 2002,Apstol, 1973] Tpicos 1. Exponencial de una matriz 2. Teoremas de existencia y unicidad para sistemas lineales homogneos con coeficientes constantes 3. Sistemas lineales no homogneas con coeficientes constantes. Objetivos 1. Hallar la solucin general de un sistema lineal no homogneo 2. Resolver problemas donde intervengan sistemas de ecuaciones diferenciales 4.41.4.5 Teora fundamental (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Hirsh and Smale, 1974] Tpicos 1. 2. 3. 4. Sistemas dinmicos El teorema fundamental Existencia y unicidad El flujo de una ecuacin diferencial

Objetivos 1. Discutir la existencia y la unicidad de una ecuacin diferencial 2. Analizar la continuidad de las soluciones 3. Estudiar la prolongacin de una solucin 4.41.4.6 Estabilidad de equilibrio (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Zill, 2002,Hirsh and Smale, 1974] Tpicos
390

1. Estabilidad 2. Funciones de Liapunov 3. Sistemas gradientes Objetivos 1. Analizar la estabilidad de una solucin 2. Hallar la funcin de Liapunov para puntos de equilibrio 3. Trazar el retrato de fase un flujo gradiente

4.42 FG204. Teologa I (Obligatorio)


Semestre: 6to Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: o FG107. Fundamentos Antropolgicos de la Ciencia (3er Sem) Slabo: Slabo (PDF)

Subsecciones

4.42.1 Justificacin 4.42.2 Objetivos Generales 4.42.3 Contribucin a los resultados 4.42.4 Unidades o 4.42.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2] o 4.42.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] o 4.42.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2]

4.42.1 Justificacin Para que la formacin de un buen profesional no se desligue ni se oponga sino mas bien contribuya al autentico crecimiento personal requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. La fe cristiana es uno de los elementos fundamentales de la configuracin de la vida y el que hacer cultural de nuestro pas, propone los ms altos valores humanos y el horizonte espiritual mas rico posible. Por esta razn dar una clara y explicita formacin cristiana es indispensable. En este curso tratamos de brindar al alumno el conocimiento bsico de las razones.

391

4.42.2 Objetivos Generales 1. Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.42.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultur 4.42.4 Unidades

Subsecciones

4.42.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2] 4.42.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] 4.42.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2]

4.42.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Comisin Redactora del Catecismo, 1993,Ratzinger, 2001,Biblia, 1975] Tpicos 1. La demanda. 1. Presentacin del curso. 2. Anlisis de la Felicidad. 3. Anlisis del Amor. 4. Esquema de antropologa. 2. Ofertas intramundanas. 1. Hedonismo. 2. Materialismo. 3. Individualismo. 4. Ideologas de dominio. 3. La respuesta cristiana (Parte I). 1. Conversin 2. Fe y Razn Objetivos

392

1. Que el alumno interprete las manifestaciones de su entorno cultural concreto a la luz de los elementos fundamentales de la persona humana. 2. Que el alumno descrubra existencialmente la insuficiencia de las respuestas del mero poder, tener o placer y al mismo tiempo se proponga que es lo que realmente anhela en la vida. 3. Que el alumno descubra la fe cristiana como una respuesta a los anhelos mas profundos del ser humano que ha creado toda una cultura y que est en la base de nuestra vida nacional. 4.42.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Comisin Redactora del Catecismo, 1993,Ratzinger, 2001,Biblia, 1975] Tpicos 1. La respuesta cristiana (Parte II). 1. Dios Unitrino. 2. Doctrina de la creacin. 3. El pecado original. 2. La respuesta cristiana (Parte III). 1. Identidad y misin de Jess de Nazareth. 2. Vida y obra de Jess de Nazareth. 3. La gracia 4. El Espritu Santo. 5. La Iglesia Una, Santa, Catlica y Apostlica. 6. La Virgen Mara y la Vida Cristiana. Objetivos 1. Que el alumno tenga pleno conocimiento de lo que significa la palabra de Dios y de las formas en las que l se relaciona con nosotros con el fin de que reafirme y fortalezca su f, enfrente dificultades y asuma el compromiso al que Dios lo invita. 4.42.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Comisin Redactora del Catecismo, 1993,Ratzinger, 2001,Biblia, 1975] Tpicos 1. 2. 3. 4. 5. Fundamentos de teologa moral. Fundamentos de teologa espiritual. La vida espiritual. La vida de oracin. El combate espiritual.

Objetivos 1. Que el alumno comprenda la necesidad de una vida espiritual que le permita encontrar el sentido de su vida.
393

4.43 CS250W. Interaccin Humano Computador (Obligatorio)


Semestre: 7mo Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS290T. Ingeniera de Software I (5to Sem) o Ingls(400) Slabo: Slabo (PDF)

Subsecciones

4.43.1 Justificacin 4.43.2 Objetivos Generales 4.43.3 Contribucin a los resultados 4.43.4 Unidades o 4.43.4.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) [Nivel Bloom 3] o 4.43.4.2 PL/Programacin Orientada a Objetos. (1 horas) [Nivel Bloom 3] o 4.43.4.3 HC/Desarrollo de Software Centrado en el Humano. (5 horas) [Nivel Bloom 4] o 4.43.4.4 HC/Evaluacin de Software Centrado en el usuario. (4 horas) [Nivel Bloom 4] o 4.43.4.5 HC/Diseo de la Interfaz de Usuario. (4 horas) [Nivel Bloom 3] o 4.43.4.6 HC/Construccin de Interfaces Grficas de Usuario. (6 horas) [Nivel Bloom 4] o 4.43.4.7 HC/Programacin de Interfaces Grficas de Usuario. (4 horas) [Nivel Bloom 3] o 4.43.4.8 HC/Aspectos de Sistemas de Multimedia y Multimodales. (4 horas) [Nivel Bloom 3] o 4.43.4.9 HC/Aspectos de Colaboracin y Comunicacin. (4 horas) [Nivel Bloom 3] o 4.43.4.10 Diseo de interaccin para nuevos ambientes. (4 horas) [Nivel Bloom 3] o 4.43.4.11 Factores humanos y seguridad. (4 horas) [Nivel Bloom 3]

4.43.1 Justificacin El lenguaje ha sido una de las creaciones ms significativas de la humanidad. Desde el lenguaje corporal y gestual, pasando por la comunicacin verbal y escrita, hasta cdigos simblicos icnicos y otros, ha posibilitado interacciones complejas entre los seres humanos y facilitado considerablemente la comunicacin de informacin. Con la
394

invencin de dispositivos automticos y semiautomticos, entre los que se cuentan las computadoras, la necesidad de "lenguajes" o "interfaces" para poder interactuar con ellos, ha cobrado gran importancia. La usabilidad del software, aunada a la satisfaccin del usuario y su incremento de productividad, depende de la eficacia de la Interfaz Usuario-Computador. Tanto es as, que a menudo la interfaz es el factor ms importante en el xito o el fracaso de cualquier sistema computacional. El diseo e implementacin de adecuadas Interfaces Humano-Computador, que adems de cumplir los requisitos tcnicos y la lgica transaccional de la aplicacin, considere las sutiles implicaciones psicolgicas, culturales y estticas de los usuarios, consume buena parte del ciclo de vida de un proyecto software, y requiere habilidades especializadas, tanto para la construccin de las mismas, como para la realizacin de pruebas de usabilidad. 4.43.2 Objetivos Generales 1. Conocer y aplicar criterios de usabilidad y accesibilidad al diseo y construccin de interfaces humano-computador, buscando siempre que la tecnologa se adapte a las personas y no las personas a la tecnologa. 4.43.3 Contribucin a los resultados b) Nivel Bloom 3 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. e) Nivel Bloom 4 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 3 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. o) Nivel Bloom 4 Mejorar las condiciones de la sociedad poniendo la tecnologa al servicio del ser humano.

395

4.43.4 Unidades

Subsecciones

4.43.4.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) [Nivel Bloom 3] 4.43.4.2 PL/Programacin Orientada a Objetos. (1 horas) [Nivel Bloom 3] 4.43.4.3 HC/Desarrollo de Software Centrado en el Humano. (5 horas) [Nivel Bloom 4] 4.43.4.4 HC/Evaluacin de Software Centrado en el usuario. (4 horas) [Nivel Bloom 4] 4.43.4.5 HC/Diseo de la Interfaz de Usuario. (4 horas) [Nivel Bloom 3] 4.43.4.6 HC/Construccin de Interfaces Grficas de Usuario. (6 horas) [Nivel Bloom 4] 4.43.4.7 HC/Programacin de Interfaces Grficas de Usuario. (4 horas) [Nivel Bloom 3] 4.43.4.8 HC/Aspectos de Sistemas de Multimedia y Multimodales. (4 horas) [Nivel Bloom 3] 4.43.4.9 HC/Aspectos de Colaboracin y Comunicacin. (4 horas) [Nivel Bloom 3] 4.43.4.10 Diseo de interaccin para nuevos ambientes. (4 horas) [Nivel Bloom 3] 4.43.4.11 Factores humanos y seguridad. (4 horas) [Nivel Bloom 3]

4.43.4.1 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Smith-Atakan, 2006,Baecker et al., 2000] Tpicos 1. Relevancia de la Interaccin Hombre-Computador (HCI). Por qu el estudio de la interaccin entre las personas y la tecnologa es vital para el desarrollo de sistemas ms usables y aceptables? 2. Terminologa clave en la Interaccin Humano-Computador: usabilidad, accesibilidad, diseo para todos, diseo inclusivo, acceso universal, diseo de sistemas centrados en el usuario (UCSD). 3. Contextos de Interaccin Humano-Computador: equipos (PC's, equipos industriales, dispositivos de consumo, dispositivos mviles) y aplicaciones (de negocios, en tiempo real, web, sistemas colaborativos, juegos, etc.). 4. Proceso de desarrollo centrado en el usuario (UCSD): foco temprano en los usuarios, pruebas empricas, diseo iterativo. 5. Categoras de evaluacin: utilidad, eficiencia, usabilidad, facilidad de aprendizaje, satisfaccin del usuario. 6. Consideraciones psicolgicas para el modelamiento de usuarios y la evaluacin de la Interaccin Humano-Computador (atencin, percepcin y
396

reconocimiento, memoria de corto y largo plazo, movimiento, abstraccin, y procesamiento cognitivo). 7. Aspectos sociales que influyen en el diseo y en el uso de Interfaces HumanoComputador: cultura, comunicacin y organizaciones. 8. Adaptacin a la diversidad humana, incluyendo diseo y accesibilidad universal, diseo para mltiples contextos culturales y lingusticos. 9. Los errores ms frecuentes en el diseo de interfaces. 10. Estndares para el diseo de interfaces de sistemas interactivos (reglas y guas de diseo de organismos reguladores, fabricantes de software, y estilos corporativos). Objetivos 1. Discutir las razones por las cuales es importante el desarrollo de software centrado en el usuario. 2. Usar un vocabulario especializado para referirse a la interaccin humana con el software: potencialidad percibible, modelo conceptual, modelo mental, metforas, diseo de la interaccin, retroalimentacin, etc. 3. Explicar porqu los modelos humanos individuales y los modelos sociales son importantes a la hora de disear la Interaccin Humano-Computador. 4. Definir y ejemplificar procesos centrados en el usuario que explcitamente evidencien que las expectativas del desarrollador y sus conocimientos previos son muy diferentes de las de los usuarios. 5. Describir y ejemplificar casos en los que un diseo centrado en el usuario puede fallar. 6. Explicar los distintos procesos aplicados a la definicin de interfaces para diferentes contextos. 7. Ejemplificar cmo determinados smbolos, conos, palabras o colores pueden tener diferentes interpretaciones en dos culturas humanas distintas o incluso entre una cultura y alguna de sus subculturas. 8. Escoger entre mtodos de evaluacin cualitativos y cuantitativos para una evaluacin dada. 9. Considerar el rol de la hiptesis y las diferencias entre resultados experimentales versus correlaciones, al utilizar mtricas de evaluacin de la Interaccin Humano-Computador. 10. Estar preparado para describir al menos un estndar nacional o internacional de diseo estndar de interfases. 4.43.4.2 PL/Programacin Orientada a Objetos. (1 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pressman, 2007] Tpicos 1. Diseo orientado a objetos. 2. Uso de UML para diseo de sistemas centrados en el usuario (diagramas de casos de uso, diagramas de actividad, y otros). 3. Clases y subclases. 4. Herencia (sobreescritura, despacho dinmico). 5. Jerarquas de clases.
397

6. Clases de tipo coleccin y protocolos de iteracin. Objetivos 1. Justificar la filosofa de diseo orientado a objetos y los conceptos de encapsulacin, abstraccin, herencia y polimorfismo. 2. Disear, implementar, probar y depurar programas simples en un lenguaje de programacin orientado a objetos. 3. Disear, implementar y probar la implementacion de la relacin esun IsKindOf entre objetos usando jerarqua de clases y herencia. 4. Describir como los iteradores acceden a los elementos de un contenedor. 4.43.4.3 HC/Desarrollo de Software Centrado en el Humano. (5 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Smith-Atakan, 2006,Sharp et al., 2009,Constantine, ,Baecker et al., 2000] Tpicos 1. Desarrollo de Software Centrado en el Humano (UCSD) y metodologas tradicionales (diseo en cascada). 2. Enfoques (ergonmico, cognitivo, afectivo), caractersticas y listado de procesos. 3. Requerimientos de Funcionalidad y usabilidad. 4. Tcnicas de recoleccin de requerimientos: anlisis de tareas, entrevistas, encuestas. 5. Modelado de perfiles de usuario: modelos conceptuales, metforas y modelos mentales. Diferencias individuales, aprendizaje y entrenamiento. 6. Especificacin de la interaccin y presentacin. 7. Tcnicas de prototipado: a) Dibujos y diseos en papel. b) Guiones con secuencias de pantallas (storyboard). c) Prototipos en papel. d) Herramientas de prototipado y constructores de GUI. 8. Tcnicas software para interfaces de usuario:
398

a) Herencia y despacho dinmico. b) Lenguajes de prototipado y constructores de GUI. Objetivos 1. Comparar el desarrollo centrado al humano con los mtodos tradicionales de ingeniera del software. 2. Recolectar los requerimientos para la interfaz de usuario, utilizando el anlisis de tareas y entrevistas con el usuario. 3. Identificar mediante el anlisis de requerimientos, al menos tres requisitos funcionales y tres requisitos de usabilidad. 4. Crear una especificacin para una interfaz de usuario basada en los requerimientos. 5. Construir un prototipo segn los requisitos de la especificacin. 6. Discutir las ventajas y desventajas del desarrollo con prototipos de software y en papel. 4.43.4.4 HC/Evaluacin de Software Centrado en el usuario. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Smith-Atakan, 2006,Sharp et al., 2009,Baecker et al., 2000] Tpicos 1. Enfoques de evaluacin: pruebas de usabilidad, estudios de campo, evaluacin analtica. 2. Evaluacin sin usuarios tpicos: recorridos, Keystroke Level Model (KLM), anlisis basado en expertos, heursticas, lineamientos y estndares. 3. Evaluacin con usuarios tpicos: observacin, pensar en voz alta, entrevista, examen, experimentos. 4. Desafios de una evaluacin efectiva: muestreo, evaluacin. 5. Reporte de resultados de evaluacin. Objetivos 1. Discutir los criterios de evaluacin: tiempo y completitud de las tareas, tiempo de aprendizaje, retencin, errores y satisfaccin del usuario. 2. Conducir un ensayo y anlisis de tareas de bajo nivel usando el Modelo de Nivel de Golpes de Teclado (KLM). 3. Evaluar una interfaz de usuario dada con un conjunto de lineamientos o estndares para identificar insuficiencias. 4. Conducir una prueba de usabilidad con ms de un usuario, recolectar resultados con al menos dos mtodos. 5. Comparar una prueba de laboratorio con una prueba de campo.
399

6. Explicar un problema de usabilidad en base a los resultados de una prueba de usabilidad. Recomendar una solucin al mismo. 7. Criticar una evaluacin de usuario, resaltar las amenazas de validacin. 8. Dado un contexto de evaluacin (por ejemplo: tiempo, disponibilidad de usuarios de prueba, lugar en el proceso de diseo, objetivos de evaluacin), recomendar y justificar un mtodo de evaluacin. 4.43.4.5 HC/Diseo de la Interfaz de Usuario. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Baecker et al., 2000,Inc., ,Sharp et al., 2009,Wirfs-Brock, ] Tpicos 1. Panorama de las diferentes clases de interfaces de usuario: referidas a la funcin (inteligentes, adaptativas, ambientales), enfocadas en el modo de interaccin (comandos, grficas, multimedia), orientadas a los dispositivos de entrada/salida usados (pen-based, speech-based), segn la plataforma para la que han sido diseadas (PC, handheld, etc.). 2. Estilos y paradigmas de interaccin: lnea de comandos, men, voz, gestos, WIMP (window, icon, menu, pointing device). 3. Uso correcto del lenguaje visual en el diseo de interfaces grficas de usuario (GUI): distribucin y proporciones (layout), tipografa, color y texturas, imgenes (signos, smbolos e conos), animacin, secuenciacin, indicadores sonoros (earcons), e identidad visual. 4. Seleccin y uso de controles visuales (widgets)adecuados para usuarios y tareas. 5. Ms all del diseo de ventanas simples: metforas, representacin y despliegue. 6. Interaccin multimodal: visual, auditiva y hptica (tctil y afines). 7. Interaccin 3D y realidad virtual. 8. Diseo para dispositivos pequeos como celulares. 9. Manejo de fallas humanas y de sistema. 10. Interaccin y comunicacin multi cultural. Objetivos 1. Listar los estilos comunes de interaccin y las diferentes clases de interfaces de usuario. 2. Explicar los principios del buen diseo aplicables a: ventanas y formularios, controles comunes (widgets), presentacin de pantallas secuenciadas, dilogos de mensajes de errores y excepciones, ayuda en lnea y manuales de usuario. 3. Disear, prototipar y evaluar una GUI 2D simple aplicando los conocimientos aprendidos en las unidades: HC/Evaluacin de Software Centrado en el usuario. y HC/Desarrollo de Software Centrado en el Humano.. 4. Discutir los retos de interaccin que existen al desplazarnos de interfaces 2D a interfaces 3D. 5. Justificar las razones y conveniencia de transportar una aplicacin desde un entorno convencional a un dispositivo mvil.
400

4.43.4.6 HC/Construccin de Interfaces Grficas de Usuario. (6 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Baecker et al., 2000,Inc., ,Constantine and Lockwood, ,Loranger et al., ] Tpicos 1. Principios de las interfaces grficas de usuario (GUIs): organizacin (consistencia, distribucin de pantalla, relaciones y navegabilidad), economa de recursos (simplicidad, claridad, diferenciacin y nfasis), comunicacin (legible, comprensible, tipografa, simbolismos, mltiples vistas, y color / textura). 2. Modelo de interaccin accin-objeto versus modelo objeto-accin. 3. Eventos de la interfaz de usuario. 4. Diferencias en la construccin de interfaces grficas de usuario para ejecucin local y para ejecucin sobre internet (web). Objetivos 1. Identificar los diversos principios fundamentales para el diseo de interfaces de usuario tales como facilidad de aprendizaje, flexibilidad y robustez. 2. Describir ejemplos de interfaces mal diseadas: navegacin deficiente, malos diseos de pantalla, e interfaces incomprensibles. 3. Crear una aplicacin simple cuya interfaz grfica de usuario se ejecute localmente o en la web. 4. Observar el comportamiento de un usuario al usar una nueva aplicacin y obtener sus crticas e impresiones sobre la GUI. 5. Explicar como una cuidadosa evaluacin va ms alla de la observacin de un nico usuario. 4.43.4.7 HC/Programacin de Interfaces Grficas de Usuario. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Smart et al., 2005,Baecker et al., 2000] Tpicos 1. Separacin entre la aplicacin y la interfaz de usuario. Niveles del modelo Seeheim (presentacin, control de dilogos, interfaz con la aplicacin). Sistema de Gestin de Interfaz de Usuario (UIMS). 2. Bibliotecas de clases de controles visuales (widgets). 3. Interaccin de usuario basada en eventos. Administracin de eventos. 4. Diseo web vs. diseo de aplicaciones nativas. 5. Gestin de geometra de la interfaz grfica (layout managers, panels, canvas). 6. Entornos de programacin de Interfaces de Usuario, y constructores de GUI's. 7. Diseo de GUI multi-plataforma. 8. Diseo para dispositivos mviles.

401

Objetivos 1. Diferenciar entre las responsabilidades de la UIMS y la aplicacin. 2. Diferenciar entre interfaces de usuario basadas en kernel y en modelo clienteservidor. 3. Comparar el paradigma orientado a eventos con los procedimientos de control tradicionales para la interfaz de usuario. 4. Describir la agregacin de controles visuales (widgets) y la gestin de la geometra basada en restricciones. 5. Explicar los mtodos de callback y su rol en los constructores de GUI, para la gestin de eventos de interfaz. 6. " Identificar al menos tres diferencias comunes de diseo en interfaces de usuario multi-plataforma (por ejemplo, para escritorio, web y telfono celular). 7. Identificar las caractersticas comunes que se puedan encontrar en interfase de usuario multi-plataforma. 4.43.4.8 HC/Aspectos de Sistemas de Multimedia y Multimodales. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Smith-Atakan, 2006,Baecker et al., 2000] Tpicos 1. Categorizacin y arquitecturas de informacin: jerarquas, mallas (grids), hipermedia, redes. 2. Recuperacin de informacin y desempeo humano. 3. Bsqueda Web. 4. Usabilidad de los lenguajes de consultas a base de datos. 5. Grficos. 6. Sonido. 7. Diseo de la Interaccin Humano-Computador de sistemas de informacin multimedia. 8. Reconocimiento de voz y procesamiento de lenguaje natural. 9. Microdispositivos de informacin (appliances) y computacin mvil. 10. Visualizaciones interactivas. 11. Diseos para la navegacin y presentacin de informacin. 12. Interfases tctiles. Objetivos 1. Discutir en que se diferencia la recuperacin de informacin del procesamiento de transacciones. 2. Explicar como la organizacin de la informacin apoya la recuperacin de la misma. 3. Describir los principales problemas de usabilidad de los lenguajes de consultas de bases de datos. 4. Explicar en particular el estado actual de la tecnologa de reconocimiento de voz y en general el estado del procesamiento de lenguaje natural.
402

5. Disear, prototipar y evaluar un sistema de informacin multimedia simple ilustrando el conocimiento de los conceptos mostrados en las unidades HC/Desarrollo de Software Centrado en el Humano., HC/Diseo de la Interfaz de Usuario. y HC/Aspectos de Sistemas de Multimedia y Multimodales.. 4.43.4.9 HC/Aspectos de Colaboracin y Comunicacin. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Baecker et al., 2000] Tpicos 1. Groupware para soporte de tareas especializadas: preparacin de documentos, juegos para multi-jugadores. 2. Comunicacin grupal asncrona: e-mail, boletines, listserv, wikis, etc. 3. Comunicacin grupal sincronizada: salas de chat, conferencias. 4. Comunidades en lnea: MUDs/MOOs (Multi User Dungeon / MUD Object Oriented). 5. Agentes de software y agentes inteligentes, mundos virtuales y avatares. 6. Psicologa social. 7. Redes sociales. 8. Computacin social. 9. Tcnicas de usabilidad colaborativa. Objetivos 1. Comparar las cuestiones de Interaccin Humano-Computador tanto en la interaccin individual como en interacciones grupales. 2. Discutir las diversas cuestiones sociales planteadas por el software de colaboracin. 3. Discutir los temas de HCI en sistemas de software que incorporan la intencin humana. 4. Describir las diferencias entre comunicacin sncrona y asncrona. 5. Disear, prototipar y evaluar una aplicacin simple de groupware o de comunicacin grupal que ilustre los conocimientos aprendidos en las unidades HC/Desarrollo de Software Centrado en el Humano., HC/Diseo de la Interfaz de Usuario. y HC/Aspectos de Colaboracin y Comunicacin.. 6. Participar en un proyecto en equipo en el que algunas interacciones sean cara a cara y otras a travs de un entorno de software de mediacin. 7. Describir las similitudes y diferencias entre la colaboracin cara a cara y la realizada mediante un software colaborativo. 4.43.4.10 Diseo de interaccin para nuevos ambientes. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Baecker et al., 2000,Sharp et al., 2009] Tpicos

403

1. Diseos de interaccin orientados a producir experiencias interactivas agradables. 2. Presencia, telepresencia y entornos inmersivos. 3. Interaccin afectiva y emociones. 4. Ambientes inteligentes. 5. Computacin fsica e interaccin corprea. Objetivos 1. Comparar asuntos metodolgicos y filosficos involucrados en el diseo de la usabilidad y el diseo atractivo. 2. Discutir las diversas cuestiones ticas y sociales planteadas por los entornos inmersivos y los altos niveles de emocin en la Interaccin HumanoComputador. 3. Discutir las cuestiones relacionadas con HCI en el software interactivo que incorpora cierto nivel de inteligencia. 4. Describir la diferencia entre diseo de interaccin y la Interaccin HumanoComputador tradicional. 5. Disear, prototipar y evaluar un sistema de participacin interactiva para el entretenimiento o la educacin. 6. Evaluar las experiencias de personas en ambientes inmersivos. 7. Describir las cuestiones relacionadas con interfaces de usuario tangibles, gestuales y de interaccin de cuerpo entero. 8. Describir los problemas relacionados con la intervencin de todos los sentidos en experiencias interactivas. 4.43.4.11 Factores humanos y seguridad. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Baecker et al., 2000] Tpicos 1. 2. 3. 4. 5. Psicologa aplicada y polticas de seguridad. Diseo pensando en usabilidad y seguridad. Ingeniera social. Suplantacin de indentidad. Adquisicin de informacin confidencial de forma fraudulenta Phishing.

Objetivos 1. 2. 3. 4. 5. Explicar el concepto de phishing y como reconocerlo. Explicar el concepto de robo de identidad y cmo dificultarlo. Disear una interfaz de usuario con mecanismos de seguridad. Discutir procedimientos que ayuden a reducir un ataque de ingeniera social. Analizar una poltica de seguridad y/o procedimientos para mostrar donde funcionan y donde fallan. Hacer consideraciones de valor prctico.

4.44 CS401. Proyecto I (Obligatorio)


404

Semestre: 7mo Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: o CS290T. Ingeniera de Software I (5to Sem) o 100Cr Slabo: Slabo (PDF)

Subsecciones

4.44.1 Justificacin 4.44.2 Objetivos Generales 4.44.3 Contribucin a los resultados 4.44.4 Unidades o 4.44.4.1 Iniciacin cientfica en el rea de computacin (60 horas) [Nivel Bloom 4]

4.44.1 Justificacin Este curso tiene por objetivo que el alumno aprenda a realizar una investigacin de carcter cientfico en el rea de computacin. Los docentes del curso determinarn un rea de estudio para cada alumno, y se le har entrega de bibliografa para analizar y a partir de la misma, y de fuentes bibliogrficas adicionales (investigadas por el alumno), el alumno deber ser capaz de construir un artculo del tipo survey del tema asignado. 4.44.2 Objetivos Generales 1. Que el alumno aprenda como se inicia una investigacin cientfica en el rea de computacin. 2. Que el alumno conozca las principales fuentes para obtener bibliografa relevante para trabajos de investigacin en el rea de computacion: Researchindex, IEEE-CS4.1, ACM4.2. 3. Que el alumno sea capaz de analizar las propuestas existentes sobre un determinado tpico y relacionarlos de forma coherente en una revisin bibliogrfica. 4. Que el alumno pueda redactar documentos tcnicos en computacin utilizando LATEX. 5. Que el alumno sea capaz de reproducir los resultados ya existentes en un determinado tpico a travs de la experimentacin. 6. Los entregables de este curso son: Avance parcial:

405

Dominio del tema del artculo y bibliografa preliminar en formato de artculo LATEX. Final: Entendimiento del artculo del tipo survey, documento concludo donde se contenga, opcionalmente, los resultados experimentales de la(s) tcnica(s) estudiada(s). 4.44.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 3 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. e) Nivel Bloom 4 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 4 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. l) Nivel Bloom 3 Desarrollar principios investigacin en el rea de computacin con niveles de competividad internacional.

406

4.44.4 Unidades

Subsecciones

4.44.4.1 Iniciacin cientfica en el rea de computacin (60 horas) [Nivel Bloom 4]

4.44.4.1 Iniciacin cientfica en el rea de computacin (60 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Tpicos 1. Bsqueda bibliogrfica en computacin. 2. Redaccin de artculos tcnicos en computacin. Objetivos 1. Aprender a hacer una investigacin correcta en el rea de computacin 2. Conocer las fuentes de bibliografa adecuada para esta rea 3. Saber redactar un documento de acorde con las caractersticas que las conferencias de esta rea exigen

4.45 CS261T. Inteligencia Artificial (Obligatorio)


Semestre: 7mo Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS260. Lgica Computacional (6to Sem) o CB203. Estadstica y Probabilidades (4to Sem) Slabo: Slabo (PDF)

Subsecciones

4.45.1 Justificacin 4.45.2 Objetivos Generales 4.45.3 Contribucin a los resultados 4.45.4 Unidades

407

o o o o o o o o o o o

4.45.4.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (2 horas) [Nivel Bloom 3] 4.45.4.2 IS/Bsqueda y Satisfaccin de la Restriccin. (4 horas) [Nivel Bloom 3] 4.45.4.3 IS/Razonamiento basado en conocimiento. (6 horas) [Nivel Bloom 2] 4.45.4.4 IS/Bsqueda Avanzada. (4 horas) [Nivel Bloom 3] 4.45.4.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. (6 horas) [Nivel Bloom 2] 4.45.4.6 IS/Agentes. (6 horas) [Nivel Bloom 2] 4.45.4.7 IS/Procesamiento de Lenguaje Natural. (4 horas) [Nivel Bloom 2] 4.45.4.8 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 5] 4.45.4.9 IS/Sistemas de Planeamiento. (6 horas) [Nivel Bloom 3] 4.45.4.10 IS/Robtica. (6 horas) [Nivel Bloom 2] 4.45.4.11 IS/Percepcin. (6 horas) [Nivel Bloom 3]

4.45.1 Justificacin La investigacin en Inteligencia Artificial ha conducido al desarrollo de numerosas tnicas relevantes, dirigidas a la automatizacin de la inteligencia humana, dando una visin panormica de diferentes algoritmos que simulan los diferentes aspectos del comportamiento y la inteligencia del ser humano. 4.45.2 Objetivos Generales 1. Evaluar las posibilidades de simulacin de la inteligencia, para lo cual se estudiarn las tcnicas de modelizacin del conocimiento. 2. Construir una nocin de inteligencia que soporte despus las tareas de su simulacin. .45.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3

408

Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.45.4 Unidades

Subsecciones

4.45.4.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (2 horas) [Nivel Bloom 3] 4.45.4.2 IS/Bsqueda y Satisfaccin de la Restriccin. (4 horas) [Nivel Bloom 3] 4.45.4.3 IS/Razonamiento basado en conocimiento. (6 horas) [Nivel Bloom 2] 4.45.4.4 IS/Bsqueda Avanzada. (4 horas) [Nivel Bloom 3] 4.45.4.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. (6 horas) [Nivel Bloom 2] 4.45.4.6 IS/Agentes. (6 horas) [Nivel Bloom 2] 4.45.4.7 IS/Procesamiento de Lenguaje Natural. (4 horas) [Nivel Bloom 2] 4.45.4.8 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 5] 4.45.4.9 IS/Sistemas de Planeamiento. (6 horas) [Nivel Bloom 3] 4.45.4.10 IS/Robtica. (6 horas) [Nivel Bloom 2] 4.45.4.11 IS/Percepcin. (6 horas) [Nivel Bloom 3]

4.45.4.1 IS/Tpicos Fundamentales en Sistemas Inteligentes. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [De Castro, 2006] Tpicos 1. Historia de la inteligencia artificial. 2. Cuestiones filosficas. 3. La prueba de Turing. 4. Experimento de pensamiento del ``Cuarto Chino'' de Searle. 5. Temas ticos en IA. 6. Definiciones fundamentales. 7. Razonamiento ptimo vs. razonamiento actuando como humano. 8. Comportamiento ptimo vs. comportamiento actuando como humano. 9. Preguntas filosficas. 10. Modelando el mundo. 11. El rol de la heurstica. Objetivos

409

1. Describir la prueba de Turing y el experimento de pensamiento del ``Cuarto Chino''. 2. Diferenciar los conceptos de razonamiento ptimo y razonamiento actuando como humano. 3. Diferenciar los conceptos de comportamiento ptimo y comportamiento actuando como humano. 4. Lista de ejemplos de sistemas inteligentes que dependen del modelo del mundo. 5. Describir el rol de la heurstica y la necesidad de un punto medio entre la optimizacin y la eficiencia. 4.45.4.2 IS/Bsqueda y Satisfaccin de la Restriccin. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Nilsson, 2001] Tpicos 1. Problemas de espacio. 2. Bsqueda de fuerza bruta (respiro primero, profundidad primero, profundidad primero con profundizacin iterativa). 3. Bsqueda del mejor primero (mejor genrico primero, algoritmo de Dijkstra, A*, admisibilidad de A*). 4. Juegos de dos jugadores (bsqueda mnima, poda alfa-beta). 5. Satisfaccin de la restriccin (backtracking mtodos de bsqueda local y seguimiento). Objetivos 1. Formular un eficiente problema expresado en el idioma espaol, caracterizando este problema en trminos de estados, operadores, estado inicial y una descripcin del estado final. 2. Describir el problema de explosin combinatoria y sus consecuencias. 3. Seleccionar un algoritmo apropiado de bsqueda de fuerza bruta para un problema, implementarlo y caracterizar sus complejidades de tiempo y espacio. 4. Seleccionar un algoritmo de bsqueda heurstica para un problema, implementarlo por medio del diseo de la funcin de evaluacin heurstica necesaria. 5. Describir bajo que condiciones los algoritmos de heurstica garantizan una solucin ptima. 6. Implementar la bsqueda mnima con poda alfa-beta para juegos de dos. 7. Formular un problema en espaol utilizando un algoritmo de backtracking cronolgico. 4.45.4.3 IS/Razonamiento basado en conocimiento. (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Nilsson, 2001,Russell and Norvig, 2003] Tpicos
410

1. 2. 3. 4. 5.

Repaso de lgica proposicional y lgica de predicados. Resolucin y prueba de teoremas. Inferencia no monotnica. Razonamiento probabilstico. Teorema de Bayes.

Objetivos 1. 2. 3. 4. Explicar la operacin de la tcnica de resolucin para probar teoremas. Explicar la diferencia entre inferencia monotnica y no monotnica. Discutir las ventajas y defectos del razonamiento probabilstico. Aplicar el teorema de Bayes para determinar probabilidades condicionales.

4.45.4.4 IS/Bsqueda Avanzada. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Goldberg, 1989,Nilsson, 2001,Russell and Norvig, 2003] Tpicos 1. 2. 3. 4. 5. 6. 7. Heursticas. Bsqueda local y optimizacin. Subiendo a la colina Hill climbing. Algoritmos genticos. Simulated annealing. Estrategias local de recorte de caminos local beam search. Bsquedas en el adversario para juegos.

Objetivos 1. Explicar que son los algoritmos genticos y contrastar su efectividad con las soluciones de problemas clsicos y tcnicas de bsqueda clsicas. 2. Explicar como simulated annealing puede ser usado para reducir la complejidad y contrastar su operacin con tcnicas de bsqueda clsica. 3. Aplicar tcnicas de bsqueda local a un dominio clsico. 4.45.4.5 IS/Representacin Avanzada del Conocimiento y Razonamiento. (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Nilsson, 2001,Russell and Norvig, 2003] Tpicos 1. Representacin estructurada. a) Frames y objetos. b) Lgicas de descripcin.
411

c) Sistemas de herencia. 2. Razonamiento no monotnico. a) Lgicas no clsicas. b) Razonamiento por defecto. c) Revisin de creencias. d) Lgicas de preferencia. e) Integracin de fuentes de conocimiento. f) Agregacin de creencias conflictivas. 3. Razonamiento sobre accin y cambio. a) Clculo de situaciones. b) Clculo de eventos. c) Problemas de ramificacin. 4. Razonamiento temporal y espacial. 5. Incerteza. a) Razonamiento probabilstico. b)
412

Redes Bayesianas. c) Teora de la decisin. 6. Representacin del conocimiento para diagnstico, representacin cualitativa. 7. Ingeniera ontolgica. 8. Redes semnticas. Objetivos 1. Comparar y contrastar los modelos ms comunes usados para representacin de conocimiento estructurado, resaltando sus fortalezas y debilidades. 2. Caracterizar los componentes de razonamiento no monotnico y su utilidad como un mecanismo de representacin para sistemas de creencia. 3. Aplicar clculos de situaciones y eventos para problemas de accin y cambio. 4. Articular la distincin entre razonamiento temporal y espacial, explicando como se interrelacionan. 5. Describir y contrastar las tcnicas bsicas para representar incerteza. 6. Describir y contrastar las tcnicas bsicas para diagnstico y representacin cualitativa. 4.45.4.6 IS/Agentes. (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Nilsson, 2001,Russell and Norvig, 2003] Tpicos 1. Definicin de agentes. 2. Aplicacin exitosa y estado del arte de los sistemas basados en agentes. 3. Arquitectura de agentes. a) Agentes reactivos simples. b) Planeadores reactivos. c) Arquitecturas de capas. d) Ejemplos de arquitecturas y aplicaciones. 4. Teora de agentes.
413

a) Acuerdos. b) Intenciones. c) Agentes de decisin terica. d) Procesos de decisin Markovianos (PDM). 5. Agentes de software, asistentes personales y acceso a la informacin. a) Agentes colaborativos. b) Agentes recolectores de informacin. 6. Agentes crebles (caracteres sintticos, modelo de emociones en agentes ). a) Agentes que aprenden. b) Sistemas multiagente. c) Sistemas multiagente inspirados econmicamente. d) Agentes colaborativos. e) Equipos de agentes. f) Modelando agentes. g)
414

Aprendizaje multiagente. 7. Introduccin a agentes robticos. 8. Agentes mviles. Objetivos 1. Explicar en qu difiere un agente de otras categoras de sistemas inteligentes. 2. Caracterizar y contrastar las arquitecturas estndar de agentes. 3. Describir las aplicaciones de la teora de agentes para dominios tales como agentes de software, asistentes personales y agentes crebles. 4. Describir la distincin entre agentes que aprenden y aquellos que nolo hacen. 5. Demostrar, usando ejemplos apropiados, cmo los sistemas multiagente soportan interaccin de agentes. 6. Describir y contrastar agentes mviles y robticos. 4.45.4.7 IS/Procesamiento de Lenguaje Natural. (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Nilsson, 2001,Russell and Norvig, 2003] Tpicos 1. 2. 3. 4. 5. 6. Gramticas determinsticas y estocsticas. Algoritmos de parsing. Mtodos basados en corpus. Recuperacin de informacin. Traslacin de lenguaje. Reconocimiento del habla.

Objetivos 1. Definir y contrastar gramticas determinsticas y estocsticas, proveyendo ejemplos para mostrar la adecuacin de cada una. 2. Identificar algoritmos de parsing clsicos para parseo de lenguaje natural. 3. Defender la necesidad de un corpus establecido. 4. Dar ejemplos de catlogos y procedimientos de bsqueda en un mtodo basado en corpus. 5. Articular la distincin entre tcnicas para recuperacin de informacin, traduccin del lenguaje y reconocimiento de voz. 4.45.4.8 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [Haykin, 1999,Nilsson, 2001,Russell and Norvig, 2003] Tpicos 1. Definicin y ejemplos de aprendizaje de mquina. 2. Aprendizaje inductivo, aprendizaje basado en estadstica, aprendizaje por refuerzo.
415

3. Aprendizaje supervisado. 4. rboles de aprendizaje por decisin. 5. Aprendizaje por redes neuronales . 6. Redes de aprendizaje por creencia. 7. Algoritmo del vecino ms cercano. 8. Teora de aprendizaje. 9. El problema del sobreajuste. 10. Aprendizaje no supervisado. 11. Aprendizaje por refuerzo. Objetivos 1. Explicar las diferencias entre tres principales estilos de aprendizaje: supervisado, no supervisado y por refuerzo. 2. Implementar algoritmos simples para aprendizaje supervisado, aprendizaje por refuerzo y aprendizaje no supervisado. 3. Determinar cuales de los tres estilos de aprendizaje es apropiado para un dominio de problema en particular. 4. Comparar y contrastar cada una de las siguientes tcnicas, proveer ejemplos de cuando cada estrategia es superior: rboles de decisin, redes neuronales y redes de creencia.. 5. Implementar de manera apropiada un sistema de aprendizaje simple, usando rboles de decisin, redes neuronales y/o redes de creencia. 6. Caracterizar el estado del arte en teora del aprendizaje, incluyendo logros y defectos. 7. Explicar el algoritmo del vecino ms cercano y su lugar dentro de la teora del aprendizaje.. 8. Explicar el problema de sobreajuste, a travs de tcnicas para detectar y manejar el problema. 4.45.4.9 IS/Sistemas de Planeamiento. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Haykin, 1999,Nilsson, 2001,Russell and Norvig, 2003] Tpicos 1. 2. 3. 4. 5. 6. Definicin y ejemplos de sistemas de planeamiento. Planeamiento como bsqueda. Planeamiento basado en operadores. Grafos de planeamiento. Planeamiento proposicional. Extendiendo sistemas de planeamiento (basado en casos, aprendizaje y sistemas probabilsticos). 7. Sistemas de planeamiento para un mundo esttico. 8. Planeamiento y ejecucin incluyendo planeamiento condicional y continuo. 9. Planeamiento en agentes mviles. 10. Planeamiento y robtica.

416

Objetivos 1. Definir el concepto de un sistema de planeamiento. 2. Explicar como los sistemas de planeamiento difieren de tcnicas de bsqueda clsicas. 3. Articular las diferencias entre planeamiento como bsqueda, planeamiento basado en operadores y planeamiento proposicional, proveyendo ejemplos de dominios donde cada uno es ms aplicable. 4. Definir y proveer ejemplos para cada una de las siguientes tcnicas: basada en casos, aprendizaje y planeamiento probabilstico. 5. Comparar y contrastar sistemas de planeamiento para un mundo esttico con necesidad de ejecucin dinmica. 6. Explicar el impacto de planeamiento dinmico en robtica. 4.45.4.10 IS/Robtica. (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Nilsson, 2001,Russell and Norvig, 2003] Tpicos 1. Visin general. 2. Estado del arte de sistemas de robot. 3. Planeamiento vs. control reactivo. 4. Incerteza en control. 5. Sentido. 6. Modelos del mundo. 7. Espacios de configuracin. 8. Planeamiento. 9. Programacin de robots. 10. Navegacin y control. 11. Robtica. Objetivos 1. Sintetizar el potencial y limitaciones del estado del arte de los sistemas de robot actuales. 2. Implementar los algoritmos de configuracin de espacio para un robot 2D y polgonos complejos. 3. Implementar algoritmos de planeamiento de movimientos simples. 4. Explicar las incertezas asociadas con sensores y la forma de tratarlas. 5. Disear una arquitectura de control simple. 6. Describir varias estrategias para navegacin en ambientes desconocidos, incluyendo las fortalezas y defectos de cada una. 7. Describir varias estrategias de navegacin con la ayuda de hitos, incluyendo las fortalezas y defectos de cada una. 4.45.4.11 IS/Percepcin. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Nilsson, 2001,Russell and Norvig, 2003]
417

Tpicos 1. Percepcin: rol y aplicaciones. 2. Formacin de imagenes: luz, color, sombras. 3. Imagenes y deteccin de objetos: reconocimiento de caractersticas, reconocimiento de objetos. 4. Tecnologas. 5. Caractersticas del software de percepcin. Objetivos 1. Describir la importancia del reconocimiento de imagenes y objetos en Inteligencia Artificial e indicar aplicaciones de esta tecnologa. 2. Delinear las principales tcnicas de reconocimiento de objetos. 3. Describir las diferentes caractersticas de las tecnologas usadas en percepcin.

4.46 CS336. Seguridad en Computacin (Obligatorio)


Semestre: 7mo Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS103O. Algoritmos y Estructuras de Datos (4to Sem) Slabo: Slabo (PDF)

Subsecciones

4.46.1 Justificacin 4.46.2 Objetivos Generales 4.46.3 Contribucin a los resultados 4.46.4 Unidades o 4.46.4.1 PF/Fundamentos de seguridad de la Informacin. (4 horas) [Nivel Bloom 4] o 4.46.4.2 PF/Programacin segura. (4 horas) [Nivel Bloom 4] o 4.46.4.3 OS/Modelos de seguridad. (4 horas) [Nivel Bloom 4] o 4.46.4.4 AL/Algoritmos Criptogrficos. (4 horas) [Nivel Bloom 3] o 4.46.4.5 NC/Seguridad de Red. (8 horas) [Nivel Bloom 3] o 4.46.4.6 NC/Administracin de Redes. (8 horas) [Nivel Bloom 3] o 4.46.4.7 Factores humanos y seguridad. (2 horas) [Nivel Bloom 4] o 4.46.4.8 SP/Operaciones de seguridad. (8 horas) [Nivel Bloom 4] o 4.46.4.9 PL/Mquinas Virtuales. (3 horas) [Nivel Bloom 2]

418

4.46.1 Justificacin Hoy en dia la informacin es uno de los activos ms preciados en cualquier organizacin. Este cursos est orientado a poder brindar al alumno los elementos de seguridad orientados a proteger la informacin de la organizacin y principalmente poder preveer los posibles problemas relacionados con este rubro. Esta materia involucra el desarrollo de una actitud preventiva por parte del alumno en todas las reas relacionadas al desarrollo de software. 4.46.2 Objetivos Generales 1. Discutir a un nivel intermedio avanzado los los fundamentos de la Seguridad Informtica. 2. Brindar los diferentes aspectos que presenta el cdigo malicioso. 3. Que el alumno conozca los conceptos de criptografa y seguridad en redes de computadoras. 4. Discutir y analizar junto con el alumno los aspectos de la Seguridad en Internet. 4.46.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. g) Nivel Bloom 4 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 4 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3
419

Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.46.4 Unidades

Subsecciones

4.46.4.1 PF/Fundamentos de seguridad de la Informacin. (4 horas) [Nivel Bloom 4] 4.46.4.2 PF/Programacin segura. (4 horas) [Nivel Bloom 4] 4.46.4.3 OS/Modelos de seguridad. (4 horas) [Nivel Bloom 4] 4.46.4.4 AL/Algoritmos Criptogrficos. (4 horas) [Nivel Bloom 3] 4.46.4.5 NC/Seguridad de Red. (8 horas) [Nivel Bloom 3] 4.46.4.6 NC/Administracin de Redes. (8 horas) [Nivel Bloom 3] 4.46.4.7 Factores humanos y seguridad. (2 horas) [Nivel Bloom 4] 4.46.4.8 SP/Operaciones de seguridad. (8 horas) [Nivel Bloom 4] 4.46.4.9 PL/Mquinas Virtuales. (3 horas) [Nivel Bloom 2]

4.46.4.1 PF/Fundamentos de seguridad de la Informacin. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,,] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Rol y propsito de de la seguridad en las computadoras y redes. Objetivos de seguridad: confidencialidad, integridad y disponibilidad. Polticas y estndares de seguridad. Mentalidad orientada a la seguridad. Defensa en profundidad. Amenazas comunes: worms, virus, troyanos, bloqueo de acceso a servicios. Estimacin de riesgos y anlisis de costo beneficio. Seguridad vs usabilidad.

Objetivos 1. Explicar los objetivos de lse seguridad de la informacin. 2. Analizar los puntos de equilibrio inherentes a la seguridad. 3. Explicar la importancia y las aplicaciones de la confidencialidad, integridad y disponibilidad. 4. Entender las categoras bsicas de las amenazas a las computadoras y redes.

420

5. Discutir problemas para crear polticas de seguridad para una organizacin de gran tamao. 6. Defender la necesidad de ls proteccin y la seguridad y el rol de consideraciones ticas en el uso de computadores. 4.46.4.2 PF/Programacin segura. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Validaciones importantes para evitar desbordes en array y cadenas. 2. Construcciones en lenguajes de programacin para evitar problemas de seguridad. 3. Cmo los atacantes usan el desborde para destruir la pila (stack) en tiempo de ejecucin. Objetivos 1. Reescribir un simple programa para remover una simple vulnerabilidad. 2. Explicar porque es o no es posible el desborde en un lenguaje de programacin de dominio del estudiante. 3. Explicar porque una o ms construcciones de lenguaje pueden originar problemas de seguridad como desborde. 4.46.4.3 OS/Modelos de seguridad. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. Modelos de proteccin. Proteccin de memoria. Encriptacin. Gestin de la recuperacin. Tipos de control de acceso: obligatorio, a discresin, controlado por el origen, basado en el rol. 6. Modelo de matriz de control de acceso. 7. El modelo Harrison-Russo-Ullman y la indecisin en temas de seguridad. 8. Modelos de confidencialidad tales como Bell-LaPadula. 9. Modelos de integridad tales como Biba y Clark-Wilson. 10. Modelos de conflicto de inters tales como la muralla china. Objetivos 1. Comparar y contrastar mtodos existentes para la implementacin de seguridad. 2. Comparar y contrastar las fortalezas y debilidades de dos o ms sistemas operativos actuales con respecto a la seguridad.
421

3. Comparar y contrastar las fortalezas y debilidades en seguridad de dos o ms sistemas operativos actuales con respecto a la gestin de la recuperacin. 4. Describir la matriz de control de accesos y como esta se relaciona la Lista de control de accesos (Access Control Lists-ACLs.) y a las listas de capacidades (CLists) 5. Aplicar el modelo de Biba para el chequeo de las entradas de un programa (contaminada y descontaminada por ejemplo). 6. Describir como el modelo Bell-LaPadula combina mecanismos de control de acceso obligatorios y a discresin as como explicar la formulacin de lattice de Bell-LaPadula y Biba. 7. Comparar y contrastar dos modelos de seguridad. 8. Relacionar modelos de seguridad particular con los modelos del ciclo de desarrollo de software. 9. Aplicar modelos particulares a diferentes entornos y seleccionar el modelo que mejor captura el entorno. 4.46.4.4 AL/Algoritmos Criptogrficos. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,] Tpicos 1. 2. 3. 4. 5. 6. Revisin histrica de la criptografa. Criptografa de llaves privadas y el problema del intercambio de llaves. Criptografa de llaves pblicas. Firmas digitales. Protocolos de seguridad. Aplicaciones (pruebas de cero-conocimiento, autenticacin y otros).

Objetivos 1. Describir algoritmos numrico-tericos bsicos eficientes, incluyendo el mximo comn divisor, inversa multiplicativa mod n y elevar a potencias mod n. 2. Describir al menos un cripto-sistema de llave pblica, incluyendo una suposicin necesaria de complejidad terica sobre su seguridad. 3. Crear extensiones simples de protocolos criptogrficos, usando protocolos conocidos y primitivas criptogrficas. 4.46.4.5 NC/Seguridad de Red. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,] Tpicos 1. Fundamentos de criptografa: a) Algoritmos de clave pblica.
422

b) Algoritmos de clave privada. 2. Protocolos de autenticacin. 3. Firmas digitales y ejemplos. 4. Tipos de ataques por red: negacin de servicio (Denial of service), desborde flooding, sniffing y desvio de trfico, ataques de integridad de mensajes, usurpacin de identidad, ataques de vulnerabilidades (desborde de buffers, caballos de troya, puertas traseras), por dentro del ataque, infraestructura (secuestro de DNS, ruteo nulo- route blackholing, comportamiento inadecuado de ruteadores que descartan trfico), etc. 5. Uso de contraseas y mecanismos de control de acceso. 6. Herramientas y estrategias de defensa bsica. a) Deteccin de intrusos. b) Firewalls. c) Deteccin de malware. d) Kerberos. e) IPSec. f) Redes privadas virtuales (Virtual Private Networks). g) Traduccin de direcciones de red. 7. Polticas de gerenciamiento de recursos en redes. 8. Auditora y logging. Objetivos 1. Describir las mejoras hechas por el IPSec al IPv4.

423

2. Identificar protocolos usados para mejorar la comunicacin en Internet y escoger el protocolo apropiado para un determinado caso. 3. Entender y detectar intrusiones. 4. Discutir las ideas fundamentales de criptografa de clave pblica. 5. Describir como la criptografa de clave pblica trabaja. 6. Distinguir entre el uso de algoritmos de clave privada y pblica. 7. Resumir los protocolos comunes de autenticacin. 8. Generar y distribuir un par de claves PGP y usar el paquete PGP para enviar un mensaje de correo electrnico encriptado. 9. Resumir las capacidades y limitaciones del significado de criptografa que se encuentran disponibles para el pblico en general. 10. Describir y discutir recientes ataques de seguridad exitosos. 11. Resumir las fortalezas y debilidades asociadas con diferentes abordajes de seguridad. 4.46.4.6 NC/Administracin de Redes. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,] Tpicos 1. 2. 3. 4. 5. 6. Vista general de la administracin de redes. Uso de contraseas y mecanismos de control de acceso. Nombres de dominio y servicios de nombre. Proveedores de servicio de Internet (ISPs). Seguridad y muros de fuego (firewalls). Asuntos de calidad de servicio: desempeo, recuperacin de errores.

Objetivos 1. Explicar los asuntos de la administracin de redes resaltando amenazas de seguridad, virus, gusanos, troyanos y ataques de negacin de servicios. 2. Desarrollar una estrategia para asegurar niveles apropiados de seguridad en un sistema diseado para un propsito particular. 3. Implementar un muro de fuego (firewall) de red. 4.46.4.7 Factores humanos y seguridad. (2 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. Psicologa aplicada y polticas de seguridad. Diseo pensando en usabilidad y seguridad. Ingeniera social. Suplantacin de indentidad. Adquisicin de informacin confidencial de forma fraudulenta Phishing.

Objetivos
424

1. 2. 3. 4. 5.

Explicar el concepto de phishing y como reconocerlo. Explicar el concepto de robo de identidad y cmo dificultarlo. Disear una interfaz de usuario con mecanismos de seguridad. Discutir procedimientos que ayuden a reducir un ataque de ingeniera social. Analizar una poltica de seguridad y/o procedimientos para mostrar donde funcionan y donde fallan. Hacer consideraciones de valor prctico.

4.46.4.8 SP/Operaciones de seguridad. (8 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. 7. Seguridad fsica. Control de acceso fsico. Control de acceso de personal. Seguridad Operativa. Polticas de seguridad para sistemas/redes. Recuperacin y respuesta. Manejando problemas tcnicos y humanos.

Objetivos 1. Desarrollar un plan de recuperacin de incidentes para manejar los compromisos de una organizacin. 2. Analizar los procedimientos de seguridad establecidos en busca de puntos dbiles que un atacante podra explotar y explicar como los mismos podran fallar. 3. Proponer medidas de seguridad apropiadas para diferentes situaciones. 4. Explicar para una comunidad de usuarios no expertos en seguridad que medidas ellos deben seguir y porque en una situacin en la que sus trabajos no sean realacionados con seguridad. 4.46.4.9 PL/Mquinas Virtuales. (3 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Temas de seguridad relacionados a ejecutar cdigo sobre una mquina externa. Objetivos 1. Explicar como los programas ejecutables pueden violar la seguridad de sistema computacional accediendo a archivos de disco y memoria.

4.47 CS314. Algoritmos Paralelos (Obligatorio)


Semestre: 7mo Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos:
425

o o

CS210T. Anlisis y Diseo de Algoritmos (5to Sem) CS225T. Sistemas Operativos (6to Sem)

Slabo: Slabo (PDF)

Subsecciones

4.47.1 Justificacin 4.47.2 Objetivos Generales 4.47.3 Contribucin a los resultados 4.47.4 Unidades o 4.47.4.1 CN/Computacin Paralela. (5 horas) [Nivel Bloom 4] o 4.47.4.2 AR/Multiprocesamiento. (5 horas) [Nivel Bloom 3] o 4.47.4.3 AL/Algoritmos Paralelos. (3 horas) [Nivel Bloom 4] o 4.47.4.4 Modelos de Threads con PTHREADs (0 horas) [Nivel Bloom 3] o 4.47.4.5 Modelos de Threads con OpenMP (0 horas) [Nivel Bloom 3] o 4.47.4.6 Modelo de programacin mediante paso de Mensajes con MPI (0 horas) [Nivel Bloom 3] o 4.47.4.7 Threading Building Blocks (TBB) (0 horas) [Nivel Bloom 3]

4.47.1 Justificacin Las arquitecturas de computadores estn tendiendo a incluir cada vez ms ncleos y/o procesadores por mquina como mtodo de incrementar la capacidad computacional de cada unidad. La posibilidad de realizar mltiples tareas simultaneamente mediante hardware no es inmediatamente traducida al software, pues las aplicaciones deben ser diseadas para aprovechar estas nuevas capacidades, mediante el uso de hebras y/o procesos. 4.47.2 Objetivos Generales 1. Que el alumno sea capaz de crear aplicaciones paralelas de mediana complejidad aprovechando eficientemente mquinas con mltiples ncleos. 2. Que el alumno sea capaz de comparar aplicaciones secuenciales y paralelas. 3. Que el alumno sea capaz de convertir, cuando la situacin lo amerite, aplicaciones secuenciales a paralelas de forma eficiente. 4.47.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4
426

Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. g) Nivel Bloom 3 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.47.4 Unidades

Subsecciones

4.47.4.1 CN/Computacin Paralela. (5 horas) [Nivel Bloom 4] 4.47.4.2 AR/Multiprocesamiento. (5 horas) [Nivel Bloom 3] 4.47.4.3 AL/Algoritmos Paralelos. (3 horas) [Nivel Bloom 4] 4.47.4.4 Modelos de Threads con PTHREADs (0 horas) [Nivel Bloom 3] 4.47.4.5 Modelos de Threads con OpenMP (0 horas) [Nivel Bloom 3] 4.47.4.6 Modelo de programacin mediante paso de Mensajes con MPI (0 horas) [Nivel Bloom 3] 4.47.4.7 Threading Building Blocks (TBB) (0 horas) [Nivel Bloom 3]

4.47.4.1 CN/Computacin Paralela. (5 horas) [Nivel Bloom 4] Referencias Bibliogrficas: []


427

Tpicos 1. Revision de los tpicos. 2. Models of computation. 3. Tipos de computation. 4. Tareas paralelas. 5. Datos paralelos. 6. Cluster. 7. Paradigmas de programacin paralela. 8. Hebras (threading). 9. Paso de mensajes. 10. Tcnicas dirigidas a eventos. 11. Arquitecturas de software paralelas (MapReduce). 12. Computacin en grilla (grid computing). 13. Comunidades abiertas de computacin distribuida (BOINC, SETI, ...). Objetivos 1. Comparar y contrastar para computacin paralela reconociendo las fortalezas y debilidades de cada una. 2. Comparar y contrastar paradigma de programacin paralela reconociendo las fortalezas y debilidades de cada una. 3. Indentificar las propiedades bsicas de ancho de banda, latencia, escalabilidad, granularidad. 4. Disear, cdigo, hacer test y depuracin de computacin paralela.

4.47.4.2 AR/Multiprocesamiento. (5 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. 7. La ley de Amdahl. Procesamiento en vectores pequeos (operaciones multimedia). Procesadores Multincleos y Multihebras. La taxonoma de Flynn: Estructuras multiprocesador y arquitecturas. Sistemas de programacin de mltiples procesadores. GPU y procesadores grficos de propsito especial. Introduccin a la lgica reconfigurable y procesadores de propsito especial.

Objetivos 1. Discutir el concepto de procesamiento paralelo y la relacin entre paralelismo y desempeo. 2. Apreciar que los tipos de datos multimedia (ej. audio y datos visuales de 8/16 bits) pueden ser procesados en paralelo en registros de 64 bits para mejorar el desempeo.
428

3. Entender como el desempeo puede ser mejorado incorporando mltiples procesadores en un nico chip. 4. Apreciar la necesidad de expresar algoritmos en una forma que permita la ejecucin en procesadores paralelos. 5. Entender como los procesadores grficos de propsito especial (GPUs) pueden acelerar el desempeo de aplicaciones grficas. 6. Entender la organizacin de estructuras computacionales que puedan ser electronicamente configuradas y reconfiguradas. 4.47.4.3 AL/Algoritmos Paralelos. (3 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. El modelo PRAM. Lecturas y escrituras exclusivas vs concurrentes. Salto de punteros. El modelo PRAM.teorema

Objetivos 1. Describir la implementacin de lstas enlazadas en un PRAM. 2. Usar operaciones paralelas para implementar clculos simples eficientes en paralelo. 3. Explicar el teorema de Brent y su relevancia. 4.47.4.4 Modelos de Threads con PTHREADs (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Qu es una hebra? Qu es pthread? Diseando programas con pthreads. Creacun y manejo de hebras. Sincronizacin de hebras con mutex.

Objetivos 1. Entender los distintos modelos de programacin paralela. 2. Conocer ventajas y desventajas de los distintos modelos de programacin paralela. 4.47.4.5 Modelos de Threads con OpenMP (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Qu es OpenMP? 2. El modelo de programacin OpenMP. 3. Directivas de OpenMP.
429

4. 5. 6. 7.

Constructores de trabajo compartido. Constructores de Tareas. Constructores de sincronizacin. Manejo de datos privados y compartidos.

Objetivos 1. Implementar programas multihebras por medio de OpenMP. 2. Entender y aplicar conceptos de sincronizacin y trabajo compartido. 4.47.4.6 Modelo de programacin mediante paso de Mensajes con MPI (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. 7. Qu es MPI? Rutinas de administracin de ambiente. Rutinas de comunicacin punto a punto. Rutinas de comunicacin colectiva. Tipos de datos derivados. Rutinas de administracin del comunicador y de grupo. Topologa virtual.

Objetivos 1. Implementar programas multihebras por medio de OpenMP. 2. Entender y aplicar conceptos de sincronizacin y trabajo compartido. 4.47.4.7 Threading Building Blocks (TBB) (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. Bucles Simples Paralelos. Bucles Complejos Paralelos. Cancelacin y Exepciones. Contenedores paralelos.

Objetivos 1. Entender y aplicar el modelo de datos paralelos utilizando la herramienta TBB.

4.48 CS343. Lenguajes de Programacin (Obligatorio)


Semestre: 7mo Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS211T. Teora de la Computacin (4to Sem) o CS210T. Anlisis y Diseo de Algoritmos (5to Sem)
430

Slabo: Slabo (PDF)

Subsecciones

4.48.1 Justificacin 4.48.2 Objetivos Generales 4.48.3 Contribucin a los resultados 4.48.4 Unidades o 4.48.4.1 El desarrollo histrico de los lenguajes de programacin (4 horas) [Nivel Bloom 2] o 4.48.4.2 Lenguajes Imperativos (4 horas) [Nivel Bloom 4] o 4.48.4.3 Orientacin a Objetos (8 horas) [Nivel Bloom 4] o 4.48.4.4 Lenguajes Funcionales (4 horas) [Nivel Bloom 3] o 4.48.4.5 Lenguajes Lgicos (4 horas) [Nivel Bloom 3] o 4.48.4.6 Otros Paradigmas (2 horas) [Nivel Bloom 2]

4.48.1 Justificacin A pesar de que los algoritmos han sido diseados y escritos por lo menos desde el tiempo de Euclides; es que tan slo en los ltimos cincuenta aos (desde el desarrollo de la computadora digital) los mtodos de expresar algoritmos han sido objeto de un extenso estudio. En la actualidad existen distintos paradigmas de programacin, cientos de lenguajes de programacin en uso activo, muchos ms en existencia y an ms por ser diseados. El propsto de este curso es el dar una introduccin a los principios del estudio de la programacin, y brindar los fundamentos bsicos en este tpico. Al brindar un estudio exhaustivo de los principios del diseo de los lenguajes de programacin es que este curso pretende convertir al estudiante en un mejor programador. Adicionalmente este curso es til si se necesita tomar la decisin acerca de que lenguaje de programacin usar para un proyecto, o si alguna vez necesita disear su propio lenguaje. 4.48.2 Objetivos Generales 1. Capacitar a los estudiantes para entender los lenguajes de programacin desde diferentes tipos de vista, segn el modelo subyacente, los componentes fundamentales presentes en todo lenguaje de programacin y como objetos formales dotados de una estructura y un significado segn diversos enfoques 4.48.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina.
431

b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.48.4 Unidades

Subsecciones

4.48.4.1 El desarrollo histrico de los lenguajes de programacin (4 horas) [Nivel Bloom 2] 4.48.4.2 Lenguajes Imperativos (4 horas) [Nivel Bloom 4] 4.48.4.3 Orientacin a Objetos (8 horas) [Nivel Bloom 4] 4.48.4.4 Lenguajes Funcionales (4 horas) [Nivel Bloom 3] 4.48.4.5 Lenguajes Lgicos (4 horas) [Nivel Bloom 3] 4.48.4.6 Otros Paradigmas (2 horas) [Nivel Bloom 2]

4.48.4.1 El desarrollo histrico de los lenguajes de programacin (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. Historia de los Lenguajes de Programacin Paradigmas existentes Estructura de un programa: Lxico, Sintctico y Semntico BNF Tcnicas para la reduccin de la complejidad en los programas Procesamiento de programas: Interpretacin vs Compilacin

Objetivos 1. Reconocer el desarrollo histrico de los lenguajes de programacin


432

2. Identificar los paradigmas que agrupan a la mayora de lenguajes de programacin existentes hoy en da 3. Discutir entre los distintos paradigmas y establecer sus ventajas y desventajas 4. Establecer otros enfoques para la clasificacin de los lenguajes de programacin 5. Diferenciar entre los distintos enfoques estructurales, desde el anlisis lxico hasta el semntico 6. Identificar el concepto de abstraccin entre los distintos paradigmas 7. Diferenciar entre la compilacin y la interpretacin en la ejecucin de programas 8. Reconocer como funciona un programa a nivel de computador 4.48.4.2 Lenguajes Imperativos (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. Introduccin Manejo de datos y tipos Asignaciones y Expresiones Flujos de control Componentes de un programa imperativo Ejemplos de programas imperativos

Objetivos 1. 2. 3. 4. 5. Identificar los principios de la programacin imperativa Determinar las bases del imperativismo:secuencialidad, seleccin y repeticin Aprender cmo los lenguajes imperativos manejan datos y asigna valores Aprender el concepto de ortogonalidad en un lenguaje de programacin Disea e implementa un programa en un lenguaje de programacin imperativo

4.48.4.3 Orientacin a Objetos (8 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. Introduccin a los principios de la programacin orientada a objetos Conceptos bsicos: Clases, Herencia y Polimorfismo Binding Dinmico Semntica referencial Ejemplos de programas orientados a objetos

Objetivos 1. Identificar los principios bsicos en los cuales se basa la programacin orientada a objetos 2. Analiza como pasar del dominio de un problema a un modelado orientado a objetos 3. Aprende como representar a nivel de lenguaje y a nivel de abstraccin un caso problema
433

4. Aprende la sintaxis de un lenguaje de programacin orientado a objetos puro 5. Implementa un programa en lenguaje de programacin orientado a objetos 6. Analiza los distintos tipos de herencia que presentan los lenguajes de programacin orientados a este paradigma y examina sus ventajas y desventajas 4.48.4.4 Lenguajes Funcionales (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin a los lenguajes funcionales Definicin de funcin Listas Tipos y Polimorfismo Funciones de orden superior Lazy Evaluation Ejemplos de programas funcionales

Objetivos 1. 2. 3. 4. Reconocer los principios fundamentales del paradigma funcional Comparar las ventajas de la orientacin funcional sobre otros esquemas Analiza el concepto de funciones y lo aplica en la solucin de problemas Establece la facilidad del uso de lenguajes funcionales para casos en estructuras de datos y recursividad 5. Investiga sobre el clculo lambda 6. Disea e implementa programas en algn tipo de lenguaje funcional 4.48.4.5 Lenguajes Lgicos (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. Principios Clusulas de Horn Variables Lgicas Relaciones y Estructuras de Datos Control del orden de bsqueda Ejemplos de programas basados en el paradigma lgico

Objetivos 1. Comprender el modo de operacin de los lenguajes lgicos orientados al logro de metas 2. Analizar el encadenamiento hacia adelante o hacia atrs 3. Aprender un lenguaje orientado al paradigma lgico 4. Disear e implementar programas en lenguajes de programacin orientados a objetos

434

4.48.4.6 Otros Paradigmas (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,,] Tpicos 1. Programacin Paralela 2. Programacin Distribuida 3. Crtica a la mquina de Von Newmann Objetivos 1. Identifica otros paradigmas presentes en nuestro medio 2. Analiza si es que los paradigmas estudiados son novedosos o solamente una consecuencia de los principales paradigmas analizados 3. Critica la mquina de Von Newmann en base a los conocimientos de su arquitectura 4. Disea e implementa programas en un lenguaje de programacin basado en los paradigmas estudiados

4.49 FG204A. Teologa II (Obligatorio)


Semestre: 7mo Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: o FG204. Teologa I (6to Sem) o FG210. tica (5to Sem) Slabo: Slabo (PDF)

Subsecciones

4.49.1 Justificacin 4.49.2 Objetivos Generales 4.49.3 Contribucin a los resultados 4.49.4 Unidades o 4.49.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2] o 4.49.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] o 4.49.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2]

4.49.1 Justificacin Para que la formacin de un buen profesional no se desligue ni se oponga sino mas bien contribuya al autentico crecimiento personal requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. La fe cristiana es uno de los elementos fundamentales de la configuracin de la vida y el que
435

hacer cultural de nuestro pas, propone los ms altos valores humanos y el horizonte espiritual mas rico posible. Por esta razn dar una clara y explicita formacin cristiana es indispensable. En este curso tratamos de brindar al alumno el conocimiento bsico de las razones. 4.49.2 Objetivos Generales 1. Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.49.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.49.4 Unidades

Subsecciones

4.49.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2] 4.49.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] 4.49.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2]

4.49.4.1 Teologa fundamental (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Comisin Redactora del Catecismo, 1993,Ratzinger, 2001,Biblia, 1975] Tpicos 1. La demanda. 1. Presentacin del curso. 2. Anlisis de la Felicidad. 3. Anlisis del Amor. 4. Esquema de antropologa. 2. Ofertas intramundanas. 1. Hedonismo. 2. Materialismo. 3. Individualismo. 4. Ideologas de dominio. 3. La respuesta cristiana (Parte I).
436

1. Conversin 2. Fe y Razn Objetivos 1. Que el alumno interprete las manifestaciones de su entorno cultural concreto a la luz de los elementos fundamentales de la persona humana. 2. Que el alumno descrubra existencialmente la insuficiencia de las respuestas del mero poder, tener o placer y al mismo tiempo se proponga que es lo que realmente anhela en la vida. 3. Que el alumno descubra la fe cristiana como una respuesta a los anhelos mas profundos del ser humano que ha creado toda una cultura y que est en la base de nuestra vida nacional. 4.49.4.2 Teologa dogmtica (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Comisin Redactora del Catecismo, 1993,Ratzinger, 2001,Biblia, 1975] Tpicos 1. La respuesta cristiana (Parte II). 1. Dios Unitrino. 2. Doctrina de la creacin. 3. El pecado original. 2. La respuesta cristiana (Parte III). 1. Identidad y misin de Jess de Nazareth. 2. Vida y obra de Jess de Nazareth. 3. La gracia 4. El Espritu Santo. 5. La Iglesia Una, Santa, Catlica y Apostlica. 6. La Virgen Mara y la Vida Cristiana. Objetivos 1. Que el alumno tenga pleno conocimiento de lo que significa la palabra de Dios y de las formas en las que l se relaciona con nosotros con el fin de que reafirme y fortalezca su f, enfrente dificultades y asuma el compromiso al que Dios lo invita. 4.49.4.3 Teologa moral y espiritual (15 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Comisin Redactora del Catecismo, 1993,Ratzinger, 2001,Biblia, 1975] Tpicos 1. 2. 3. 4. 5. Fundamentos de teologa moral. Fundamentos de teologa espiritual. La vida espiritual. La vida de oracin. El combate espiritual.
437

Objetivos 1. Que el alumno comprenda la necesidad de una vida espiritual que le permita encontrar el sentido de su vida. 4.50 CS402. Proyecto II (Obligatorio)

Semestre: 8vo Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: o CS401. Proyecto I (7mo Sem) Slabo: Slabo (PDF)

Subsecciones

4.50.1 Justificacin 4.50.2 Objetivos Generales 4.50.3 Contribucin a los resultados 4.50.4 Unidades o 4.50.4.1 Levantamiento del estado del arte (60 horas) [Nivel Bloom 5]

4.50.1 Justificacin Este curso tiene por objetivo que el alumno pueda realizar un estudio del estado del arte de un que el alumno ha elegido como tema para su tesis. 4.50.2 Objetivos Generales 1. Que el alumno realice una investigacin inicial en un tema especifico realizando el estudio del estado del arte del tema elegido. 2. Que el alumno muestre dominio en el tema de la lnea de investigacin elegida. 3. Que el alumno elija un docente que domine el de investigacin elegida como asesor. 4. Los entregables de este curso son: Avance parcial: Bibliografa slida y avance de un Reporte Tcnico. Final: Reporte Tcnico con experimentos preliminares comparativos que demuestren que el alumno ya conoce las tcnicas existentes en el rea de su proyecto y elegir a un docente que domine el rea de su proyecto como asesor de su proyecto.
438

4.50.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. e) Nivel Bloom 4 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. h) Nivel Bloom 4 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 5 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. l) Nivel Bloom 3 Desarrollar principios investigacin en el rea de computacin con niveles de competividad internacional.

4.50.4 Unidades

Subsecciones

439

4.50.4.1 Levantamiento del estado del arte (60 horas) [Nivel Bloom 5]

4.50.4.1 Levantamiento del estado del arte (60 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,] Tpicos 1. Realizar un estudio profundo del estado del arte en un determinado tpico del rea de Computacin. 2. Redaccin de artculos tcnicos en computacin. Objetivos 1. Hacer un levantamiento bibliogrfico del estado del arte del tema escogido (esto significa muy probablemente 1 o 2 captulos de marco terico adems de la introduccin que es el captulo I de la tesis) 2. Redactar un documento en latex en formato articulo (paper) con mayor calidad que en Proyecto I (dominar tablas, figuras, ecuaciones, ndices, bibtex, referencias cruzadas, citaciones, pstricks) 3. Tratar de hacer las presentaciones utilizando prosper 4. Mostrar experimentos bsicos 5. Elegir un asesor que domine el rea de investigacin realizada 4.51 CS391. Calidad de Software (Obligatorio)

Semestre: 8vo Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: o CS390. Ingeniera de Software II (6to Sem) Slabo: Slabo (PDF)

Subsecciones

4.51.1 Justificacin 4.51.2 Objetivos Generales 4.51.3 Contribucin a los resultados 4.51.4 Unidades o 4.51.4.1 CMMI v 1.2 (18 horas) [Nivel Bloom 3] o 4.51.4.2 People Software Process & Team Software Process (12 horas) [Nivel Bloom 3] o 4.51.4.3 Estndares ISO/IEC (18 horas) [Nivel Bloom 3] o 4.51.4.4 Tcnicas de Prueba de Software (12 horas) [Nivel Bloom 4]

440

4.51.1 Justificacin Calidad: cmo asegurar y verificar la calidad, y la necesidad de una cultura de calidad. Como proveer patrones de calidad por medio de los estndares y mtricas como CMMI, PSP/TSP e ISO. Tcnicas de prueba, verificacin y validacin. Aseguramiento de proceso contra aseguramiento del producto. Estndares de proceso de calidad. Producto y aseguramiento del proceso. Anlisis y divulgacin del problema. Acercamientos estadsticos al control de calidad. 4.51.2 Objetivos Generales 1. Los alumnos deben describir los conceptos fundamentales y comprender la terminologa del CMMI. 2. Los alumnos discutirn acerca de las 22 reas de proceso CMMI as como reconocer el valor de este modelo en diferentes casos de estudio. 3. Los alumnos deben comprender los conceptos fundamentales CMMI para que sean adoptados en los proyectos de software. 4. Describir y comprender los conceptos de calidad, las normas de la familia ISO en sus diferentes versiones. 5. El alumno debe comprender y aplicar el proceso de pruebas de en software desarrollado as como las estadsticas aplicadas a este proceso. 6. El alumno establecer una metodologa de pruebas para el software realizado.

4.51.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. g) Nivel Bloom 4 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad.
441

i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. k) Nivel Bloom 3 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable. 4.51.4 Unidades

Subsecciones

4.51.4.1 CMMI v 1.2 (18 horas) [Nivel Bloom 3] 4.51.4.2 People Software Process & Team Software Process (12 horas) [Nivel Bloom 3] 4.51.4.3 Estndares ISO/IEC (18 horas) [Nivel Bloom 3] 4.51.4.4 Tcnicas de Prueba de Software (12 horas) [Nivel Bloom 4]

4.51.4.1 CMMI v 1.2 (18 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Team, 2006,Chrissis et al., 2007,Kulpa and Johnson, 2008] Tpicos 1. Introduccin. 2. Conceptos de mejora de procesos y CMMI. 3. Visin general a los componentes del modelo CMMI. 4. Representaciones del modelo e institucionalizacin. 5. Desarrollo del producto parte 1. 6. Gestionando el proyecto. 7. Soporte al proyecto y a la organizacin. 8. Desarrollo del producto parte 2. 9. Infraestructura de mejora. 10. Gestionando cuantitativamente. 11. Soportando ambientes complejos. 12. Integrando los temas tratados.
442

13. Siguientes pasos. 14. Resumen. Objetivos 1. Describir los componentes y el contenido del modelo CMMI-DEV y sus relaciones. 2. Discutir las 22 reas de procesos que conforman el modelo. 3. Ubicar informacin relevante en el modelo. 4.51.4.2 People Software Process & Team Software Process (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Pomeroy-Huff et al., 2005,Humphrey, 1995,Humphrey, 1997,Humphrey, 2000,Humphrey, 2001,Humphrey, 2005,Humphrey, 2006b,Humphrey, 2006a]Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Fundamentos. Conceptos bsicos de PSP. Medicin de tamao y estimacin. Creacin y seguimiento de planes de proyecto. Planificacin y seguimiento de calidad de software. Diseo de software. Extensiones de proceso y personalizaciones. Conceptos bsicos de TSP. Relaciones entre PSP/TSP y CMMI.

Objetivos 1. En esta unidad se revisar el PSP como una herramienta de mejora del desempeo personal de los desarrolladores de software y cmo stos pueden convertirse en un equipo de alto desempeo usando TSP. 2. Se explicar la relacin que existe entre PSP/TSP y CMMI. 4.51.4.3 Estndares ISO/IEC (18 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Peach, 2002,Carroll and Daughtrey, 2007,Schulmeyer, 2008,Khan et al., 2006] Tpicos 1. ISO 9001:2001. 2. ISO 9000-3. 3. ISO/IEC 9126. 4. ISO/IEC 12207. 5. ISO/IEC 15939. 6. ISO/IEC 14598. 7. ISO/IEC 15504-SPICE. 8. IT Mark. 9. SCRUM. 10. SQuaRE.
443

11. CISQ. Objetivos 1. Brindar a los participantes comprensin de los conceptos relacionados con la calidad, y con las normas de la familia ISO 9000, en sus diferentes versiones (la normas ISO 9001:2001, especificidades de la norma ISO 9000-3 para el caso del diseo, desarrollo, suministro, instalacin y mantenimiento de software de computacin y aplicacin de estos conceptos y tcnicas; las normas ISO/IEC 9126, ISO/IEC 12207, ISO/IEC 15939, ISO/IEC 14598, ISO/IEC 15504-SPICE, IT Mark, SCRUM, SQuaRE y CISQ, su utilizacin, etc.) 4.51.4.4 Tcnicas de Prueba de Software (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Wang and King, 2000,Farrell-Vinay, 2008] Tpicos 1. 2. 3. 4. Introduccin Estadsticas relativas al proceso de pruebas. Estndares relativos a la prueba de software. El proceso de pruebas. 1. Principios de prueba. 2. El plan de calidad. 3. El plan de pruebas. 4. Tcnicas de Verificacin. 5. Software CAST (Computer Aided Software Testing). 6. Una metodologa de pruebas. Objetivos 1. Elaborar planes de prueba y planes de calidad en sus proyectos de desarrollo. 2. Aplicar tcnicas de pruebas formales para la generacin de casos de prueba. 3. Definir las tcnicas de prueba a aplicar, segn los requerimientos de cada aplicacin. 4. Desarrollar un plan para implantar una metodologa de pruebas en la organizacin. 4.52 CS230W. Computacin Centrada en Redes (Obligatorio)

Semestre: 8vo Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS225T. Sistemas Operativos (6to Sem) o CS336. Seguridad en Computacin (7mo Sem) Slabo: Slabo (PDF)

444

Subsecciones

4.52.1 Justificacin 4.52.2 Objetivos Generales 4.52.3 Contribucin a los resultados 4.52.4 Unidades o 4.52.4.1 NC/Introduccin. (12 horas) [Nivel Bloom 4] o 4.52.4.2 NC/Comunicacin de Redes. (12 horas) [Nivel Bloom 3] o 4.52.4.3 NC/Compresin y Descompresin. (10 horas) [Nivel Bloom 4] o 4.52.4.4 NC/Tecnologias de Redes Locales (16 horas) [Nivel Bloom 3]

4.52.1 Justificacin Con el desarrollo de las tecnologas de comunicacin y la informacin hace que exista una tendencia creciente a establecer ms redes de computadores, con el objetivo de realizar una mejor gestin de la informacin. Ello implica, los temas de sistemas de comunicin de datos, seguridad, redes de area extensa y redes locales, etc. . Que permitan interpretar la evolucin, divisar el desarrollo futuro de las nuevas tecnologas en redes de datos.

4.52.2 Objetivos Generales 1. Permitir al alumno gestionar y programar la configuracin de una red LAN y de una red WAN. 2. Dotar al alumno de conceptos de seguridad y de tecnologas futuras de redes de datos. 3. Desarrollar la habilidad para analizar y disear nuevos protocoles de red para casos especficos. 4.52.3 Contribucin a los resultados b) Nivel Bloom 3 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. e) Nivel Bloom 2 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 2
445

Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. i) Nivel Bloom 2 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.52.4 Unidades

Subsecciones

4.52.4.1 NC/Introduccin. (12 horas) [Nivel Bloom 4] 4.52.4.2 NC/Comunicacin de Redes. (12 horas) [Nivel Bloom 3] 4.52.4.3 NC/Compresin y Descompresin. (10 horas) [Nivel Bloom 4] 4.52.4.4 NC/Tecnologias de Redes Locales (16 horas) [Nivel Bloom 3]

4.52.4.1 NC/Introduccin. (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,,,,] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Historia de las redes y de la Internet. Arquitecturas de redes. Especializaciones dentro de la computacin centrada en redes. Redes y protocolos. Sistemas Multimedia en redes. Computacin distribuida. Paradigmas cliente/servidor y Peer-to-Peer. Computacin mvil e inalmbrica.

Objetivos 1. Discutir la evolucin de las primeras redes y de la Internet. 2. Demostrar la habilidad para usar efectivamente un conjunto de aplicaciones de red incluyendo e-mail, telnet, FTP, wikis, navegadores web, cursos en lnea y mensajera instantnea.
446

3. Explicar la estructura por capas jerarquca de una arquitectura de red tpica. 4. Describir las tecnologas emergentes en el rea de la computacin centrada en redes, evaluar sus actuales capacidades, limitaciones y su potencial a corto plazo. 4.52.4.2 NC/Comunicacin de Redes. (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,] Tpicos 1. Estndares de redes y estandarizacin de cuerpos (bodies). 2. El modelo de referencia ISO de 7-capas en general y su instanciacin en TCP/IP. 3. Visin general de los conceptos de la capa fsica y de enlace de datos (paquetes, control de errores, control de flujos, protocolos). 4. Conceptos de control de acceso de la capa de enlace (Data Link). 5. Comunicacin entre redes y ruteo (algoritmos de ruteo, comunicacin entre redes, control de la congestin). 6. Servicios de la capa de transporte (establecimiento de la conexin, desempeo, control de flujo y de errores). Objetivos 1. Discutir estndares importantes de redes en su contexto histrico. 2. Describir las responsabilidades de las primeras cuatro capas (de abajo) del modelo de referencia ISO. 3. Explicar como una red puede detectar y corregir la errores de trasmisin. 4. Ilustrar como un paquete es ruteado a travs de la Internet. 5. Instalar una red simple con dos clientes y un servidor utilizando software estndar para la configuracin del servidor tal como DHCP. 4.52.4.3 NC/Compresin y Descompresin. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Representaciones analgicas y digitales. Algoritmos de codificacin y de decodificacin. Compresin con perdida y sin perdida. Compresin de datos: codificacin de Huffman y el algoritmo de Zip-Lempel. Audio: Compresin y descompresin. Imgenes: Compresin y descompresin. Video: Compresin y descompresin. Medidas de desempeo: tiempo, factor de compresin, adaptabilidad para uso en tiempo real.

Objetivos

447

1. Resumir las caracteristicas bsicas de muestreo y cuantificacin para representacin digital. 2. Seleccionar la tcnica de compresin ms adecuada para texto, audio, imgenes y video dando razones que sean sensibles para la aplicacin especfica y circunstancias particulares. 3. Explicar la propiedad de asimetra los algoritmos de compresin y descompresin. 4. Ilustrar el concepto de codificacin en longitud de corrida. 5. Ilustrar como un programa tal como el compress de UNIX, que utiliza la codificacin de Huffman y el algoritmo de Zip-Lempel, podra comprimir texto tpico. 4.52.4.4 NC/Tecnologias de Redes Locales (16 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,,,] Tpicos 1. Evaluacin de las Redes Locales. 2. Protocolo CSMA. CD Ethernet. 3. Diseo y anlisis de trfico para intranets. Objetivos 1. Estudiar la tecnologias ethernet para redes lan, protocolo MAC, protocolo LLC. 2. Usar las herramientas adecuadas para realizar un diganstico del rendimiento de una Intranet. 4.53 CS255. Computacin Grfica (Obligatorio)

Semestre: 8vo Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS315. Estructuras de Datos Avanzadas (6to Sem) o CB306. Anlisis Numrico (5to Sem) o CB307. Matemtica aplicada a la computacin (6to Sem) Slabo: Slabo (PDF)

Subsecciones

4.53.1 Justificacin 4.53.2 Objetivos Generales 4.53.3 Contribucin a los resultados 4.53.4 Unidades o 4.53.4.1 GV/Sistemas Grficos. (6 horas) [Nivel Bloom 3] o 4.53.4.2 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (12 horas) [Nivel Bloom 3]
448

o o

4.53.4.3 GV/Rendering Bsico. (18 horas) [Nivel Bloom 3] 4.53.4.4 GV/Modelamiento Geomtrico. (9 horas) [Nivel Bloom 3]

4.53.1 Justificacin Ofrece una introduccin para el rea de Computacin Grfica, la cual es una parte importante dentro de Ciencias de la Computacin. El proposito de este curso es investigar los principios, tcnicas y herramientas fundamentales para esta rea.

4.53.2 Objetivos Generales 1. Acercar al alumno a conceptos y tcnicas usados en aplicaciones grficas 3-D complejas. 2. Dar al alumno las herramientas necesarias para determinar que software grfico y que plataforma son los ms adecuados para desarrollar una aplicacin especfica. 4.53.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.53.4 Unidades

449

Subsecciones

4.53.4.1 GV/Sistemas Grficos. (6 horas) [Nivel Bloom 3] 4.53.4.2 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (12 horas) [Nivel Bloom 3] 4.53.4.3 GV/Rendering Bsico. (18 horas) [Nivel Bloom 3] 4.53.4.4 GV/Modelamiento Geomtrico. (9 horas) [Nivel Bloom 3]

4.53.4.1 GV/Sistemas Grficos. (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Foley and van Dam, 1990,Hearn and Baker, 1994] Tpicos 1. 2. 3. 4. Sistemas de grficos de vector y raster.. Dispositivos de video. Dispositivos de entrada fsicos y lgicos.. Temas para atacar el desarrollo de sistemas grficos.

Objetivos 1. Describir el uso apropiado de las arquitecturas grficas para determinadas aplicaciones. 2. Explicar la funcin de varios dispositivos de entrada. 3. Comparar y constrastar las tcnicas de grficos por vector o grficos raster. 4. Usar el hardware y software actual para crear y mostrar grficos. 5. Discutir las capacidades expandidas de hardware y software emergente para la creacin de grficos.

4.53.4.2 GV/Tcnicas Fundamentales en Computacin Grfica y Visual. (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Foley and van Dam, 1990,Hearn and Baker, 1994] Tpicos 1. 2. 3. 4. 5. 6. 7. Jerarqua de software grfico. Usando APIs grficas. Modelos simples de color (RGB, HSB, CMYK). Coordenadas Homogneas. Transformaciones afines (escala, rotacin, translacin). Transformacin de vistas. Recorte de escenas.

Objetivos

450

1. Distinguir las capacidades de diferentes niveles de software grfico y describir el uso apropiado de cada uno. 2. Crear imgenes utilizando interfaces estndar API. 3. Usar las facilidades proporcionadas por una API estndar para realizar transformaciones tales como escala, rotacin y traslacin. 4. Implementar procedimientos simples para realizar operaciones de transformacin y de recorte en una imagen simple bidimensional. 5. Discutir el sistema de coordenadas tridimensional y los cambios necesarios para extender operaciones de transformacin 2D a 3D. 4.53.4.3 GV/Rendering Bsico. (18 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Foley and van Dam, 1990,Hearn and Baker, 1994] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Algoritmos de generacin de lnea (Bresenham). Generacin de fuentes: delineadas vs. bitmaps. Propiedades de fuente de luz y material. Reflexin difusa, especular y de ambiente. Modelo de reflexin de Phong. Rendering de superficies poligonales; flat, Gourand y sombreado Phong. Mapeo de textura, texturas bump, mapa de ambiente. Introduccin al trazamiento de rayos (ray tracing). Sntesis de imgen, tcnicas de muestreo y anti-aliasing.

Objetivos 1. Explicar la operacin del algoritmo de Bresenham para realizar rendering en un dispositivo de pixels. 2. Explicar el concepto y aplicaciones de cada una de estas tcnicas. 3. Demostrar cada una de estas tcnicas creando una imagen usando una API estndar. 4. Describir como una imagen grfica ha sido creada. 4.53.4.4 GV/Modelamiento Geomtrico. (9 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Foley and van Dam, 1990,Hearn and Baker, 1994] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Representacin poligonal de objetos 3D. Curvas poligonales paramtricas y superficies. Representacin de geometra slida constructiva (CSG). Representacin implcita de curvas y superficies. Tcnicas de subdivisin espacial. Modelos procedurales. Modelos deformables. Subdivisin de superficies.
451

9. Modelamiento de multiresolucin. 10. Reconstruccin. Objetivos 1. Crear modelos polihedrales simples usando superficies hechas con polgonos bsicos. 2. Construir modelos CSG a partir de primitivas simples tales como cubos y superficies cuadrticas. 3. Generar una representacin de mallas a partir de una superficie implicita. 4. Generar un modelo fractal utilizando un mtodo procedural. 5. Generar una malla a partir de puntos adquiridos con un scanner laser. 4.54 CS280T. Aspectos sociales y profesionales de la computacin (Obligatorio)

Semestre: 8vo Sem. Crditos: 2 Horas del curso: Teora: 2 horas; Prerrequisitos: o CS401. Proyecto I (7mo Sem) Slabo: Slabo (PDF)

Subsecciones

4.54.1 Justificacin 4.54.2 Objetivos Generales 4.54.3 Contribucin a los resultados 4.54.4 Unidades o 4.54.4.1 SP/Historia de la Computacin. (2 horas) [Nivel Bloom 2] o 4.54.4.2 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 4] o 4.54.4.3 SP/Herramientas Analticas. (2 horas) [Nivel Bloom 3] o 4.54.4.4 SP/tica Profesional. (4 horas) [Nivel Bloom 4] o 4.54.4.5 SP/Riesgos. (2 horas) [Nivel Bloom 4] o 4.54.4.6 SP/Operaciones de seguridad. (4 horas) [Nivel Bloom 4] o 4.54.4.7 SP/Propiedad Intelectual. (4 horas) [Nivel Bloom 4] o 4.54.4.8 SP/Privacidad y Libertades Civiles. (4 horas) [Nivel Bloom 4] o 4.54.4.9 SP/Crimen Informtico. (2 horas) [Nivel Bloom 4] o 4.54.4.10 SP/Economa en Computacin. (2 horas) [Nivel Bloom 2] o 4.54.4.11 SP/Estructuras de Trabajo Filosficas. (2 horas) [Nivel Bloom 2]

4.54.1 Justificacin Ofrece una visin amplia de los aspectos ticos y profesionales relacionados con la computacin. Los tpicos que se incluyen abarcan los aspectos ticos, sociales y
452

polticos. Las dimensiones morales de la computacin. Los mtodos y herramientas de anlisis. Administracin de los recursos computacionales. Seguridad y control de los sistemas computacionales. Responsabilidades profesionales y ticas. Propiedad intelectual. 4.54.2 Objetivos Generales 1. Hacer que el alumno entienda la importancia del cuidado y la tica en la transferencia y uso de la informacin. 2. Inculcar en el alumno que las tendencias de mejoramiento de la tecnologa, no debe ser llevada a degradar la moral de la sociedad. 4.54.3 Contribucin a los resultados e) Nivel Bloom 4 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 4 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. 4.54.4 Unidades

Subsecciones

4.54.4.1 SP/Historia de la Computacin. (2 horas) [Nivel Bloom 2] 4.54.4.2 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 4] 4.54.4.3 SP/Herramientas Analticas. (2 horas) [Nivel Bloom 3] 4.54.4.4 SP/tica Profesional. (4 horas) [Nivel Bloom 4] 4.54.4.5 SP/Riesgos. (2 horas) [Nivel Bloom 4] 4.54.4.6 SP/Operaciones de seguridad. (4 horas) [Nivel Bloom 4] 4.54.4.7 SP/Propiedad Intelectual. (4 horas) [Nivel Bloom 4] 4.54.4.8 SP/Privacidad y Libertades Civiles. (4 horas) [Nivel Bloom 4] 4.54.4.9 SP/Crimen Informtico. (2 horas) [Nivel Bloom 4] 4.54.4.10 SP/Economa en Computacin. (2 horas) [Nivel Bloom 2] 4.54.4.11 SP/Estructuras de Trabajo Filosficas. (2 horas) [Nivel Bloom 2]

4.54.4.1 SP/Historia de la Computacin. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2000] Tpicos

453

1. Prehistoria - el mundo antes de 1946. 2. Historia del hardware de computadoras, software, redes. 3. Pioneros de la computacin. Objetivos 1. Listar las contribuciones de varios pioneros en el campo de la computacin. 2. Comparar la vida diaria antes y despus del advenimiento de las computadoras personales e Internet. 3. Identificar las tendencias continuamente significativas en la historia del campo de la computacin. 4.54.4.2 SP/Contexto Social de la Computacin. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2000] Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin a las implicaciones sociales de la computacin. Implicaciones sociales de las redes de comunicacin. Crecimiento, control y acceso a la Internet. Temas relacionados al gnero. Asuntos culturales. Temas internacionales. Accesibilidad: baja representacin de minoras, mujeres y gente con discapacidad en la profesin de computacin. 8. Asuntos de polticas pblicas, por ejemplo: voto electrnico. Objetivos 1. Interpretar el contexto social de una implementacin particular. 2. Identificar suposiciones y valores insertados en un diseo particular incluyendo aquellos de naturaleza cultural. 3. Evaluar una implementacin particular a travs del uso de datos empricos. 4. Describir las formas positivas o negativas en las cuales la computacin altera los modos de interaccin entre las personas. 5. Explicar por qu el acceso a redes de computadores y computadoras es restringido en algunos pases. 6. Indicar el rol de los temas culturales para el trabajo en equipo. 7. Analizar el rol y riesgos de la introduccin de la computacin en polticas pblicas y gobierno: por ejemplo voto electrnico. 8. Articular el impacto del deficit de profesionales en computacin. 4.54.4.3 SP/Herramientas Analticas. (2 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2000] Tpicos

454

1. 2. 3. 4.

Creacin y evaluacin de argumentos ticos. Identificacin y evaluacin de elecciones ticas. Entendimiento del contexto social del diseo. Identificacin de suposiciones y valores.

Objetivos 1. Analizar un argumento para identificar premisas y conclusiones. 2. Ilustrar el uso del ejemplo, de la analoga, analoga contraria en argumentos ticos. 3. Detectar el uso de falacias lgicas en un argumento. 4. Identificar los involucrados en un determinado asunto y nuestras obligaciones hacia ellos. 5. Articular los puntos de equilibrio ticos en una decisin tica. 4.54.4.4 SP/tica Profesional. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. Valores de la comunidad y las leyes con las que vivimos. 2. La naturaleza del profesionalismo. 3. Mentenerse actualizado profesionalmente (en trminos de conocimiento, herramientas, habilidades, temas legales as como habilidad para auto evaluarse y tener fluencia en temas computacionales. 4. Varias formas de acreditacin profesional y las ventajas y desventajas. 5. El rol de la profesin en la poltica pblica. 6. Prestar atencin de las consecuencias ticas del ejercicio profesional. 7. Discrepancia tica y creacin de un canal de denuncias, annimas o no, sobre el incumplimiento de normas internas (whistle-blowing). 8. Cdigos de tica, conducta y prctica (IEEE, ACM, SE, AITP, etc). 9. Tratar con el acoso y discriminacin. 10. Polticas de uso aceptable para la computacin en el lugar de trabajo. 11. Ambiente de trabajo saludable (ergonoma). Objetivos 1. Identificar los estados progresivos en un incidente whistle-blowing. 2. Especificar las fortalezas y debilidades de cdigos profesionales relevantes como expresiones de profesionalismo y guas para la toma de decisiones. 3. Identificar los tpicos ticos que alcanzan el desarrollo de software, determinar cmo direccionar stos tcnica y ticamente. 4. Desarrollar una poltica para el uso de la computadora con medidas de aplicacin. 5. Analizar un tema de computacin global observando el rol de los profesionales y gobierno en tratar el problema.
455

2000,Ediciones,

6. Evaluar los cdigos profesionales de la tica de organizaciones como la ACM, la IEEE Computer Society y otras. 7. Describir los mecanismos que tipicamente existen para mantenerse actualizado. 8. Identificar las implicancias de los dispositivos ergonmicos en la salud de la gente en el ambiente de trabajo. 4.54.4.5 SP/Riesgos. (2 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Laudon and Laudon, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. Ejemplos histricos de los riesgos del software (tal como el caso Therac-25). 2. Implicaciones de la complicidad del software. 3. Administracin, evaluacin, eliminacin y control del riesgo. Objetivos 1. Explicar las limitaciones de la prueba como un medio para asegurar correctitud. 2. Describir las diferencias entre correccin, confiabilidad y seguridad. 3. Discutir el potencial de los problemas ocultos en el reuso de componentes existentes. 4. Describir los mtodos actuales para administrar el riesgo y caracterizar las fortalezas y debilidades de cada uno. 5. Delinear el rol del manejo de riesgo en el diseo y construccin de sistemas. 4.54.4.6 SP/Operaciones de seguridad. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2000,Ediciones, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. 2. 3. 4. 5. 6. 7. Seguridad fsica. Control de acceso fsico. Control de acceso de personal. Seguridad Operativa. Polticas de seguridad para sistemas/redes. Recuperacin y respuesta. Manejando problemas tcnicos y humanos.

2004,Jr,

2000,Ediciones,

Objetivos 1. Desarrollar un plan de recuperacin de incidentes para manejar los compromisos de una organizacin.

456

2. Analizar los procedimientos de seguridad establecidos en busca de puntos dbiles que un atacante podra explotar y explicar como los mismos podran fallar. 3. Proponer medidas de seguridad apropiadas para diferentes situaciones. 4. Explicar para una comunidad de usuarios no expertos en seguridad que medidas ellos deben seguir y porque en una situacin en la que sus trabajos no sean realacionados con seguridad. 4.54.4.7 SP/Propiedad Intelectual. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. 2. 3. 4. 5. Fundamentos de la propiedad intelectual. Copyrights, patentes y secretos del negocio. Piratera de software. Patentes de software. Asuntos transnacionales concernientes a la propiedad intelectual.

2000,Ediciones,

Objetivos 1. Distinguir entre patentes, copyright y proteccin de secretos del negocio. 2. Discutir el fondo legal del copyright en las leyes nacionales e internacionales. 3. Explicar como las leyes de patentes y el copyright pueden variar internacionalmente. 4. Delinear el desarrollo histrico de las patentes de software. 5. Discutir las consecuencias de la piratera de software sobre los desarrolladores de software y el rol de las organizaciones de soporte relevante. 4.54.4.8 SP/Privacidad y Libertades Civiles. (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2000,Ediciones, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. Bases legales y ticas para la proteccin y la privacidad. 2. Marco tico y legal para la libertad de informacin. 3. Implicaciones de privacidad en bases de datos (ej. recoleccin de datos, almacenamiento, compartir informacin, recoleccin masiva de datos, sistemas de vigilancia de computadora). 4. Estrategias tecnolgicas para la proteccin de la privacidad. 5. Libertad de expresin en el ciber espacio. 6. Implicaciones internacionales e interculturales. Objetivos

457

1. Listar las bases legales para el derecho a la privacidad y a la libertad de expresin en las naciones de cada uno y como estos conceptos varan de pas en pas. 2. Describir las actuales amenazas (basadas en computadoras) a la privacidad. 3. Explicar cmo la Internet puede cambiar el balance histrico en la proteccin a la libertad de expresin. 4. Describir las tendencias en la proteccin de la privacidad con ejemplos en la tecnologa. 5. clarificar el aparente conflicto entre los requerimientos de libertad de la informacin y la proteccin de los derechos del individuo. 4.54.4.9 SP/Crimen Informtico. (2 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. 2. 3. 4. 5. Historia y ejemplos del crimen informtico. Cracking, hacking y sus efectos. Virus, gusanos y troyanos. Robo de identidad. Estrategias de prevencin del crimen.

2000,Ediciones,

Objetivos 1. 2. 3. 4. 5. Describir las tendencias en la proteccin de la privacidad en tecnologia. Delinear las bases de los ataques de virus y de negacin de servicio. Enumerar tcnicas para combatir los ataques de crackers. Discutir los diferentes mtodos de crackers y sus motivaciones. Identificar el rol de los profesionales en la seguridad y los inconvenientes relacionados. 6. Indicar medidas a ser tomadas por los individuos y por las organizaciones (incluyendo gobierno) para prevenir el robo de identidad. 4.54.4.10 SP/Economa en Computacin. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2000,Ediciones, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. Monopolios y sus implicaciones econmicas. 2. Efectos de los suministros de labor calificada en la calidad de los productos computacionales. 3. Estrategias de adjudicacin de precios en el dominio de la computacin. 4. El fenmeno de outsourcing y offshoring, impactos en el empleo y en la economa.

458

5. Diferencias en el acceso a los recursos computacionales y los posibles efectos de esta. 6. Sustentabilidad del ambiente. Objetivos 1. Listar la cuestin de fondo de los esfuerzos anti-monopolio. 2. Describir las diferentes formas en las cuales la industria de la tecnologa de la informacin es afectada por recortes en los suministros laborales. 3. Sugerir y defender las formas para direccionar las limitaciones del acceso a la computacin. 4. Sintetizar la evolucin de las estrategias de adjudicacin de precios para los bienes computacionales y servicios. 5. Discutir los beneficios, las desventajas y las implicaciones del outsourcing yoffshoring. 6. Identificar maneras de desarrolar computacin protegiendo el ambiente (ej. operaciones verdes, productos reciclabes, reduccin de emisin de gases). 4.54.4.11 SP/Estructuras de Trabajo Filosficas. (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Laudon and Laudon, 2004,Jr, 2000,Ediciones, 2005b,Ediciones, 2005c,Ediciones, 2005a] Tpicos 1. Estructuras de trabajo filosficas, particularmente utilitarismo y teoras deontolgicas. 2. Problemas de relativismo tico. 3. tica cientfica en la perspectiva histrica. 4. Diferencias en los mtodos filosficos y cientficos. Objetivos 1. Listar los conceptos bsicos de relativismo, utilitarismo y teoras deontolgicas. 2. Reconocer la distincin entre teora tica y tica profesional. 3. Identificar la debilidad del mtodo ``agente empleado'', legalidad estricta, egosmo novato, relativismo novato, como estructuras de trabajo ticas.

4.55 CS240S. Compiladores (Obligatorio)


Semestre: 8vo Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS343. Lenguajes de Programacin (7mo Sem) Slabo: Slabo (PDF)
459

Subsecciones

4.55.1 Justificacin 4.55.2 Objetivos Generales 4.55.3 Contribucin a los resultados 4.55.4 Unidades o 4.55.4.1 PL/Visin General de los Lenguajes de Programacin. (8 horas) [Nivel Bloom 4] o 4.55.4.2 PL/Introduccin a la Traduccin de Lenguajes. (12 horas) [Nivel Bloom 3] o 4.55.4.3 PL/Sistemas de Traduccin del Lenguaje. (24 horas) [Nivel Bloom 2] o 4.55.4.4 Paralelismo a nivel de instruccin (4 horas) [Nivel Bloom 2] o 4.55.4.5 Optimizacin para el paralelismo y la localidad (4 horas) [Nivel Bloom 2]

4.55.1 Justificacin Que el alumno conozca y comprenda los conceptos y principios fundamentales de la teora de compilacin para realizar la construccin de un compilador 4.55.2 Objetivos Generales 1. Conocer las tcnicas bsicas empleadas durante el proceso de generacin intermedio, optimizacin y generacin de cdigo. 2. Aprender a implementar pequeos compiladores. 4.55.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida.

460

4.55.4 Unidades

Subsecciones

4.55.4.1 PL/Visin General de los Lenguajes de Programacin. (8 horas) [Nivel Bloom 4] 4.55.4.2 PL/Introduccin a la Traduccin de Lenguajes. (12 horas) [Nivel Bloom 3] 4.55.4.3 PL/Sistemas de Traduccin del Lenguaje. (24 horas) [Nivel Bloom 2] 4.55.4.4 Paralelismo a nivel de instruccin (4 horas) [Nivel Bloom 2] 4.55.4.5 Optimizacin para el paralelismo y la localidad (4 horas) [Nivel Bloom 2]

4.55.4.1 PL/Visin General de los Lenguajes de Programacin. (8 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Louden, 2004b,Pratt and V.Zelkowitz, 1998] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Historia de los lenguajes de programacin. Breve revisin de los paradigmas de programacin. Lenguajes procedurales. Lenguajes orientados a objetos. Lenguajes funcionales. Lenguajes declarativos y no algortmicos. Lenguajes de scripts. Los efectos de la escalabilidad en las metodologas de programacin.

Objetivos 1. Listar la evolucin de los lenguajes de programacin identificando como es que su historia nos ha conducido a los paradigmas actuales. 2. Identificar al menos una caracterstica distintiva para cada uno de los paradigmas de programacin cubiertos en esta unidad. 3. Evaluar las ventajas y desventajas entre los diferentes paradigmas, considerando temas tales como: eficiencia de espacio, eficiencia en el tiempo (para ambas partes computadora y programador), seguridad y el poder de las expresiones. 4. Distinguir entre la programacin a menor y mayor escala.

461

4.55.4.2 PL/Introduccin a la Traduccin de Lenguajes. (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Aho et al., 2008,Aho, 1990,Teufel and Schmidt, 1998,Louden, 2004a,Appel, 2002] Tpicos 1. Comparacin entre intrpretes y compiladores. 2. Fases de traduccin del lenguaje (anlisis lxico, anlisis sintctico, generacin de cdigo, optimizacin). 3. Aspectos de traduccin dependientes e indepedientes de la mquina. Objetivos 1. Comparar y contrastar modelos de ejecucin interpretados y compilados, resaltando los mritos de cada uno. 2. Describir las fases de la traduccin de programas desde el cdigo fuente hasta llegar al cdigo ejeutable y los archivos producidos por estas fases. 3. Explicar las diferencias entre la traduccin dependiente e independiente de mquina y donde estas diferencias son evidentes en el proceso de traduccin. 4.55.4.3 PL/Sistemas de Traduccin del Lenguaje. (24 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Aho et al., 2008,Aho, 1990,Louden, 2004a,Teufel and Schmidt, 1998,A.Lemone, 1996,Appel, 2002] Tpicos 1. Aplicacin de las expresiones regulares en analizadores lxicos. 2. Anlisis sintctico (sintaxis concreta y abstracta, rboles de sintaxis abstracta). 3. Aplicacin de las gramticas libres de contexto en un parseo dirigido por tablas o recursivo descendente. 4. Administracin de tablas de smbolos. 5. Generacin de cdigo por seguimiento de un rbol. 6. Operaciones especficas de la arquitectura: seleccin de instrucciones y alocacin de registros. 7. Tcnicas de optimizacin. 8. El uso de herramientas como soporte en el proceso de traduccin y las ventajas de ste. 9. Libreras de programas y compilacin separada. 10. Construccin de herramientas dirigidas por la sintaxis. Objetivos 1. Describir los pasos y algoritmos usados por traductores lenguajes. 2. Reconocer los modelos formales subyacentes tales como los autmatas finitos, autmatas de pila y su conexin con la definicin del lenguaje a travs de expresiones regulares y gramticas.
462

3. Discutir la efectividad de la optimizacin. 4. Explicar el impacto de la facilidad de la compilacin separada y la existencia de libreras de programas en el proceso de compilacin. 4.55.4.4 Paralelismo a nivel de instruccin (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Aho et al., 2008] Tpicos 1. 2. 3. 4. 5. Arquitectura de procesadores. Restricciones de programacin de cdigo. Programacin de bloques bsicos. Programacin de cdigo global. Canalizacin por software.

Objetivos 1. Describir la importancia y poder de la extraccin de paralelismo de las secuencias de instrucciones. 2. Explicar los conceptos de bloques bsicos y cdigo global. 3. Distinguir los conceptos entre canalizacin de instrucciones por software. 4.55.4.5 Optimizacin para el paralelismo y la localidad (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Aho et al., 2008] Tpicos 1. 2. 3. 4. 5. 6. 7. Conceptos bsicos. Multiplicacin de matrices. Espacios de iteraciones. Indices de arreglos afines. Anlisis de dependencias de datos de arreglos. Bsqueda del paralelismo sin sincronizacin. Sincronizacin entre ciclos paralelos.

Objetivos 1. Disear, codificar programas para clculos paralelos. 2. Identificar las propiedades bsicas del paralelismo. 3. Aplicar los fundamentos del paralelismo en la programacin. 4.56 FG205. Historia de la Cultura (Obligatorio)

Semestre: 8vo Sem. Crditos: 3 Horas del curso: Teora: 3 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

463

Subsecciones

4.56.1 Justificacin 4.56.2 Objetivos Generales 4.56.3 Contribucin a los resultados 4.56.4 Unidades o 4.56.4.1 (6 horas) [Nivel Bloom 2] o 4.56.4.2 (9 horas) [Nivel Bloom 2] o 4.56.4.3 (12 horas) [Nivel Bloom 2] o 4.56.4.4 (9 horas) [Nivel Bloom 2] o 4.56.4.5 (9 horas) [Nivel Bloom 2] o 4.56.4.6 La Ilustracin (5 horas) [Nivel Bloom 2]

4.56.1 Justificacin Asignatura bsica de carcter formativo y humanstico. Resulta fundamental encontrar justificados o naturales los actos y los principales hitos de la historia universal desde una perspectiva cultural que procure ser profunda, estructurada y crtica. Este conocimiento permitir entender mejor el presente para proyectarnos con sabidura al futuro. 4.56.2 Objetivos Generales 1. Comprender que la formacin de un buen profesional no se desliga ni se opone, ms bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes culturales amplios y una visin profunda del entorno cultural. 4.56.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. n) Nivel Bloom 3 Aplicar conocimientos de humanidades en su labor profesional. 4.56.4 Unidades

Subsecciones
464

4.56.4.1 (6 horas) [Nivel Bloom 2] 4.56.4.2 (9 horas) [Nivel Bloom 2] 4.56.4.3 (12 horas) [Nivel Bloom 2] 4.56.4.4 (9 horas) [Nivel Bloom 2] 4.56.4.5 (9 horas) [Nivel Bloom 2] 4.56.4.6 La Ilustracin (5 horas) [Nivel Bloom 2]

4.56.4.1 (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. Los motivos del estudio de la historia. Historia como ciencia. Qu es Occidente? Cultura. El cristianismo y la cultura.

Objetivos 1. Conocer nociones tericas sobre la concepcin, posibilidades y lmites de la Historia de la Cultura y obtener nociones bsicas de la historia de la cultura universal. 4.56.4.2 (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. El Mundo Helnico. 2. El mundo Romano. 3. Herencia cultural greco-romana. Objetivos 1. Conocer las bases greco-latinas de la cultura occidental. 4.56.4.3 (12 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. La Romanidad y la Iglesia: pilares bsicos de la civilizacin occidental. 2. Surgimiento y desarrollo de la edad Media. Objetivos 1. Comprender la transformacin del mundo romano en cristiano, su preservacin y apogeo. 4.56.4.4 (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos
465

1. 2. 3. 4.

El renacimiento y el nacimiento de la imagen moderna del mundo. La poca de las revueltas. La Reforma Catlica. La ilustracin y el endiosamiento de la razn.

Objetivos 1. Percibir la desintegracin de la unidad y el ideal cristiano. 4.56.4.5 (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Revoluciones burguesas en Europa e independencia de pases latinoamericanos en el continente americano. 2. El Mundo Contemporneo y el modernismo. 3. El comienzo de la crisis del siglo XX: guerra y revolucin. 4. La infructuosa bsqueda de una nueva estabilidad: Europa entre las guerras 1919-1939. 5. La profundidad de la crisis europea: la Segunda Guerra Mundial. 6. La Guerra Fra y la nueva Europa. Albores del siglo XXI. Objetivos 1. Aprehender el desarrollo final de la crisis del mundo occidental con la consecuente crisis de los valores cristianos: el materialismo, el hedonismo, el relativismo en la prctica de la vida de las sociedades. 4.56.4.6 La Ilustracin (5 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. La ilustracin y el endiosamiento de la razn. Objetivos 1. Valorar las nuevas ideas desarrolladas por este movimiento cultural y sus repercusiones. 4.57 CS403. Proyecto de Tesis (Obligatorio)

Semestre: 9no Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: o CS402. Proyecto II (8vo Sem) Slabo: Slabo (PDF)

466

Subsecciones

4.57.1 Justificacin 4.57.2 Objetivos Generales 4.57.3 Contribucin a los resultados 4.57.4 Unidades o 4.57.4.1 Proyecto de Tesis (0 horas) [Nivel Bloom 4] o 4.57.4.2 Avance de Tesis (0 horas) [Nivel Bloom 4]

4.57.1 Justificacin Este curso tiene por objetivo que el alumno concluya su proyecto de tesis.

4.57.2 Objetivos Generales 1. Que el alumno este en la capacidad de presentar formalmente su proyecto de tesis con el marco terico y levantamiento bibliogrfico completo. 2. Que el alumno domine el estado del arte de su rea de investigacin. 3. Los entregables de este curso son: Avance parcial: Avance del plan de tesis incluyendo motivacin y contexto, definicin del problema, objetivos, cronograma de actividades hasta el proyecto final de tesis y el estado del arte del tema abordado. Final: Plan de tesis completo y Avance de la Tesis incluyendo los captulos de marco terico, trabajos relacionados y resultados (formales o estadsticos) preliminares orientados a su tema de tesis. 4.57.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 5 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4

467

Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. e) Nivel Bloom 4 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. f) Nivel Bloom 4 Comunicarse efectivamente con audiencias diversas. h) Nivel Bloom 4 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 5 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. l) Nivel Bloom 4 Desarrollar principios investigacin en el rea de computacin con niveles de competividad internacional. 4.57.4 Unidades

Subsecciones

4.57.4.1 Proyecto de Tesis (0 horas) [Nivel Bloom 4] 4.57.4.2 Avance de Tesis (0 horas) [Nivel Bloom 4]

4.57.4.1 Proyecto de Tesis (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Objetivos 1. Descripcin del formato utilizado por la Universidad para el plan de tesis 2. Concluir el plan del proyecto de tesis 3. Presentar el estado del arte del tema de tesis (50%) 4.57.4.2 Avance de Tesis (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Objetivos 1. Descripcin del formato utilizado por la Universidad para la tesis
468

2. Concluir el captulo del Marco Terico de la Tesis 3. Concluir el captulo de Trabajos Relacionados (35%) 4. Planear, desarrollar y presentar resultados (formales o estadsticos) de experimentos orientados a su tema de tesis (35%) 4.58 CS355. Tpicos en Computacin Grfica (Electivo)

Semestre: 9no Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS255. Computacin Grfica (8vo Sem) Slabo: Slabo (PDF)

Subsecciones

4.58.1 Justificacin 4.58.2 Objetivos Generales 4.58.3 Contribucin a los resultados 4.58.4 Unidades

4.58.1 Justificacin En este curso se puede profundizar en alguno de los tpicos mencionados en el rea de Computacin Grfica (Graphics and Visual Computing - GV). ste curso est destinado a realizar algun curso avanzado sugerido por la curricula de la ACM/IEEE. 4.58.2 Objetivos Generales 1. Que el alumno utilice tcnicas de computacin grfica ms sofisticadas que involucren estructuras de datos y algoritmos complejos. 2. Que el alumno aplique los conceptos aprendidos para crear una aplicacin sobre un problema real. 3. Que el alumno investigue la posibilidad de crear un nuevo algoritmo y/o tcnica nueva para resolver un problema real. 4.58.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4
469

Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. i) Nivel Bloom 4 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.58.4 Unidades

CS355. Computacin Grfica avanzada CS356. Animacin por computadora CS313. Algoritmos Geomtricos CS357. Visualizacin CS358. Realidad Virtual CS359. Algoritmos Genticos

4.59 CS393. Mtodos Formales (Electivo)


Semestre: 9no Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS260. Lgica Computacional (6to Sem) Slabo: Slabo (PDF)

Subsecciones

4.59.1 Justificacin 4.59.2 Objetivos Generales 4.59.3 Contribucin a los resultados 4.59.4 Unidades o 4.59.4.1 SE/Mtodos Formales. (14 horas) [Nivel Bloom 3] o 4.59.4.2 Mtodos y Fundamentos Matematicos (12 horas) [Nivel Bloom 3] o 4.59.4.3 Modelamiento (12 horas) [Nivel Bloom 3] o 4.59.4.4 Especificacion de Requerimientos (12 horas) [Nivel Bloom 4] o 4.59.4.5 Diseo (12 horas) [Nivel Bloom 3]
470

4.59.4.6 Evolucin (12 horas) [Nivel Bloom 4]

4.59.1 Justificacin Los desarrollo de software, en gran medida, an es una actividad artesanal lo que implica que muchas veces no es posible entregar el software correcto, en el tiempo y presupuestos planeados. Los mtodos formales intentan dar rigidez y solidez matemtica, a todo el proceso de desarrollo de software, en la bsqueda de la produccin de software de calidad. 4.59.2 Objetivos Generales 1. Crear especificaciones y diseos matemticamente precisos utilizando lenguajes de especificacin formales. Analizar las propiedades de las especificaciones y diseos formales. 2. Aplicar las tcnicas formales de verificacin a los segmentos de software con complejidad baja. Discutir y analizar los tipos de modelos existentes para Mtodos Formales. 3. Discutir el papel de la verificacin de las tcnicas formales en el contexto de la validacin y prueba de software. Aprender a utilizar los diferentes lenguajes de especificacin formal para la especificacin y validacin de requisitos. Analizar las propiedades de las especificaciones y diseos formales. 4. Utilizar herramientas para transformar especificaciones y diseos. Explicar las ventajas y desventajas potenciales de usar lenguajes de especificacin formal. Crear y evaluar aserciones (pre y post condiciones e invariantes), para una variedad de situaciones que se extienden de simples a complejas. 5. Con un lenguaje de especificacin formal comn, formular la especificacin de un sistema de software simple y demostrar las ventajas de una perspectiva de calidad. 4.59.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 3 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 3 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3

471

Trabajar efectivamente en equipos para cumplir con un objetivo comn. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. l) Nivel Bloom 3 Desarrollar principios investigacin en el rea de computacin con niveles de competividad internacional. 4.59.4 Unidades

Subsecciones

4.59.4.1 SE/Mtodos Formales. (14 horas) [Nivel Bloom 3] 4.59.4.2 Mtodos y Fundamentos Matematicos (12 horas) [Nivel Bloom 3] 4.59.4.3 Modelamiento (12 horas) [Nivel Bloom 3] 4.59.4.4 Especificacion de Requerimientos (12 horas) [Nivel Bloom 4] 4.59.4.5 Diseo (12 horas) [Nivel Bloom 3] 4.59.4.6 Evolucin (12 horas) [Nivel Bloom 4]

4.59.4.1 SE/Mtodos Formales. (14 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. 2. 3. 4. 5. 6. 7. Conceptos de mtodos formales. Lenguajes de especificacin formal. Model checking. Especificaciones ejecutables y no ejecutables. Pre-aserciones y post-aserciones. Verificacin formal. Tools en el soporte a mtodos formales.

Objetivos
472

1. Aplicar tcnicas de verificacin formal a segmentos de software con baja complejidad. 2. Discutir el rol de las tcnicas de verificacin formal en el contexto de la validacin de software y comparar los beneficios con los de model checking. 3. Explicar los beneficios potenciales y los defectos de usar lenguajes de especificacin formal. 4. Crear y evaluar pre y post-aserciones para una variedad de situaciones desde lo simple hasta lo complejo. 5. Usar un lenguaje de especificacin formal comn, formular la especificacin de un sistema de software y demostrar los beneficios desde una perspectiva de calidad. 4.59.4.2 Mtodos y Fundamentos Matematicos (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Mtodos de construccin formal. 2. Fundamentos matemticos. 1. Grafos y rboles. 2. Autmata finito, expresiones regulares. 3. Gramticas. 4. Precisin numrica, exactitud, y errores. Objetivos 1. Crear especificaciones y diseos matemticamente precisos utilizando. lenguajes de especificacin formales. 2. Analizar las propiedades de las especificaciones y diseos formales. 4.59.4.3 Modelamiento (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Introduccin a los modelos matemticos y lenguajes de especificacin. 2. Tipos de modelos. 3. Modelamiento de comportamiento. Objetivos 1. Aplicar las tcnicas formales de verificacin a los segmentos de software con complejidad baja. 2. Discutir y analizar los tipos de modelos existentes para Mtodos Formales. 4.59.4.4 Especificacion de Requerimientos (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Documentacin y especificacin de requerimientos. 1. Lenguajes de especificacin (OCL, Z, etc.). 2. Validacin de requerimientos.
473

Objetivos 1. Discutir el papel de la verificacin de las tcnicas formales en el contexto de la validacin y prueba de software. 2. Aprender a utilizar los diferentes lenguajes de especificacin formal para la especificacin y validacin de requisitos. 3. Analizar las propiedades de las especificaciones y diseos formales 4.59.4.5 Diseo (12 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Diseo detallado. 2. Notaciones de diseo y herramientas de soporte. 1. Anlisis de diseo formal. 3. Evaluacin de diseo. 1. Tcnicas de evaluacin. Objetivos 1. Utilizar herramientas para transformar especificaciones y diseos. 2. Explicar las ventajas y desventajas potenciales d eusar lenguajes de especificacin formal. 3. Crear y evaluar aserciones (pre y post condiciones e invariantes), para una variedad de situacioines que se extienden de simples a complejas. 4.59.4.6 Evolucin (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Actividades de evolucin. 1. Refabricacin. 2. Transformacin de programas. Objetivos 1. Con un lenguaje de especificacin formal comn, formular la especificacin de un sistema de software simple y demostrar las ventajas de una perspectiva de calidad. 4.60 CS370. Tpicos en Bases de Datos (Obligatorio)

Semestre: 9no Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS271T. Bases de Datos II (5to Sem) Slabo: Slabo (PDF)

474

Subsecciones

4.60.1 Justificacin 4.60.2 Objetivos Generales 4.60.3 Contribucin a los resultados 4.60.4 Unidades o 4.60.4.1 IM/Minera de Datos. (10 horas) [Nivel Bloom 4] o 4.60.4.2 IM/Hipermedia. (10 horas) [Nivel Bloom 4] o 4.60.4.3 IM/Sistemas Multimedia. (10 horas) [Nivel Bloom 4] o 4.60.4.4 IM/Libreras Digitales. (10 horas) [Nivel Bloom 4]

4.60.1 Justificacin La gestin de la informacin (IM) juega un rol principal en casi todas las reas donde los computadores son usados. Esta rea incluye la captura, digitalizacin, representacin, organizacin, transformacin y presentacin de informacin; algortmos para mejorar la eficiencia y efectividad del acceso y actualizacin de informacin almacenada, modelamiento de datos y abstraccin, y tcnicas de almacenamiento de archivos fsicos. Este tambin abarca la seguridad de la informacin, privacidad, integridad y proteccin en un ambiente compartido. Los estudiantes necesitan ser capaces de desarrollar modelos de datos conceptuales y fsicos, determinar que mtodos de (IM) y tcnicas son apropiados para un problema dado, y ser capaces de seleccionar e implementar una apropiada solucin de IM que refleje todas las restricciones aplicables, incluyendo escalabilidad y usabilidad. 4.60.2 Objetivos Generales 1. Llevar al alumno hacia el conocimiento de los nuevos desafos y complejidades de las bases de datos. 2. Hacer que el alumno cree prototipos de motores de bases de datos para la recuparacin de informacin orientada a datos complejos (imagenes, sonido, hipertexto, etc). 4.60.3 Contribucin a los resultados b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. e) Nivel Bloom 3
475

Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 3 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Nivel Bloom 4 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 3 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.60.4 Unidades

Subsecciones

4.60.4.1 IM/Minera de Datos. (10 horas) [Nivel Bloom 4] 4.60.4.2 IM/Hipermedia. (10 horas) [Nivel Bloom 4] 4.60.4.3 IM/Sistemas Multimedia. (10 horas) [Nivel Bloom 4] 4.60.4.4 IM/Libreras Digitales. (10 horas) [Nivel Bloom 4]

4.60.4.1 IM/Minera de Datos. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Tan et al., 2005,Witten and Frank, 2005,Han and Kamber, 2001,Kimball and Ross, 2004,Inmon, 2004,Kimball et al., 2005] Tpicos 1. 2. 3. 4. 5. La utilidad de la minera de datos. Patrones secuenciales y asociativos. Clusterizacin de datos. Anlisis de canastas de mercado. Clusterizacin de datos.Cleaning
476

6. Clusterizacin de datos.Visualizacion Objetivos 1. Comparar y contrastar diferentes concepciones de minera de datos, mostrando evidencias en investigacin y aplicacin. 2. Explicar el rol al encontrar asociaciones en informacin manejada por la industria comercial. 3. Caracterizar los tipos de patrones que pueden ser descubiertos por la minera de reglas de asociacin. 4. Describir cmo extender un sistema relacional para encontrar patrones usando reglas de asociacin. 5. Evaluar temas metodolgicos subrayando la efectiva aplicacin de minera de datos. 6. Identificar y caracterizar fuentes de ruido, redundancia y outlier en los datos presentados. 7. Identificar mecanismos (agregacin en lnea, comportamiento en cualquier tiempo, visualizacin interactiva) para cerrar el ciclo en el proceso de minera de datos. 8. Describir por qu los varios procesos de cerrado de ciclo mejoran la efectividad de la minera de datos. 4.60.4.2 IM/Hipermedia. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Brusilovsky et al., 1998,Elmasri and Navathe, 2004] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Modelos hipertexto (historia inicial, web, Dexter, Amsterdam, Hytime). Servicios de enlace, motores y arquitecturas de hipertexto (distribuido). Nodos compuestos y anclas. Dimensiones, unidades, locaciones y spans. Browsing, navegacin, vistas, zooming. Generacin automtica de enlaces. Presentacin, transformacin y sincronizacin. Authoring, lectura y anotaciones. Sistemas y protocolos (incluyendo web, HTTP).

Objetivos 1. Listar la evolucin de modelos de hipertexto e hipermedia desde las versiones iniciales hasta las presentaciones actuales, distinguiendo sus respectivas capacidades y limitaciones. 2. Explicar conceptos bsicos de hipertexto e hipermedia. 3. Demostrar un entendimiento fundamental de la presentacin de la informacin, transformacin y sincronizacin. 4. Comparar y contrastar la entrega de hipermedia basado en protocolos y sistemas usados.
477

5. Disear e implementar aplicaciones de recuperacin de informacin basados en web usando herramientas de generacin de contenido apropiadas. 4.60.4.3 IM/Sistemas Multimedia. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Elmasri and Navathe, 2004] Tpicos 1. Dispositivos, drivers de dispositivo, seales de control y protocolos, DSPs. 2. Aplicaciones, editores de media, sistemas de generacin de contenido. 3. Flujos/estructuras, captura/representacin/transformacin, espacios/dominios, compresin/codificacin. 4. Anlisis basado en el contenido, indexacin y recuperacin de audio, imgenes y video. 5. Presentacin, rendering, sincronizacin, integracin multimodal/interfases. 6. Entrega en tiempo real, calidad del servicio, conferencia de audio/video, videoon-demand. Objetivos 1. Describir la media y soportar dispositivos comunmente asociados con informacin multimedia y sistemas. 2. Explicar conceptos de presentacin multimedia bsica. 3. Demostrar el uso del anlisis de la informacin basada en contenido en un sistema de informacin multimedia. 4. Presentaciones multimedia crticas en trminos de su apropiado uso de audio, video, grficos, color y otros conceptos de presentacin de informacin. 5. Implementar una aplicacin multimedia, usando un sistema de creacin de contenido comercial. 4.60.4.4 IM/Libreras Digitales. (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Witten and Bainbridge, 2002,Elmasri and Navathe, 2004] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Digitalizacin, almacenamiento e intercambio. Objetos digitales, compuestos y paquetes. Metadata, catalogamiento, registro de autores. Archivos, repositorios, nombramientos. Espacios (conceptual, geogrfico, 2-3D, VR). Arquitecturas (agentes, buses, wrappers/mediadores), interoperabilidad. Servicios (bsqueda, enlace, navegacin, etc). Administracin de los derechos de la propiedad intelectual, privacidad, proteccin (marcas de agua - watermarking). 9. Archivamiento y preservacin, integridad. Objetivos
478

1. Explicar los conceptos tcnicos subyacentes en la construccin de una librera digital. 2. Describir los requerimientos de servicio bsico para la bsqueda, enlace y navegacin. 3. Criticar escenarios apropiados e inapropiados usos de una librera digital, as como tambin determinar las consecuencias econmicas, legales y sociales para cada escenario. 4. Describir algunas de las soluciones tcnicas para los problemas relacionados al archivamiento y preservacin de la informacin en una librera digital. 5. Disear e implementar una pequea librera digital. 4.61 CS361. Tpicos en Inteligencia Artificial (Electivo)

Semestre: 9no Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS261T. Inteligencia Artificial (7mo Sem) Slabo: Slabo (PDF)

Subsecciones

4.61.1 Justificacin 4.61.2 Objetivos Generales 4.61.3 Contribucin a los resultados 4.61.4 Unidades

4.61.1 Justificacin Provee una serie de herramientas para resolver problemas que son difciles de solucionar con los mtodos algortmicos tradicionales. Incluyendo heursticas, planeamiento, formalsmos en la representacin del conocimiento y del razonamiento, tcnicas de aprendizaje en mquinas, tcnicas aplicables a los problemas de accin y reaccin: asi como el aprendizaje de lenguaje natural, visin artificial y robtica entre otros. 4.61.2 Objetivos Generales 1. Realizar algn curso avanzado de Inteligencia Artificial sugerido por el curriculo de la ACM/IEEE.

4.61.3 Contribucin a los resultados a) Nivel Bloom 4

479

Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. h) Nivel Bloom 4 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 5 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. l) Nivel Bloom 4 Desarrollar principios investigacin en el rea de computacin con niveles de competividad internacional. 4.61.4 Unidades

CS360. Sistemas Inteligentes CS361. Razonamiento automatizado CS362. Sistemas Basados en Conocimiento CS363. Aprendizaje de Maquina [Russell and Norvig, 2003],[Haykin, 1999] CS364. Sistemas de Planeamiento CS365. Procesamiento de Lenguaje Natural CS366. Agentes CS367. Robtica CS368. Computacin Simblica CS369. Algoritmos Genticos [Goldberg, 1989]

4.62 CS360. Computacin Bioinspirada (Electivo)


Semestre: 9no Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS261T. Inteligencia Artificial (7mo Sem)
480

Slabo: Slabo (PDF)

Subsecciones

4.62.1 Justificacin 4.62.2 Objetivos Generales 4.62.3 Contribucin a los resultados 4.62.4 Unidades o 4.62.4.1 Introduccin a la Computacion Bioinspirada (2 horas) [Nivel Bloom 2] o 4.62.4.2 Conceptualizacin (4 horas) [Nivel Bloom 2] o 4.62.4.3 IS/Bsqueda Avanzada. (8 horas) [Nivel Bloom 3] o 4.62.4.4 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 3] o 4.62.4.5 Inteligencia de enjambre (6 horas) [Nivel Bloom 3] o 4.62.4.6 Sistema inmunolgico artificial (6 horas) [Nivel Bloom 3] o 4.62.4.7 Geometria fractal (6 horas) [Nivel Bloom 3] o 4.62.4.8 Vida artificial (6 horas) [Nivel Bloom 3] o 4.62.4.9 Computacin basada en ADN (6 horas) [Nivel Bloom 3] o 4.62.4.10 Computacin cuntica (6 horas) [Nivel Bloom 2]

4.62.1 Justificacin La computacin bioinspirada es el rea de investigacin que estudia las diferentes tcnicas computacionales que tienen inspiracin biolgica, las cuales permiten desarrollar nuevas herramientas para la solucin de problemas y pueden estar basadas en patrones naturales, en comportamiento de los seres vivos, en la estructura misma de los organismos, etc. 4.62.2 Objetivos Generales 1. Elaborar modelos tericos inspirados biolgicamente, que puedan ser implementados en las computadoras, a fin de reproducir su funcionamiento tanto cualitativa como cuantitativamente. 2. Estudiar los fenmenos naturales, los procesos, modelos tericos, para construir algoritmos capaces de resolver problemas complejos. 4.62.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo.
481

i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.62.4 Unidades

Subsecciones

4.62.4.1 Introduccin a la Computacion Bioinspirada (2 horas) [Nivel Bloom 2] 4.62.4.2 Conceptualizacin (4 horas) [Nivel Bloom 2] 4.62.4.3 IS/Bsqueda Avanzada. (8 horas) [Nivel Bloom 3] 4.62.4.4 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 3] 4.62.4.5 Inteligencia de enjambre (6 horas) [Nivel Bloom 3] 4.62.4.6 Sistema inmunolgico artificial (6 horas) [Nivel Bloom 3] 4.62.4.7 Geometria fractal (6 horas) [Nivel Bloom 3] 4.62.4.8 Vida artificial (6 horas) [Nivel Bloom 3] 4.62.4.9 Computacin basada en ADN (6 horas) [Nivel Bloom 3] 4.62.4.10 Computacin cuntica (6 horas) [Nivel Bloom 2]

4.62.4.1 Introduccin a la Computacion Bioinspirada (2 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [De Castro, 2006,Baldi and Brunak, 2001] Tpicos 1. 2. 3. 4. 5. 6. Introduccin Motivacin La filosofa de la computacin natural Computacin inspirada por la naturaleza Simulacin y emulacin de la naturaleza en las computadoras Computacin con materiales naturales

Objetivos 1. Conocer el fundamento de la computacin bioinspirada. 2. Diferenciar las diferentes ramas de la computacin naturalmente inspirada.

482

4.62.4.2 Conceptualizacin (4 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [De Castro, 2006] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. 9. Entidades Individuales y Agentes. Procesamiento paralelo y distribuido. Interactividad. Adaptacin. Auto Organizacin. Complejidad, emergencia y reduccionismo. Determinismo. Teoria del Caos. Fractales.

Objetivos 1. Conocer los conceptos bsicos en los que se fundamentan la computacin bioinspirada 2. Caracterizar los sistemas bioinspirados 3. Identificar los comportamientos complejos 4.62.4.3 IS/Bsqueda Avanzada. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Goldberg, 1989,Mitchell, 1998,De Castro, 2006] Tpicos 1. 2. 3. 4. 5. 6. 7. Heursticas. Bsqueda local y optimizacin. Subiendo a la colina Hill climbing. Algoritmos genticos. Simulated annealing. Estrategias local de recorte de caminos local beam search. Bsquedas en el adversario para juegos.

Objetivos 1. Explicar que son los algoritmos genticos y contrastar su efectividad con las soluciones de problemas clsicos y tcnicas de bsqueda clsicas. 2. Explicar como simulated annealing puede ser usado para reducir la complejidad y contrastar su operacin con tcnicas de bsqueda clsica. 3. Aplicar tcnicas de bsqueda local a un dominio clsico. 4.62.4.4 IS/Aprendizaje de Mquina. (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Haykin, 1999,De Castro, 2006] Tpicos 1. Definicin y ejemplos de aprendizaje de mquina.
483

2. Aprendizaje inductivo, aprendizaje basado en estadstica, aprendizaje por refuerzo. 3. Aprendizaje supervisado. 4. rboles de aprendizaje por decisin. 5. Aprendizaje por redes neuronales . 6. Redes de aprendizaje por creencia. 7. Algoritmo del vecino ms cercano. 8. Teora de aprendizaje. 9. El problema del sobreajuste. 10. Aprendizaje no supervisado. 11. Aprendizaje por refuerzo. Objetivos 1. Explicar las diferencias entre tres principales estilos de aprendizaje: supervisado, no supervisado y por refuerzo. 2. Implementar algoritmos simples para aprendizaje supervisado, aprendizaje por refuerzo y aprendizaje no supervisado. 3. Determinar cuales de los tres estilos de aprendizaje es apropiado para un dominio de problema en particular. 4. Comparar y contrastar cada una de las siguientes tcnicas, proveer ejemplos de cuando cada estrategia es superior: rboles de decisin, redes neuronales y redes de creencia.. 5. Implementar de manera apropiada un sistema de aprendizaje simple, usando rboles de decisin, redes neuronales y/o redes de creencia. 6. Caracterizar el estado del arte en teora del aprendizaje, incluyendo logros y defectos. 7. Explicar el algoritmo del vecino ms cercano y su lugar dentro de la teora del aprendizaje.. 8. Explicar el problema de sobreajuste, a travs de tcnicas para detectar y manejar el problema. 4.62.4.5 Inteligencia de enjambre (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Dorigo and Sttzle, 2004,Kennedy et al., 2001,De Castro, 2006]Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin Colonias de hormigas: inspiracin biolgica. Colonias de hormigas: algoritmo bsico. Optimizacin de enjambre de partculas: inspiracin biolgica. Optimizacin de enjambre de partculas: algoritmo bsico. Aplicacin de la inteligencia de enjambre. Tendencias y problemas abiertos.

Objetivos 1. Conocer la inteligencia de enjambre.


484

2. Implementar la colonia de hormigas. 3. Estudiar la optimizacin de enjambre de partculas. 4.62.4.6 Sistema inmunolgico artificial (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [De Castro, 2006] Tpicos 1. 2. 3. 4. 5. 6. 7. Motivacin biolgica. Sistemas inmunolgicos. Sistemas inmunolgicos artificiales. Redes de sistemas inmunolgicos. Principios de diseo. Ambito de aplicacin de los sistemas inmunolgicos. Tendencias y problemas abiertos.

Objetivos 1. Conocer la motivacin de los sistemas inmunolgicos. 4.62.4.7 Geometria fractal (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [De Castro, 2006] Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin. Dimensin fractal. Naturaleza de la geometra fractal. Automatas celulares. Automatas celulares y sistemas dinmicos. sistema de Lindenmayer. Tendencias y problemas abiertos.

Objetivos 1. Estudiar la geometra fractal. 2. Estudiar los autmatas celulares. 3. Implementar autmatas celulares. 4.62.4.8 Vida artificial (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [De Castro, 2006] Tpicos 1. 2. 3. 4. 5. 6. Introduccin. La esencia de la vida. Proyectos basados en vida artificial. Autmatas Celulares para la creacin de vida artificial. mbito de aplicacin de la vida artificial. Tendencias y problemas abiertos.

Objetivos
485

1. Estudiar como generar vida artificial. 2. Implementar autmatas celulares para generar vida artificial. 4.62.4.9 Computacin basada en ADN (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [De Castro, 2006] Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin. Motivacin biolgica. Filtrando modelos. Modelos Formales. Computadores de ADN universales. mbito de aplicacin de la vida artificial. Tendencias y problemas abiertos.

Objetivos 1. Estudiar la computacin basada en ADN. 2. Estudiar de la potencia computacional de las variantes consideradas, comparada con la potencia de las mquinas de Turing. 4.62.4.10 Computacin cuntica (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [De Castro, 2006] Tpicos 1. 2. 3. 4. 5. 6. 7. Introduccin. conceptos bsicos de la teora cuntica. Principales mecanismos de la teora cuntica. Algoritmos cunticos. Computadores cunticos. mbito de aplicacin de la vida artificial. Tendencias y problemas abiertos.

Objetivos 1. Estudiar la computacin cuntica. 2. Codificar algoritmos cunticos. 3. Simular y calcular la eficiencia de algoritmos cunticos. 4.63 CB309. Computacin Molecular Biolgica (Electivo)

Semestre: 9no Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS315. Estructuras de Datos Avanzadas (6to Sem) Slabo: Slabo (PDF)

486

Subsecciones

4.63.1 Justificacin 4.63.2 Objetivos Generales 4.63.3 Contribucin a los resultados 4.63.4 Unidades o 4.63.4.1 Conceptos Introductorios (0 horas) [Nivel Bloom 3] o 4.63.4.2 Alineamiento de Secuencias (0 horas) [Nivel Bloom 4] o 4.63.4.3 Clustering (0 horas) [Nivel Bloom 4] o 4.63.4.4 rboles Filogenticos (0 horas) [Nivel Bloom 3] o 4.63.4.5 Mapeo de Secuencias (0 horas) [Nivel Bloom 3] o 4.63.4.6 Introduccin a la Estructura de las Protenas (0 horas) [Nivel Bloom 2]

4.63.1 Justificacin El uso de mtodos computacionales en las ciencias biolgicas se ha convertido en una de las herramientas claves para el campo de la biologa molecular, y stas actualmente son usadas como parte crtica en sus investigaciones. Existen diversas aplicaciones en biologa molecular relativas tanto al ADN como al anlisis de protenas. La construccin del genoma humano, por ejemplo, depende fundamentalmente de la biologa molecular computacional. Muchos de los problemas de sta rea son realmente complejos y con conjuntos enormes de datos. Este curso adems puede servir para ejemplificar algunos tpicos de Fundamentos de Programacin (PF) y Algoritmos y Complejidad (AL) de acuerdo al Computing Curricula 2001. 4.63.2 Objetivos Generales 1. Interpretar problemas biolgicos haciendo uso de tcnicas computacionales. 2. Analizar e implementar algortmos y estructuras aplicables al campo de la biologa. 4.63.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. g) Nivel Bloom 3 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Nivel Bloom 3 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 3
487

Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.63.4 Unidades

Subsecciones

4.63.4.1 Conceptos Introductorios (0 horas) [Nivel Bloom 3] 4.63.4.2 Alineamiento de Secuencias (0 horas) [Nivel Bloom 4] 4.63.4.3 Clustering (0 horas) [Nivel Bloom 4] 4.63.4.4 rboles Filogenticos (0 horas) [Nivel Bloom 3] 4.63.4.5 Mapeo de Secuencias (0 horas) [Nivel Bloom 3] 4.63.4.6 Introduccin a la Estructura de las Protenas (0 horas) [Nivel Bloom 2]

4.63.4.1 Conceptos Introductorios (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. Introducin a la Historia de la Gentica Conceptos Bsicos de Biologa Molecular Problemas clsicos en Bioinformtica Herramientas de recoleccin y almacenamiento de secuencias en laboratorio Recursos de Software, introduccin a BLAST, CLUSTALW Cadenas, Grafos y Algoritmos

Objetivos 1. Identificacin de los conceptos bsicos en Biologa Molecular 2. Reconocimiento de problemas clsicos en Biologa Molecular y su representacin en el campo computacional 3. Aprendizaje de las herramientas de software e Internet clsicas para el campo de Bioinformtica 4. Introduccin a los conceptos necesarios en manejo de Cadenas, Grafos y su representacin algortmica a fin de transformar problemas biolgicos al tipo 4.63.4.2 Alineamiento de Secuencias (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Tpicos
488

1. 2. 3. 4. 5. 6. 7.

Introduccin al alineamiento de secuencias Comparacin de pares de secuencias Alineamiento de Secuencias Global Alineamiento de Secuencias Mltiples Cadenas ocultas de Markov Mtodos exactos, aproximados y heursticos del alineamiento de secuencias Problemas derivados del alineamiento de secuencias

Objetivos 1. Reconocimiento de las tcnicas bsicas usadas en el alineamiento de secuencias 2. Implementacin de los diversos algoritmos de comparacin de secuencias 3. Introduccin a la programacin dinmica 4. Introduccin y comparativa entre mtodos heursticos y exactos 5. Mtodos probabilsticos: PAM 4.63.4.3 Clustering (0 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. El problema del Clustering Clustering Jerrquico Algoritmo de Neighbour Joining Algoritmo del Average linkage Clustering no jerrquico o K-means EST clustering

Objetivos 1. Identificar mtodos de distancia aplicables a grafos del tipo rboles 2. Conocer la transformacin de Matrices en estructuras de grafos 3. Reconocer a los mtodos de Clustering como tiles para la identificacin de funciones en genes no conocidos a partir de genes similares 4. Identificar la importancia del Clustering en el reconocimiento de patrones de enfermedades 4.63.4.4 rboles Filogenticos (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. Introduccin a la Filogenia Algoritmos comunes Aplicaciones biolgicas Algoritmos Exactos Algoritmos Probabilsticos

Objetivos

489

1. Reconocer algoritmos de mediciones de distancias 2. Analizar la complejidad computacional de cada uno de los algoritmos estudiados 3. Reconocer la importancia de la filogena en casos de evolucin de epidemias como el HIV 4. Utilizacin de herramientas de software de libre uso 5. Implementacin de los algoritmos estudiados 4.63.4.5 Mapeo de Secuencias (0 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. 6. Problema del Double Digest y Partial Digest Tcnicas utilizadas en el mapeo de secuencias Mapeo con Non-Unique Probes Mapeo con Unique Probes Grafos de Intervalos Mapeo con Seales de Frecuencias de Restriccin

Objetivos 1. Identificacin de problemas NP-Complejos 2. Aplicacin e implementacin de tcnicas diversas a fn de dar solucin a stos problemas biolgicos 3. Introduccin a los mtodos de tipo goloso 4. Reconocimiento de tpicos avanzados en teora de grafos 4.63.4.6 Introduccin a la Estructura de las Protenas (0 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,,] Tpicos 1. 2. 3. 4. 5. Fundamentos biolgicos de las protenas Motivacin para la prediccin de las estructuras de las protenas Alineamiento rgido de Protenas Tcnica del alineamiento por Hashing Geomtrico Prediccin de la estructuras de las protenas

Objetivos 1. Examina algunos tpicos de reconocimiento visual en Computacin Grfica 2. Implementacin de algunos estructuras simples como el folding 2D 4.64 FG301. Enseanza Social de la Iglesia (Obligatorio)

Semestre: 9no Sem. Crditos: 3 Horas del curso: Teora: 3 horas; Prerrequisitos: o FG204A. Teologa II (7mo Sem)
490

Slabo: Slabo (PDF)

Subsecciones

4.64.1 Justificacin 4.64.2 Objetivos Generales 4.64.3 Contribucin a los resultados 4.64.4 Unidades o 4.64.4.1 Centralidad de la Persona Humana en la Cultura (8 horas) [Nivel Bloom 2] o 4.64.4.2 Perspectiva Histrica de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] o 4.64.4.3 Principios y Valores de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] o 4.64.4.4 Instancias de Pertenencia: La Familia (8 horas) [Nivel Bloom 2] o 4.64.4.5 Comunidad Poltica (7 horas) [Nivel Bloom 2] o 4.64.4.6 Orden Econmico y Trabajo (8 horas) [Nivel Bloom 2]

4.64.1 Justificacin El conocimiento y realizacin del Pensamiento Social de la Iglesia, es clave en el desarrollo personal y en la respuesta a la realidad peruana actual, buscando llegar a la construccin de una sociedad justa y reconciliada. 4.64.2 Objetivos Generales 1. Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.64.3 Contribucin a los resultados ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.64.4 Unidades

491

Subsecciones

4.64.4.1 Centralidad de la Persona Humana en la Cultura (8 horas) [Nivel Bloom 2] 4.64.4.2 Perspectiva Histrica de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] 4.64.4.3 Principios y Valores de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] 4.64.4.4 Instancias de Pertenencia: La Familia (8 horas) [Nivel Bloom 2] 4.64.4.5 Comunidad Poltica (7 horas) [Nivel Bloom 2] 4.64.4.6 Orden Econmico y Trabajo (8 horas) [Nivel Bloom 2]

4.64.4.1 Centralidad de la Persona Humana en la Cultura (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. Naturaleza de la Doctrina Social de la Iglesia. El Pensamiento Social de la Iglesia. La Iglesia y la sociedad. Presupuestos antropolgicos y eclesiales Cultura, Centralidad de la persona humana en al cultura. Los ordenes social, econmico y poltico, expresin de la cultura en funcin a la persona humana. Instancias de pertenencia

Objetivos 1. Comprender la naturaleza de la accin de la Iglesia en el mundo. 2. Comprender la naturaleza del trmino cultura para la Iglesia. 3. Comprender los rdenes social, econmico y poltico insertos en al cultura. 4.64.4.2 Perspectiva Histrica de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Fundamentacin bblica, Antiguo y Nuevo Testamento, la misin de Jess, la misin de la Iglesia. 2. Antropologa y derechos. Objetivos 1. Comprender que los fundamentos de al Doctrina Social de la Iglesia se inspiran en la revelacin. 2. Descubrir en al historia el desarrollo de distintas acciones e instituciones como practica social de la iglesia.

492

4.64.4.3 Principios y Valores de la Doctrina Social de la Iglesia (7 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Dignidad humana. Destino universal de los bienes. Solidaridad. Subsidiaridad. Bien comn. Pluralismo social.

Objetivos 1. Conocer y comprender los principios permanentes y valores fundamentales que estn presentes en la Enseanza Magisterial, los cuales deben ser la base para la formacin de las diversas instancias sociales. 4.64.4.4 Instancias de Pertenencia: La Familia (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. 7. 8. Familia, comunin y comunidad de vida. Comunin conyugal y matrimonio. Matrimonio e indisolubilidad. Familia y sociedad. Familia, dentro de la civilizaron del amo. Familia es sociedad natural Familia necesaria para la vida social. Caractersticas de la familia.

Objetivos 1. Comprender que de la naturaleza social del hombre deriva, algunos rdenes sociales necesarios, como la familia. 2. Conocer, comprender y valorar la naturaleza de la familia y el matrimonio y su rol en al sociedad.

4.64.4.5 Comunidad Poltica (7 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Nacin, Patria y Estado. Origen, valor, relacin con a sociedad civil. Elementos constitutivos del ser de la comunidad poltica. Autoridad Bien comn y derechos humanos. Democracia.
493

7. Iglesia y estado Objetivos 1. Comprender que de la naturaleza social del hombre derivan, la nacin y el Estado como rdenes sociales necesarios. 4.64.4.6 Orden Econmico y Trabajo (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Aspectos bblicos sobre los bienes, la riqueza y la actividad econmica. 2. La globalizacin de la economa. 3. Vida econmica 4. Mundializacin de la economa. 5. El padre trabaja siempre. 6. Iglesia y nuevas caractersticas en el mundo del trabajo. 7. Prioridad del trabajo sobre el capital. 8. Deber y derecho del trabajo. 9. La desocupacin 10. Derechos de los trabajadores. 11. La huelga. Objetivos 1. Conocer y comprender los principios de la Doctrina Social de la Iglesia en el campo de la actividad econmica. 2. Formacin de la conciencia cristiana para el posterior desenvolvimiento profesional. 3. Comprender que los principios del Evangelio y de la tica natural pueden ser aplicados a las concreciones del orden econmico de la actividad humana. 4.65 FG221. Historia de la Ciencia y Tecnologa (Obligatorio)

Semestre: 9no Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: o FG205. Historia de la Cultura (8vo Sem) Slabo: Slabo (PDF)

Subsecciones

4.65.1 Justificacin 4.65.2 Objetivos Generales 4.65.3 Contribucin a los resultados


494

4.65.4 Unidades o 4.65.4.1 Historia de la Tecnologa Primitiva (9 horas) [Nivel Bloom 2] o 4.65.4.2 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] o 4.65.4.3 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] o 4.65.4.4 Historia de la Ciencia y Tecnologa en la Edad Moderna (9 horas) [Nivel Bloom 2] o 4.65.4.5 Historia de la Ciencia y La Tecnologa en la Edad Contempornea (6 horas) [Nivel Bloom 2] o 4.65.4.6 Filosofa de la tecnologa (12 horas) [Nivel Bloom 4]

4.65.1 Justificacin Contemplada en su esencia, la tecnologa (tcnica) es un proceso histrico universal, en el cual el hombre descompone la realidad en sus elementos y funciones elementales, formando a partir de stos nuevas estructuras ms aptas para sus fines especficos. El fin positivo de este hecho es el dominio del hombre, supuesto este dominio, podr vivir experiencialmente su propia libertad. Este fin no llega a realizarse, en gran parte a causa de la falta de respeto mutuo entre los hombres y a causa de la falta de respeto a la naturaleza, a causa en fin, de la opresin, de la explotacin y de la destruccin mutua. Por esta razn, se impone la tarea de hacerse aptos para la configuracin responsable del poder tcnico. Y este aprendizaje se lograr por medio de una estructura social solidaria y en rgimen de compaerismo. Pero, sin la correspondiente aceptacin de la experiencia dolorosa de la tcnica, difcilmente se tendr xito.

4.65.2 Objetivos Generales 1. Desarrollar capacidades y habilidades para que el alumno tenga un pensamiento crtico acerca de la ciencia y tecnologa, las cuales deben estar al servicio del hombre. 4.65.3 Contribucin a los resultados e) Nivel Bloom 2 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. f) Nivel Bloom 2 Comunicarse efectivamente con audiencias diversas. g) Nivel Bloom 1 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. h) Nivel Bloom 4

495

Incorporarse a un proceso de aprendizaje profesional continuo. j) Nivel Bloom 2 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. ) Nivel Bloom 2 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. n) Nivel Bloom 2 Aplicar conocimientos de humanidades en su labor profesional. 4.65.4 Unidades

Subsecciones

4.65.4.1 Historia de la Tecnologa Primitiva (9 horas) [Nivel Bloom 2] 4.65.4.2 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] 4.65.4.3 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] 4.65.4.4 Historia de la Ciencia y Tecnologa en la Edad Moderna (9 horas) [Nivel Bloom 2] 4.65.4.5 Historia de la Ciencia y La Tecnologa en la Edad Contempornea (6 horas) [Nivel Bloom 2] 4.65.4.6 Filosofa de la tecnologa (12 horas) [Nivel Bloom 4]

4.65.4.1 Historia de la Tecnologa Primitiva (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Morand, ,,,Ratzinger, 2001,] Tpicos 1. Introduccin. 2. Tecnologa Primitiva. Objetivos 1. Comprender y diferenciar lo que es Ciencia y Tecnologa. 2. Comprender el papel de la tcnica en la organizacin de la civilizacin antigua.
496

4.65.4.2 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Desarrollo de las ciudades. Objetivos 1. Comprender el papel de la tcnica en la organizacin de la civilizacin antigua y comparar cada una de estas culturas.

4.65.4.3 Historia de la Tecnologa Antigua (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [,] Tpicos 1. Tecnologa en la edad media. 2. Tecnologa en el renacimiento. 3. Tecnologa en el barroco. Objetivos 1. Comprender el papel de la tecnologa en la conquista de la tierra y la difusin que se dio en el perodo del renacimiento. 4.65.4.4 Historia de la Ciencia y Tecnologa en la Edad Moderna (9 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. La tecnologa en la edad moderna. Objetivos 1. Comprender el papel de la tecnologa en el desarrollo del imperialismo e identificar sus consecuencias. 4.65.4.5 Historia de la Ciencia y La Tecnologa en la Edad Contempornea (6 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Tecnologa en la edad contempornea. Objetivos

497

1. Comprender el papel de la tecnologa en el neoliberalismo, y determinar la influencia de la ingeniera de telecomunicaciones y la informtica en un mundo globalizado. 4.65.4.6 Filosofa de la tecnologa (12 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,,] Tpicos 1. Anlisis crtico de la tecnologa. Objetivos 1. Analizar y debatir acerca del papel de la Tecnologa en el desarrollo de la sociedad del futuro y establecer sus implicancias. 4.66 ET101. Formacin de Empresas de Base Tecnolgica I (Obligatorio)

Semestre: 9no Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: o CS401. Proyecto I (7mo Sem) Slabo: Slabo (PDF)

Subsecciones

4.66.1 Justificacin 4.66.2 Objetivos Generales 4.66.3 Contribucin a los resultados 4.66.4 Unidades o 4.66.4.1 Diagnostico de Mercado (25 horas) [Nivel Bloom 1] o 4.66.4.2 Plan Tecnologico (20 horas) [Nivel Bloom 1] o 4.66.4.3 Marco Legal aplicado a las TICs (20 horas) [Nivel Bloom 1] o 4.66.4.4 Anlisis Estratgico (25 horas) [Nivel Bloom 1]

4.66.1 Justificacin Este es el primer curso dentro del rea formacin de empresas de base tecnolgica, tiene como objetivo dotar al futuro profesional de conocimientos, actitudes y aptitudes que le permitan elaborar un plan de negocio para una empresa de base tecnolgica. El curso est dividido en las siguientes unidades: Diagnstico de Mercado, Plan tecnolgico, Marco Legal aplicado a las TICs y Anlisis Estratgico. Se busca aprovechar el potencial creativo e innovador y el esfuerzo de los alumnos en la creacin de nuevas empresas.

498

4.66.2 Objetivos Generales 1. Que el alumno conozca como elaborar un plan de negocio para dar inicio a una empresa de base tecnolgica. 2. Que el alumno pueda hacer un estudio que le permita detectar algn nicho de mercado que torne viable la creacin de uns empresa de base tecnolgica. 4.66.3 Contribucin a los resultados d) Nivel Bloom 1 Trabajar efectivamente en equipos para cumplir con un objetivo comn. f) Nivel Bloom 1 Comunicarse efectivamente con audiencias diversas. m) Nivel Bloom 1 Transformar sus conocimientos del rea de Ciencia de la Computacin en emprendimientos tecnolgicos. 4.66.4 Unidades

Subsecciones

4.66.4.1 Diagnostico de Mercado (25 horas) [Nivel Bloom 1] 4.66.4.2 Plan Tecnologico (20 horas) [Nivel Bloom 1] 4.66.4.3 Marco Legal aplicado a las TICs (20 horas) [Nivel Bloom 1] 4.66.4.4 Anlisis Estratgico (25 horas) [Nivel Bloom 1]

4.66.4.1 Diagnostico de Mercado (25 horas) [Nivel Bloom 1] Referencias Bibliogrficas: [Ferre, 1997,Centro de Investigacin y Desarrollo - PUCP, 2004]Tpicos 1. El proceso de investigacin de mercados 2. Cmo solicitar estudios de mercado 3. La investigacin como herramienta de anlisis Objetivos 1. Realizar y comprender el proceso de investigacin de mercados 2. Saber solicitar estudios de mercado, conociendo a la vez las fuentes de informacin secundaria

499

3. Utilizar la investigacin para determinar el tamao, crecimiento del mercado entre otras caractersticas tiles para el diagnostico final 4.66.4.2 Plan Tecnologico (20 horas) [Nivel Bloom 1] Referencias Bibliogrficas: [Porter, 1998,Centro de Investigacin y Desarrollo - PUCP, 2004]Tpicos 1. La innovacin y el ciclo de vida de la tecnologa 2. La estrategia tecnolgica Objetivos 1. Conocer el ciclo de vida de la tecnologa como herramienta de anlisis estratgico 2. Vincular el plan de negocio con la estrategia tecnolgica 4.66.4.3 Marco Legal aplicado a las TICs (20 horas) [Nivel Bloom 1] Referencias Bibliogrficas: [Ludevid, 1994,Congreso de la Republica del Per, 1996,de la Republica del Peru, 1997,Centro de Investigacin y Desarrollo - PUCP, 2004] Tpicos 1. 2. 3. 4. Propiedad Intelectual Aspectos Tributarios Aspectos Legales para la Constitucin de la Empresa Contratos Informticos

Objetivos 1. Conocer los aspectos legales necesarios para la formacin de una empresa tecnolgica 2. Analizar los aspectos tributarios para el buen funcionamiento de la empresa 3. Evaluar la aplicacin de los contratos informticos de acuerdo a los requerimientos establecidos 4.66.4.4 Anlisis Estratgico (25 horas) [Nivel Bloom 1] Referencias Bibliogrficas: [Centro de Investigacin y Desarrollo - PUCP, 2004] Tpicos 1. 2. 3. 4. 5. Anlisis Estratgico Anlisis del Entorno Anlisis Interno Estrategia Competitiva Visin y Misin de la Empresa

Objetivos 1. Estudiar y comprender el anlisis estratgico para una empresa tecnolgica 2. Evaluar los factores internos y externos
500

3. Conocer la estrategia competitiva dentro del mercado 4. Plantear correctamente la visin y misin de la empresa tecnolgica 4.67 CS356. Programacin de Video Juegos (Electivo)

Semestre: 10mo Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS261T. Inteligencia Artificial (7mo Sem) o CS355. Tpicos en Computacin Grfica (9no Sem) o CS250W. Interaccin Humano Computador (7mo Sem) Slabo: Slabo (PDF)

Subsecciones

4.67.1 Justificacin 4.67.2 Objetivos Generales 4.67.3 Contribucin a los resultados 4.67.4 Unidades o 4.67.4.1 GV/Tcnicas Avanzadas. (8 horas) [Nivel Bloom 3] o 4.67.4.2 GV/Visualizacin. (4 horas) [Nivel Bloom 3] o 4.67.4.3 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (4 horas) [Nivel Bloom 4] o 4.67.4.4 GV/Rendering Avanzado. (10 horas) [Nivel Bloom 3] o 4.67.4.5 GV/Programacin de motores de juegos. (26 horas) [Nivel Bloom 3]

4.67.1 Justificacin La industria de los video juegos ha tenido uncrecimiento exponencial en las ltimas dos dcadas y puede ser aplicada a diversas reas del conocimiento humano. El potencial que ofrece esta rea para un egresado es muy amplio y como tal se considera como un rea crtica para el desarrollo de la industria del software. 4.67.2 Objetivos Generales 1. Que el alumno conozca las tcnicas fundamentales que permiten la creacin de video juegos. 2. Que el alumno construya videos juegos de complejidad media incorporando conceptos de Inteligencia Artificial. 4.67.3 Contribucin a los resultados a) Nivel Bloom 4
501

Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. i) Nivel Bloom 4 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida.

4.67.4 Unidades

Subsecciones

4.67.4.1 GV/Tcnicas Avanzadas. (8 horas) [Nivel Bloom 3] 4.67.4.2 GV/Visualizacin. (4 horas) [Nivel Bloom 3] 4.67.4.3 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (4 horas) [Nivel Bloom 4] 4.67.4.4 GV/Rendering Avanzado. (10 horas) [Nivel Bloom 3] 4.67.4.5 GV/Programacin de motores de juegos. (26 horas) [Nivel Bloom 3]

4.67.4.1 GV/Tcnicas Avanzadas. (8 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Foley and van Dam, 1990,Hearn and Baker, 1994] Tpicos 1. Cuantizacin de colores. 2. Conversin de primitivas 2D de escaneo, diferenciacin hacia adelante (forward differencing). 3. Poligonizacin (tessellation) de superficies curvas. 4. Mtodos de remocin de superficies ocultas.
502

5. Z-buffer y frame buffer, canales de color (un canal para la opacidad). 6. Tcnicas de modelamiento de geometra avanzada. Objetivos 1. Describir las tcnicas identificadas en esta seccin. 2. Explicar como reconocer las tcnicas grficas usadas para crear una imagen particular. 3. Implementar cualquiera de las tcnicas grficas especificadas utilizando un sistema grfico primitivo a nivel de pixel. 4. Utilizar un software de animacin comn para construir una forma orgnica simple usando metabolas y esqueletos. 4.67.4.2 GV/Visualizacin. (4 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Foley and van Dam, 1990,Hearn and Baker, 1994] Tpicos 1. Vista bsica y funciones de interrogacin para visualizacin. 2. Visualizacin de campos de vectores, tensores y flujo de datos. 3. Visualizacin de campos escalares o de campos de altura: iso-superficies usando el mtodo marching cubes. 4. Rendering volumtrico directo: ray-casting, funciones de transferencia, segmentacin, hardware. 5. Visualizacin de informacin: mtodos de coordenadas paralelas y proyeccin. Objetivos 1. Describir los algoritmos bsicos detrs de la visualizacin de escalares y vectores. 2. Comparar los algoritmos en trminos de precisin y desempeo. 3. Emplear la teora disponible para explicar los efectos de las operaciones de visualizacin. 4. Describir el impacto de la presentacin y la interaccin del usuario en exploracin. 4.67.4.3 HC/Fundamentos de la Interaccin Hombre-Computador (HCI) (4 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [Baecker et al., 2000] Tpicos 1. Relevancia de la Interaccin Hombre-Computador (HCI). Por qu el estudio de la interaccin entre las personas y la tecnologa es vital para el desarrollo de sistemas ms usables y aceptables?

503

2. Terminologa clave en la Interaccin Humano-Computador: usabilidad, accesibilidad, diseo para todos, diseo inclusivo, acceso universal, diseo de sistemas centrados en el usuario (UCSD). 3. Contextos de Interaccin Humano-Computador: equipos (PC's, equipos industriales, dispositivos de consumo, dispositivos mviles) y aplicaciones (de negocios, en tiempo real, web, sistemas colaborativos, juegos, etc.). 4. Proceso de desarrollo centrado en el usuario (UCSD): foco temprano en los usuarios, pruebas empricas, diseo iterativo. 5. Categoras de evaluacin: utilidad, eficiencia, usabilidad, facilidad de aprendizaje, satisfaccin del usuario. 6. Consideraciones psicolgicas para el modelamiento de usuarios y la evaluacin de la Interaccin Humano-Computador (atencin, percepcin y reconocimiento, memoria de corto y largo plazo, movimiento, abstraccin, y procesamiento cognitivo). 7. Aspectos sociales que influyen en el diseo y en el uso de Interfaces HumanoComputador: cultura, comunicacin y organizaciones. 8. Adaptacin a la diversidad humana, incluyendo diseo y accesibilidad universal, diseo para mltiples contextos culturales y lingusticos. 9. Los errores ms frecuentes en el diseo de interfaces. 10. Estndares para el diseo de interfaces de sistemas interactivos (reglas y guas de diseo de organismos reguladores, fabricantes de software, y estilos corporativos). Objetivos 1. Discutir las razones por las cuales es importante el desarrollo de software centrado en el usuario. 2. Explicar porqu los modelos humanos individuales y los modelos sociales son importantes a la hora de disear la Interaccin Humano-Computador. 3. Definir y ejemplificar procesos centrados en el usuario que explcitamente evidencien que las expectativas del desarrollador y sus conocimientos previos son muy diferentes de las de los usuarios. 4. Describir y ejemplificar casos en los que un diseo centrado en el usuario puede fallar. 5. Explicar los distintos procesos aplicados a la definicin de interfaces para diferentes contextos. 6. Considerar el rol de la hiptesis y las diferencias entre resultados experimentales versus correlaciones, al utilizar mtricas de evaluacin de la Interaccin Humano-Computador. 7. Escoger entre mtodos de evaluacin cualitativos y cuantitativos para una evaluacin dada. 8. Usar un vocabulario especializado para referirse a la interaccin humana con el software: potencialidad percibible, modelo conceptual, modelo mental, metforas, diseo de la interaccin, retroalimentacin, etc. 9. Ejemplificar cmo determinados smbolos, conos, palabras o colores pueden tener diferentes interpretaciones en dos culturas humanas distintas o incluso entre una cultura y alguna de sus subculturas.
504

10. Estar preparado para describir al menos un estndar nacional o internacional de diseo estndar de interfases. 4.67.4.4 GV/Rendering Avanzado. (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Foley and van Dam, 1990,Hearn and Baker, 1994] Tpicos 1. 2. 3. 4. 5. 6. 7. Ecuaciones de transporte. Algoritmos de trazo de rayos (ray tracing). Photon tracing. Radiocidad para el clculo de la iluminacin global, factores de forma. Mtodos eficientes para iluminacin global. Mtodos Monte Carlo para iluminacin global. Rendering basado en imgenes, visin panormica, modelaje de la funcin plenptica. 8. Rendering de fenmenos complejos naturales. 9. Rendering no fotorealstico. Objetivos 1. Describir varias ecuaciones de transporte al detalle, resaltando sus efectos. 2. Describir algoritmos eficientes para radiocidad y compararlos de acuerdo a sus desempeos algortmicos y de exactitud. 3. Describir el impacto de los esquemas de mallas. 4. Explicar las tcnicas de rendering basadas en imgenes, campos de luz y tpicos asociados. 4.67.4.5 GV/Programacin de motores de juegos. (26 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Penton, 2002,Llopis, 2006,Sherrod, 2007] Tpicos 1. La naturaleza de los motores de juegos (comi un entorno de desarrollo integrado) y su propsito. 2. Soporte de hardware incluyendo uso de paralelismo, desempeo, dispositivos de entrada. 3. Componentes tpicos incluyendo renderizacin 3D y soporte para grficos en tiempo real e interaccin as como simulacin fsica, deteccin de colisiones, sonido, inteligencia artificial renderizacin de terreno. Objetivos 1. Estar informado del amplio rango de posibilidades para motores de juegos incluyendo su potencial y sus limitaciones. 2. Usar un motor de juegos para construir un juego simple. 4.68 CS404. Seminario de Tesis (Obligatorio)
505

Semestre: 10mo Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: o CS403. Proyecto de Tesis (9no Sem) o CS280T. Aspectos sociales y profesionales de la computacin (8vo Sem) Slabo: Slabo (PDF)

Subsecciones

4.68.1 Justificacin 4.68.2 Objetivos Generales 4.68.3 Contribucin a los resultados 4.68.4 Unidades o 4.68.4.1 Escritura del Borrador de Tesis (60 horas) [Nivel Bloom 5]

4.68.1 Justificacin Este curso tiene por objetivo que el alumno logre finalizar adecuadamente su borrador de tesis. 4.68.2 Objetivos Generales 1. Que el alumno complete este curso con su tesis elaborada en calidad suficiente como para una inmediata sustentacin. 2. Que el alumno presente formalmente el borrador de tesis ante las autoridades de la facultad. 3. Los entregables de este curso son: Parcial: Avance del proyecto de tesis incluyendo en el documento: introduccin, marco teorico, estado del arte, propuesta, anlisis y/o experimentos y bibliografa slida. Final: Documento de tesis completo y listo para sustentar en un plazo no mayor de quince das. 4.68.3 Contribucin a los resultados a) Nivel Bloom 4 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina.

506

b) Nivel Bloom 5 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 5 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. e) Nivel Bloom 4 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. f) Nivel Bloom 5 Comunicarse efectivamente con audiencias diversas. h) Nivel Bloom 5 Incorporarse a un proceso de aprendizaje profesional continuo. i) Nivel Bloom 5 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. l) Nivel Bloom 5 Desarrollar principios investigacin en el rea de computacin con niveles de competividad internacional. 4.68.4 Unidades

Subsecciones

4.68.4.1 Escritura del Borrador de Tesis (60 horas) [Nivel Bloom 5]

4.68.4.1 Escritura del Borrador de Tesis (60 horas) [Nivel Bloom 5] Referencias Bibliogrficas: [,,] Objetivos 1. Parte experimental concluda (si fuese adecuado al proyecto) 2. Verificar que el documento cumpla con el formato de tesis de la UCSP

507

3. Entrega del borrador de tesis finalizado y considerado listo para una sustentacin pblica del mismo (requisito de aprobacin) 4.69 CS331. Cloud Computing (Obligatorio)

Semestre: 10mo Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS230W. Computacin Centrada en Redes (8vo Sem) o CS314. Algoritmos Paralelos (7mo Sem) Slabo: Slabo (PDF)

Subsecciones

4.69.1 Justificacin 4.69.2 Objetivos Generales 4.69.3 Contribucin a los resultados 4.69.4 Unidades o 4.69.4.1 Introduccin a cloud computing (7 horas) [Nivel Bloom 2] o 4.69.4.2 Temas de investigacin en cloud computing (8 horas) [Nivel Bloom 2] o 4.69.4.3 Cloud data management (10 horas) [Nivel Bloom 3] o 4.69.4.4 Data-intensive applications (10 horas) [Nivel Bloom 3] o 4.69.4.5 Programando para Cloud Computing (10 horas) [Nivel Bloom 3]

4.69.1 Justificacin La capacidad de procesamiento de una sola mquina es limitada y la Ley de Moore se ha encontrado con barreras antes de lo previsto, a pesar de esto la necesidad de mayor poder computacional es cresciente. El uso de las computadoras como elementos conectados entre s es cada vez ms comn y cada vez en mayor escala, la capacidad de comunicacin entre dispositivos (computadoras, celulares, pdas, etc.), abre las puertas a la existencia de una nica plataforma donde la informacin de los usuarios est disponible siempre, sin importar el medio de acceso a esta (Cloud computing). La computacin en la nube de internet o un grupo de computadores permite conseguir ambos objetivos, traspasando la barrera de una sola mquina para poder integrar las capacidades de distintos dispositivos y permitirles interactuar en un entorno que el usuario perciba como unificado; adems, al conectarlos, el tope de desempeo del sistema ya no es la capacidad de un slo elemento (e.g. CPU) sino la cantidad de participantes en este, por lo cual existe una escalabilidad del poder computacional muchsimo mayor.
508

4.69.2 Objetivos Generales 1. Comprender los conceptos bsicos de la computacin en nube, incluyendo definiciones, historia, pros y cons de la misma, comparaciones con tecnologas relacionadas, tales como grid computing, o utility computing. 2. Conocer la tecnologa que soporta a la computacin en nube. 3. Comprender la relacin entre data-intensive applications y cloud computing, y 4. Evaluar el nuevo modelo de computacin para conocer las tendencias de esta rea emergente. 4.69.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. b) Nivel Bloom 4 Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. k) Nivel Bloom 4 Aplicar los principios de desarrollo y diseo en la construccin de sistemas de software de complejidad variable.

509

4.69.4 Unidades

Subsecciones

4.69.4.1 Introduccin a cloud computing (7 horas) [Nivel Bloom 2] 4.69.4.2 Temas de investigacin en cloud computing (8 horas) [Nivel Bloom 2] 4.69.4.3 Cloud data management (10 horas) [Nivel Bloom 3] 4.69.4.4 Data-intensive applications (10 horas) [Nivel Bloom 3] 4.69.4.5 Programando para Cloud Computing (10 horas) [Nivel Bloom 3]

4.69.4.1 Introduccin a cloud computing (7 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Armbrust et al., 2009,Mell and Grance, 2009] Tpicos 1. 2. 3. 4. 5. Computacin en redes y multimedia distribuida. Sistemas cliente-servidor. Sistemas distribuidos. Sistemas paralelos. Sistemas basados en web.

Objetivos 1. Describir tecnologas emergentes y el rea de computacin centradas en redes as como evaluar las capacidades y limitaciones actuales y su potencial a corto plazo. 2. Identificar y discutir diferentes sistemas especializados. 3. Sintetizar los temas tcnicos centrales asociados con la implementacin del crecimiento de sistemas especializados.. 4. Comprender como aparecio el paradigma de computacin en nube. 4.69.4.2 Temas de investigacin en cloud computing (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Vaquero et al., 2009,Mei et al., 2008] Tpicos 1. 2. 3. 4. Data Center Network Architecture Network Management Resource and Performance Management Data management

Objetivos 1. Entender la relacin entre los diferentes tipos de investigacin que procedieron a la computacin en nube. 2. Conocer distintas lneas de investigacin de computacin en nube.
510

4.69.4.3 Cloud data management (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Stonebraker, 1986,Stonebraker et al., 2007,Agrawal et al., 2009]Tpicos 1. 2. 3. 4. 5. Almacenamiento y recuperacin de informacin (IS&R). Bsqueda, recuperacin, enlace, navegacin. Escalabilidad, eficiencia y efectividad. Arquitectura de base de datos e independencia de datos. Tpicos 1. Almacenamiento de datos distribuido. 2. Procesamiento de consultas distribuidas. 3. Modelo de transaccin distribuido. 4. Control de concurrencia. 5. Soluciones heterogneas y homogneas. 6. Cliente-servidor. 6. Big Data. 7. Large small data. 8. Bases de datos NoSQL. Objetivos 1. Criticar y defender las aplicaciones de informacin de tamao pequeo y mediano con respecto a la satisfaccin de las necesidades reales del usuario. 2. Explicar las medidas de eficiencia (estimacin, tiempo de respuesta) y efectividad (precision - recall). 3. Describir mtodos para asegurar que los sistemas de informacin pueden escalar de lo individual a lo global. 4. Identificar asuntos relacionados a la persistencia de datos en una organizacin. 5. Evaluar estrategias simples para ejecutar una consulta distribuida para seleccionar la estrategia que minimice la cantidad de transferencia de datos. 6. Conocer diferentes casos de objetos distribuidas. 4.69.4.4 Data-intensive applications (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Hey et al., 2009,Bryant, 2007,Dean and Ghemawat, 2008] Tpicos 1. 2. 3. 4. Modelo de programacin MapReduce. Ejemplos de aplicaciones en la academia y en la industria. Aplicaciones usando MapReduce. Otros lenguajes de programacin para Cloud Computing.

Objetivos 1. Entender el modelo de programacin MapReduce. 2. Conocer diferentes modos de uso de MapReduce. 3. Describir mtodos para asegurar que los sistemas de informacin pueden escalar de lo individual a lo global.
511

4. Identificar asuntos relacionados a la persistencia de datos en una organizacin. 5. Evaluar estrategias simples para ejecutar una consulta distribuida para seleccionar la estrategia que minimice la cantidad de transferencia de datos. 4.69.4.5 Programando para Cloud Computing (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Dean and Ghemawat, 2008,Nurmi et al., 2009,Services, 2010] Tpicos 1. 2. 3. 4. Usando Amazon Web Services. MapReduce en Amazon Web Services. Proveedores de Cloud Computing. Frameworks para crear servicios de Cloud Computing.

Objetivos 1. Conocer los diferentes services de Amazon Web Services. 2. Aplicar conocimientos de Cloud Computing para crear aplicaciones que usen otros servicios de Cloud Computing. 3. Conocer los diferentes proveedores de servicios de Cloud Computing. 4. Entender las similitudes y diferencias, ventajas y desventajas de los diferentes frameworks para crear private clouds. 4.70 CS367. Robtica (Electivo)

Semestre: 10mo Sem. Crditos: 4 Horas del curso: Teora: 2 horas; Laboratorio: 4 horas; Prerrequisitos: o CS361. Tpicos en Inteligencia Artificial (9no Sem) Slabo: Slabo (PDF)

Subsecciones

4.70.1 Justificacin 4.70.2 Objetivos Generales 4.70.3 Contribucin a los resultados 4.70.4 Unidades o 4.70.4.1 IS/Robtica. (30 horas) [Nivel Bloom 4] o 4.70.4.2 IS/Percepcin. (30 horas) [Nivel Bloom 3]

4.70.1 Justificacin Que el alumno conozca y comprenda los conceptos y principios fundamentales de control, planificacin de caminos y definicin de estratgias en robtica mbil as como

512

conceptos de percepcin robtica de forma que entienda el potencial de los sistemas robticos actuales.

4.70.2 Objetivos Generales 1. Sistentizar el potencial y las limitaciones del estado del arte de los sistemas toboticos actuales. 2. Implementar algoritmos de planeamiento de movimientos simples 3. Explicar las incertezas asociadas con sensores y la forma de tratarlas 4. Disear una arquitectura de control simple 5. Describir vrias estratgias de navegacin 6. Entender el rol y las aplicaciones de la percepcin robtica 7. Describir la importancia del reconocimiento de imagenes y objetos en sistemas inteligentes 8. Delinear las principales tcnicas de reconocimiento de objetos 9. Describir las diferentes caractersticas de las tecnologas usadas en percepcin 4.70.3 Contribucin a los resultados a) Nivel Bloom 3 Aplicar conocimientos de computacin y de matemticas apropiadas para la disciplina. i) Nivel Bloom 4 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. o) Nivel Bloom 4 Mejorar las condiciones de la sociedad poniendo la tecnologa al servicio del ser humano. 4.70.4 Unidades

Subsecciones

4.70.4.1 IS/Robtica. (30 horas) [Nivel Bloom 4] 4.70.4.2 IS/Percepcin. (30 horas) [Nivel Bloom 3]

4.70.4.1 IS/Robtica. (30 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,]


513

Tpicos 1. Visin general. 2. Estado del arte de sistemas de robot. 3. Planeamiento vs. control reactivo. 4. Incerteza en control. 5. Sentido. 6. Modelos del mundo. 7. Espacios de configuracin. 8. Planeamiento. 9. Programacin de robots. 10. Navegacin y control. 11. Robtica. Objetivos 1. Sintetizar el potencial y limitaciones del estado del arte de los sistemas de robot actuales. 2. Implementar los algoritmos de configuracin de espacio para un robot 2D y polgonos complejos. 3. Implementar algoritmos de planeamiento de movimientos simples. 4. Explicar las incertezas asociadas con sensores y la forma de tratarlas. 5. Disear una arquitectura de control simple. 6. Describir varias estrategias para navegacin en ambientes desconocidos, incluyendo las fortalezas y defectos de cada una. 7. Describir varias estrategias de navegacin con la ayuda de hitos, incluyendo las fortalezas y defectos de cada una. 4.70.4.2 IS/Percepcin. (30 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. Percepcin: rol y aplicaciones. 2. Formacin de imagenes: luz, color, sombras. 3. Imagenes y deteccin de objetos: reconocimiento de caractersticas, reconocimiento de objetos. 4. Tecnologas. 5. Caractersticas del software de percepcin. Objetivos 1. Describir la importancia del reconocimiento de imagenes y objetos en Inteligencia Artificial e indicar aplicaciones de esta tecnologa. 2. Delinear las principales tcnicas de reconocimiento de objetos. 3. Describir las diferentes caractersticas de las tecnologas usadas en percepcin. 4.71 CS232W. Programacin de Dispositivos Mviles (Obligatorio)
514

Semestre: 10mo Sem. Crditos: 3 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Laboratorio: 2 horas; Prerrequisitos: o CS230W. Computacin Centrada en Redes (8vo Sem) Slabo: Slabo (PDF)

Subsecciones

4.71.1 Justificacin 4.71.2 Objetivos Generales 4.71.3 Contribucin a los resultados 4.71.4 Unidades o 4.71.4.1 Mobilidad y Manejo de Localidad (8 horas) [Nivel Bloom 4] o 4.71.4.2 Manejo de datos en ambientes mviles (10 horas) [Nivel Bloom 2] o 4.71.4.3 Mobile Ad Hoc y Sensor Networks (8 horas) [Nivel Bloom 2] o 4.71.4.4 Aplicaciones de computacin mvil y ubicua (20 horas) [Nivel Bloom 6]

4.71.1 Justificacin El siempre creciente desarrollo de las tecnologas de comunicacin y la informacin hace que exista una marcada tendencia a establecer medios de comunicacin ms simples y eficientes. De esta forma es que las soluciones mbiles aparecen como respuesta a esta nueva tendencia. En este curso se brindar a los participantes una introduccin a los problemas que conlleva la comunicacin usando dispositivos mviles, a travs del estudio e implementacin de aplicativos; tomando como referencia otros aplicativos mbiles creados por diferentes grupos de investigacin, y tambin de la industria. 4.71.2 Objetivos Generales 1. 2. 3. 4. Explorar problemas de investigacin en computacin mvil. Conocer tecnologas usadas para computacin mvil. Entender y construir sistemas que soporten la computacin mvil. Comprender las razones por las que dispositivos mviles sean convertido ubicuos, y 5. Evaluar y proponer aplicaciones cuya solucin es apropiada a la computacin mvil. 4.71.3 Contribucin a los resultados b) Nivel Bloom 3

515

Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solucin. c) Nivel Bloom 4 Disear, implementar y evaluar un sistema, proceso, componente o programa computacional para alcanzar las necesidades deseadas. e) Nivel Bloom 3 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 3 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. i) Nivel Bloom 3 Utilizar tcnicas y herramientas actuales necesarias para la prctica de la computacin. j) Nivel Bloom 4 Aplicar la base matemtica, principios de algoritmos y la teora de la Ciencia de la Computacin en el modelamiento y diseo de sistemas computacionales de tal manera que demuestre comprensin de los puntos de equilibrio involucrados en la opcin escogida. 4.71.4 Unidades

Subsecciones

4.71.4.1 Mobilidad y Manejo de Localidad (8 horas) [Nivel Bloom 4] 4.71.4.2 Manejo de datos en ambientes mviles (10 horas) [Nivel Bloom 2] 4.71.4.3 Mobile Ad Hoc y Sensor Networks (8 horas) [Nivel Bloom 2] 4.71.4.4 Aplicaciones de computacin mvil y ubicua (20 horas) [Nivel Bloom 6]

4.71.4.1 Mobilidad y Manejo de Localidad (8 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [] Tpicos 1. Definiciones y visiones sobre mobilidad. 2. Historia de la computacin ubicua.
516

3. Sistemas ubicuos. 4. Localidad. 5. Context aware computing. Objetivos 1. Conocer los conceptos relaciones con la computacin mvil. 2. Comprender nuevas tendencias en la computacin ubicua. 4.71.4.2 Manejo de datos en ambientes mviles (10 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Privacidad en Ubiquitous Computing. 2. Manejo de datos en ambientes mviles. 3. Manejo de recursos. Objetivos 1. Comparar el manejo de datos en sistemas convencionales con el manejo de datos de sistemas mviles y/o ubicuos. 2. Evaluar las ventajas y desventajas del manejo de recursos en dispositivos mviles. 4.71.4.3 Mobile Ad Hoc y Sensor Networks (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [] Tpicos 1. Vista general de la historia, evolucin y compatibilidad de los estndares inalmbricos. 2. Los problemas especiales de la computacin inalmbrica y mvil. 3. Redes inalmbricas de rea local y redes basadas en satlites. 4. Ciclos inalmbricos locales. 5. Protocolos de Internet mvil. 6. Adaptacin conciente a dispositivos mviles. 7. Extendiendo el modelo cliente servidor para adaptarse a la movilidad. 8. Acceso a datos mviles: diseminacin de datos en el servidor y administracin del cache del cliente. 9. Soporte de paquetes de software para computacin inalmbrica y mvil. 10. El rol del middleware y herramientas de soporte. 11. Problemas de desempeo. 12. Tecnologas emergentes. Objetivos 1. Describir las principales caractersticas de IP mvil y explicar como difiere del IP con respecto a la administracin de la movilidad, ubicacin y desempeo.
517

2. Ilustrar (con agentes locales y externos) como el e-mail u otro tipo de trfico es ruteado usando IP mvil. 3. Implementar una aplicacin simple que se base en comunicacin mvil e inalmbrica de datos. 4. Describir las reas actuales y de inters emergente en computacin inalmbrica y mvil asi como evaluar las capacidades, limitaciones y potencial en cada uno. 4.71.4.4 Aplicaciones de computacin mvil y ubicua (20 horas) [Nivel Bloom 6] Referencias Bibliogrficas: [] Tpicos 1. reas de aplicacin. 2. Procesamiento de sensores y datasets. 3. Mobile social networking. Objetivos 1. Conocer los tipos de aplicaciones que pueden usarse en diferentes reas de la industria. 2. Evaluar formas de procesamiento de seales de dispositivos mviles para generar datasets, y posteriomente poder analizarlos. 4.72 FG350. Liderazgo y Desempeo (Obligatorio)

Semestre: 10mo Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: Ninguno Slabo: Slabo (PDF)

Subsecciones

4.72.1 Justificacin 4.72.2 Objetivos Generales 4.72.3 Contribucin a los resultados 4.72.4 Unidades o 4.72.4.1 Aproximacin al liderazgo (20 horas) [Nivel Bloom 2] o 4.72.4.2 Liderazgo personal/Maestra personal (45 horas) [Nivel Bloom 3] o 4.72.4.3 Liderazgo en grupos (10 horas) [Nivel Bloom 3]

4.72.1 Justificacin El mundo de hoy y las organizaciones existentes exigen de lderes que permitan orientarlas hacia la construccin de una sociedad ms justa y reconciliada. Ese desafo
518

pasa por la necesidad de formar personas con un recto conocimiento de s mismos, con la capacidad de juzgar objetivamente la realidad y de proponer orientaciones que busquen modificar positivamente el entorno. El curso de Liderazgo y Desempeo pretende desarrollar los criterios, habilidades y actitudes necesarios para cumplir con ste propsito.

4.72.2 Objetivos Generales 1. 2. 3. 4. Aplicar conocimientos de humanidades en su labor profesional. Mostrar la influencia del liderazgo a travs de la historia. Dar a conocer la imortancia de un liderazgo equilibrado en nuestra sociedad. Forjar en el alumno un desempeo honesto y preciso.

4.72.3 Contribucin a los resultados d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. n) Nivel Bloom 3 Aplicar conocimientos de humanidades en su labor profesional.

4.72.4 Unidades

Subsecciones

4.72.4.1 Aproximacin al liderazgo (20 horas) [Nivel Bloom 2] 4.72.4.2 Liderazgo personal/Maestra personal (45 horas) [Nivel Bloom 3] 4.72.4.3 Liderazgo en grupos (10 horas) [Nivel Bloom 3]

4.72.4.1 Aproximacin al liderazgo (20 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [para el Desarrollo UCSP, 2006,Haecker, 1947,Guardini, 1992,Hesselbein, 1999] Tpicos 1. Introduccin al liderazgo
519

2. 3. 4. 5. 6. 7. 8.

Estilos actuales de liderazgo Visiones erradas del ser humano La vocacin humana Ensayando una definicin de liderazgo Liderazgo en la historia Importancia de las aproximaciones histricas Elementos para analizar un liderazgo histrico

Objetivos 1. Conocer las caractersticas del liderazgo, su importancia y trascendencia a travs de la historia.

4.72.4.2 Liderazgo personal/Maestra personal (45 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [para el Desarrollo UCSP, 2006,Haecker, 1947,Guardini, 1992,Hesselbein, 1999] Tpicos 1. Introduccin al liderazgo personal 2. El primer campo de liderazgo soy yo 3. Autoridad y liderazgo 4. Introduccin al autoconocimiento y liderazgo 5. El ruido 6. Hacer silencio 7. Obstculos para el autoconocimiento 8. Empezando a conocerme 9. Que no es conocerme 10. Aproximacin al autoconocimiento. 11. El hombre unidad de mente cuerpo y espritu. 12. El cuerpo 13. La mente 14. El espritu 15. Caractersticas de la mismidad 16. La libertad 17. La dimisin de lo humano 18. La Prudencia 19. Toma de conciencia 20. Mi liderazgo personal 21. Anlisis FODA personal 22. Plan de vida 23. Manejo de horario Objetivos 1. Entender que el primer campo de liderazgo es la misma persona 2. Profundizar en el descubrimiento del misterio de la persona humana
520

3. Desarrollar habilidades y actitudes de lder 4.72.4.3 Liderazgo en grupos (10 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [para el Desarrollo UCSP, 2006,Haecker, 1947,Guardini, 1992,Hesselbein, 1999] Tpicos 1. 2. 3. 4. La relacin personal con el equipo Liderazgo integral Acompaamiento y discipulado Fundamentos de unidad

Objetivos 1. Desarrollar habilidades para el trabajo en equipo 4.73 FG211. tica Profesional (Obligatorio)

Semestre: 10mo Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas; Prerrequisitos: o FG204A. Teologa II (7mo Sem) Slabo: Slabo (PDF)

Subsecciones

4.73.1 Justificacin 4.73.2 Objetivos Generales 4.73.3 Contribucin a los resultados 4.73.4 Unidades o 4.73.4.1 Objetividad moral (8 horas) [Nivel Bloom 2] o 4.73.4.2 tica y Nuevas Tecnologas (8 horas) [Nivel Bloom 2] o 4.73.4.3 Aplicaciones Prcticas (6 horas) [Nivel Bloom 3]

4.73.1 Justificacin La tica es una parte constitutiva inherente al ser humano, y como tal debe plasmarse en el actuar cotidiano y profesional de la persona humana. Es indispensable que la persona humana asuma su centralidad y rol en la sociedad pues os sistemas econmico, poltico y social no siempre estn en funcin de ella entendida como lo que realmente es, una persona humana con dignidad y derechos. Contribucin a la formacin humana: Comprender que la realizacin personal implica un discernimiento constante para el buen ejercicio de la libertad en la consecucin del bien personal y social.
521

Contribucin a la formacin profesional: Comprender la carrera profesional elegida como una actitud de servicio y como contribucin en la edificacin de la sociedad, actividad en la que podemos construir y cualificar personalmente la sociedad que deseamos heredar a nuestros hijos, viviendo cotidianamente en el actuar profesional capaz de reconocer y afrontar de manera integral las exigencias de una moralidad madura. 4.73.2 Objetivos Generales 1. Aportar en la formacin de los estudiantes capaces de afrontar el reto de participar en el desarrollo econmico social de la ciudad, regin, pas y comunidad global as como ampliar los criterios de discernimiento en la toma de decisiones profesional de manera que no respondan solamente a criterios tcnicos sino que incorporen en toda decisin cuestionamientos de orden moral, para el reconocimiento de la persona humana como centro del trabajo profesional. 4.73.3 Contribucin a los resultados e) Nivel Bloom 2 Entender correctamente las implicancias profesionales, ticas, legales, de seguridad y sociales de la profesin. g) Nivel Bloom 4 Analizar el impacto local y global de la computacin sobre los individuos, organizaciones y sociedad. o) Nivel Bloom 3 Mejorar las condiciones de la sociedad poniendo la tecnologa al servicio del ser humano. 4.73.4 Unidades

Subsecciones

4.73.4.1 Objetividad moral (8 horas) [Nivel Bloom 2] 4.73.4.2 tica y Nuevas Tecnologas (8 horas) [Nivel Bloom 2] 4.73.4.3 Aplicaciones Prcticas (6 horas) [Nivel Bloom 3]

4.73.4.1 Objetividad moral (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [Schmidi, 1995] Tpicos

522

1. 2. 3. 4.

Ser Profesional y ser moral. La objetividad moral y la formulacin de principios morales. El profesional y sus valores. La conciencia moral de la persona.

Objetivos 1. Presentar al estudiante la importancia de tener y aplicar principios y valores en la sociedad actual. 2. Presentar algunos de los principios que podran contribuir en la sociedad de ser aplicados y vividos da a da. 4.73.4.2 tica y Nuevas Tecnologas (8 horas) [Nivel Bloom 2] Referencias Bibliogrficas: [et al, 2006,Bilbao et al., 2006] Tpicos 1. 2. 3. 4. 5. 6. tica profesional frente a la tica general Principios de la tica profesional. Trabajo y profesin en los tiempos actuales tica, ciencia y tecnologa Valores ticos en la era de la Sociedad de la Informacin La Utilizacin de la Informacin.

4.73.4.3 Aplicaciones Prcticas (6 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [Bilbao et al., 2006,Foley and Pastore, 2002,IEEE, 2010] Tpicos 1. La tica en Informtica. 2. tica y Software. 3. Software como producto intangible. 4. Calidad del producto. 5. Responsabilidad ante empleadores y clientes 6. El software y plataformas libres. 7. Derechos de Autor y patentes. 8. Copia y Escritura. 9. Copia y Escritura. 10. Auditoria Informtica. 11. Regulacin y tica de Telecomunicaciones. 12. tica en Internet 13. tica en los procesos de innovacin tecnolgica. 14. tica en la gestin tecnolgica y en empresas de base tecnolgica. 15. Principales desafos y posibilidades futuras: poder, libertad y control en lo telecomunicativo. 4.74 FG220. Anlisis de la Realidad Peruana (Obligatorio)

Semestre: 10mo Sem. Crditos: 2 Horas del curso: Teora: 1 horas; Prctica: 2 horas;
523

Prerrequisitos: o FG221. Historia de la Ciencia y Tecnologa (9no Sem) Slabo: Slabo (PDF)

Subsecciones

4.74.1 Justificacin 4.74.2 Objetivos Generales 4.74.3 Contribucin a los resultados 4.74.4 Unidades o 4.74.4.1 Orgenes de la peruanidad y la formacin de la conciencia nacional (15 horas) [Nivel Bloom 6] o 4.74.4.2 Procesos de integracin y desintegracin nacional del siglo XIX (12 horas) [Nivel Bloom 6] o 4.74.4.3 Procesos de integracin y desintegracin nacional del siglo XX (6 horas) [Nivel Bloom 6] o 4.74.4.4 El Per en la actualidad: anlisis del sector poltico, social y econmico (9 horas) [Nivel Bloom 6]

4.74.1 Justificacin Las perspectivas dominantes durante el ltimo siglo en el anlisis de la realidad nacional estn evidenciando claros signos de agotamiento y caducidad para plantear soluciones plausibles al dilema cultural del Per. Se hace cada vez ms evidente que las aproximaciones ilustradas, en cualquiera de sus vertientes -socialista, liberal y/o indigenista- tienen graves limitaciones para contener la realidad peruana en toda su complejidad, ms an, proponer soluciones de unidad, solidaridad e integracin para los pueblos del Per. En este contexto, el presente curso responde a la exigencia de ensayar renovados enfoques que contribuyan a la reconciliacin y la integracin (en la diversidad) de la sociedad peruana. Desde este curso se pretende generar una reflexin e investigacin crtica que luego pueda ser desdoblada sobre la actividad profesional y la sociedad en general. 4.74.2 Objetivos Generales 1. Analizar y comprender la situacin actual del Per desde una perspectiva histrica y sociolgica de modo que el alumno asuma desde su trabajo profesional la corresponsabilidad de construir una sociedad peruana ms justa, integrada y reconciliada. 4.74.3 Contribucin a los resultados n) Nivel Bloom 4 Aplicar conocimientos de humanidades en su labor profesional.

524

) Nivel Bloom 6 Comprender que la formacin de un buen profesional no se desliga ni se opone sino mas bien contribuye al autntico crecimiento personal. Esto requiere de la asimilacin de valores slidos, horizontes espirituales amplios y una visin profunda del entorno cultural. 4.74.4 Unidades

Subsecciones

4.74.4.1 Orgenes de la peruanidad y la formacin de la conciencia nacional (15 horas) [Nivel Bloom 6] 4.74.4.2 Procesos de integracin y desintegracin nacional del siglo XIX (12 horas) [Nivel Bloom 6] 4.74.4.3 Procesos de integracin y desintegracin nacional del siglo XX (6 horas) [Nivel Bloom 6] 4.74.4.4 El Per en la actualidad: anlisis del sector poltico, social y econmico (9 horas) [Nivel Bloom 6]

4.74.4.1 Orgenes de la peruanidad y la formacin de la conciencia nacional (15 horas) [Nivel Bloom 6] Referencias Bibliogrficas: [Belaunde, 1965,Del Busto Duthurburu, 1993,Morand, ,Messori, 1996,A., 2008a] Tpicos 1. Aproximaciones crticas a la realidad peruana: Vctor Andrs Belande, Jos Carlos Maritegui, Vctor Ral Haya de la Torre. 2. Aspectos conceptuales relevantes para el anlisis: Cultura, Identidad, Nacin, Sociedad y Estado. 3. El imperio de los Incas. Repaso de aspectos socio-culturales ms importantes. 4. Conquista espaola. Encuentro o choque de las culturas? Hacia una comprensin integral del fenmeno. Debate conceptual. 5. Virreinato. Repaso de aspectos socio-culturales ms importantes. Surgimiento de la identidad nacional peruana al calor de la Fe Catlica. Objetivos 1. Comprender adecuadamente el proceso histrico que determina el nacimiento de nuestra identidad nacional a partir de la sntesis cultural del virreinato.

525

4.74.4.2 Procesos de integracin y desintegracin nacional del siglo XIX (12 horas) [Nivel Bloom 6] Referencias Bibliogrficas: [de la Puente Candamo, 1970,UCSP, 2001,Basadre, 1981,Maritegui, 1995] Tpicos 1. La independencia del Per y la fundacin del Estado Peruano. 2. Primeros cambios culturales: Inicio del proceso secularizador de la cultura. Primera Repblica y Militarismo. Repaso de aspectos socio-culturales ms importantes. 3. Prosperidad Falaz. Repaso de aspectos socio-culturales ms importantes. Objetivos 1. Identificar adecuadamente los procesos histricos de integracin y desintegracin nacional en el siglo XIX. 4.74.4.3 Procesos de integracin y desintegracin nacional del siglo XX (6 horas) [Nivel Bloom 6] Referencias Bibliogrficas: [Franklin, 1999,A., 1995] Tpicos 1. Principales ideologas polticas en el siglo XX en contrapunto con los principios de la Doctrina Social de la Iglesia. 2. Anlisis del aspecto simblico ideacional y socio-cultural ms importante del siglo XX. Objetivos 1. Identificar adecuadamente los procesos histricos de integracin y desintegracin nacional en el siglo XX. 4.74.4.4 El Per en la actualidad: anlisis del sector poltico, social y econmico (9 horas) [Nivel Bloom 6] Referencias Bibliogrficas: [Contreras, 2002,A., 2009,A., 2008b,XVI, 2009] Tpicos 1. 2. 3. 4. 5. Anlisis del sistema poltico peruano. Balance del Estado Peruano: centralismo y corrupcin. Marginacin y exclusin: proceso de migracin y pobreza en el Per. Violencia social, terrorismo y narcotrfico en el Per. Transformaciones culturales de la sociedad peruana: la educacin como crisis y posibilidad. 6. Bases para un desarrollo social basado en la promocin humana. 7. Conclusiones finales 8. Anlisis del aspecto simblico ideacional y socio-cultural ms importante del siglo XX. Objetivos
526

1. Conocer y analizar la situacin actual de la poltica, econmica y social en el Per, su problemtica y posibilidades de solucin. 4.75 ET102. Formacin de Empresas de Base Tecnolgica II (Obligatorio)

Semestre: 10mo Sem. Crditos: 3 Horas del curso: Teora: 2 horas; Prctica: 2 horas; Prerrequisitos: o ET101. Formacin de Empresas de Base Tecnolgica I (9no Sem) Slabo: Slabo (PDF)

Subsecciones

4.75.1 Justificacin 4.75.2 Objetivos Generales 4.75.3 Contribucin a los resultados 4.75.4 Unidades o 4.75.4.1 Valorizacin de Proyectos (20 horas) [Nivel Bloom 3] o 4.75.4.2 Marketing de Servicios (30 horas) [Nivel Bloom 3] o 4.75.4.3 Negociaciones (10 horas) [Nivel Bloom 4]

4.75.1 Justificacin Este es el segundo curso dentro del rea formacin de empresas de base tecnolgica, tiene como objetivo dotar al futuro profesional de conocimientos, actitudes y aptitudes que le permitan formar su propia empresa de desarrollo de software y/o consultora en informtica. El curso est dividido en tres unidades: Valorizacin de Proyectos, Marketing de Servicios y Negociaciones. En la primera unidad se busca que el alumno pueda analizar y tomar decisiones en relacin a la viabilidad de un proyecto y/o negocio. En la segunda unidad se busca preparar al alumno para que este pueda llevar a cabo un plan de marketing satisfactorio del bien o servicio que su empresa pueda ofrecer al mercado. La tercera unidad busca desarrollar la capacidad negociadora de los participantes a travs del entrenamiento vivencial y prctico y de los conocimientos tericos que le permitan cerrar contrataciones donde tanto el cliente como el proveedor resulten ganadores. Consideramos estos temas sumamente crticos en las etapas de lanzamiento, consolidacin y eventual relanzamiento de una empresa de base tecnolgica. 4.75.2 Objetivos Generales 1. Que el alumno comprenda y aplique la terminologa y conceptos fundamentales de ingeniera econmica que le permitan valorizar un proyecto para tomar la mejor decisin econmica.
527

2. Que el alumno adquiera las bases para formar su propia empresa de base tecnolgica. 4.75.3 Contribucin a los resultados d) Nivel Bloom 3 Trabajar efectivamente en equipos para cumplir con un objetivo comn. f) Nivel Bloom 3 Comunicarse efectivamente con audiencias diversas. m) Nivel Bloom 4 Transformar sus conocimientos del rea de Ciencia de la Computacin en emprendimientos tecnolgicos. 4.75.4 Unidades

Subsecciones

4.75.4.1 Valorizacin de Proyectos (20 horas) [Nivel Bloom 3] 4.75.4.2 Marketing de Servicios (30 horas) [Nivel Bloom 3] 4.75.4.3 Negociaciones (10 horas) [Nivel Bloom 4]

4.75.4.1 Valorizacin de Proyectos (20 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [] Tpicos 1. Introduccin 2. Proceso de toma de decisiones 3. El valor del dinero en el tiempo 4. Tasa de inters y tasa de rendimiento 5. Inters simple e inters compuesto 6. Identificacin de costos 7. Flujo de Caja Neto 8. Tasa de Retorno de Inversin (TIR) 9. Valor Presente Neto (VPN) 10. Valorizacin de Proyectos Objetivos 1. Permitir al alumno tomar decisiones sobre como invertir mejor los fondos disponibles, fundamentadas en el anlisis de los factores tanto econmicos como no econmicos que determinen la viabilidad de un emprendimiento.
528

4.75.4.2 Marketing de Servicios (30 horas) [Nivel Bloom 3] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Introduccin Importancia del marketing en las empresas de servicios El Proceso estratgico. El Plan de Marketing Marketing estratgico y marketing operativo Segmentacin, targeting y posicionamiento de servicios en mercados competitivos 7. Ciclo de vida del producto 8. Aspectos a considerar en la fijacin de precios en servicios 9. El rol de la publicidad, las ventas y otras formas de comunicacin 10. El comportamiento del consumidor en servicios 11. Fundamentos de marketing de servicios 12. Creacin del modelo de servicio 13. Gestin de la calidad de servicio Objetivos 1. Brindar las herramientas al alumno para que pueda identificar, analizar y aprovechar las oportunidades de marketing que generan valor en un emprendimiento. 2. Lograr que el alumno conozca, entienda e identifique criterios, habilidades, mtodos y procedimientos que permitan una adecuada formulacin de estrategias de marketing en sectores y medios especficos como lo es una empresa de base tecnolgica. 4.75.4.3 Negociaciones (10 horas) [Nivel Bloom 4] Referencias Bibliogrficas: [,] Tpicos 1. 2. 3. 4. 5. 6. Introduccin. Qu es una negociacin? Teora de las necesidades de la negociacin La proceso de la negociacin Estilos de negociacin Teora de juegos El mtodo Harvard de negociacin

Objetivos 1. Conocer los puntos clave en el proceso de negociacin 2. Establecer una metodologa de negociacin eficaz 3. Desarrollar destrezas y habilidades que permitan llevar a cabo una negociacin exitosa 5. Equivalencias con otros planes curriculares

529

A continuacin se pueden observar las equivalencias de la presente malla con la malla curricular anterior. Para ver mayores detalles de la malla propuesta observar la seccin

Subsecciones

5.1 Equivalencia ordenada por la malla 2006 5.2 Equivalencia ordenada por la malla 2010

5.1 Equivalencia ordenada por la malla 2006 Primer Semestre Plan 2006 Curso lgebra y Geometra Introduccin a la Programacin Plan 2010 Cr Cdigo Curso 5 4 CB101 lgebra y Geometra a Sem Cr 1er la 1er 5 4

CS101F Introduccin Programacin FG103 Introduccin Universitaria CS105 a

Introduccin Universitaria

la

Vida 3

la

Vida 1er

Estructuras Discretas I Metodologa del Estudio Comunicacin Segundo Semestre Plan 2006 Curso Anlisis Matemtico I

4 3 3

Estructuras Discretas I

1er 1er 1er

4 3 3

FG102 Metodologa del Estudio FG101 Comunicacin

Plan 2010 Cr Cdigo Curso 5 CB102 Anlisis Matemtico I Sem Cr 2do 5

530

Estructuras Discretas II Introduccin a la Filosofa

4 3

CS106 FG104

Estructuras Discretas II Introduccin a la Filosofa

2do 4 2do 3

Introduccin a la Programacin 5 Orientada a Objetos

CS101O Introduccin a la 2do 5 Programacin Orientada a Objetos CS100 Introduccin a la Ciencia 2do 3 de la Computacin Apreciacin de la Msica Teatro Matrimonio y Familia 2do 2 2do 2 2do 2

Introduccin a la Ciencia de la 3 Computacin Apreciacin de la Msica Teatro 2 2

FG105 FG106 FG112

Tercer Semestre Plan 2006 Curso Estructuras Discretas III Objetos y Abstraccin de Datos Plan 2010 Cr Cdigo Curso 3 4 CS107 lgebra Abstracta Sem 3er Cr 3 4

CS102O Objetos y Abstraccin de 3er Datos CS130 CB103 CB111 FG107 Introduccin a Internet Anlisis Matemtico II Fsica Computacional Fundamentos Antropolgicos Ciencia Oratoria y 3er 3er 5to 3er de la

Introduccin a Internet Anlisis Matemtico II Fsica I

3 5 3

3 5 4 2

Fundamentos Antropolgicos de 2 la Ciencia de la Computacin

Oratoria y Expresin Personal

FG203

Expresin 3er

531

Personal Apreciacin Literaria Artes Plsticas Liderazgo y Desempeo Cuarto Semestre Plan 2006 Curso Anlisis Matemtico III Teora de la Computacin Estadstica y Probabilidades Plan 2010 Cr Cdigo Curso 5 4 4 CB201 Anlisis Matemtico III Sem Cr 4to 4to y 4to 5 4 4 2 2 2 FG202 FG201 FG350 Apreciacin Literaria Artes Plsticas Liderazgo y Desempeo 3er 3er 2 2

10mo 2

CS211T Teora de la Computacin CB203 Estadstica Probabilidades

Algoritmos Datos Fsica II

Estructuras

de 4

CS103O Algoritmos y Estructuras 4to de Datos

Quinto Semestre Plan 2006 Curso Anlisis y Diseo de Algoritmos Plan 2010 Cr Cdigo Curso 4 CS210T Anlisis y Algoritmos Diseo Sem Cr de 5to 4

Ingeniera de Software I Arquitectura de Computadores

4 3

CS290T Ingeniera de Software I CS220T Arquitectura Computadores

5to de 3er

4 3

532

Bases de Datos I Anlisis Numrico Historia de la Cultura

4 4 3

CS270T Bases de Datos I CB306 FG205 FG206 FG209 Anlisis Numrico Historia de la Cultura Sociologa Psicologa

4to 5to

5 3

8vo 3 5to 5to 2 2

Sexto Semestre Plan 2006 Curso Ingeniera de Software II Estructuras de Datos Avanzadas Plan 2010 Cr Cdigo Curso 4 4 CS390 CS315 Ingeniera de Software II Estructuras Avanzadas de Sem Cr 6to 4 4

Datos 6to

Lenguajes de Programacin Bases de Datos II Lgica Computacional Sistemas Operativos Sptimo Semestre Plan 2006 Curso Calidad de Software Computacin Grfica

3 4 3 4

CS343

Lenguajes de Programacin 7mo 4 5to 6to 6to 3 4 4

CS271T Bases de Datos II CS260 Lgica Computacional

CS225T Sistemas Operativos

Plan 2010 Cr Cdigo 3 4 CS391 CS255 Curso Calidad de Software Computacin Grfica Sem Cr 8vo 3 8vo 4

533

Matemtica computacin Proyecto I

aplicada

la 4

CB307

Matemtica aplicada a la 6to computacin Proyecto I Computacin Biolgica

CS401 CB309

7mo 2 Molecular 9no 4

Computacin Molecular Biolgica 2

Interaccin Humano Computador 3

CS250W Interaccin Computador FG204 CS336 Teologa I Seguridad Computacin

Humano 7mo 3

Formacin Cristiana

6to

en 7mo 3

CS314 Octavo Semestre Plan 2006 Curso Tpicos en Software Ingeniera

Algoritmos Paralelos

7mo 4

Plan 2010 Cr Cdigo Curso de 3 Sem Cr

Inteligencia Artificial Compiladores Proyecto II

4 4 3

CS261T Inteligencia Artificial CS240S Compiladores CS402 ET101 Proyecto II

7mo 4 8vo 4 8vo 3

Formacin de Empresas de Base 3 Tecnolgica I Doctrina Social de la Iglesia 3

Formacin de Empresas de 9no 3 Base Tecnolgica I Enseanza Social de la 9no 3 Iglesia

FG301

534

Aspectos sociales y profesionales 2 de la computacin

CS280T Aspectos sociales profesionales de computacin

y 8vo 2 la

Tpicos en Computacin 3 Molecular Biolgica Noveno Semestre Plan 2006 Curso Plan 2010 Cr Cdigo CS360 Curso Computacin Bioinspirada Sem 9no Cr 4

Tpicos en Inteligencia Artificial I 3

Computacin Centrada en Redes

CS230W Computacin en Redes CS370

Centrada 8vo

Tpicos en Bases de Datos

Tpicos en Bases de 9no Datos Proyecto de Tesis 9no

Proyecto de Tesis

CS403 ET102

Formacin de Empresas de Base 2 Tecnolgica II Tpicos en Computacin Grfica I 4

Formacin de Empresas 10mo 3 de Base Tecnolgica II Tpicos en Computacin 9no Grfica 4

CS355

Computacin Evolutiva Mtodos Formales tica General Dcimo Semestre Plan 2006

4 4 3 CS393 FG210 Mtodos Formales tica 9no 5to 4 2

Plan 2010

535

Curso

Cr Cdigo CS367

Curso Robtica

Sem

Cr

Tpicos en Inteligencia Artificial II 4 Computacin Centrada en Redes Seminario de Tesis 4 3

10mo 4

CS404

Seminario de Tesis

10mo 3

Formacin de Empresas de Base 2 Tecnolgica III Tpicos en Computacin Grfica 4 II Visin Cristiana tiempo tica Profesional Historia de Tecnologa la Ciencia de nuestro 3 CS356 Programacin de Video 10mo 4 Juegos 7mo 2

FG204A

Teologa II

2 y 2

FG211 FG221

tica Profesional

10mo 2 2

Historia de la Ciencia y 9no Tecnologa

Anlisis de la Realidad Peruana

FG220

Anlisis de la Realidad 10mo 2 Peruana Cloud Computing 10mo 3 de 10mo 3

CS331

CS232W Programacin Dispositivos Mviles

5.2 Equivalencia ordenada por la malla 2010 Primer Semestre Plan 2010 Cdigo Curso Plan 2006 Cr Curso Cr

536

CS101F Introduccin a la Programacin CS105 CB101 Estructuras Discretas I lgebra y Geometra a la

4 4 5

Introduccin a la Programacin Estructuras Discretas I lgebra y Geometra Introduccin Universitaria a la

4 4 5

FG103 Introduccin Universitaria

Vida 3

Vida 3

FG102 Metodologa del Estudio FG101 Comunicacin Segundo Semestre Plan 2010 Cdigo Curso CS106 Estructuras Discretas II

3 3

Metodologa del Estudio Comunicacin

3 3

Plan 2006 Cr Curso 4 Estructuras Discretas II Cr 4

CS101O Introduccin a la Programacin 5 Orientada a Objetos CS100 Introduccin a la Ciencia de la 3 Computacin Anlisis Matemtico I Apreciacin de la Msica Teatro Introduccin a la Filosofa Matrimonio y Familia 5 2 2 3 2

Introduccin a la Programacin 5 Orientada a Objetos Introduccin a la Ciencia de la 3 Computacin Anlisis Matemtico I Apreciacin de la Msica Teatro Introduccin a la Filosofa 5 2 2 3

CB102 FG105 FG106 FG104 FG112

Tercer Semestre

537

Plan 2010 Cdigo Curso CS107 lgebra Abstracta

Plan 2006 Cr Curso 3 3 3 4 5 2 2 2 Estructuras Discretas III Arquitectura de Computadores Introduccin a Internet Objetos y Abstraccin de Datos Anlisis Matemtico II Oratoria y Expresin Personal Apreciacin Literaria Artes Plsticas Cr 3 3 3 4 5 2 2 2

CS220T Arquitectura de Computadores CS130 Introduccin a Internet

CS102O Objetos y Abstraccin de Datos CB103 FG203 FG202 FG201 FG107 Anlisis Matemtico II Oratoria y Expresin Personal Apreciacin Literaria Artes Plsticas

Fundamentos Antropolgicos de 2 la Ciencia

Fundamentos Antropolgicos de 2 la Ciencia de la Computacin

Cuarto Semestre Plan 2010 Cdigo Curso CS211T Teora de la Computacin CS270T Bases de Datos I CS103O Algoritmos Datos CB201 CB203 y Estructuras Plan 2006 Cr Curso 4 5 de 4 Teora de la Computacin Bases de Datos I Algoritmos Datos y Estructuras Cr 4 4 de 4

Anlisis Matemtico III Estadstica y Probabilidades

5 4

Anlisis Matemtico III Estadstica y Probabilidades

5 4

538

Fsica II Quinto Semestre Plan 2010 Cdigo Curso CS210T Anlisis y Diseo de Algoritmos CS290T Ingeniera de Software I CS271T Bases de Datos II CB111 CB306 FG206 FG210 FG209 Fsica Computacional Anlisis Numrico Sociologa tica Psicologa Plan 2006 Cr Curso 4 4 3 4 3 2 2 2 tica General 3 Cr

Anlisis y Diseo de Algoritmos 4 Ingeniera de Software I Bases de Datos II Fsica I Anlisis Numrico 4 4 3 4

Sexto Semestre Plan 2010 Cdigo Curso CS225T Sistemas Operativos CS260 CS390 CS315 CB307 Lgica Computacional Ingeniera de Software II Estructuras de Datos Avanzadas Matemtica aplicada a Plan 2006 Cr Curso 4 4 4 4 la 4 Sistemas Operativos Lgica Computacional Ingeniera de Software II Estructuras de Datos Avanzadas Matemtica aplicada a Cr 4 3 4 4 la 4
539

computacin FG204 Teologa I 2

computacin Formacin Cristiana 3

Sptimo Semestre Plan 2010 Cdigo Curso Plan 2006 Cr Curso Interaccin Computador Proyecto I Inteligencia Artificial Cr Humano 3

CS250W Interaccin Humano Computador 3

CS401 CS261T CS336 CS314 CS343

Proyecto I Inteligencia Artificial Seguridad en Computacin Algoritmos Paralelos Lenguajes de Programacin

2 4 3 4 4 2

3 4

Lenguajes de Programacin Visin Cristiana tiempo de

FG204A Teologa II

nuestro 3

Octavo Semestre Plan 2010 Cdigo CS402 CS391 Curso Proyecto II Calidad de Software Plan 2006 Cr Curso 3 3 3 4 Proyecto II Calidad de Software Cr 3 3

CS230W Computacin Centrada en Redes CS255 Computacin Grfica

Computacin Centrada en Redes 3 Computacin Grfica 4

540

CS280T

Aspectos sociales y profesionales 2 de la computacin Compiladores Historia de la Cultura 4 3

Aspectos sociales y 2 profesionales de la computacin Compiladores Historia de la Cultura Tpicos en Software Ingeniera 4 3 de 3

CS240S FG205

Tpicos en Computacin 3 Molecular Biolgica Noveno Semestre Plan 2010 Cdigo Curso CS403 Proyecto de Tesis CS355 Tpicos en Computacin Grfica CS393 Mtodos Formales CS370 Tpicos en Bases de Datos CS361 Tpicos en Inteligencia Artificial CS360 Computacin Bioinspirada Plan 2006 Cr Curso 3 4 4 3 4 4 Tpicos en Inteligencia Artificial I 3 Proyecto de Tesis Cr 3

Tpicos en Computacin Grfica I 4 Mtodos Formales Tpicos en Bases de Datos 4 4

CB309 Computacin Molecular Biolgica 4 FG301 Enseanza Social de la Iglesia FG221 Historia de Tecnologa la Ciencia 3 y 2

Computacin Molecular Biolgica 2 Doctrina Social de la Iglesia 3 2

Historia de la Ciencia y Tecnologa

ET101 Formacin de Empresas de Base 3

Formacin de Empresas de Base 3

541

Tecnolgica I

Tecnolgica I Computacin Evolutiva 4

Dcimo Semestre Plan 2010 Cdigo CS356 Curso Programacin de Video Juegos Plan 2006 Cr Curso 4 Cr

Tpicos en Computacin Grfica 4 II Seminario de Tesis 3

CS404 CS331 CS367

Seminario de Tesis Cloud Computing Robtica

3 3 4

Tpicos en Inteligencia Artificial 4 II

CS232W Programacin Mviles FG350 FG211 FG220 ET102

de

Dispositivos 3

Liderazgo y Desempeo tica Profesional Anlisis de la Realidad Peruana

2 2 2

Liderazgo y Desempeo tica Profesional Anlisis de la Realidad Peruana

2 2 2

Formacin de Empresas de Base 3 Tecnolgica II

Formacin de Empresas de Base 2 Tecnolgica II Computacin Centrada en Redes 4 Formacin de Empresas de Base 2 Tecnolgica III

542

6. Laboratorios

Subsecciones

CS101F. Introduccin a la Programacin (Obligatorio) 1er Sem, Lab: 2 hr(s) CS106. Estructuras Discretas II (Obligatorio) 2do Sem, Lab: 2 hr(s) CS101O. Introduccin a la Programacin Orientada a Objetos (Obligatorio) 2do Sem, Lab: 4 hr(s) CS107. lgebra Abstracta (Obligatorio) 3er Sem, Lab: 2 hr(s) CS220T. Arquitectura de Computadores (Obligatorio) 3er Sem, Lab: 2 hr(s) CS130. Introduccin a Internet (Obligatorio) 3er Sem, Lab: 2 hr(s) CS102O. Objetos y Abstraccin de Datos (Obligatorio) 3er Sem, Lab: 2 hr(s) CS211T. Teora de la Computacin (Obligatorio) 4to Sem, Lab: 2 hr(s) CS270T. Bases de Datos I (Obligatorio) 4to Sem, Lab: 4 hr(s) CS103O. Algoritmos y Estructuras de Datos (Obligatorio) 4to Sem, Lab: 2 hr(s) CB203. Estadstica y Probabilidades (Obligatorio) 4to Sem, Lab: 2 hr(s) CS210T. Anlisis y Diseo de Algoritmos (Obligatorio) 5to Sem, Lab: 2 hr(s) CS290T. Ingeniera de Software I (Obligatorio) 5to Sem, Lab: 2 hr(s) CS271T. Bases de Datos II (Obligatorio) 5to Sem, Lab: 2 hr(s) CB111. Fsica Computacional (Obligatorio) 5to Sem, Lab: 2 hr(s) CB306. Anlisis Numrico (Obligatorio) 5to Sem, Lab: 2 hr(s) CS225T. Sistemas Operativos (Obligatorio) 6to Sem, Lab: 2 hr(s) CS260. Lgica Computacional (Obligatorio) 6to Sem, Lab: 2 hr(s) CS390. Ingeniera de Software II (Obligatorio) 6to Sem, Lab: 2 hr(s) CS315. Estructuras de Datos Avanzadas (Obligatorio) 6to Sem, Lab: 2 hr(s) CB307. Matemtica aplicada a la computacin (Obligatorio) 6to Sem, Lab: 2 hr(s) CS250W. Interaccin Humano Computador (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS261T. Inteligencia Artificial (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS336. Seguridad en Computacin (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS314. Algoritmos Paralelos (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS343. Lenguajes de Programacin (Obligatorio) 7mo Sem, Lab: 2 hr(s) CS230W. Computacin Centrada en Redes (Obligatorio) 8vo Sem, Lab: 2 hr(s) CS255. Computacin Grfica (Obligatorio) 8vo Sem, Lab: 2 hr(s) CS240S. Compiladores (Obligatorio) 8vo Sem, Lab: 2 hr(s) CS355. Tpicos en Computacin Grfica (Electivo) 9no Sem, Lab: 2 hr(s) CS393. Mtodos Formales (Electivo) 9no Sem, Lab: 2 hr(s) CS370. Tpicos en Bases de Datos (Obligatorio) 9no Sem, Lab: 2 hr(s) CS361. Tpicos en Inteligencia Artificial (Electivo) 9no Sem, Lab: 2 hr(s) CS360. Computacin Bioinspirada (Electivo) 9no Sem, Lab: 2 hr(s) CB309. Computacin Molecular Biolgica (Electivo) 9no Sem, Lab: 2 hr(s) CS356. Programacin de Video Juegos (Electivo) 10mo Sem, Lab: 2 hr(s)
543

CS331. Cloud Computing (Obligatorio) 10mo Sem, Lab: 2 hr(s) CS367. Robtica (Electivo) 10mo Sem, Lab: 4 hr(s) CS232W. Programacin de Dispositivos Mviles (Obligatorio) 10mo Sem, Lab: 2 hr(s)

CS101F. Introduccin a la Programacin (Obligatorio) 1er Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS106. Estructuras Discretas II (Obligatorio) 2do Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS101O. Introduccin a la Programacin Orientada a Objetos (Obligatorio) 2do Sem, Lab: 4 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS107. lgebra Abstracta (Obligatorio) 3er Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS220T. Arquitectura de Computadores (Obligatorio) 3er Sem, Lab: 2 hr(s)

544

Laboratorio Redes: 26 PCs: Procesador: AMD Athlon X2 - 2.00 Ghz, Memoria: 2 GB RAM DDR2, Disco Duro: 160 Gb, Mainboard: MSI Socket AM2+ (cuenta con slot PCIExpress), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux Red Hat/Mandrake/Windows Software: Emuladores 8088 CS130. Introduccin a Internet (Obligatorio) 3er Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS102O. Objetos y Abstraccin de Datos (Obligatorio) 3er Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS211T. Teora de la Computacin (Obligatorio) 4to Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS270T. Bases de Datos I (Obligatorio) 4to Sem, Lab: 4 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK
545

CS103O. Algoritmos y Estructuras de Datos (Obligatorio) 4to Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CB203. Estadstica y Probabilidades (Obligatorio) 4to Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS210T. Anlisis y Diseo de Algoritmos (Obligatorio) 5to Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS290T. Ingeniera de Software I (Obligatorio) 5to Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS271T. Bases de Datos II (Obligatorio) 5to Sem, Lab: 2 hr(s)

546

Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CB111. Fsica Computacional (Obligatorio) 5to Sem, Lab: 2 hr(s) Laboratorio Fsica: Mesas de trabajo para esttica y dinmica, trpodes, alambiques, reactivos varios, pndulos CB306. Anlisis Numrico (Obligatorio) 5to Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS225T. Sistemas Operativos (Obligatorio) 6to Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS260. Lgica Computacional (Obligatorio) 6to Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS390. Ingeniera de Software II (Obligatorio) 6to Sem, Lab: 2 hr(s)

547

Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS315. Estructuras de Datos Avanzadas (Obligatorio) 6to Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CB307. Matemtica aplicada a la computacin (Obligatorio) 6to Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS250W. Interaccin Humano Computador (Obligatorio) 7mo Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS261T. Inteligencia Artificial (Obligatorio) 7mo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows
548

Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS336. Seguridad en Computacin (Obligatorio) 7mo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS314. Algoritmos Paralelos (Obligatorio) 7mo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS343. Lenguajes de Programacin (Obligatorio) 7mo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS230W. Computacin Centrada en Redes (Obligatorio) 8vo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17"
549

Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS255. Computacin Grfica (Obligatorio) 8vo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS240S. Compiladores (Obligatorio) 8vo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS355. Tpicos en Computacin Grfica (Electivo) 9no Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS393. Mtodos Formales (Electivo) 9no Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor
550

LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS370. Tpicos en Bases de Datos (Obligatorio) 9no Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS361. Tpicos en Inteligencia Artificial (Electivo) 9no Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS360. Computacin Bioinspirada (Electivo) 9no Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CB309. Computacin Molecular Biolgica (Electivo) 9no Sem, Lab: 2 hr(s) Laboratorio Bsico: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2N-VM-HDMI
551

NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: Haskell, DrScheme, Java, C++, Prolog, C#, Lex, Yacc CS356. Programacin de Video Juegos (Electivo) 10mo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS331. Cloud Computing (Obligatorio) 10mo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS367. Robtica (Electivo) 10mo Sem, Lab: 4 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK CS232W. Programacin de Dispositivos Mviles (Obligatorio) 10mo Sem, Lab: 2 hr(s) Laboratorio Avanzado: 30 PCs: Procesador: AMD Phenom X3 - 8650 - 2.30 Ghz, Memoria: 3 GB RAM DDR2, Disco Duro: 320 Gb, Mainboard: ASUS Socket AM2+ M2NVM-HDMI NVIDIA GeForce 7050PV (cuenta con slot PCI-Express), Lector DVD, Monitor
552

LCD 17" Sistemas Operativos: Linux/Windows Lenguajes de Programacin: C++, Perl, Python Software: Rational Rose con WAE, J2EE, Mathlab, Emuladores 8088, DB2, MONO, Plataforma .NET, LEDA, VTK Bibliografa A., 1995 A., La Editorial Aguilar. A., 2008a A., E. (2008a). Desarrollo y Cultura en Amrica Latina: principales lneas de reflexin en la actualidad. UCSP. A., 2008b A., E. (2008b). Desarrollo y Cultura en Amrica Latina: principales lneas de reflexin en la actualidad. UCSP. A., 2009 A., Aproximacin UCSP. Agrawal et al., 2009 Agrawal, R., Ailamaki, A., Bernstein, P. A., Brewer, E. A., Carey, M. J., Chaudhuri, S., Doan, A., Florescu, D., Franklin, M. J., Garcia-Molina, H., Gehrke, J., Gruenwald, L., Haas, L. M., Halevy, A. Y., Hellerstein, J. M., Ioannidis, Y. E., Korth, H. F., Kossmann, D., Madden, S., Magoulas, R., Ooi, B. C., O'Reilly, T., Ramakrishnan, R., Sarawagi, S., Stonebraker, M., Szalay, A. S., and Weikum, G. (2009). The Claremont report on database research. Communication of ACM, 52(6):56-65. Aho, 1990 E. sistema (2009). Peruano. B. Republica (1995). Embrujada.

al

Poltico

553

Aho, Compiladores Addison Wesley. Aho et al., 2008

A. Principios, tcnicas y

(1990). herramientas.

Aho, A., Lam, M., Sethi, Compiladores. Principios, Addison Wesley, ISBN:10-970-26-1133-4. A.Lemone, 1996 A.Lemone, Fundamentos CECSA-Mexico. Alonso and Finn, 1995 Alonso, M. and Fsica. Addison Wesley Iberoamericana. Altamirano, 2008 Altamirano, El arte Editorial San Marcos, Lima Per. Ambriola, 2001 Ambriola, Software Springer. Aopland, 1999 Aopland, Como escuchar Fondo de cultura econmica. Apostol, 1997 Apostol, Calculus, Editorial Revert, 2rd edition.

R., and tcnicas

Ullman, y 2nd

J. D. (2008). herramientas. edition.

K. de

(1996). Compiladores.

Finn,

E.

(1995).

Y. de la

(2008). oratoria.

V. Process

(2001). Technology.

A. la

(1999). msica.

T. M.

(1997). volume 1.

554

Appel, 2002 Appel, A. W. Modern compiler implementation Cambridge University Press, 2.a edicin edition. Apstol, 1973 Apstol, Calculus, Editorial Revert. Armbrust et al., 2009 Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R. H., Konwinski, A., Lee, G., Patterson, D. A., Rabkin, A., Stoica, I., and Zaharia, M. (2009). Above the clouds: A berkeley view of cloud computing. Technical Report UCB/EECS-2009-28, EECS Department, University of California, Berkeley. Baecker et al., 2000 Baecker, R., Buxton, W., and Grudin, J. (2000). Readings in Human-Computer Interaction: Toward the Year 2000. The Morgan Kaufmann Series in Interactive Technologies. Morgan Kaufmann, 2nd edition edition. Baldi and Brunak, 2001 Baldi, P. Bioinformatics: The MIT Press. Bartle, 1976 Bartle, The Elements Wiley; 2 edition. Bartle and Sherbert, 1999 Bartle, Introduction Wiley. Basadre, 1981 R. G. and to Sherbert, Real D. R. (1999). Analysis. R. G. of (1976). Analysis. and the Brunak, machine S. learning (2001). approach. T. M. (1973). volume II. (2002). Java.

in

Real

555

Basadre, Per, Studium. Lima. Belaunde, 1965 Belaunde, Peruanidad. Studium. pp. 14-27.

J. Problema y

(1981). Posibilidad.

V. A.

(1965). Lima.

Bernstein and Newcomer, 1997 Bernstein, P. A. and Principles of Transaction Morgan Kaufmann. Biblia, 1975 Biblia Sagrada Editorial Descle de Brower Bilbao Espaa. Bilbao et al., 2006 Bilbao, G., Fuertes, J., and Guibert, J. M. (2006). tica actual y profesional, Lecturas de convivencias global en el siglo XXI. Ed. Thomson. Blum, 1992 Blum, B. I. Software Engineering: A Oxford University Press US, 7th edition. Borneianu, 2008 Borneianu, R. H. L. J. P. C. C. (2008). A Survey of Computational Physics: Introductory Computational Science. Princeton University Press. 978-0691131375. Briz et al., 2008 Briz, A., Albelda, M., Fernndez, J. M., Hidalgo, A., Pinilla, R., and Pons, S. (2008). (1992). View. (1975). Biblia. Newcomer, Processing, E. First (1997). Edition.

Holistic

556

Saber Editorial Aguilar, Mxico. Brookshear, 2005 Brookshear, Computer Science Addison-Wesley, 8 edition. Brookshear, 2012 Brookshear, Computer Science: Addison-Wesley, ISBN 10: 0-13-256903-5. Brusilovsky et al., 1998 Brusilovsky, Adaptive Springer. Bryant, 2007 P., Kobsa, A., Hypertext and and Vassileva, J. Hypermedia, First J. G. An 11th J. G. an

hablar.

(2005). Overview.

(2012). Overview. edition.

(1998). Edition.

Bryant, R. E. (2007). Data-intensive supercomputing: The case for disc. Technical report, Carnegie Mellon University, School of Computer Science. Burleson, 2004 Burleson, Physical CRC Press. D. K. Design (2004). Oracle.

Database

Using

Carroll and Daughtrey, 2007 Carroll, S. and Daughtrey, T. (2007). Fundamental Concepts for the Software Quality Engineering Volume 2. American Society for Quality Press, 2nd edition. Celko, 2005 Celko, Joe Elsevier. J. Celko's SQL Programming (2005). Style.

Centro de Investigacin y Desarrollo - PUCP, 2004


557

Centro de Investigacin y Desarrollo Plan de Negocio en Tecnologas de Informacin Pontificia Universidad Catlica del Per. Chrissis et al., 2007

PUCP (2004). y Comunicacin.

Chrissis, M. B., Konrad, M., and Shrum, S. (2007). CMMI Guidelines for Process Integration and Product Improvement. Addison-Wesley, 2nd edition. Comisin Redactora del Catecismo, 1993 Comisin Redactora del Catecismo de la Conferencia Episcopal de Colombia. Concilio Vaticano II, Concilio Constitucin Gaudium et spes. Congreso de la Republica del Per, 1996 Congreso de Decreto Legislativo El Peruano. Conradi, 2000 Conradi, Software Springer. Constantine, Constantine, Technical report. Constantine and Lockwood, Constantine, Technical report. Contreras, 2002 Contreras, Centralismo IEP. C. en su perspectiva (2002). histrica. L. and Lockwood, L. L. R. Process (2000). Technology. la Republica N823. Ley de del Per la Propiedad (1996). Industrial. Vaticano II. Catecismo Iglesia (1993). Catlica.

558

Cormen et al., 2001 Cormen, T. H., Leiserson, C. E., Rivest, R. L., and Stein, C. (2001). Introduction to Algorithms, Second Edition. MIT Press. Date, 2005 Date, C. (2005). Data Mining: Practical Machine Learning Tools and Techniques, Second Edition. Elsevier. De Castro, 2006 De Castro, L. (2006). Fundamentals of natural computing: basic concepts, algorithms, and applications. CRC Press. de la Puente Candamo, 1970 de la Puente Candamo, Notas Sobre la Causa de 13-18, 27-28, 39-42, 53-56. de la Republica del Peru, 1997 de la Republica del Ley N26887. Ley El Peruano. Dean and Ghemawat, 2008 Dean, J. and Mapreduce: simplified data Commun. ACM, 51(1):107-113. Del Busto Duthurburu, 1993 Del Busto Duthurburu, El mestizaje Universidad de Piura. Dietrich, 2001 J. A. en el (1993). Per. Ghemawat, processing S. large (2008). clusters. Peru, General C. de (1997). Sociedades. J. A. Independencia (1970). del Per.

la

on

559

Dietrich, Understanding Prentice Hall. Dorigo and Sttzle, 2004 Dorigo, Ant the MIT Press. Ediciones, 2005a

Relational

S. W. Database Query

Languages,

First

(2001). Edition.

M.

and colony

Sttzle,

T.

(2004). optimization.

Ediciones, D., editor Financial Times Mastering Information Management. Ediciones, 2005b Ediciones, D., Revista Datamation MC Ediciones. Ediciones, 2005c Ediciones, D., Understanding the Digital Economy. Elmasri and Navathe, 2004 Elmasri, R. Fundamentals of Addison Wesley. et al, 2006 and Database Navathe, Systems, S. B. Fourth editor editor

(2005a).

(2005b).

(2005c).

(2004). Edition.

et al, A. H. (2006). tica actual y profesional,Lecturas de convivencias global en el siglo XXI. Ed. Thomson. Farrell-Vinay, 2008 Farrell-Vinay, P. Manage Software Auerbach Publications, Taylor & Francis Group. Ferre, 1997 Ferre, Investigacin Gestion 2000. J. de Mercados (1997). Estratgica. (2008). Testing.

560

Foley and van Dam, 1990 Foley, J. Computer Addison-Wesley. Foley and Pastore, 2002 Foley, J. P. and Pastore, tica en Pontificio Consejo para las Comunicaciones Sociales. Franklin, 1999 Franklin, P. Breve Historia Contempornea Fondo de Cultura Econmica.Mxico. Goldberg, 1989 Goldberg, D. (1989). Genetic Algorithms in Search, Optimization and Machine Learning. Addison Wesley. Gould, 2006 Gould, H. (2006). An Introduction to Computer Simulation Methods: Applications to Physical Systems. Addison Wesley, 3rd edition edition. 978-0805377583. Graham et al., 1994 Graham, R. L., Knuth, D. E., Concrete Addison Wesley Iberoamericana. Greenlaw and Hepp, 1998 Greenlaw, R. and Hepp, E. (1998). In-line/On-line: Fundamentals of the Internet and World Wide Web. McGraw-Hill Companies. Guardini, 1992 and Patashnik, O. (1994). Mathematics. (1999). Per. P. (2002). Internet. and Graphics: van Dam, Principles A. and (1990). Practice.

del

561

Guardini, La Aceptacin de Lumen, Buenos Aires. Guerequeta and Vallecillo, 1998

R. Mismo,

Las

Edades

de

(1992). la Vida.

Guerequeta, R. and Vallecillo, Anlisis Servicio de Publicaciones de la Universidad de Mlaga. Haecker, 1947 Haecker, Qu Guadarrama. Han and Kamber, 2001 Han, J. and Data Mining: Morgan Kaufmann Publishers. Harrington, 2002 Harrington, Relational Database Morgan Kaufmann. Haykin, 1999 Haykin, Neural networks: Prentice Hall. Hearn and Baker, 1994 Hearn, Computer Prentice Hall. Hesselbein, 1999 Hesselbein, F. Leading Beyond Jossey Bass The Drucker Foundation. D. and Graphics Baker, S. A Comprehensive J. L. Clearly Kamber, Concepts T. es el

A.

(1998). Numrico.

(1947). Hombre?

M. and

(2001). Techniques.

Design

Explained,

Second

(2002). Edition.

(1999). Foundation.

M. P. in

(1994). C.

the

(1999). Walls. Publishers.

562

Hey et al., 2009 Hey, T., Tansley, S., and Tolle, The Fourth Paradigm: Data-Intensive Microsoft Research, Redmond, Washington. Hirsh and Smale, 1974 Hirsh, M. W. Differential Equatons, Academia Press. Hugh D. Young, 2007 Hugh D. Young, Roger University Physics Addison Wesley. Humphrey, 1995 Humphrey, A Discipline Addison-Wesley, 1st edition. Humphrey, 1997 Humphrey, Introduction to the Addison-Wesley, 1st edition. Humphrey, 2000 Humphrey, Introduction to the Addison-Wesley, 1st edition. Humphrey, 2001 Humphrey, Winning with Software: Addison-Wesley, 1st edition. Humphrey, 2005 Humphrey, PSP: A Self-Improvement Addison-Wesley, 1st edition. W. S. Process (2005). Engineers. W. S. An (2001). Summary. W. S. Team (2000). Process. W. S. Personal (1997). Process. W. S. for Software (1995). Engineering. A. Freedman, L. F. with Modern (2007). Physics. and Dynamical Smale, Systems, S. Linear (1974). lgebra. K., editors (2009). Scientific Discovery.

and

Software

Software

Executive

for

Software

563

Humphrey, 2006a Humphrey, TSP: Coaching Addison-Wesley, 1st edition. Humphrey, 2006b Humphrey, TSP: Leading Addison-Wesley, 1st edition. Hrlimann, 1984 Hrlimann, Encicopedia Ediciones Grijalbo. IEEE, 2010 IEEE (2010). IEEE Code of Ethics. IEEE. http://www.ieee.org/membership_services/membership/ethics_code.html. Inc., Inc., Technical report. Inmon, 2004 Inmon, Building Willey. Isabel, Isabel, Sintesis de Monte Avila. Johnsonbaugh, 1999 Johnsonbaugh, Matemticas Pearson. R. (1999). Discretas. A. Latina. W. H. Warehouse, (2004). Edition. A. H. F. de la (1984). Msica. W. S. a Development (2006b). Team. W. S. Development (2006a). Teams.

the

Data

3rd

la

etnomusica

en

America

564

Jr, 2000 Jr, Sistemas de Prentice Hall, 6ta edition. Juan, 1984 Juan, Arequipa, Editorial Carig. Kennedy et al., 2001 Kennedy, J., Eberhart, Swarm Morgan Kaufmann Publishers. Keyes, 2004 Keyes, Software CRC Press. Khan et al., 2006 Khan, R., Mustafa, Software Quality: Alpha Science Intl Ltd. Kimball et al., 2005 Kimball, R., Reeves, L., Ross, M., and Thornthwaite, W. (2005). The Data Warehouse Lifecycle Toolkit : Expert Methods for Designing, Developing, and Deploying Data Warehouses. Willey. Kimball and Ross, 2004 Kimball, R. and Ross, M. (2004). The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling, Second Edition. Willey. Kulpa and Johnson, 2008 K., and Concepts Ahson, and S. (2006). Practice. J. Configuration (2004). Management. R., and Yuhui, S. (2001). intelligence. C. M. Msica y (1984). pueblo. R. M. Informacin (2000). Gerencial.

565

Kulpa, M. K. and Johnson, K. A. Interpreting the CMMMI a Process Improvement CRC Press Taylor & Francis Group, 2nd edition. Landau et al., 2007 Landau, R. H., Pez, Computational Physics: Wiley-VCH, 978-3527406265. Larman, 2008 Larman, Applying Prentice Hall. Laudon and Laudon, 2004 Laudon, K. C. Sistemas de Prentice Hall, 8va edition. Llopis, 2006 Llopis, N. C++ For Game Charles River Media, 2 edition edition. Long, 1991 Long, F. Software Engineering Peter Norton Foundation Series. Springer. Loranger et al., Loranger, H., Technical report. Louden, 2004a Louden, Construccion Thomson. Louden, 2004b K. C. Compiladores Schade, A., and and Laudon, Informacin J. P. C. UML and

(2008). Approach.

M. J., and Bordeianu, C. C. (2007). Problem Solving with Computers. 2nd edition.

(2008). Patterns.

(2004). Gerencial.

(2006). Programmers.

(1991). Environments.

Nielsen,

J.

de

Principios

(2004a). Practica.

566

Louden, Lenguajes Thomson. Ludevid, 1994 Ludevid, Como crear su propia Marcombo Boixareu. Maritegui, 1995 Maritegui, Los Siete Ensayos Biblioteca Amauta. Mei et al., 2008

K. C. de

(2004b). Programacion.

M. empresa:

Factores

Claves

de

(1994). Gestin.

de

J. Interpretacin

de

la

Realidad

(1995). Peruana.

Mei, L., Chan, W., and Tse, T. (2008). A tale of clouds: Paradigm comparisons and some thoughts on research issues. Asia-Pacific Conference on Services Computing. 2006 IEEE, 0:464-469. Mell and Grance, 2009 Mell, P. and The nist definition of cloud computing. Mermin, 2006 Mermin, N. D. (2006). Solving PDEs in C++. SIAM, Society for Industrial and Applied Mathematics, 1 edition edition. 978-0898716016. Messori, 1996 Messori, Leyendas Planeta pp. 22-30. Meyer, 1998 Meyer, Construccin Prentice Hall. B. de Software Orientado a (1998). Objetos. V. Negras S.A., de la (1996). Iglesia. Barcelona. Grance, T. (2009).

567

Mitchell, 1998 Mitchell, An introduction The MIT press. Monroe, 1976 Monroe, La Hispano Europea. Montangero, 1996 Montangero, Software Springer. Morand, Morand, Cultura y Ediciones Encuentro. Nilsson, 2001 Nilsson, Inteligencia McGraw-Hill. Nurmi et al., 2009 Nurmi, D., Wolski, R., Grzegorczyk, C., Obertelli, G., Soman, S., Youseff, L., and Zagorodnov, D. (2009). The eucalyptus open-source cloud-computing system. In Proceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid, CCGRID '09, pages 124-131, Washington, DC, USA. IEEE Computer Society. Oppel, 2004 Oppel, Databases Mc Graw Hill Osborne. Oquendo, 2003 A. (2004). Demystified. N. Artificial: Una nueva (2001). visin. P. Latina. C. Process (1996). Technology. A. y. comunicacin E. D. (1976). oral. M. to genetic (1998). algorithms.

Modernizacin

en

Amrica

568

Oquendo, Software Springer. Ozsu and Valduriez, 1999

F. Process

(2003). Technology.

Ozsu, M. T. and Valduriez, Principles of Distributed Database Systems, Prentice Hall. Palisca, 2006 Palisca, D. Historia de Alianza editorial. Pang, 2006 Pang, An Introduction Cambridge University 978-0521825696. para el Desarrollo UCSP, 2006 para el Desarrollo UCSP, Liderazgo. Universidad Catlica San Pablo. Peach, 2002 Peach, R. W. The ISO QSU Publishing Company, 4th edition. Penton, 2002 Penton, R. Data Structures for Game Muska & Lipman/Premier-Trade, Premier Press Game Development. Polito, 2004 Polito, Como hablar Editorial Edaf SA. Madrid Espaa. R. bien C. L. T. to J. la G. msica

P. Second

(1999). Edition.

C. V.

(2006). occidental.

Computational Press, 2nd

(2006). Physics. edition.

(2006).

9000

(2002). Handbook.

1st

(2002). Programmers. edition.

en

(2004). pblico.

569

Pomeroy-Huff et al., 2005 Pomeroy-Huff, M., Mullaney, J., Cannon, R., and Sebum, M. (2005). The Personal Software Process PSP Body of Knowledge. CMU/SEI-2005-SR-003, 1st edition. Pontificio Consejo Justicia y Paz, 2005 Pontificio Consejo Justicia Compendio de la Doctrina Social de la Iglesia. Porter, 1998 Porter, M. (1998). Ventaja Competitiva Creacin y Sostenimiento de un desempeo superior. Compaia editorial Continental. Pratt and V.Zelkowitz, 1998 Pratt, T. W. and Lenguajes de Programacion Prentice-Hall Hispanoamericana S.A. Pressman, 2007 Pressman, R. Ingeniera del Software: Un McGraw-Hill Interamericana, 6ta. edicin edition. Pressman, 2004 Pressman, Software Engineering: McGraw-Hill, 6th edition. Pressman, 2005 Pressman, Software Engineering: McGraw-Hill, 6th edition. Priest and Sanchez, 2001 Priest, J. W. and Product Development and Marcel Dekker. Ratzinger, 2001
570

Paz

(2005).

V.Zelkowitz, Diseo

M. (1998). Implementacion.

enfoque

(2007). prctico.

R. S. A

Practitioner's

(2004). Approach.

R. S. A

Practitioner's

(2005). Approach.

Sanchez, Design

J. M. for

(2001). Manufacturing.

Ratzinger, Introduccin Sgueme. Raymond A. Serway, 2009 Raymond Physics Brooks Cole. Rieger., 2002 Rieger., Optimization Wiley-VCH, 978-3527403073. Rob and Coronel, 2004 A.

J. al

(2001). Cristianismo.

A. Serway, J. for Scientists

W. J. and

(2009). Engineers.

K. Algorithms 1

H. H. in edition

(2002). Physics. edition.

Rob, P. and Coronel, C. (2004). Database Systems: Design, Implementation and Management, Sixth Edition. Morgan Kaufmann. Rodrguez, Rodrguez, Bases de la Oratoria Moderna. Rosenfeld and Morville, 1998 Rosenfeld, L. and Information Architecture for O'Reilly, 1st ed edition. Russell and Norvig, 2003 Russell, Inteligencia Prentice Hall. Salvat editores, 1989 Salvat Los Salvat. Santa Sede, 1983
571

M. L.

Morville, the World

P. Wide

(1998). Web.

S.

and Artifical:

Norvig, Un enfoque

P.

(2003). moderno.

editores grandes

(1989). compositores.

Santa Sede Carta de los Derechos de la Familia. Schach, 2004 Schach, Object-Oriented McGraw-Hill. Schmidi, 1995 Schmidi, tica y negocios Universidad del Pacfico. Schulmeyer, 2008 Schulmeyer, G. G. Handbook of Software Artech House Inc., 4th edition. Schwarz., 1998 Schwarz., N. Physics for Springer, 978-0387949031. Services, 2010 Services, Amazon http://aws.amazon.com/". Shabana, 2008 Shabana, Computational Cambridge University 978-0521885690. Sharp et al., 2009 Sharp, H., Rogers, Y., and Preece, Interaction Design: Beyond human-computer John Willey & Sons, 2nd. edition edition. J. A. A. Continuum Press, 1 A. W. web G. computer 2nd A. D. S. science E. para Amrica S. R. Classical

(1983).

and

Software

(2004). Engineering.

(1995). Latina.

Quality

(2008). Assurance.

(1998). students. edition.

(2010). services.

edition

(2008). Mechanics. edition.

(2009). interaction.

572

Sherrod, 2007 Sherrod, A. Data Structures and Algorithms Charles River Media, 1 edition edition. Simmons, 1995 Simmons, Calculus With McGraw-Hill, 2rd edition. Simsion and Witt, 2004 Simsion, G. Data Modeling Morgan Kaufmann. Smart et al., 2005 Smart, J., Cross-Platform Prentice Hall. Smith-Atakan, 2006 Smith-Atakan, S. (2006). Human-Computer Interaction. The FastTrack Series. Thomson Learnig and Middlesex University Press, 6ta. edicin edition. Sommerville, 2008 Sommerville, Software Addison ISBN: 0321210263. S.S Juan Pablo II, S.S Juan Pablo Exhortacin Apostlica Post Sinodal Familiaris Consortio. Stonebraker, 1986 II. I. Wesley, 7th (2008). Engineering. edition. Hock, GUI K., and Programming Csomor, with S. (2005). wxWidgets. and Witt, Essentials, G. Third (2004). Edition. G. F. Analytic (1995). Geometry. (2007). Developers.

for

Game

573

Stonebraker, The case Database Engineering, 9:4-9. Stonebraker et al., 2007

M. for shared

(1986). nothing.

Stonebraker, M., Madden, S., Abadi, D. J., Harizopoulos, S., Hachem, N., and Helland, P. (2007). The end of an architectural era: (it's time for a complete rewrite). In VLDB '07: Proceedings of the 33rd international conference on Very large data bases, pages 1150-1160. VLDB Endowment. Strang, 2003 Strang, Introduction to Wellesley-Cambridge Press. Stroustrup, 1997 Stroustrup, The Addison-Wesley. Tan et al., 2005 Tan, P.-N., Introduction Addison Wesley. Team, 2006 Team, CMMI for CMU/SEI-2006-TR-2006-008. Teufel and Schmidt, 1998 Teufel, B. and Fundamentos Addison Wesley Iberoamericana. Thijssen, 1999 Thijssen, Computational J. M. (1999). Physics. Schmidt, de S. (1998). Compiladores. C. P. Development (2006). 1.2. Steinbach, M., to Data and Kumar, V. Mining, First (2005). Edition. B. Programming (1997). Language. G. Linear Algebra, 3 (2003). edicin.

C++

Version

574

Cambridge 978-0521575881. UCSP, 2001 UCSP Revista Number 4 9-41. Vaquero et al., 2009

University

Press.

de

la in

UCSP:

Persona 4.

(2001). Cultura. UCSP.

Vaquero, L. M., Rodero-Merino, L., Caceres, J., and Lindner, M. (2009). A break in the clouds: towards a cloud definition. SIGCOMM Comput. Commun. Rev., 39(1):50-55. Veryard, 1994 Veryard, R. (1994). Information Coordination: The Management of Information Models, Systems and Organizations. Prentice Hall. Wang and King, 2000 Wang, Software CRC Press. Y. Engineering and Processes: King, Principles G. and (2000). Applications.

Whitehorn and Marklyn, 2001 Whitehorn, Inside Springer. M. Relational and Marklyn, B. Databases, Second (2001). Edition.

Windle and Abreo, 2002 Windle, D. R. and Abreo, Software Requirements Using the Prentice Hall. Wirfs-Brock, Wirfs-Brock, Technical report. Witten and Bainbridge, 2002
575

L. R. Unified

(2002). Process.

R.

Witten, I. H. How to Build Morgan Kaufmann. Witten and Frank, 2005

and a

Bainbridge, Digital Library,

D. First

(2002). Edition.

Witten, I. H. and Frank, E. (2005). Data Mining: Practical Machine Learning Tools and Techniques, Second Edition. Elsevier. Xavier, 2007 Xavier, B. El espacio Instituto Francs de Estudios Andinos. XVI, 2009 XVI, Carta enciclica Ediciones Paulinas.Lima. Zill, 2002 Zill, D. G. (2002). Ecuaciones Diferenciales con Problemas de Valores en la Frontera. Thomson Learning. vila, 1993 vila, Introducao a Editora Edgard Blucher LTda. G. analise (1993). matemtica. B. Caritas (2009). Veritate. (2007). andino.

musical

in

576

También podría gustarte