Title: An
1Análisis y Diseño del Software
Facultad de Informática Ingeniería en Informática
Jesús García Molina Dpto. Informática y
Sistemas Universidad de Murcia http//dis.um.es/j
molina/
2OO en un plan de estudios
- 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 programas
- Proceso basado en UML y patrones de diseño
3OO, sí pero ... qué?, cuándo?, cómo?
4Nuestra propuesta
- Enfoque evolutivo (procedural-modular-OO)
- Dos asignaturas cuatrimestrales
- Introducción a la Programación OO
- Conceptos básicos
- Análisis y Diseño OO
- Un proceso basado en UML
- Patrones de Diseño
5Además
- En el segundo ciclo se ofertan asignaturas
optativas sobre - Componentes software
- Objetos distribuidos
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), 150 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
- Comprender problema persistencia OO
10La asignatura A/D de Software
- Contenidos teóricos
- Tema 1. El lenguaje UML (6 horas)
- Tema 2. Un proceso basado en UML (8 horas)
- Tema 3. Patrones de diseño (14 horas)
- Tema 4. Persistencia OO (2 horas)
11La asignatura A/D de Software
- Coincide con en el enfoque del libro UML y
Patrones de Craig Larman. - Variaciones
- Primero todo UML modelos y notación
- Etapa de 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
- Aplicación del proceso de Larman a un caso
práctico. - Ejercicios de modelado
- Casos de uso (3 sesiones), modelado conceptual (1
sesión), colaboraciones (3 sesiones) - Estudio de Rational Rose 2001 3.0 (3 sesiones)
- Desarrollo del proyecto (unas 30 horas)
- Tres entrevistas
14Ordenación temporal
Rational
Laboratorio
Ejercicios
Modelado
Patrones
UML
Proceso
Patrones
Pers.
Teoría
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 tres casos de uso
- Escribir tres colaboraciones
- Modelado de clases
- Escribir código para las colaboraciones
- Identificar patrones
- Pasos 1, 2 y 3 Entregas Parciales
16Examen 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
17Carga de una asignatura
- A partir de ahora créditos ECTS
- 1 curso son 60 créditos (30 un cuatrimestre)
- 1 crédito 25 a 30 horas de trabajo del alumno
- Un año son unas 1600 horas de trabajo del alumno
(un cuatrimestre, 800 horas) - Una asignatura cuatrimestral, 6 créditos
18Carga de A/D del Software
- 30 horas de teoría
- 9 horas de ejercicios y 3 de seminarios UML
- 90 horas de estudio
- 40 horas para el trabajo práctico
19Evaluación
- El alumno debe superar el examen de teoría y las
prácticas. -
- Nota final 0.6xTeoría 0.4xPrá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.
20Bibliografía Básica
- G. Booch, et al. El lenguaje unificado de
modelado, Addison-Wesley, 1999. - C. Larman, UML y Patrones, 2ª edición,
Prentice-Hall, 2002 - E. 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
21Enlaces
- Página de UML del OMG http//www.omg.org/uml
- Página de la asignatura
- http//dis.um.es/jmolina/as.html
22Valoració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 (no se
aplican iteraciones).
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