Está en la página 1de 20

METODOLOGÍA DE DESARROLLO DE

SISTEMAS II

GUÍA DE APRENDIZAJE

Autor de contenidos:
Carlos Neil
UNIDAD 1
DISEÑO OO

PREGUNTAS

1) ¿Cuáles son las diferencias principales entre el enfoque estructurado y el orientado a


objetos?
2) ¿Qué es una abstracción y para qué se utiliza?
3) ¿Cuál es el objetivo del encapsulamiento?
4) ¿Qué es un objeto? ¿Qué es una clase? ¿Qué diferencias existen entre ellos?
5) Un objeto se caracteriza por el estado, el comportamiento y la identidad. Explique cada una
de esas propiedades
6) ¿Qué son y para qué sirven las tarjetas CRC?
7) Las entidades deben tener un atributo identificador para diferenciar una ocurrencia de
instancia de otra. ¿Pasa lo mismo con los objetos?
8) El modelo entidad interrelación modela entidades, ¿qué diferencia existe entre una entidad
y una clase?
9) ¿Qué son los atributos de un objeto? ¿Es el mismo concepto de atributo de las entidades
en el modelo de datos?
10) ¿Qué es una operación y que diferencias existen con método y el mensaje?
11) ¿Cuál es el beneficio de la generalización?
12) Explique el concepto de herencia
13) ¿Qué significa herencia de atributos, métodos y asociaciones?
14) ¿Qué es una operación polimórfica? ¿Para qué se utiliza?
15) ¿Qué diferencia existe entre asociación, agregación y composición?

EJERCICIOS

1) A partir de los siguientes textos, determine si se trata de una agregación o generalización,


a. “... un coche está compuesto por 4 ruedas, un chasis, un motor, este último tiene 4
cilindros, una caja de cambios y un radiador...”
b. “...un coche es un tipo de vehículo, tal como un tractor, un tren o una moto...”

2) La secretaría de una universidad necesita un sistema informático para la gestión de


matrículas y personal del centro. Esta gestión será tanto académica como administrativa.

MSD 2 / UNIDAD 1.1 / Pág.2


Los elementos a tener en cuenta son: materias que se cursan, alumnos que asisten a la
universidad, profesores que dictan materias, departamentos, grupos de alumnos con sus horarios,
empleados administrativo, etc.

Cuando un alumno se matricula, se le asigna un grupo para las materias solicitadas. Hay que
tener en cuenta que un alumno puede pertenecer a más de un grupo para las distintas materias.
Interesa saber qué materia cursa un alumno en cada grupo en particular. Cuando el curso va a
comenzar, los departamentos comunican a la secretaría cuales serán los profesores que van a
impartir las distintas materias en los diferentes grupos. Un profesor puede impartir más de una
materia y una materia puede ser impartida por más de un profesor. Un profesor sólo puede
pertenecer a un departamento y puede haber profesores que no impartan ninguna materia. Los
profesores pueden ser titulares, adjuntos o ayudantes. Los alumnos realizarán exámenes de las
materias en las que se han matriculado, siendo de interés guardar sus notas en todas las llamadas
en las que éste se ha presentado. La universidad esta formada por distintas facultades y cada
facultad tiene distintos departamentos. La secretaría del centro también asigna empleados a los
distintos departamentos. Un empleado puede estar asignado a más de un departamento. Los
empleados, según su categoría, tendrán a su cargo otros empleados del centro. Además, hay
empleados que pueden no estar asignados a ningún departamento.

IDENTIFICAR EN EL SIGUIENTE SISTEMA

1) Clases de objetos del dominio de la aplicación


a. Identifique de cada una de ellas: símbolo (con sus atributos), intensión y extensión
b. Realice una tarjeta CRC por cada clase identificada

Por ejemplo:
Símbolo Atributos Intensión Extensión

Alumno nombre, apellido, Persona que (jorge, rodriguez, 19/06/76);


fecha_nacimiento, … estudia en la (raul, fernandez, 13/07/83);
universidad …

MSD 2 / UNIDAD 1.1 / Pág.3


2) Relaciones de generalización entre clases de objetos

Por ejemplo:

Superclase (generalización) Subclase


Persona Alumno, profesor, empleado

3) Relaciones de asociación, agregación o composición entre clases de objetos

Por ejemplo:

