Vous êtes sur la page 1sur 2

Programación III

Preparación Diseño orientado a objetos

Estudiar el capítulo 4 “Diseño Orientado a Objetos”. Luego responder las preguntas que se
plantean a continuación:

1) Explique brevemente en qué consiste la etapa de Diseño Orientado a Objetos y nombre las tres
actividades que la componen, explicando brevemente en qué consiste cada una.

2) Indicar a cuál de las tres actividades de la etapa de diseño corresponde cada una de las
siguientes tareas:
a) Dibujar el Diagrama de clases de implementación de UML.
b) Realizar el estudio de Tipos Abstractos de Datos en base a los requerimientos.
c) Establecer cuáles deben ser los datos de entrada y salida de cada requerimiento.
d) Incorporar métodos a las clases que luego se van a implementar.
e) Pensar a grandes rasgos los pasos de la ejecución de cada requerimiento.
f) Justificar que el diseño efectivamente respeta las multiplicidades del Diagrama conceptual.

3) Dado el siguiente Diagrama de Clases Conceptual y los requerimientos propuestos a


continuación para un sistema de formación de equipos de estudio en una universidad:

ALUMNO EQUIPO
2 integra *
cédula número
cuota base actividad

BECADO
descuento

1. Registrar un nuevo alumno en este sistema.


2. A partir del número y descripción de un nuevo equipo y de las cédulas de sus
integrantes, registrarlo en el sistema (cada número de equipo es único en el sistema).
3. Dado el número de identifica a un equipo, obtener sus datos y sus integrantes.
4. Calcular el monto total a recaudar por concepto de cobro de cuotas líquidas a alumnos.
La cuota líquida de cada alumno común es el 75% de su cuota base, mientras que a
cada alumno becado se le resta el descuento que le corresponde.
5. Dada una actividad, contar cuántos equipos registrados realizan dicha actividad.
Comentar oralmente los pasos necesarios para resolver cada requerimiento de acuerdo al
siguiente diseño:
Observaciones:
Alumnos = Diccionario (Alumno)
• Hay un único diccionario de alumnos
Alumno = cédula x nombre x SusEquipos
• Hay tantos diccionarios de equipos como
Becado = Alumno + (descuento) alumnos en el sistema.
SusEquipos = Diccionario (Equipo) • Cada equipo pertenecerá en simultáneo a
Equipo = número x actividad. dos diccionarios de equipos.

4) Elegir un nuevo diseño que permita resolver más eficientemente los requerimientos del
sistema anterior y escribir las observaciones que justifiquen su trazabilidad con el análisis.

1
Material de uso exclusivo para el curso de Programación III dictado por INET
Programación III
Preparación Diseño orientado a objetos

5) Para el diseño elegido en la pregunta anterior, comente nuevamente los pasos necesarios para
resolver cada requerimiento y escriba en detalle el desglose del 2º requerimiento. ¿Qué
documento escrito previamente en el proyecto hay que consultar para escribir el desglose?

6) Dibuje el Diagrama de clases de implementación para el diseño elegido en la pregunta 4.


• Por el momento no incorpore métodos al diagrama.
• Sí debe indicar los tipos de datos que tendrán los atributos.
• También debe indicar las estructuras de datos elegidas para las colecciones.

7) Incorpore métodos constructores, selectores y modificadores a las clases Alumno, Equipo y


Becado del diagrama dibujado en la pregunta anterior. ¿Es necesario que siempre estén
presentes los tres tipos de métodos?

8) Incorpore métodos primitivos a las colecciones del diagrama de la pregunta 6. ¿Es necesario
que siempre estén presentes todos los métodos primitivos de cada colección?

9) ¿Qué diferencia hay entre los métodos primitivos y los métodos específicos en un diseño?
¿Cuáles de los requerimientos de la pregunta 3 son apropiados de resolver con métodos
específicos? Incorpórelos al diagrama de la pregunta 6.

10) Los métodos polimórficos constituyen un tipo especial de métodos específicos…


a) ¿En qué consisten estos métodos y cuál es la utilidad?
b) ¿Qué relación deben necesariamente cumplir las clases que los utilicen?
c) Mencione ejemplos de métodos polimórficos que haya incorporado en las clases previas.

11) Explique brevemente en qué consiste el principio de separación en capas. ¿En qué medida
beneficia a la separación en capas la incorporación de una clase Fachada?

12) Incorpore una clase Fachada al diagrama de la pregunta 6 de acuerdo con las siguientes
consideraciones:
• Indique qué atributos debe poseer esta nueva clase.
• Incluya un método por cada requerimiento, decidiendo en cada caso si corresponde
función o procedimiento.
• Asegúrese de que el manejo de errores se realice sin afectar la separación en capas.

2
Material de uso exclusivo para el curso de Programación III dictado por INET

Vous aimerez peut-être aussi