Personalización y Extensión de Simio
Material del capítulo 10 de Simio y Simulación: Modelado, Análisis, Aplicaciones
Contenido
• Uso de Librerías.• Componentes de una Definición de Objeto• Construcción de un Objeto Jerárquico• Construcción de un Objeto Básico• Sub-clase de un Objeto• Construcción de un Objeto Estación de Trabajo
Librerías de Objetos
• Una librería es una colección de definiciones de objeto (modelos).
• Se puede crear una librería para un modelo específico o para un área de aplicación.
• Las librerías pueden compartirse a través de una organización.
Componentes de una Definición de Objeto
• Las definiciones de objeto tienen tres componentes fundamentales:– Lógica (de Objeto y/o Proceso).– Interfaz (Propiedades, Estados, Eventos).– Vista Externa (Gráficas, Nodos de Entrada/Salida).
• La lógica y la interfaz se pueden heredar.• Las definiciones de objeto pueden tener su
tablero para desplegar información dinámica.
5
Representación gráfica para el
objeto
Vista Externa
Vista Externa
ObjetoObjeto
ObjetoObjetoObjetoObjeto
Propiedades
Estados/EventosEl comportamiento del objeto se define por un modelo construido por procesos y/o objetos.
Entradas estáticas para la lógica del
modelo
Valores dinámicos que
cambian durante la corrida
Nodos asociados que permiten la
entrada y la salida del objeto
Colas adjuntas que animan los
estados de la cola
Anatomía de un Objeto
Entrada/Salida vía Nodos
Vista Externa
Vista Externa
ObjetoObjetoObjetoObjeto
Vista Externa
Vista Externa
El tipo de lógica de entrada está en la
estación del proceso
El tipo de lógica de entrada está en el nodo de la vista
Facility
Este proceso es lanzado por el evento de la
estación Entered
La transferencia desde el nodo
de salida ocurre por medio del paso Transfer
El objeto asociado a la
ficha (token) es la entidad que
llega
La entidad que llega se envía al nodo indicado de la vista Facility
La transferencia desde el nodo de
salida se hace usando Auto
Transfer On Entry
Lógica de Proceso Lógica de ObjetoPropiedades Propiedades
Construcción de Definiciones de Objeto
Básica JerárquicaDerivada
Propiedades
Las propiedades se asignan a una
Categoría, que puede estar inicialmente
colapsada o expandida.
El despliegue de una propiedad
puede depender de un Switch que
se controla por una condición .
El Display Name puede tener espacios
en blanco y caracteres especiales
.
Las propiedades tienen un Valor
por Defecto.
Las propiedades pueden requerir de
un valor.
Cuando el usuario selecciona la propiedad se despliega la Descripción .
Algunas propiedades no se pueden editar o son invisibles .
Dos Servidores en Serie
Server1Server1 Server 2Server 2
vidoresvidoresDos SerDos Ser
Tiempo de Proceso unoTiempo de Proceso uno
Tiempo de Proceso dosTiempo de Proceso dos
Tiempo de transferencia de
cero. No hay buffer
Vista Externa
Entrada Salida
Definición de Objeto de DosServidores
TiempoProcesoUno
TiempoProcesoDos
Lógica del Modelo
Interfaz
Entitdad
TransferNodeFacilityNode
Ejemplo de Torno Sencillo
• Finalizar la transferencia a la estación• Espera (Delay) para el tiempo de
procesamiento• Transferencia al nodo de salida
NOTA: Sin espacio de buffer para entrada/salida
Definición del Objeto Básico Torno
EndTransfer Delay Transfer
TiempoDeProceso
Lógica del Modelo
Interfaz del ModeloVista Externa del Modelo
Entrada Salida
Entidad
Ficha
BufferEntrada.Entered
Objeto Básico Torno
TiempoDeIngresoTiempoDeIngreso
TiempoDeProcesoTiempoDeProceso
BufferEntrada BufferEntrada
BufferSalidaBufferSalida
Lógica del Proceso
Capacidad de BufferBufferSalidaBufferSalidaProcesamientoProcesamientoBufferEntradaBufferEntrada
Torno
Ingresa a BufferEntrada y espera por la
transferencia a Procesamiento
Ingresa a Procesamiento, espera por TiempoDeProceso,
y espera para ingresar a BufferSalida.
Ingresa a BufferSalida y espera para ser
transferido al nodo Salida.
SalidaEntrada
Sub Clase
ObjetoBase
ObjetoBase
ObjetoDerivadoObjeto
DerivadoSustituye el proceso
del Objeto Base para cambiar su comportamiento.
Hereda este proceso del
Objeto Base, por lo que no puede
editarse.
Agrega un nuevo proceso para
ingresar lógica adicional .
Hereda – Cambia - Extiende
Sub Clase de Objeto de una Librería
• Los objetos de la Standard Library están completamente abiertos.
• Arrastre un objeto de la librería para crear un un objeto sub-clase.
• Edite el objeto sub-clase.– Sustituya procesos.– Agregue nuevos procesos.– Agregue gráficas a la Vista Externa.– Oculte/Renombre propiedades heredadas.– Agregue nuevas propiedades.
Server con Técnico de Reparación
IMR(Server)
IMR(Server)
Tiempo de TratamientoTiempo de Tratamiento
Lógica de Proceso
SalidaEntradaTecnicoReparacionTecnicoReparacion
Lógica deConfiabilidad
Renombre Processin
g Time
Cambie si Failure Type !=
NoFailure.
Sustituya este proceso heredado y
agregue un paso Seize y un paso
Release.
Resumen
• Cualquier modelo puede proporcionar la lógica para una definición de objeto – sólo agregue una interfaz y una vista externa.
• Las definiciones de objeto se pueden definir de tres maneras:– Objetos básicos usando procesos.– Objetos derivados utilizando la herencia.– Objetos jerárquicos utilizando composición.
• Un proyecto con definiciones de objeto se puede abrir como librería.
• Las librerías se pueden compartir con otros.