Departamento de
Informática y
Sistemas
Análisis y Diseño del Software
Jesús García Molina
Departamento de Informática y Sistemas
Universidad de Murcia
http://dis.um.es/~jmolina
[email protected]
OO 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
OO, sí pero ...
¿qué?, ¿cuándo?, ¿cómo?
Propuesta 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
Además

En el segundo ciclo se ofertan asignaturas
optativas sobre:
–
Componentes software
– Objetos distribuidos
– Frameworks
– Arquitectura del software
Introducció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”
Introducció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
La asignatura “A/D de Software”
Asignatura troncal, cuarto curso, 6 créditos
(3T+3P), 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”
Objetivos 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
La 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)
La 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
El 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
Organizació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
Ordenación temporal
Laboratorio
Rational
Ejercicios
Modelado
Teoría
UML
S1
S2
S3
Patrones
Proceso
S4
S5
S6
S7
Patrones
S8
S9 S10 S11 S12 S13 S14 S15
Pers.
Trabajo Práctico
1. Modelado de casos de uso y conceptual
2. Escribir cuatro casos de uso
3. Modelado de análisis: DSS, colaboraciones y
modelado de clases
4. Escribir código para las colaboraciones
5. Identificar patrones
Pasos 1, 2 y 3: Entregas Parciales
Valoració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).
Examen 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
Carga 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
Carga 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
Evaluació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)
Bibliografí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
Enlaces

Página de UML del OMG:
http://www.omg.org/uml

Página de la asignatura:
http://dis.um.es/~jmolina/as.html
Certificació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
¿ Cuestiones?
¿Comenzamos?
Descargar

Tema 2