4.1 - OCL (Lenguaje de Restricción de Objetos) Flashcards

1
Q

¿Por qué un modelo gráfico (como un diagrama de clases) no es suficiente para lograr una especificación precisa y no ambigua?

A
  • Complejidad del sistema: Los sistemas son complejos y dinámicos, y un diagrama de clases puede no capturar todos los aspectos importantes.
  • Ambigüedad e interpretación: Los diagramas gráficos pueden ser interpretados de manera ambigua, lo que puede llevar a malentendidos y errores de implementación.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Cuáles son las ventajas y desventajas de los lenguajes formales?

A

Ventajas: la precisión y la automatización, facilitando la representación clara de reglas y conceptos matemáticos, lo que reduce errores y mejora la comunicación entre expertos.

Desventajas: su complejidad de aprendizaje y la posible falta de intuición pueden limitar su accesibilidad

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿OCL puede utilizarse para escribir lógica de programas?

A

No, se utiliza para establecer restricciones y reglas en los modelos UML

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué significa que OCL es un lenguaje tipado?

A

Que se especifiquen y se respeten los tipos de datos de manera explícita.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Cuáles son los principales usos de OCL?

A

La validación de la consistencia de modelos UML, mediante la especificación de restricciones y reglas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Qué es un invariante?

A

Es una condición o restricción formalmente expresada que debe ser siempre verdadera para una entidad específica.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Dentro del ámbito de OCL, ¿qué son las propiedades: atributo y operación y extremo de asociación?

A
  • Atributo es una propiedad de una clase que almacena información.
  • Operación es un comportamiento que una clase puede realizar.
  • Extremo de asociación es el punto final de una relación entre clases.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Defina formalmente la operación sobre colecciones: select

A

Devuelve una nueva colección que contiene todos los elementos de la colección original que satisfacen la expresión dada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Defina formalmente la operación sobre colecciones: forAll

A

Devuelve verdadero si la expresión dada es verdadera para todos los elementos de la colección; de lo contrario, devuelve falso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Defina formalmente la operación sobre colecciones: exists

A

Devuelve verdadero si la expresión dada es verdadera para al menos un elemento de la colección; de lo contrario, devuelve falso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Defina formalmente la operación sobre colecciones: size

A

Devuelve el número de elementos en la colección.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Defina formalmente la operación sobre colecciones: count

A

Devuelve el número de elementos en la colección que satisfacen la expresión dada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Defina formalmente la operación sobre colecciones: isEmpty

A

Devuelve verdadero si la colección está vacía; de lo contrario, devuelve falso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Defina formalmente la operación sobre colecciones: notEmpty

A

Devuelve verdadero si la colección no está vacía; de lo contrario, devuelve falso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly