Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Estimados alumnos,
1. Pida todas las hojas que vaya a necesitar (aproximadamente 8, una por pregunta)
y úselas, desde el principio, para hacer 'en sucio' cada pregunta en una (o más)
hoja.
2. Lea muy atentamente el enunciado. Piense que, el objetivo, es codificar el
programa.
3. Sólo va a trabajar en un caso de uso. Identifíquelo y determine los actores
principales (sólo los que interactúan directamente con el programa). Esboce con
ello el diagrama de casos de uso. Ya volverá a refinar el diagrama.
4. Piense en lo que tiene que hacer el programa. Escriba sólo los 4 ó 5 pasos mas
importantes en la escritura del caso de uso. Piense qué información necesita (el
programa) para ejecutar esos pasos e identifique algunos elementos que van a
contener esa información.
5. Esbozar las dos preguntas anteriores debe ocupar unos minutos. Lo importante es
el Modelo de Dominio (2 puntos). No se le ocurra hacerlo definitivamente ahora
porque, seguramente, se acabará el examen y no estará ni bien ni completo.
Empiece a hacer un borrador con los elementos identificados en el punto anterior.
Empiece ya a pensar qué van a hacer, para qué sirven y qué información van a
necesitar para hacer eso (atributos, vaya rellenando los objetos con ellos; con
cuidado, sin duplicidades). ¡Ojo con las relaciones! La mayoría de las relaciones del
Diagrama de Domino son de inclusión, composición, información... generalmente
estáticas. Las etiquetadas con verbos llevan a pensar en acciones, métodos o
responsabilidades que se asignarán más adelante a las clases. Se va a volver a
este borrador muchas veces.
6. Para el DSS del caso de uso, se recomienda hacer otro borrador. Represente el
actor que genera el evento de comienzo del CU. No ponga al otro lado al 'Sistema',
hágalo llegar a quién decida que va a ser el Controlador del evento (o el principal
del CU). Hágalo así con el resto de mensajes, hágalos llegar a la clase que decida
que va tener la responsabilidad de hacer el imperativo del mensaje (o porque tiene
la información necesaria). Seguramente necesitará volver al Modelo de Dominio y
cambiar cosas. Vale la pena pero hágalo rápidamente, sin mucha profundidad.
Esta pregunta vale poco y sólo es rentable para decidir qué contratos
desarrollamos en 5 y 6. Pero ¡ojo! se nota mucho si, en la elección, se utilizan
operaciones irrelevantes y de poca actividad. Deje la escritura de las operaciones
para cuando lo tenga más claro.
7. Las preguntas 5 y 6 son fundamentales. Cada pregunta, una operación de la
pregunta 4. Normalmente, la operación comienza con un evento (que proviene de
un actor) o un mensaje desde otra clase. Aquí se decide quién hace de controlador
(porque se le asigna esa responsabilidad y tiene -o puede obtener- los datos para
ejecutarla). Hay que numerar, la secuencia de acciones. La acción de una flecha
entrante a una clase significa que, esa clase, tiene ese método (DCD) y maneja la
información necesaria para ejecutarlo (atributos que se anotan en el Modelo de
Dominio). De igual forma, si devuelve un valor, será información que maneja la
clase de origen (atributos que se anotan en el Modelo de Dominio). Nada puede
salir 'de la nada'. Ni valores, ni atributos, ni tipos (clases). Ninguna clase puede
manejar valores que no contenga (atributo, completar MdD) ni hacer cosas para
las que no tenga un método definido (construir el DCD). Seguramente haya que
corregir, también, el DSS de la pregunta 4. Vale la pena emplear la mayor parte
del tiempo en estas dos preguntas porque, al final, ya está casi todo hecho.
8. En este punto, creo que, lo más rentable, es pasar a 'limpio' las preguntas 3, 5 y
6. Después, el DSS de la 4 y escribir los contratos de las operaciones elegidas. A
continuación, las preguntas 1, 2, 7 y 8 (sin complicarse). Por último, las de 'Bonus
Points': 9 y 10.
Espero que sea útil para el examen. También he incluido unas recomendaciones para
algunos aspectos de los contenidos de la asignatura. Gracias y un saludo,
Estimados alumnos,