Todo (agregación) Parte


Universidad facultad

Clase 1 (asociación) Clase 2


Alumno Asignatura

MSD 2 / UNIDAD 1.1 / Pág.4


UNIDAD 2.1
HERRAMIENTAS DE MODELADO DEL ANÁLISIS Y DISEÑO
ORIENTADO A OBJETOS.

PREGUNTAS

1. ¿Qué es y para que se utiliza la Ingeniería de Requisitos?


2. ¿Qué es un requisito de software? ¿Cuáles son las características deseables?
3. ¿Qué es la Elicitación?
4. ¿Porque es necesaria la Elicitación?
5. Investigue y Explique la técnica de Elicitación, Brainstorming.
6. ¿Cuál es la diferencia entre la técnica Brainstorming y Prototipos? Investigar.
7. Mencione al menos 4 problemas para la identificación de requisitos.
8. Definir y explicar los tipos de Requisitos que conozca.
9. ¿Cuál es la relación entre los tipos de requisitos: usuarios y funcionales?
10. ¿Qué tipo de requisito debe ser considerado de mayor importancia?
11. Indique 3 ejemplos de cada tipo de requisito.
12. ¿Cuáles son los posibles actores en la Ingeniería de Requisitos?
13. ¿Cómo relacionaría los requisitos con los Casos de Uso?
14. ¿Cuál es el objetivo de realizar el diagrama de contexto?
15. Relacione el tema Casos de Usos y Escenarios.
16. Relacione el tema Casos de Usos y Colaboraciones.
17. Explique qué significa Asociación en Casos de Usos.
18. Diferencias entre la relación Include y Extend.
19. Explique qué significa Generalización en Casos de Usos.
20. Desarrolle 2 casos de ejemplo de Casos de Uso con problemas frecuentes.

MSD 2 / UNIDAD 2.1 / Pág.2


EJERCICIOS

A partir de la especificación del sistema “ATM-Simulation Example” resuelva:


1. Explique en sus propias palabras el comportamiento esperado para la siguiente
funcionalidad del ejemplo:
a. Se prende y apaga el cajero automático.
b. Control de lectura correcta de tarjeta y validación del ingreso de PIN.
c. Llevar a cabo operaciones de depósito, transferencia, consulta de saldo, y
extracción (incluyendo la interacción con el sistema del banco e impresión del
ticket).
d. Manejo de situaciones de error y excepciones (por ejemplo, mencionar ante
qué situaciones se muestran aviso de errores por pantalla).
2. Describir los requisitos que encuentren dentro de la especificación
3. Realizar un modelo con Enterprise Architect
4. Identificar de que tipo es cada uno.
5. Realizar el modelo de casos de uso, en base a los requisitos funcionales.

ATM SIMULATION EXAMPLE

REQUIREMENT SPECIFICATION

The software to be designed will control a simulated automated teller machine (ATM) having a
magnetic stripe reader for reading an ATM card, a customer console (keyboard and display) for
interaction with the customer, a slot for depositing envelopes, a dispenser for cash (in multiples of
$20), a printer for printing customer receipts, and a key-operated switch to allow an operator to start
or stop the machine. The ATM will communicate with the bank's computer over an appropriate
communication link. (The software on the latter is not part of the requirements for this problem.)
The ATM will service one customer at a time. A customer will be required to insert an ATM card and
enter a personal identification number (PIN) - both of which will be sent to the bank for validation as
part of each transaction. The customer will then be able to perform one or more transactions. The card
will be retained in the machine until the customer indicates that he/she desires no further
transactions, at which point it will be returned - except as noted below.

The ATM must be able to provide the following services to the customer:
1. A customer must be able to make a cash withdrawal from any suitable account linked to the
card, in multiples of $20.00. Approval must be obtained from the bank before cash is
dispensed.
2. A customer must be able to make a deposit to any account linked to the card, consisting of
cash and/or checks in an envelope. The customer will enter the amount of the deposit into the
ATM, subject to manual verification when the envelope is removed from the machine by an
operator. Approval must be obtained from the bank before physically accepting the envelope.

MSD 2 / UNIDAD 2.1 / Pág.3


3. A customer must be able to make a transfer of money between any two accounts linked to the
card.
4. A customer must be able to make a balance inquiry of any account linked to the card.

