Vous êtes sur la page 1sur 5

FACULTAD DE INGENIERA DEPARTAMENTO DE TECNOLOGAS DE INFORMACIN Y COMUNICACIONES Materia: Requisito: Programa Semestre: Perodo acadmico: Intensidad semanal: Crditos:

09681 Programacin en red. 09651 Diseando con algoritmos Diseo de Medios Interactivos - 5 2012 - 2 5 horas 3

Descripcin En este curso se busca que cada estudiante aplique tanto los conocimientos adquiridos en los cursos anteriores de algoritmos como los conceptos de programacin en red, para elaborar aplicaciones interactivas que trabajen con dispositivos conectados entre s, empleando como herramienta de trabajo el lenguaje de programacin java utilizando processing. Objetivos: Generales Al concluir el curso el estudiante estar en capacidad de: Desarrollar aplicaciones que impliquen comunicacin humana basada en computadores; empleando, para ello, los conceptos de programacin en red: direcciones IP y URL, programas cliente/servidor y streaming. Realizar proyectos usando metforas y conceptos de manera lgica y argumentada logrando una ptima comunicacin con el usuario de manera creativa y brindando soluciones grficas a partir de conceptos de programacin en red. Terminales Al finalizar el curso el estudiante estar en capacidad de: Identificar la aplicacin que tiene la programacin en red en proyectos de comunicacin colectiva con propsitos artsticos o de diseo interactivo. Disear aplicaciones interactivas que requieran el uso de programacin en red. Elaborar aplicaciones interactivas tipo cliente/servidor. Identificar las necesidades primarias de un proyecto y asociar a ellas un concepto como base en diseo grfico. Realizar propuestas de diseo basadas en argumentos tericos que apoyen y sustenten las ideas conceptuales. Disear proyectos que generen reales experiencias interactivas en los usuarios a partir de las posibilidades que la programacin en red permite basados en conceptos y ejercicios puntuales. Especficos De formacin acadmica: Al finalizar cada unidad, el estudiante estar en capacidad de: Unidad 1: Fundamentos de Redes: Describir los conceptos bsicos de las redes de comunicaciones. Identificar los elementos que conforman una red y la forma en la cual interactan para compartir recursos e informacin.

Programacin en Red

Pgina 1 de 5

Reconocer los elementos y el funcionamiento de la arquitectura cliente/servidor. Identificar las diversas formas de comunicacin en red y como el usuario interacta con la pantalla a partir de una interface.

Unidad 2: Cliente/Servidor protocolo UDP: Reconocer los elementos y el funcionamiento del protocolo UDP. Elaborar aplicaciones donde utilicen objetos de las clases DatagramSocket y DatagramPacket para transferir informacin entre procesos independientes utilizando UDP, utilizando tanto tipos de datos bsicos como referenciados. Reconocer la diferencia entre los tipos de comunicacin: unicast, multicast y broadcast. Escribir programas donde se utilice la clase MulticastSocket para realizar comunicaciones multicast. Utilizar serializacin para simplificar el envo de objetos que tienen referencias a otros objetos Identificar los modelos bsicos de comunicacin humana. Estructurar desde los modelos de comunicacin formas de representacin grfica digital. Establecer las diversas formas de comunicacin lineal y no lineal a partir de las interfaces graficas. Unidad 3: Cliente/Servidor protocolo TCP: Entender las similitudes y diferencias entre las clases utilizadas en TCP. Elaborar programas donde utilicen objetos de las clases Socket y ServerSocket para transferir informacin entre dos procesos independientes, de manera confiable. Establecer representaciones a partir de infografas para ser publicadas y representadas en interfaces de dispositivos mviles. Identificar las metodologas de usabilidad en diseo de interfaces e iconografa para dispositivos mviles. Unidad 4: Cliente/Servidor con multihilos: Aplicar los conceptos de manejo de hilos, excepciones y eventos a un problema que requiera procesamiento en red. Elaborar programas donde un proceso servidor sea capaz de atender a varios clientes de forma simultnea, mediante el uso de hilos. Utilizar diversos flujos para utilizar fuentes o destinos externos de informacin. Disear aplicaciones que utilizan mensajes sensibles a la audiencia (notificaciones). Crear proyectos con una estructura de lenguaje visual dinmico a partir de la interactividad. Lograr establecer una comunicacin, participacin y construccin por parte del usuario en aplicaciones interactivas. De formacin de valores y competencias El estudiante avanzar en el fortalecimiento de valores y habilidades tales como: La perseverancia y la autonoma, a travs del desarrollo de los ejercicios que entregan los profesores, y que no representan una nota ni son revisados en clase. La tolerancia, mediante el respeto ante la participacin de los compaeros y el profesor en clase (que muchas veces no coinciden con la propia opinin). La capacidad de anlisis y conceptualizacin, a travs de la identificacin y modelado de los elementos necesarios para resolver un problema planteado. La capacidad de sntesis cuando deben proponer una solucin final utilizando elementos ya desarrollados. La capacidad de manejo de la informacin, mediante la bsqueda de elementos en el lenguaje de programacin Java, que ayuden en la solucin de un problema planteado. La capacidad de trabajo bajo presin, ya que se cuenta con tiempo limitado para algunas actividades

Programacin en Red

Pgina 2 de 5

