Usted está aquí: Inicio web asignaturas

 

Fichas de asignaturas 2011-12


PROGRAMACIÓN EN ENTORNOS CLIENTE-SERVIDOR

Asignaturas
 

  Código Nombre    
Asignatura 1713054 PROGRAMACIÓN EN ENTORNOS CLIENTE-SERVIDOR Créditos Teóricos 2,5
Descriptor   PROGRAMMING IN CLIENT-SERVER ENVIRONMENTS Créditos Prácticos 2
Titulación 1713 INGENIERÍA EN INFORMÁTICA Tipo Optativa
Departamento C137 LENGUAJES Y SISTEMAS INFORMATICOS    
Curso      
Duración (A: Anual, 1Q/2Q) 2Q      
Créditos ECTS 4      

Para el curso Créditos superados frente a presentados Créditos superados frente a matriculados
2007-08 100.0% 78.3%

 

 

Pulse aquí si desea visionar el fichero referente al cronograma sobre el número de horas de los estudiantes.

Profesorado

José Antonio Jiménez Millán (Coordinador)

Situación

Prerrequisitos

Los necesarios para acceder al segundo ciclo de la carrera de ingeniero en
Informática

Contexto dentro de la titulación

Se trata de una asignatura que se encuadra en el perfil de segundo ciclo
denominado “Redes, Arquitectura de Computadores y Sistemas Operativos” y que
incluye a otras asignaturas relacionadas como: “Administración de Servidores
Web”, “Sistemas Operativos Distribuidos” e "Ingeniería Web", así como varias
asignaturas de "redes".

Esta asignatura pone en práctica conocimientos y habilidades aprendidas en
otras asignaturas distintas de las previamente citadas en concreto utiliza
conocimientos sobre procesos concurrentes y distribuidos que se imparten en las
asignaturas troncales "Sistemas operativos I y II" de las Ingenierías Técnicas
en Informática.

Así mismo guarda una estrecha relación con la asignatura optativa de 3º curso de
las Ingenierías Técnicas en Informática titulada "Programación Concurrente y
Distribuida" y "Programación en Internet".

Recomendaciones

Debido al escaso número de créditos de esta asignatura, se ha planteado como una
panorámica de los temas descritos en su temario.

Se recomienda:
a) La asistencia a clases teóricas y prácticas.
b) El estudio y trabajo continuado realizando los ejercicios propuestos por el
profesor y entregando los trabajos pedidos a tiempo.
c) La utilización del Campus Virtual como herramienta de intercambio de
conocimientos entre los alumnos y con el profesor.

Competencias

Competencias transversales/genéricas

Capacidad de análisis y síntesis.
Capacidad de relacionar los conocimientos teóricos con la práctica.
Capacidades de comunicación oral y escrita.
Resolución autónoma de problemas.

Competencias específicas

  • Cognitivas(Saber):

    a)Conocer los distintos niveles de programación cliente-servidor
    b)Decidir el nivel adecuando según el problemas de que se trate
    c)Conocer las tecnologías actuales que soportan la programación c/s
    d)Adaptar esas tecnologías a problemas específicos
    e)Diseñar la aplicación que dé soporte a esos problemas
    
  • Procedimentales/Instrumentales(Saber hacer):

    • Saber implementar y depurar, sobre un ordenador, programas que
    implementen un cliente y servidor sencillos utilizando los frameworks
    adecuados.
    • Buscar información sobre la asignatura.
    • Programar, compilar y depurar programas que implementen ejercicios
    de la materia en cuestión.
    • Resolver ejercicios y problemas de la materia.
    • Describir, por escrito, preguntas teóricas.
    
  • Actitudinales:

    INSTRUMENTALES
    • Capacidad de análisis y síntesis
    • Capacidad de organización y planificación
    • Comunicación oral y escrita
    • Manejo de manuales y documentos en inglés
    • Conocimientos de informática relativos al ámbito de estudio
    • Capacidad de gestión de la información
    • Resolución de problemas
    • Toma de decisiones
    
    PERSONALES
    • Trabajo en equipo
    • Razonamiento crítico
    • Compromiso ético
    
    SISTÉMICAS
    • Aprendizaje autónomo
    • Adaptación a nuevas situaciones
    • Iniciativa y espíritu emprendedor
    • Motivación por la calidad
    • Creatividad

Objetivos