A customer must be able to abort a transaction in progress by pressing the Cancel key instead of
responding to a request from the machine.
The ATM will communicate each transaction to the bank and obtain verification that it was
allowed by the bank. Ordinarily, a transaction will be considered complete by the bank once it ATM
Simulation Example AG Software Engineering: Processes and Measurement has been approved. In the
case of a deposit, a second message will be sent to the bank indicating that the customer has deposited
the envelope. (If the customer fails to deposit the envelope within the timeout period, or presses
cancel instead, no second message will be sent to the bank and the deposit will not be credited to the
customer.)
If the bank determines that the customer's PIN is invalid, the customer will be required to
reenter the PIN before a transaction can proceed. If the customer is unable to successfully enter the
PIN after three tries, the card will be permanently retained by the machine, and the
customer will have to contact the bank to get it back.
If a transaction fails for any reason other than an invalid PIN, the ATM will display an
explanation of the problem, and will then ask the customer whether he/she wants to do another
transaction. The ATM will provide the customer with a printed receipt for each successful transaction,
showing the date, time, machine location, type of transaction, account(s), amount, and ending and
available balance(s) of the affected account ("to" account for transfers).
The ATM will have a key-operated switch that will allow an operator to start and stop the
servicing of customers. After turning the switch to the "on" position, the operator will be
required to verify and enter the total cash on hand. The machine can only be turned off when it is not
servicing a customer. When the switch is moved to the "off" position, the machine will
shut down, so that the operator may remove deposit envelopes and reload the machine with
cash, blank receipts, etc.
The ATM will also maintain an internal log of transactions to facilitate resolving ambiguities
arising from a hardware failure in the middle of a transaction. Entries will be made in the log when the
ATM is started up and shut down, for each message sent to the Bank (along with the response back, if
one is expected), for the dispensing of cash, and for the receiving of an envelope. Log entries may
contain card numbers and dollar amounts, but for security will never contain a PIN.

MSD 2 / UNIDAD 2.1 / Pág.4


UNIDAD 2.2
DIAGRAMA DE CLASES

PREGUNTAS

1) ¿Cómo se representa una clase en UML? ¿Y un objeto?


2) ¿Cómo se representa un atributo y una operación
3) ¿Cuál es el objetivo de establecer una visibilidad en los atributos y operaciones de una
clase? ¿Cómo vincula este concepto con el de encapsulamiento?
4) Explique los ámbitos de visibilidad privada, publica y restringida de atributos y
operaciones
5) ¿Qué es una clase abstracta? ¿Cómo se representa? ¿Para qué se utiliza?
6) ¿Qué es una interfaz? ¿Qué diferencia tiene con una clase abstracta?
7) ¿Qué es una dependencia?
8) ¿Qué representa una asociación entre clases?
a) Explique nombre de rol y multiplicidad
9) ¿Cómo se instancias las clases y las asociaciones?
10) ¿Cómo se representa una asociación?
a) unaria
b) binaria
11) ¿Cómo se representa una generalización?
a) ¿En qué casos la utilizaría?
12) ¿Cómo se representa agregación y una composición?
a) ¿Cuándo usaría una u otra?
13) ¿Cómo se representa una clase asociación?
a) ¿Para qué se utiliza?
14) ¿Qué es un paquete y para que se usa?

MSD 2 / UNIDAD 2.2 / Pág.2


Ejercicios

1) A partir de la asociación entre PROVEEDOR Y PRODUCTO (figura 1), realizar un diagrama de


objetos (mostrando el estado) con enlaces entre ellos

Figura 1: Asociación

2) Proponga ejemplos de asociación binaria 1..1 a 1..* y 0..* a 1..*. Describa nombre de la
asociación, de rol y multiplicidad. Explíquelas textualmente.

3) A partir de esta jerarquía de clases (figura 2), proponga un ejemplo con atributos y
operaciones en la clase y subclases. Utilice clases abstractas ¿Qué beneficios encuentra en
la estructura propuesta?

clase 1

clase 2 clase 3

Figura 2: Generalización

4) Realice el diagrama de clases UML, dibuje: clases, operaciones básicas, multiplicidad,


nombres de rol, etc

“...los alumnos se describen por su nombre, apellido, dirección y teléfono y las operaciones que
se pueden realizar sobre esos atributos son ingresar esos valores y mostrarlos...”

