Title: An
1Análisis y Diseño del Software
Departamento de Informática y Sistemas
Jesús García Molina Departamento de Informática y
Sistemas Universidad de Murcia http//dis.um.es/j
molina jmolina_at_um.es
2OO en un plan de estudios
- La orientación a objetos, OO, forma parte del
núcleo de conocimientos de la informática. - En las propuestas curriculares de ACM/IEEE se
consideran conocimientos obligatorios - Introducir los conceptos OO y escribir software
OO - Proceso basado en UML
- Patrones de diseño
3OO, sí pero ... qué?, cuándo?, cómo?
4Propuesta DIS
- Antes procedural que orientación a objetos
- Dos asignaturas cuatrimestrales sobre OO
- Introducción a la Programación OO (Tercero)
- Conceptos básicos
- Análisis y Diseño OO (Cuarto)
- Un proceso basado en UML
- Patrones de Diseño
5Además
- En el segundo ciclo se ofertan asignaturas
optativas sobre - Componentes software
- Objetos distribuidos
- Frameworks
- Arquitectura del software
6Introducción a la programación OO
- Que el alumno no adquiera la visión OO ofrecida
por un particular lenguaje, sino que comprenda
los conceptos que subyacen a la OO de un modo
independiente al lenguaje
7Introducción a la programación OO
- Describir los conceptos básicos clase, objeto,
herencia, polimorfismo y ligadura dinámica. - Contrastar conceptos en lenguajes más extendidos.
- Enseñar un lenguaje OO y su entorno
- Introducir técnicas y heurísticas muy básicas de
programación. - Dos cursos en paralelo Teoría y Prácticas
8La asignatura A/D de Software
- Asignatura troncal, cuarto curso, 6 créditos
(3T3P), 82 alumnos - Proporcionar al alumno una formación que le
permita abordar de forma sistemática el
desarrollo de aplicaciones OO, aplicando un
proceso software basado en UML y patrones de
diseño
9Objetivos específicos
- Estudio de UML
- Modelado de requisitos (casos de uso)
- Modelado estructural
- Modelado del comportamiento
- Conocer y aplicar un proceso software basado en
UML - Conocer patrones de diseño GoF
10La asignatura A/D de Software
- Contenidos teóricos
- Tema 1. El lenguaje UML (9 horas)
- Tema 2. Un proceso basado en UML (6 horas)
- Tema 3. Patrones de diseño (15 horas)
- Seminario. Persistencia OO (2 horas)
11La asignatura A/D de Software
- Coincide con el enfoque del libro UML y
Patrones de Craig Larman. - Variaciones
- Primero todo UML modelos y notación
- Se describe el modelado del negocio
- Se desdobla en dos el Modelo del Diseño
- Se estudian en profundidad todos los patrones GoF
12El proceso
- RUP (Rational Unified Process)
- Más conocido y extendido
- Grande y complejo
- Inapropiado para una asignatura
- Proceso de Larman
- Simple pero realista
- Compatible con UP dirigido por casos de uso,
iterativo e incremental, centrado en la
arquitectura
13Organización de las prácticas
- Ejercicios de modelado (clases prácticas)
- Casos de uso (6 horas), modelado estructural y
colaboraciones (4 horas), proyecto año anterior
(2 horas) - Estudio de herramienta de modelado UML (2
sesiones de laboratorio de hora y media). - Aplicación del proceso de Larman a un caso
práctico (unas 30 horas de trabajo) - Tres entrevistas de seguimiento y una final
14Ordenación temporal
Rational
Laboratorio
Patrones
Ejercicios
Modelado
Teoría
UML
Proceso
Patrones
Pers.
S5
S4
S3
S2
S1
S10
S9
S8
S7
S6
S15
S14
S13
S12
S11
15Trabajo Práctico
- Modelado de casos de uso y conceptual
- Escribir cuatro casos de uso
- Modelado de análisis DSS, colaboraciones y
modelado de clases - Escribir código para las colaboraciones
- Identificar patrones
- Pasos 1, 2 y 3 Entregas Parciales
16Valoración de los alumnos
- Valoración positiva
- Utilidad práctica (UML, proceso y patrones)
- Trazabilidad del proceso y es un método
sistemático - Han aprendido técnicas útiles para programar
mejor - Los alumnos aprenden las técnicas de modelado
UML. - Buena aproximación a un proceso real (aunque no
se aplican iteraciones).
17Examen teórico
- Ejercicios sobre patrones de diseño y patrones
GRASP - Exámenes años anteriores disponibles en
http//dis.um.es/jmolina/as.html
18Carga en ECTS
- A partir de ahora créditos ECTS
- 1 curso son 60 ECTS (30 un cuatrimestre)
- 1 ECTS 25 a 30 horas de trabajo del alumno
- Un curso son de 1500 a 1800 horas de trabajo del
alumno (un cuatrimestre la mitad) - Una asignatura cuatrimestral, 5 ECTS
19Carga alumno
- 30 horas de teoría
- 11 horas de ejercicios y 3 de seminarios UML
- 65 horas de estudio
- 30 horas para el trabajo práctico
20Evaluación
- El alumno debe superar el examen de teoría y las
prácticas. -
- Nota final 0.6Teoría 0.4Prácticas
- Si un alumno supera el examen teórico o las
prácticas se mantiene el aprobado para las
siguientes convocatorias del curso académico. - Curso 2006/2007 junio (23/22/122), septiembre
(15/18/99), febrero (11/7/56)
21Bibliografía Básica
- Grady Booch, et al. El lenguaje unificado de
modelado, Addison-Wesley, 2004, 2ª edición. - Jim Arlow e Ila Neustadt, UML 2, Anaya
Multimedia, 2006. - Craig Larman, UML y Patrones, 2ª edición,
Prentice-Hall, 2002 - Erich Gamma et al., Patrones de Diseño,
Addison-Wesley, 2002. - Otros
- M. Fowler, UML Gota a Gota, Segunda Edición,
Addison Wesley, 1997. - M. Grand, Patterns in Java, vol. 1, John Wiley,
Segunda Edición, 2002. - J. Rumbaugh et al., El Lenguaje Unificado de
Modelado, Manual de Referencia, Addison-Wesley,
2000. - P. Stevens, Utilización de UML, Addison-Wesley,
2002
22Enlaces
- Página de UML del OMG http//www.omg.org/uml
- Página de la asignatura
- http//dis.um.es/jmolina/as.html
23Certificación UML
- Certificaciones profesionales
- http//www.objectsbydesign.com/tools/certification
.html - Programa de Certificación de IBM
- Object-Oriented Analysis and Design with
UML, Test 486 - Programa de Certificación del OMG
24