Usted está aquí: Inicio web asignaturas

 

Fichas de asignaturas 2009-10


INGENIERÍA WEB

Asignaturas
 

  Código Nombre    
Asignatura 1713056 INGENIERÍA WEB Créditos Teóricos 2
Descriptor   INGENIERÍA WEB Créditos Prácticos 2,5
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% 85.7%

 

 

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

Profesorado

Juan Manuel Dodero Beardo (coordinador)

Situación

Prerrequisitos

Es recomendable conocimiento de lenguajes de marcado y técnicas de presentación
web (XHTML, XML, JavaScript) y de algún lenguaje de programación.

Contexto dentro de la titulación

Asignatura optativa del perfil Desarrollo de Sistemas Software.

Recomendaciones

Se recomienda a los alumnos cursar también las asignaturas:

- Ingeniería de Requisitos.
- Tecnología Avanzada de Bases de Datos.
- Diseño de Sistemas Software.

Asimismo se recomienda a los alumnos que cursen el resto de asignaturas
optativas del perfil Desarrollo de Sistemas Software ofertadas a los alumnos:

- Comercio electrónico.
- Desarrollo de aplicaciones con lenguajes de marcado.
- Administración de Servidores Web.

Competencias

Competencias transversales/genéricas

INSTRUMENTALES

- Capacidad de organización y planificación.
- Capacidad de análisis y síntesis.
- Capacidad para resolver problemas en un entorno pluridisciplinar.
- Comunicación oral y escrita.
- Toma de decisiones.

PERSONALES

- Trabajo en equipo.
- Aprendizaje autónomo.
- Habilidades en las relaciones interpersonales.

Competencias específicas

  • Cognitivas(Saber):

    - Entender los conceptos básicos de la Ingeniería Web.
    - Conocer los principales estándares en la Web.
    - Distinguir los principales entornos de desarrollo en la Web.
    - Conocer una metodología de desarrollo de aplicaciones Web.
    - Comprender la arquitectura típica de una aplicación Web.
    - Conocer herramientas de desarrollo de aplicaciones Web.
  • Procedimentales/Instrumentales(Saber hacer):

    - Utilizar una metodología de desarrollo de aplicaciones Web.
    - Realizar la especificación de requisitos de una aplicación Web
    - Modelar la arquitectura de una aplicación Web
    - Realizar el análisis y el diseño de una aplicación Web.
    - Desarrollar completamente una aplicación Web utilizando herramientas
    de desarrollo.
  • Actitudinales:

    - Aprendizaje autónomo de nuevos métodos y herramientas de desarrollo
    de aplicaciones Web.
    - Motivación por la calidad de una aplicación Web.
    - Planificación de las actividades de un proyecto software para la Web.
    - Trabajo en equipo.
    - Razonamiento crítico para la elección de métodos y herramientas de
    desarrollo Web.

Objetivos

Los objetivos de la asignatura se basan en la consecución de las competencias
descritas en el apartado anterior:

- Aprender los conceptos básicos de la ingeniería Web.
- Conocer las principales plataformas de desarrollo de aplicaciones Web.
- Estudiar y aplicar un proceso de desarrollo de aplicaciones Web.
- Aprender los principales patrones arquitectónicos de aplicaciones Web.
- Aprender a desarrollar aplicaciones Web utilizando una herramienta de
desarrollo.

Programa

TEORÍA
******

PARTE I: Visión general de la Ingeniería Web.

Tema 1. La Ingeniería Web.
1.1 Panorámica
1.2 Conceptos básicos de las aplicaciones Web
1.3 Protocolos y lenguajes
1.4 Antecedentes

Tema 2. Arquitectura y tecnologías

2.1 Arquitecturas de las aplicaciones Web: MVC
2.2 Ejecución dinámica en el cliente y en el servidor.
2.3 Tecnologías en el Servidor.
2.4 Lenguajes y entornos de desarrollo: J2EE

Tema 3. Desarrollo de aplicaciones Web.
3.1 Métodos ágiles de desarrollo
3.2 Requisitos de una aplicación Web
3.3 Patrones de arquitectura y diseño de aplicaciones Web
3.4 Análisis y diseño de aplicaciones Web
3.5 Elección de entornos de desarrollo
3.6 Modelo de pruebas en aplicaciones Web

Tema 4. Servicios web
4.1 Servicios web
4.2 Arquitecturas basadas en servicios
4.3 SOAP/RPC
4.4 REST

Tema 5. Evolución de la Web
5.1 Web 2.0
5.2 Tecnologías de la web 2.0
5.3 Comunicaciones asíncronas con el servidor: AJAX
5.4 Web semántica

Tema 6: Otros aspectos de la construcción de aplicaciones Web

6.1 Seguridad
6.2 Usabilidad
6.3 Escalabilidad
6.4 Transacciones


PRÁCTICAS
*********

