Modelar transacciones

(Imagen: Edgar Degas - Bailarina con Bouquet de flores)

Las transacciones definen un grupo atómico de invocaciones a operaciones: se realizan todas o ninguna. En el contexto de persistencia, una transacción define un grupo de cambios a un grupo de objetos que o son realizados todos o no se realiza ninguno. Las transacciones brindan consistencia, ya que se aseguran que los objetos pasen de un estado consistente a otro. Si todas las operaciones especificadas en la transacción no se pueden realizar (por lo general porque ocurrió un error), se cancela la transacción y los cambios realizados durante la transacción son revertidos.

Las condiciones de error anticipadas representan flujos de eventos excepcionales en los casos de uso. En otras ocasiones, las condiciones de error ocurren debido a fallas en el sistema. Las condiciones de error deben documentarse en las interacciones. Los errores simples y las excepciones pueden mostrarse en el lugar en el que ocurren, mientras que los errores complejos pueden requerir sus propias interacciones. Los modos de falla de objetos específicos pueden mostrarse en máquinas de estado. El manejo de estos modos de falla puede mostrarse en la interacción donde se presenta la excepción.

Las transacciones se pueden representar textualmente mediante scripts o por mensajes explícitos.

Basado en el material del curso DEV475: Mastering Object-Oriented Analysis and Design with UML 2.0

Publicar un comentario