MSD 2 / UNIDAD 2.2 / Pág.3


“... un empleado trabaja en un departamento (pero puede ser que no tenga asignado
inicialmente ninguno), el departamento puede tener muchos empleados (pero siempre debe
tener asignado al menos uno) ...” “... algunos empleados dirigen a otros...”

5) Proponga una relación de agregación entre computadora y sus componentes.


6) Proponga un ejemplo de clase asociación
7) En el siguiente sistema identifique

La operatoria de un servicio de auxilio mecánico de una compañía de seguros de


automotores es la siguiente: los pedidos de los asegurados se reciben en la Sala
de Control, por vía telefónica, y se registra: Nombre y Documento del Asegurado,
Nº de Póliza, Marca, Modelo y Patente del Vehículo, Falla presunta y Ubicación
geográfica. Se verifica que todos los datos correspondan a la póliza, que la póliza
esté vigente, que tenga los pagos al día y que no exceda el número máximo de
auxilios autorizados. Cada póliza de seguro de un vehículo habilita como base a
recibir 4 servicios de auxilio para ese vehículo durante el período anual de
vigencia de la póliza y en el caso de clientes con más de un vehículo asegurado,
se habilita 1 servicio adicional por cada uno de los otros vehículos. Si se excede
el límite, el servicio será facturado por el mecánico con una tarifa preferencial.
Si los datos son correctos, y si es el caso, el asegurado acepta el servicio a
facturar, se le asigna un número de pedido y un número de vehículo de auxilio.
Esos datos se informan al asegurado, así como el tiempo estimado de llegada.
La información se pasa también a la computadora portátil de abordo del vehículo
de auxilio asignado. Al llegar al lugar, el mecánico verifica los datos, hace una
evaluación de las tareas y las ingresa a la computadora portátil para
conocimiento de la Sala de Control. Al finalizar, carga en la computadora las
tareas realmente ejecutadas y emite el Parte de Servicio para la firma del
asegurado. Si es el caso, también emite la factura, que se registrará en la cuenta
del cliente y que, por su parte, el cliente deberá pagar en un banco.

a) Clases
i. Indique posibles atributos y operaciones básicas
ii. Visibilidad de ambos
b) Establezca asociaciones entres las clases
i. Nombre a las asociaciones y asigne nombre de roles
ii. Identifique la multiplicidad de las asociaciones.
c) Identifique relaciones de generalización y agregación entre las clases
d) Realice el diagrama de clases completo.
e) Implemente, en un lenguaje de programación, las clases y sus asociaciones y jerarquías.

MSD 2 / UNIDAD 2.2 / Pág.4


UNIDAD 2.3
HERRAMIENTAS DE MODELADO DEL ANALISIS Y DISEÑO OO

PREGUNTAS

1) ¿Qué describe el diagrama de comunicación?


2) ¿Qué diferencia tiene con el diagrama de secuencia?
3) ¿Qué marcan los números que anteceden los mensajes?
4) ¿Qué activa un mensaje en objeto destino?
5) ¿Cuál es el principal objetivo de la elaboración, dentro del proceso de desarrollo
propuesto (UP), de los diagramas de comunicación en la etapa de diseño?
6) ¿Qué describe el diagrama de secuencia?
7) ¿Cómo se representan las interacciones entre objetos en el diagrama?
8) ¿Qué representa el eje vertical en la gráfica del diagrama?
9) ¿Cómo se representan los mensajes entre objetos?
10) ¿Qué es un diagrama de secuencia de sistema?
11) ¿Para qué los utilizo y en qué etapa de proceso de desarrollo?
12) ¿Cómo se relacionan los diagramas de secuencia con los casos de uso?

MSD 2 / UNIDAD 2.3 / Pág.2


EJERCICIOS

1) A partir del siguiente diagrama de:

1: solicitarPelicula(Soc, Pel)
sistema 2: controlarSocio(Soc)

5: peliculaOK() registro
socio : Socios
empleado 3: socioOK()

4: controlarPelicula(Pel) 7: prestamoOK()

registro registro
Peliculas 6: registrarPrestamo(Soc,Pel) Prestamos

a) Armar el diagrama de secuencia


b) Al menos, que operaciones deberían tener las clases que instancian los objetos
del diagrama

2) Realizar el diagrama de secuencia de sistema (DSS) de los siguientes casos de uso