En las clases prácticas de la asignatura se estudiarán y utilizarán
herramientas para:

- Especificar los requisitos de una aplicación Web.
- Realizar el modelo de análisis y diseño en UML de una aplicación Web.
- Utilizar frameworks para el desarrollo de una aplicación Web.
- Diseñar y realizar pruebas de unidad, funcionales y de integración en una
aplicación Web
- Gestionar un proyecto de ingeniería Web.

Actividades

Se realizarán los siguientes tipos de actividades para la consecución de las
competencias específicas y desarrollo de las competencias genéricas que se citan
a continuación:

TRABAJO EN EQUIPO

- Capacidad de organización y planificación.
- Comunicación oral y escrita.
- Toma de decisiones.
- Habilidades en las relaciones interpersonales.

RESOLUCIÓN DE PROBLEMAS

- Capacidad de análisis y síntesis.
- Razonamiento crítico.
- Creatividad.

EXPOSICIONES

- Comunicación oral y escrita.
- Creatividad.
- Toma de decisiones.

DEBATE

- Capacidad de análisis y síntesis.
- Razonamiento crítico.
- Comunicación oral y escrita.
- Creatividad.
- Toma de decisiones.
- Habilidades en las relaciones interpersonales.

BÚSQUEDA DE INFORMACIÓN

- Capacidad de análisis y síntesis.
- Razonamiento crítico.
- Creatividad.
- Toma de decisiones.

REALIZACIÓN DE UN TRABAJO ACADÉMICAMENTE DIRIGIDO

Para superar la asignatura, los alumnos deberán realizar un trabajo consistente
en la aplicación de los conocimientos teóricos/prácticos estudiados a un caso
práctico concreto orientado al desarrollo de un proyecto. Este trabajo se
realizará en grupos formados por tres alumnos y tendrá un seguimiento periódico
mediante revisiones periódicas del grupo de trabajo con el profesor.

En el desarrollo de este trabajo, se desarrollarán las siguientes competencias
genéricas:

- Aprendizaje autónomo.
- Motivación por la calidad.
- Capacidad de organización y planificación.
- Comunicación oral y escrita.
- Toma de decisiones.
- Capacidad de análisis y síntesis.
- Razonamiento crítico.
- Creatividad.

Metodología

Se promoverá una metodología activa que fomente la participación activa del
alumno en el desarrollo de las clases y el autoaprendizaje del alumno. Para
ello se utilizarán los siguientes métodos docentes:

* Clases de teoría

Estas clases se utilizarán para la exposición de los contenidos teóricos de la
asignatura. Las exposiciones de los temas deben seguir un esquema básico en su
presentación que incluirá una síntesis de los conceptos estudiados en las
lecciones anteriores, los objetivos y puntos del tema a desarrollar, y
finalmente un resumen y conclusiones sobre los conceptos introducidos.

En el desarrollo de estas clases, los alumnos realizarán las siguientes
actividades:

- Análisis, debate y discusión de casos prácticos.
- Trabajo en equipo.
- Realización de trabajos.
- Exposiciones de los trabajos.

* Clases prácticas

Son un medio complementario muy importante a las clases de teoría y son
fundamentales para una buena comprensión de la asignatura. En estas clases el
profesor planteará ejercicios y supuestos prácticos que los alumnos deben
resolver individualmente antes de enfrentarse a la solución del trabajo
académicamente dirigido. En el  desarrollo de estas clases, los alumnos
realizarán las siguientes actividades:

- Análisis, debate y discusión de lecturas propuestas.
- Trabajo en equipo.
- Realización de trabajos.
- Exposiciones de los trabajos.

* Aprendizaje basado en proyectos

- Los contenidos teóricos y prácticos de la asignatura se trabajarán
utilizando esta técnica de manera que se promuevan las capacidades de aprendizaje
autónomo y planificación de los alumnos. El profesor diseñará los requisitos del
proyecto que considere necesarios para que el alumno adquiera los conocimientos
indicados en los objetivos de la  asignatura y promoverá la utilización activa de
fuentes de información.

Se utilizará el campus virtual como herramienta de apoyo para la docencia.
Estarán disponibles herramientas de comunicación, foros especializados,
tutorías electrónicas privadas, correo electrónico y material docente en
formato digital.

Distribución de horas de trabajo del alumno/a

Nº de Horas (indicar total): 100

  • Clases Teóricas: 16  
  • Clases Prácticas: 16  
  • Exposiciones y Seminarios: 1  
  • Tutorías Especializadas (presenciales o virtuales):
    • Colectivas: 5  
    • Individules: 1  
  • Realización de Actividades Académicas Dirigidas:
    • Con presencia del profesorado: 6  
    • Sin presencia del profesorado: 28  
  • Otro Trabajo Personal Autónomo:
    • Horas de estudio: 24  
    • Preparación de Trabajo Personal: 1  
    • ...
        
  • Realización de Exámenes:
    • Examen escrito: 2  
    • Exámenes orales (control del Trabajo Personal):  

