INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 2
Patrn de diseo ECB (Entity, Control, Boundary)
El trmino patrn sugiere la forma de algo hecho, algo pre-concebido, algo ya definido. Patrn se define como: Modelo que sirve de muestra para sacar otra cosa igual. (Espaola, 2012).
Por definicin, un patrn de diseo sirve como base para la resolucin de problemas. Para que sea considerado como tal debe poseer ciertas caractersticas, una de ellas es que debe probar su efectividad en situaciones que hayan sido resueltas previamente. Adems, debe ser reutilizable, esto quiere decir que puede aplicarse a ms de un problema en distintos escenarios.
En este aspecto, el patrn ECB posee caractersticas que permiten su reutilizacin, puede ser usado en distintos escenarios y, adems, permite dar un enfoque fundamental para la modularizacin de los sistemas de software. Aunque su uso est asociado generalmente con la interfaz grfica del sistema, involucra conceptos que abordan las tcnicas orientadas a objetos.
Las principales ventajas que se pueden apreciar al usar este patrn son:
Centra su atencin en los requisitos funcionales del sistema. Se puede notar su incidencia en el contexto del dominio del problema. Ocasionalmente definen una interfaz en trminos de operaciones. Se pueden definir atributos pero en un nivel alto. Siempre se define con base en los estereotipos entidad, interfaz y control.
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 3
Elementos que componen el patrn ECB
El patrn ECB utiliza estereotipos grficos que representan esencialmente los objetos y las acciones que realiza el sistema. stos son:
Entidad o entity: entrega y/o recibe datos en el sistema. Control: realizan las acciones definidas en el sistema o acciones provenientes de la frontera. Boundary o frontera: corresponden a las interfaces (acciones) con las cuales interactan los objetos de control y las entidades.
La simbologa asociada es la siguiente:
Figura 1:
Los objetos entidad permiten modelar la informacin que el nuevo sistema deber gestionar, informacin que permanece incluso cuando el caso de uso finaliza.
Es importante mencionar que los objetos entidad son solo portadores de informacin, dado que el comportamiento, y toda la dinmica del sistema, debe recaer y ser responsabilidad de los objetos de control.
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 4
Observa algunos ejemplos de objetos de este tipo:
Figura 2:
En referencia al objeto interfaz es necesario indicar que toda la funcionalidad que depende directamente del entorno recae en este objeto, pues en ella se modelan todas las interacciones entre el sistema y sus actores.
Los objetos interfaz tienen por funcionalidad trasladar las acciones de los actores a eventos en el sistema y stos ltimos a informacin que pueda ser mostrada al actor.
Normalmente, el objeto interfaz representa la abstraccin de elementos comunes con los que interactan los usuarios, stos son, entre otros: ventanas, formularios, paneles, dispositivos de entrada y salida, etc.
Observa el ejemplo que hace referencia a dos objetos del tipo interfaz:
Figura 3: Los actores necesitan de interfaces para poder llevar a cabo sus acciones. Acciones que en su conjunto representan la operatividad del sistema.
Aprecie la figura en la cual el objeto actor interacta con una interfaz:
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 5
Figura 4:
Los objetos de control, por su parte, al ser un nexo entre los usuarios y los datos almacenados, permiten capturar reglas del negocio, las que por lo general estn sujetas a cambios.
Siempre actan como unin entre los objetos interfaz y entidad, pero no siempre aparecen (eso depende del grado de complejidad del proceso en cuestin).
Su generacin depende de los casos de uso, dado que, por lo general, cada caso de uso tiene inicialmente un objeto de control asociado.
Observa el siguiente ejemplo en el que se aprecia la interaccin de un actor, un objeto entidad, una interfaz y un objeto de control
Figura 5:
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 6
El cliente interacta con la interfaz cajero, que a su vez se relaciona con el objeto de control que en definitiva es quien tiene las operaciones necesarias para gestionar los datos de la entidad cuenta corriente.
El siguiente caso ejemplifica, en forma ms acabada, las interacciones de los objetos que componen el patrn ECB.
Figura 6:
La imagen muestra la interaccin del cliente con la interfaz cajero para requerir las operaciones especficas, a su vez, las operaciones solicitadas (procesos) son llevadas a efecto por los controladores adecuados, que en definitiva son los que reflejan los cambios realizados sobre la entidad cuenta corriente.
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 7
La importancia de los objetos (entidad, interfaz y control) radica en que aparecen en forma natural asociados a los casos de uso. Adems, es posible obtener objetos ms pequeos y especializados, que ayudan a la construccin de los diagramas de secuencia usados en UML cuando es necesario definir la dinmica de comportamiento del sistema que se est construyendo.
El uso del patrn ECB permite la definicin de atributos en un nivel alto, por lo tanto, la abstraccin se torna fundamental para poder comenzar el anlisis de la solucin a una problemtica.
Desde el punto de vista de los datos y su comportamiento, en trminos simples, se deben identificar los objetos y las acciones correspondientes a cada uno de ellos, omitiendo, en primera instancia, los detalles de su composicin y/o comportamiento.
Para bosquejar el esquema, tomando como base el diagrama del cajero automtico y del banco usado como ejemplo del patrn ECB, se puede indicar que:
Quien usa el cajero automtico es una persona denominada cliente El cajero automtico es un ente automatizado Por parte del banco, la forma personalizada de atender es por medio de cajeros, que tambin son personas Las acciones presenciales en el banco se llevan a efecto por la interaccin directa entre un cliente y el cajero. El cajero del banco es quien realiza las operaciones solicitadas por el cliente.
Por lo tanto, en primera instancia se podran deducir actores, entidades, relaciones y acciones pertinentes asociadas a cada objeto y el mbito en el que las desarrollan.
Un primer acercamiento a la descomposicin bsica de los objetos que conforman este estudio sera:
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 8
Cliente y cajero. o RUT. o Nombre. o Domicilio. o Fono (puede haber ms pero por ahora se omitirn).
Cajero Automtico o Nmero de cajero. o Banco. o Modelo. o Ubicacin.
Banco o Cdigo. o Nombre. o Sucursal. o Direccin.
Transaccin o Cliente. o Banco. o Tipo de transaccin. o Fecha. o Monto.
En este punto se han indicado, bsicamente, los objetos que conforman el sistema y los atributos que a ellos definen.
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 9
A continuacin se denotan algunas acciones que son relevantes durante la vida til de los objetos.
Cliente o Solicita transferencia bancaria. o Solicita dinero.
Cajero Automtico o Realiza entrega dinero. o Despliega opciones para cliente.
Banco o Almacena datos clientes. o Mantiene cuentas a clientes. o Realiza operaciones sobre cuentas.
A modo de ejemplo, las acciones de solicitar, desplegar y mantener, como han sido expuestas en el ejemplo, indican, en forma narrativa, cules son los procesos necesarios de llevar a efecto y quines son las entidades encargadas de invocarlos. Toda accin recaer en un objeto de control que encapsula esta accin, contemplndola como un todo posible de realizar.
Tomando como referencia el mismo ejemplo, es posible que el cliente acte en forma presencial o no, pero las condiciones sern necesariamente distintas dado el entorno en el que se desarrollan.
Respecto al tema de la abstraccin, es vlido realizar las siguientes interrogantes:
Qu sucede si el cajero automtico no entrega el dinero y de igual forma realiza el descuento desde la cuenta del cliente?, o bien qu pasara si mientras se realiza la transaccin se produce un corte de luz?, etc. Todas esas interrogantes forman parte del
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 10
detalle de la solucin, en primera instancia, es necesario abstraerse de situaciones particulares que pudiesen confundir a quien est realizando el estudio preliminar.
El uso de este patrn est orientado a bosquejar en un alto nivel las caractersticas operativas y de interactividad que el sistema ofrece.
El uso de este patrn, en conjunto con otras herramientas de diseo, permitir dar mayor grado de detalle a los componentes del sistema a desarrollar.
Aplicación de Modelos de Series de Tiempo para La Predicción A Corto Plazo de La Producción de Post - Larvas de Camarón en La Empresa Farallon Aquaculture S.A. Las Peñitas, Leon.