Ir al contenido principal

Caso 3: MarketSoft y Dominio


El caso de estudio agrega mayor información a la descripción del proceso de gestionar venta para el SuperMarket. Por lo tanto, sirve de ejemplo para comprender el modelo de dominio usando el diagrama de clases de UML.


INTRODUCCIÓN
La información está relacionada a los objetos de negocio quienes representan los elementos de entrada y salida del proceso.

GESTIONAR VENTA
El proceso inicia cuando un cliente llega al SuperMarket y solicita un pedido. El vendedor, con el nombre de cada producto solicitado, verifica la existencia en almacen. Si la cantidad solicitada por cada producto no supera el stock, el producto puede ser vendido y el vendedor informa los precios de cada uno. Si el cliente decide comprar los productos, el vendedor crea el comprobante de venta  y le entrega al cliente para que pague en caja. El comprobante de venta tiene un número, una fecha y el detalle del pedido donde se describe el nombre de los productos, sus precios y las cantidades solicitadas de cada producto. Al final del comprobante se calcula el monto a pagar. El Cliente se dirige a caja a pagar y luego el cajero sella el comprobante como pagado. En el SuperMarket sólo se puede pagar en efectivo y en caso el cliente no tenga se anula el comprobante. Por otra parte, el vendedor va empacando los productos solicitados. Por último, el cliente retorna al vendedor para reclamar los productos, para esto el vendedor verifica si el comprobante tiene el sello de pagado. Si el comprobante está pagado, el vendedor entrega los productos y el proceso termina.

ACTIVIDADES DE APRENDIZAJE:
A partir de la descripción del caso, elaborar el Modelo de Dominio en base a los siguientes pasos:

  • Identificar las entidades de negocio y dibujarlas en el diagrama de clases.
  • Establecer relaciones de asociación entre las entidades de negocio.
  • Asignar los atributos a cada entidad de negocio.


DESARROLLO:

Las entidades de negocio identificadas en primera instancia en base a la información del proceso son: el comprobante de venta y el producto. y se muestran en el siguiente diagrama de clases.


Luego de identificar las entidades de negocio se establecen las relaciones de asociación indicando un nombre y su multiplicidad en el extremo de la relación.


Como la descripción del proceso agrega datos relacionado a las entidades de negocio, estos datos son mostrados como atributos en el diagrama de clases.


Pero el dato cantidad solicitada por cada producto no corresponde a ninguna de las dos entidades de negocio. Para esto se debe agregar una nueva entidad de negocio que contenga el atributo cantidad. En los casos donde exista una relación de asociación de muchos a muchos, la nueva entidad es una clase intermedia en la relación.


El Modelo de Dominio es un modelo conceptual y captura la información esenciales necesarias que ayuda a la gente a entender el dominio - sus conceptos, terminologías y relaciones. A partir de la información que obtenemos de los procesos de negocio se puede elaborar un modelo aproximado y que será completado cuando se detallen los requisitos del sistema.

Comentarios

Entradas populares de este blog

Técnicas para elaborar el Modelo de Dominio

El Modelo de Dominio definido en la publicación anterior nos describe la importancia de utilizarlo como artefacto en un proceso de desarrollo de software. Ahora describiremos algunas técnicas que se pueden usar para poderlo elaborar.

El Modelo de Dominio

Cuando se va a desarrollar un software es esencial estudiar y analizar el problema que se desea resolver. Este problema puede estar enfocado por ejemplo a la automatización de un proceso de negocio de alguna empresa. El software a desarrollar seguramente permitirá registrar información que necesite el proceso de negocio y generar resultados de valor para sus usuarios. También deberá permitir validar o hacer cumplir muchas reglas de negocio. Por lo tanto, los ingenieros de software necesitan usar algunas técnicas que les ayuden a entender mejor la problemática que están analizando antes de iniciar con la implementación del software. 

Mapa conceptual sobre la Ingeniería de Software

A continuación se muestra un mapa conceptual que rescata los principales conceptos relacionados a la Ingeniería de Software como tema central. Agradezco tus comentarios y aportaciones, puedes sugerir otros conceptos que creas importantes relacionados a la Ingeniería de Software y comentarlo.