Metodologa Los estudiantes debern preparar, antes de la clase, los temas asignados por el profesor, para lo cual: Estudiarn el material asignado en la programacin del curso. Contestarn las preguntas que contiene el material, as como las preguntas adicionales que el profesor entregue. Resolvern los ejercicios propuestos en el material, as como los ejercicios adicionales que se le entreguen. Asistirn a las sesiones de monitoria o tutora, si requiere algn apoyo adicional. De ninguna manera se considerar preparar la clase el leer a la carrera el material, justo antes de entrar al saln. Durante la clase, el estudiante deber: Plantear las dudas que le quedaron durante el proceso de estudio del tema a tratar. Participar en las actividades de revisin y consolidacin de conceptos que proponga el profesor. Trabajar en la solucin de los problemas de aplicacin que se propongan. Despus de la clase: Establecer las relaciones entre los temas tratados en la clase y el conocimiento previamente adquirido. Resolver los ejercicios de aplicacin del tema, que tienen un nivel de complejidad mayor al de los ejercicios que resolvi previamente. Adicionalmente, si ya se ha planteado el proyecto de la unidad debe trabajar individual o grupalmente en el mismo, segn el caso: identificar las relaciones entre los conceptos recin aprendidos y los conceptos previamente trabajados. Este curso utilizar processing como entornos de desarrollo, con java como lenguaje de programacin. No obstante los objetivos de aprendizaje son independientes del lenguaje y el entorno de programacin seleccionado. Este curso tiene dos componentes, con igual importancia: Componente Terica: Consiste en la discusin de los diferentes temas y el hacer ejercicios que permitan ponerlos en prctica, esto en el saln de clase. Esta componente se desarrolla en tres (3) horas por semana. Componente Prctica: Consiste en la resolucin de ejercicios y su implementacin en processing, esto en la sala de cmputo. Para esta componente se han destinado dos (2) horas por semana. Metodologa especfica para Diseo: Proyectos: Durante el semestre se usaran diversas metodologas apoyadas en diferentes estrategias y mtodos de evaluacin a cada proyecto. Para los proyectos se desarrollaran diversos temas centrados en: social, comercial, cognitivo y de entretenimiento. Los mtodos de diseo sern estndares en su estructura general pero tendrn variaciones en los planteamientos de cada tipo: Recoleccin de informacin Estrategia Explorar situaciones Desarrollo de ideas Evaluacin Planteamiento solucin de problemas Estrategias: Lineal. Adaptativa.

Programacin en Red

Pgina 3 de 5

Incremental. Mtodos de evaluacin: Encuesta. Autoevaluacin. Participativo. Talleres: Tema: Definir el tema central del proyecto. Indagar sobre ese tema y encontrar teoras que puedan sustentarlo. Conceptualizacin: Tomar los referentes tericos recogidos y establecer el tipo de proyecto a realizar basado en un concepto. Justificar dicho concepto. Representacin: Mostrar los resultados grficos obtenidos asociados a los componentes tericos. Justificar el uso de las representaciones grficas como color, formas grficas o personajes, interfaces, entre otras. Argumentacin: Entrega del documento. Ficha tcnica. El grupo cuenta con un monitor acadmico, quien les brindar apoyo principalmente en las dudas referentes al entorno de programacin, para lo cual se programar una sesin de dos (2) horas por semana, de libre asistencia por parte de los estudiantes. Evaluacin La nota del (los) proyecto(s) grupal(es) solo entrar(n) a contar en la nota definitiva del curso si el estudiante obtiene una nota igual o superior a 3.0 en el promedio ponderado de las notas individuales. Los clculos para la nota definitiva se realizarn as: Nota individual: Evaluacin Parcial 1 Parcial 2 Proyecto Individual 1 Proyecto Individual 2 Proyecto Individual 3 Nota individual Valor 22.5% 22.5% 17.5% 17.5% 20% 100.0% Unidades que cubre 1, 2 y 3 1, 2, 3 y 4 1y2 1y3 1, 2, 3 y 4 Semana de entrega/realizacin Semana 9 Semana 18 Semana 5 Semana 8 Semana 12

Nota proyecto final: Si (nota Anlisis, diseo y programa (nota grupal) < 3.0) entonces: Nota proyecto final = Anlisis, diseo y programa Si (Anlisis, diseo y programa (nota grupal) >= 3.0) entonces: Nota proyecto final = (Sustentacin (nota individual)* 0.7) + (Anlisis, diseo y programa * 0.3) Nota grupal:

Programacin en Red

Pgina 4 de 5

Evaluacin Proyecto grupal 1 Proyecto final Nota grupal

Valor 40% 60% 100%

Unidades que cubre 1, 2 y 3 1, 2, 3 y 4

Semana de entrega Semana 11 Semana 18

Nota definitiva:

Si (nota individual < 3.0) entonces: Nota definitiva = nota individual Si (nota individual >= 3.0) entonces: Nota definitiva = (nota individual * 0.6) + (nota grupal * 0.4)

En las presentaciones de los proyectos grupales y trabajo asignados, adicional al contenido de la misma, se tendr en cuenta que el estudiante las realice forma estructurada, clara y adecuada ante el grupo la exposicin de sus ideas, propuestas y resultados. En los proyectos individuales se dar mayor peso al entendimiento y resultado funcional del trabajo, y menor peso al componente de diseo; sin embargo, en los proyectos si ser parte importante de la evaluacin. Los proyectos no abordan todos los objetivos de las unidades enunciadas, estos se encuentran especificados en los enunciados de cada una de las actividades. Los proyectos en grupo, incluyen el proyecto final y los proyectos de la unidad 1, 2 y 3.

Bibliografa
Arboleda Cobo, Liliana Mara. Programacin en red con Java. Universidad Icesi, 2004. Casey Reas and Ben Fry. Processing. A programming handbook for visual designers and artists. MIT Press. Caroll John M. Human-Computer Interaction in the New Millennium. ACM Press. 2001 Edward Tufte. Visualizing Information. Graphic Press 1990. http://processing.org http://mobile.processing.org

Programacin en Red

Pgina 5 de 5

Vous aimerez peut-être aussi