Técnicas Docentes

Sesiones académicas teóricas:Si   Exposición y debate:Si   Tutorías especializadas:Si  
Sesiones académicas Prácticas:Si   Visitas y excursiones:No   Controles de lecturas obligatorias:No  
Otros (especificar):
Aprendizaje basado en proyectos
 

Criterios y Sistemas de Evaluación

Se realizará una evaluación continúa del trabajo del alumno en la asignatura en
la que se valorará tanto los conocimientos específicos adquiridos como las
competencias genéricas.

Los conocimientos específicos se evaluarán mediante el trabajo realizado durante
el curso, prestando especial atención en la evolución del mismo y en la
aplicación de los conocimientos impartidos en la fase teórica. La evaluación de
las competencias transversales se llevarán a cabo
valorando la participación de los alumnos en las actividades propuestas por el
profesor.

A continuación se detallan los criterios de evaluación, las técnicas de
evaluación y el sistema de calificación de los alumnos.

* Criterios de evaluación

- Precisión y rigurosidad en el conocimiento de los temas tratados.
- Corrección técnica y formal de los trabajos realizados.
- Calidad de las exposiciones.
- Conocimiento y utilización de las técnicas estudiadas.
- Interés y grado de compromiso en su proceso de aprendizaje.
- Participación en las clases y actividades propuestas.
- Participación y calidad de las intervenciones en los debates y en los foros
del campus virtual.

* Técnicas de evaluación

- Desarrollo de un trabajo en grupo de carácter técnico.
- Exposiciones orales.
- Auto-evaluación y evaluación por pares basada en escalas de valoración y
rúbricas
- Examen.

* Sistema de Calificación

La calificación final de la asignatura se obtendrá mediante una media ponderada
de la calificación del examen y la de la aplicación web realizada.

Al ser el proceso de desarrollo iterativo, se plantearán entregas parciales en
varias fases. Aquellos trabajos que no cumplan los mínimos exigidos deberán
realizar una fase de desarrollo adicional para mejorar/completar el trabajo.

Para aprobar deberá de cumplirse las distintas entregas y hacer una aplicación
adecuada de los contenidos teóricos y prácticos.

Recursos Bibliográficos

- Leon Shklar, Richard Rosen: "Web Application Architecture. Principles,
protocols and practices", 2ª edición, Wiley & Sons, 2003.
- G. Kappel et al. (eds): "Web Engineering. The Discipline of Systematic
Development of Web Applications", John Wiley & Sons, 2006.
- D. Rosenberg, M. Stephens: "Use Case Driven Object Modeling with UMLTheory and
Practice", Apress, 2007.
- D. Rosenberg, M. Collins-Cope, M. Stephens: "Agile Development with ICONIX
Process: People, Process, and Pragmatism", Apress, 2005.
- Jim Conallen: "Building Web Applications with UML", 2ª ed., Addison-Wesley,
2002
- M. Fowler et al.: "Patterns of Enterprise Application Architecture",
Addison-Wesley, 2002
- L. Richardson & S. Ruby: "RESTful Web Services", O'Reilly, 2007.
- C. Gross: "Apress, Ajax Patterns and Best Practices", Apress, 2006
- Dierk Koenig et al.: "Groovy in action", Manning, 2007.
- Graeme Rocher: "The Definitive Guide to Grails", Apress, 2009.
- Seth Ladd: "Expert Spring MVC and Web Flow", Apress, 2006.
- Craig Walls: "Spring in action", Manning, 2008.
- Neal Ford: "Art of Java Web Development", Manning, 2004
- Tim Downey: "Web Development with Java Using Hibernate, JSPs and Servlets",
Springer, 2007
- Gustavo Rossi, Oscar Pastor, Daniel Schwabe, Luis Olsina (eds.): "Web
Engineering: Modelling and Implementing Web Applications", Springer, 2008
- Dave Thomas, David H. Hansson: "Agile Web development with Rails", The
Pragmatic Bookshelf, 2nd. ed., 2006.
- Russ Olsen: "Design Patterns in Ruby", Addison-Wesley Professional, 2007
- Adrian Holovaty, Jacob Kaplan-Moss: "The Django Book", Apress, 2007
[http://www.djangobook.com/]
- George Schlossnagle, "Advanced PHP Programming", Sams, 2004.
- Philip GreenSpun, "Software Engineering for Internet Applications"
[http://philip.greenspun.com/seia/]
- 37 Signals, "Getting Reals", [http://gettingreal.37signals.com/].

Referencias
===========

Página de estándares de Internet
http://www.w3.org

Página oficial de Sun sobre Java
http://java.sun.com

Portal de grails:
http://grails.org/

 

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.