(desarrollarlos, usar la plantilla y hacer el respectivo RUBRIC)

a. “... el usuario introduce la tarjeta en el cajero, el sistema le solicita la clave, si es


correcta le solicita la operación a realizar (si el número no es correcto, le pide
reintento), el usuario introduce la opción retirar dinero...”

b. “... el usuario solicita un libro, el sistema verifica la condición del socio (si es
moroso o ya retiro más de tres libros). El sistema controla si el libro está
disponible para préstamo...”

MSD 2 / UNIDAD 2.3 / Pág.3


UNIDAD 2.4
DIAGRAMA DE ACTIVIDAD
PREGUNTAS

1. Qué describe el diagrama de actividad?


2. ¿Qué diferencia tiene con el diagrama de secuencia?
3. ¿Qué diferencia tiene con el diagrama de flujo?
4. ¿Se puede utilizar para detallar situaciones donde el proceso paralelo puede ocurrir en la
ejecución de algunas actividades?
5. Explique y ejemplifique el elemento Restricción de acción en un diagrama de Actividad.
6. Explique y ejemplifique el elemento Nodo final y sus tipos en un diagrama de Actividad.
7. Explique y ejemplifique el elemento Flujo de objetos y Objeto en un diagrama de
Actividad.
8. ¿Qué implica un nodo de decisión y combinación?
9. ¿A qué se refiere con región Interrumpible en un diagrama de actividad?
10. Para cada una de las siguientes afirmaciones discuta e indique si esta es Verdadera o Falsa.
a. El diagrama de actividades es una herramienta gráfica, la cual permite modelar
aspectos dinámicos de un sistema.
b. Se pueden utilizar diagramas de actividades para modelar aspectos dinámicos de
un sistema en diferentes contextos y etapas de desarrollo.
c. Uno de tales contextos puede ser: el del modelado del flujo de trabajo (workflow)
existente en una empresa, cuando se necesita comprender el proceso de negocios
de la empresa.
d. Los diagramas de actividades se pueden utilizar para modelar el flujo de control
entre las actividades que se realizan en el contexto de: un único caso de uso, o
muchos casos de uso, en las etapas de captura de requerimientos y análisis; o una
o varias clases de objeto, en una etapa de diseño.

MSD II / UNIDAD 2.4 / Pág.2


PRÁCTICA

1) Describa cada uno de los artefactos que identifica en el diagrama que se muestra a
continuación y explique brevemente que interpreta

2) Considere ahora, el siguiente diagrama de actividad desarrollado para describir el


curso básico del caso de uso correspondiente al ingreso de una orden de compra.
a. Modelar que puede ingresarse más de un producto para la orden de compra.
Agregar flujos alternativos del caso de uso. Tenga en cuenta para esto la
especificación detallada del caso de uso. Incluya, además, el siguiente flujo
alternativo: Entre cualquier actividad entre el estado de inicio y “Enviar
Formulario”, el cliente puede terminar el caso de uso (presionando “Cancelar”,
por ejemplo). Asignar actividades al cliente y al sistema, utilizando
swimlanes.Balancear, si fuera posible, los niveles de abstracción de las
actividades.

MSD II / UNIDAD 2.4 / Pág.3


3) Realice los diagramas de secuencia de los casos de uso detectados en la guía 2.1 sobre
el escenario denominado “ATM-Simulation Example” correspondientes a los
movimientos de fondos. Utilice Enterprise Architect para realizar el modelo

MSD II / UNIDAD 2.4 / Pág.4


UNIDAD 3
PATRONES DE DISEÑO PARA ASIGNACIÓN DE
RESPONSABILIDADES

PREGUNTAS

1. Explique conceptualmente que es un patrón de diseño y para que se utiliza


2. Proponga una aplicación para el patrón adaptador (figura 1)

Figura 1

3. ¿Qué es una responsabilidad, y cuáles son los tipos básicos de responsabilidades?


4. Explique mediante el formato problema-solución, los patrones:
a. Experto; Creador; Bajo Acoplamiento; Alta Cohesión; Controlador

MSD 2 / UNIDAD 3 / Pág.2


UNIDAD 3
METODOLOGÍAS ÁGILES
PREGUNTAS

1. ¿Qué son las metodologías ágiles?