Considerando la generalización de las redes de comunicaciones, y el auge
de los entornos distribuidos, fundamentalmente en el ámbito de las
comunicaciones móviles, la asignatura debe tener como objetivo principal el dotar
al alumno de los conocimientos teóricos y técnicos necesarios para abordar el
desarrollo de aplicaciones de la naturaleza citada.

Dada el reducido número de créditos, esta asignatura está diseñada como una toma
de contacto con el paradigma de la programación cliente-servidor, que ofrezca al
alumno una panorámica razonablemente amplia sobre el tema.

En concreto se pretende:
• Presentar al alumno la materia.
• Conocer los principios, ventajas y limitaciones de las diversas tecnologías
implicadas.
• Capacitar a los alumnos para implementar, sobre un ordenador, programas
simples cliente/servidor utilizando los frameworks y técnicas mostradas en clase.

Programa

1. Introducción a la computación distribuida y al paradigma cliente/servidor.
2. Protocolo UDP y TCP.
3. Dirección de los sockets, DNS, transmisión de datos a través de la red y
errores.
4. Tecnologías para la arquitectura de un servidor: multiproceso, multihilo,
dirigido por eventos, cachés, y colas de mensajes.
5. Protocolo http y llamada a procedimientos remotos.
6. Otros protocolos.

Actividades

- Clases magistrales con utilización de medios audiovisuales.
- Clases de prácticas sobre el ordenador.
- Exposición pública de trabajos por los alumnos.

Metodología

Parte de las clases de teoría consistirán en la exposición, por parte del
profesor y con ayuda de los medios audiovisuales necesarios, de los contenidos
teóricos. En ellas también se propondrán algunos ejercicios a realizar, en la
misma aula o bien en casa, por los alumnos y que serán discutidos, por los
propios alumnos, en las clases
siguientes.

En las clases de prácticas el profesor mostrará pequeños programas típicos,
discutiendo la solución adoptada. Por último, se pedirá que los alumnos
implementen y depuren sobre el ordenador pequeños módulos de servidores/clientes
propuestos por el profesor.

Tanto los ejemplos típicos como los enunciados de los ejercicios propuestos se
publicarán con la suficiente antelación en la página web de la asignatura.

Así mismo, los alumnos tendrán que preparar un trabajo a exponer en público.

Distribución de horas de trabajo del alumno/a

Nº de Horas (indicar total): 100

  • Clases Teóricas: 26  
  • Clases Prácticas: 12  
  • Exposiciones y Seminarios:  
  • Tutorías Especializadas (presenciales o virtuales):
    • Colectivas:  
    • Individules:  
  • Realización de Actividades Académicas Dirigidas:
    • Con presencia del profesorado: 7  
    • Sin presencia del profesorado:  
  • Otro Trabajo Personal Autónomo:
    • Horas de estudio: 30  
    • Preparación de Trabajo Personal: 21  
    • ...
        
  • Realización de Exámenes:
    • Examen escrito: 4  
    • Exámenes orales (control del Trabajo Personal):  

Técnicas Docentes

Sesiones académicas teóricas:Si   Exposición y debate:Si   Tutorías especializadas:No  
Sesiones académicas Prácticas:Si   Visitas y excursiones:No   Controles de lecturas obligatorias:No  

Criterios y Sistemas de Evaluación

Se realizarán un examen teórico y se realizarán trabajos y actividades.

Los trabajos y actividades de los alumnos deben ser entregados dentro de las
fechas indicadas por el profesor y, con ellos, se elaborará una nota de
prácticas.

Para aprobar el examen de teoría el alumno debe contestar todos los ejercicios y
preguntas presentadas demostrando dominar, suficientemente, todos los objetivos
básicos de la asignatura.

La calificación final, para aquellos alumnos que tengan aprobadas todas las
partes, será la suma ponderada de cada parte.

Recursos Bibliográficos

Brandon Rhodes y John Goertzen. "Foundations of Python Network Programming.
Second edition". Ed. Apress, 2010.

M. L. Liu. "Computación Distribuida: Fundamentos y Aplicaciones". Ed.
Pearson/Addison Wesley. 2004.

 

El presente documento es propiedad de la Universidad de Cádiz y forma parte de su Sistema de Gestión de Calidad Docente. En aplicación de la Ley 3/2007, de 22 de marzo, para la igualdad efectiva de mujeres y hombres, así como la Ley 12/2007, de 26 de noviembre, para la promoción de la igualdad de género en Andalucía, toda alusión a personas o colectivos incluida en este documento estará haciendo referencia al género gramatical neutro, incluyendo por lo tanto la posibilidad de referirse tanto a mujeres como a hombres.