Profesorado
Elena Orta Cuevas (coordinadora)
Mª Teresa García Horcajadas
Nuria Hurtado Rodríguez
Mercedes Ruiz Carreira
Situación
Prerrequisitos
Es aconsejable que el alumno haya cursado previamente las
asignaturas siguientes:
- Ingeniería del Software I.
- Programación Orientada a Objetos.
- Bases de Datos I.
Contexto dentro de la titulación
Asignatura correspondiente a la materia troncal de Ingeniería del
Software.
Recomendaciones
Se recomienda a los alumnos haber cursado las asignaturas:
- Programación Orientada a Objetos.
- Bases de Datos I.
- Ingeniería del Software I.
Competencias
Competencias transversales/genéricas
INSTRUMENTALES
- Capacidad de organización y planificación.
- Capacidad de análisis y síntesis.
- Capacidad para resolver problemas.
- Comunicación oral y escrita.
- Toma de decisiones.
Competencias específicas
Cognitivas(Saber):
- Conocer las propiedades del software y su importancia en la
sociedad.
- Conocer los aspectos relacionados con el proceso de
producción
del software.
- Conocer el estándar IEEE 830-1998 de especificación de
requisitos del software.
- Aprender las principales diferencias de los distintos
enfoques
metodológicos en ingeniería del software.
- Aprender los conocimientos teóricos y prácticos fundamentales
del análisis y diseño orientado a objetos.
- Conocer los procesos de desarrollo orientados a objetos UP
(Unified Process), RUP (Rational Unified Process) y proceso
descrito por C.Larman
- Aprender el Lenguaje Unificado de Modelado (UML).
- Aprender a realizar los modelos de análisis en UML.
- Aprender a realizar los modelos de diseño en UML.
- Conocer los fundamentos de las pruebas en desarrollos
orientados a objetos.
- Aprender los conocimientos fundamentales de la gestión de
proyectos.
Procedimentales/Instrumentales(Saber hacer):
- Utilizar un proceso de desarrollo de sistemas orientado a
objetos (C. Larman).
- Realizar el análisis orientado a objetos en UML de un sistema
sofware siguiendo el proceso descrito por C. Larman.
- Evaluar la corrección de modelos de análisis.
- Realizar el diseño orientado a objetos en UML de un sistema
software siguiendo el proceso descrito por C. Larman.
- Utilizar herramientas de modelado en UML.
Actitudinales:
- Razonamiento crítico.
- Compromiso ético.
- Aprendizaje autónomo.
- Creatividad.
- Motivación por la calidad.
- Planificación de las actividades a desarrollar.
Objetivos
1. Tomar conciencia de la necesidad de considerar la producción del
software como un proceso de ingeniería.
2. Conocer y aplicar el proceso de desarrollo orientado a objetos
descrito por C. Larman.
3. Conocer y utilizar el Lenguaje Unificado de Modelado (UML).
4. Conocer y realizar los modelos de análisis en UML.
5. Conocer y realizar los modelos de diseño en UML.
6. Conocer y utilizar las técnicas de pruebas orientadas a objetos.
7. Conocer los fundamentos de la gestión de proyectos.
8. Ser capaz de analizar y diseñar software aplicando un enfoque de
ingeniería.
Programa
CONTENIDO TEÓRICO
Tema 1. Conceptos y principios orientados a objetos.
1.1. Introducción.
1.2. Modelo de proceso genérico para el desarrollo de sistemas
orientados a objetos.
1.3. ¿Por qué la orientación a objetos?
1.4. Conceptos fundamentales de la orientación a objetos.
1.5. Principios fundamentales de la orientación a objetos.
1.6. Justificación.
1.7. El lenguaje UML.
Tema 2. Análisis Orientados a Objetos en UML.
2.1. Introducción al Análisis Orientado a Objetos en UML.
2.2. Modelo de Casos de Uso en UML.
2.2.1. Propósito.
2.2.2. Casos de uso.
2.2.3. Diagrama de casos de uso.
2.3. Modelo conceptual de los datos en UML.
2.3.1. Introducción.
2.3.2. Objetos y clases de objetos.
2.3.3. Atributos.
2.3.4. Asociaciones.
2.3.5. Clase asociativa.
2.3.6. Agregación y composición.
2.3.6. Generalización/Especialización.
2.3.7. Ampliaciones.
2.4. Modelo de comportamiento del sistema en UML.
2.4.1. Diagramas de secuencia del sistema.
2.4.2. Contratos de las operaciones del sistema.
Tema 3. Introducción al Diseño Orientado a Objetos en UML.
3.1. Introducción al diseño de software.
3.2. Introducción a los patrones de diseño.
3.3. Patrón arquitectónico: Arquitectura en capas.
3.4. Aplicación del patrón "Arquitectura en tres capas".
3.5. Diseño en UML.
3.5.1. Introducción.
3.5.2. Del dominio del problema al dominio de la solución.
3.5.3. Determinación de la arquitectura software.
3.5.4. Diseño de la Capa de Dominio.
3.5.4.1. Patrón Controlador.
3.5.4.2. Patrón Acoplamiento bajo.
3.5.4.3. Patrón Cohesión alta.
3.5.4.4. Patrón Creador.
3.5.4.5. Patrón Experto.
3.5.5. Diagramas de interacción.
3.5.5.1. Diagramas de secuencia.
3.5.5.2. Diagramas de colaboración.
3.5.6. Diagrama de clases de diseño.
Tema 4. El proceso unificado de desarrollo de software.
4.1. Etapas del proceso iterativo de desarrollo del software.
4.2. Ciclos de desarrollo.
4.3. Ejemplo.
Tema 5. Gestión de proyectos software.
5.1. Introducción.
5.2. Planificación.
5.3. Estimación de costes y plazos.
5.4. Seguimiento y supervisión del proyecto software.
5.5. Gestión de riesgos del software.
CONTENIDO PRÁCTICO
Tema 1. Supuestos prácticos de análisis orientado a objetos en UML.
Tema 2. Supuestos prácticos de diseño orientado a objetos en UML.
Metodología
No hay docencia de la asignatura.
Se utilizará el campus virtual como herramienta de apoyo para la
docencia. Estarán disponibles herramientas de comunicación y el material
docente en formato digital.
Distribución de horas de trabajo del alumno/a
Nº de Horas (indicar total):
- Clases Teóricas:
- Clases Prácticas:
- Exposiciones y Seminarios:
- Tutorías Especializadas (presenciales o virtuales):
- Realización de Actividades Académicas Dirigidas:
- Con presencia del profesorado:
- Sin presencia del profesorado:
- Otro Trabajo Personal Autónomo:
- Horas de estudio:
- Preparación de Trabajo Personal:
- ...
- Realización de Exámenes:
- Examen escrito: 3
- Exámenes orales (control del Trabajo Personal):
Criterios y Sistemas de Evaluación
CRITERIOS DE EVALUACIÓN
- Precisión y rigurosidad en el conocimiento de los temas tratados.
- Conocimiento y utilización de las técnicas estudiadas.
TÉCNICAS DE EVALUACIÓN
- Examen final de la asignatura en las convocatorias oficiales del curso.
SISTEMA DE EVALUACIÓN
La calificación de la asignatura será la que obtenga el alumno en el
Examen Final de la asignatura.
Al dejar de impartirse la asignatura en el curso 2012/2013 dispone de 4
convocatorias de examen que puede distribuir durante los cursos 2012/2013
y 2013/2014.
Recursos Bibliográficos
BIBLIOGRAFÍA BÁSICA
[Booch 00] Booch, G.; Jacobson, I.; Rumbaugh, J. M.; UML. El
lenguaje unificado de modelado. Manual de Referencia, 2ª ed. Ed.
Addison Wesley, 2007.
[Booch 00] Booch, G.; Jacobson, I.; Rumbaugh, J. M.; UML. El
lenguaje unificado de modelado. Guía de Usuario,2ª ed. Ed. Addison
Wesley, 2006.
[Booch 00] Booch, G.; Jacobson, I.; Rumbaugh, J. M.; UML. Proceso
unificado de desarrollo de software, Ed. Addison Wesley, 2000.
[Brooks 95] Brooks, Frederick P.; The Mythical Man-Month: Essays on
Software Engineering, 20th Anniversary Edition, Ed. Addison Wesley,
1995.
[Costal 03] Costal C.; Sancho Samsó, M.; Teniente
López; Especificaciones de Sistemas Software en UML, Ediciones de
la Universitat Politécnica de Catalunya, 2003.
[Gómez 03] Gómez. C.; Mayol, E.; Olivé, A.; Teniente, E.; Diseño de
Sistemas Software en UML, Edicions de la Universitat Politécnica de
Catalunya, 2003.
[Larman 03] Larman, C.; UML y patrones. Una introducción al análisis
y diseño orientado a objetos y al proceso unificado, 2ª ed.,
Prentice Hall, 2003.
[Piattini 02] Piattini, M.; Análisis y diseño de aplicaciones
informáticas de gestión, Ra-ma, 2002.
[Pierre 97] Pierre-Alain Muller; Modelado de objetos con UML,
Gestión 2000, 1997.
Páginas Webs
============
Página de OMG (Objetc Management Group)
http://www.omg.com
Página de UML
http://www.uml.org
Página de Rational Rose
http://www.rational.com
Página que contiene documentación en formato electrónico
http://www.exa.unicen.edu.ar/catedras/metodol1/apuntes.html
BIBLIOGRAFÍA COMPLEMENTARIA
[Gamma 03] Gamma, E.; Helm, R.; Johnson, R., Vlissides, J.; Patrones
de diseño, Ed. Addison Wesley, 2003.
[Pressman 05] Pressman, R.; Ingeniería del software. Un enfoque
práctico, 6ª ed., McGraw Hill, 2005
[Rumbaugh 95] Rumbaugh, J.; Blaha, M.; Premerlani, W.; Eddy, F.;
Lorensen, W.; Modelado y Diseño Orientado a Objetos, Prentice Hall,
1995.
[Sommerville 07 Sommerville, I.; Ingeniería del software, 8ª ed.,
Addison Wesley, 2007.