2. ¿Cuáles son las ventajas de aplicar metodologías ágiles?
3. ¿Cuál es la diferencia entre las metodologías tradicionales y las ágiles? Ejemplifique.
4. ¿En qué consiste el concepto Scrum?
5. Explique el Manifesto Ágil.
6. ¿En qué consiste el concepto Sprints?
7. ¿En qué consiste el concepto Product Owner?
8. ¿Cuál es la función más relevante del ScrumMaster?
9. Explique el concepto “actividad adaptativa” a nivel Estimación
10. Explique porque la estimación de tiempo es diferente a la estimación de duración.
11. ¿Por qué en metodologías ágiles la estimación la lleva el equipo de trabajo?
12. Explique la Estimación Planning Poker.
13. ¿Cómo es estimada la velocidad de desarrollo en metodologías ágiles?
14. Describa las técnicas de retrospectiva.
15. ¿Qué es XP?
16. ¿Cuáles son las ventajas y desventajas de XP?
17. Explique que es y cómo funciona TDD.
18. Enumere al menos 5 buenas prácticas para metodologías ágiles.

MSD 2 / UNIDAD 3.3 / Pág.2


UNIDAD 4
LENGUAJE DE RETRICCIÓN DE OBJETOS
PREGUNTAS

1) ¿Porqué un modelo gráfico (como un diagrama de clases) no es suficiente para lograr una
especificación precisa y no ambigua?
2) ¿Cuáles son las ventajas y desventajas de los lenguajes formales?
3) ¿OCL puede utilizarse para escribir lógica de programas?
4) ¿Qué significa que OCL es un lenguaje tipado?
5) ¿Cuáles son los principales usos de OCL?
6) ¿Qué es un invariante?
7) Dentro del ámbito de OCL, ¿qué son las propiedades: atributo y operación y extremo de
asociación?
8) Defina formalmente las operaciones sobre colecciones: select(), forAll(),
exists(), size, count(), isEmpty(), notEmpty()

EJERCICIOS

A partir del siguiente diagrama de clases, establecer las siguientes restricciones utilizando OCL:

MSD 2 / UNIDAD 4.1 / Pág.2


1) Para cada tipo de avión, el número de asientos para tripulantes no puede ser mayor al
número de asientos para pasajeros.

2) Los viajes no pueden tener el mismo destino que el origen.

3) La cantidad de horas de vuelo de un avión debe ser menor a 1000.

4) Para aviones del tipo “Delta” de la serie “A”, la cantidad de asientos para los pasajeros debe
ser de 40.

5) Los pasajeros de los viajes deben ser mayores de 3 años y menores de 95.

6) Un viaje debe tener más de 5 pasajeros.

7) La cantidad de tripulantes de un viaje debe ser menor o igual a la cantidad de pasajeros.

8) La cantidad de pasajeros de un viaje debe ser menor o igual a la capacidad de asientos del
avión asignado al vuelo.

9) Un avión no puede tener mas de 500 viajes asignados en su vida útil si es del tipo “Delta”.

10) Para los viajes que tengan asignados aviones con una cantidad de horas de vuelo superior a
500 hs, la edad de los tripulantes deben ser mayores a 50 años.

MSD 2 / UNIDAD 4.1 / Pág.3


UNIDAD 5
TRANSFORMACION DEL MODELO DE CLASES AL MODELO ER

PREGUNTAS

1. ¿Por qué utilizamos un modelo relacional para la persistencia de objetos?


2. ¿Por qué el primer mapeo lo hacemos al modelo entidad interrelación?
3. ¿Cómo se establecen las correspondencias entre las clases y entidades?
4. ¿Qué sucede con los atributos y las operaciones de las clases en la transformación?
5. ¿Cómo se transforman las asociaciones de acuerdo a su multiplicidad?
6. ¿Qué sucede con las agregaciones y las composiciones?
7. ¿Cómo transformo las relaciones de generalización?
8. ¿Cómo transformo las clases asociaciones?

EJERCICIOS

1. Realice la transformación del Diagrama de Clases al Diagrama ER

2. Realice la trasformación del diagrama de clases al modelo entidad interrelación, y de éste a


estructura de datos, de los ejercicios 4 y 7 de la guía 2.2 “Diagrama de Clases”

MSD 2 / UNIDAD 5 / Pág.2

También podría gustarte