Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Modelizacion de SIMULACION - UML
Modelizacion de SIMULACION - UML
RESUMEN
El presente trabajo es una ampliacin y actualizacin de una presentacin realizada en
Mayo de 1999 en Santa Rosa, La Pampa, durante la X EPIO (Escuela de
Perfeccionamiento en Investigacin Operativa) denominado: Una metodologa para
implementar simulaciones en una PyME orientada a alentar la participacin de
Usuarios Finales cuyos autores fueron el Dr. Hugo P. Moruzzi y el Ing. Gustavo D.
Tripodi.
La metodologa propuesta para desarrollar e implementar proyectos de
Simulacin comienza con una etapa de Modelizacin de la realidad que se quiere
analizar en la cual deben estar involucrados, tan activamente como sea posible, los
Usuarios Finales (UF). Esta actividad debera servir adems, para capacitarlos en el
entendimiento de ciertos formalismos y estructuras basados en herramientas de
Investigacin Operativa (IO).
La propuesta es, entonces, realizar la planificacin e implementacin de
mejoras en un proceso trabajando en forma grupal con una metodologa especfica
Esta concepcin de abordar las Simulaciones nos orienta hacia la elaboracin
de Modelos que contengan el Ciclo de vida del Proyecto en cuestin
La propuesta es trabajar sobre un ambiente para la construccin de
simulaciones, basado en una metodologa que permite integrar al usuario de una
manera activa en el proceso de implementacin a travs de UML (Unified Modeling
Language), lenguaje que nos aporta el marco necesario para construir e integrar
modelos desde el Relevamiento al Software.
PALABRAS CLAVE
UML MODELO NATURAL MODELO DEL USUARIO MODELO DEL
PROGRAMADOR HERRAMIENTAS CONCEPTUALES
- HERRAMIENTAS
DOCUMENTALES
INTRODUCCION
La metodologa propuesta para desarrollar e implementar proyectos de
Simulacin comienza con una etapa de Modelizacin de la realidad que se quiere
analizar en la cual deben estar involucrados, tan activamente como sea posible, los
Usuarios Finales (UF). Esta actividad debera servir adems, para capacitarlos en el
entendimiento de ciertos formalismos y estructuras, basados en herramientas de
Investigacin Operativa (IO). Cabe destacar que cuando hablamos de UF, estamos
haciendo referencia a las personas a quienes resultara de utilidad los resultados que
se obtengan al correr programas elaborados sobre la base de los modelos que
representaran la operacin que se desea simular.
FINESI
SIMULACIN
Es fundamental la formacin de Grupos homogneos para poder realizar este
tipo de capacitacin y entrenamiento. El perfil del UF en la simulacin de operaciones
empresarias resulta ser el de las personas encargadas de la operacin y que
conforman lo que denominaremos Grupo Operativo (GO). El problema consiste en
encontrar una forma de motivar a este Grupo Operativo para que realice esta labor en
forma conjunta.
La propuesta es efectuar la planificacin e implementacin de mejoras en el
proceso trabajando en forma grupal con una metodologa especfica.
Esta concepcin de abordar las Simulaciones nos orienta hacia la elaboracin
de Modelos que contengan el Ciclo de vida del Proyecto.
El ambiente propuesto proponemos para la construccin de simulaciones, esta
basado en una metodologa que permite integrar al usuario de una manera activa en el
proceso de implementacin. El objetivo es que a partir del Modelo Real se cimiente el
Modelo Natural (MN), informal, (que posee mentalmente el UF de la operacin), se
construya un modelo completo, pasando por un Modelo del Usuario (MU) hasta llegar
a un Modelo para el programador (MP) y como consecuencia el software. El lenguaje
UML (Unified Modeling Language) nos aporta el marco necesario para construir e
integrar modelos de Simulacin desde el modelo real al Software. Esta es una
herramienta de cohesin que permite la evolucin y refinamiento de los modelos
descriptos. Es un ambiente que permite un desarrollo iterativo e incremental de Ciclo
de Vida de la Simulacin.
LOS MODELOS
Partiendo del MN, el MU facilitar la generacin de modelos mucho ms
formales y detallados para el Programador (MP), que contendr todo lo necesario para
elaborar el pseudocdigo de la simulacin. [BEC91]. El MN y el MU no incluyen
conceptos asociados en general con ningn lenguaje ni paradigma de elaboracin de
programas. Su objetivo es rescatar de la realidad, con una activa participacin del UF,
un cierto nmero de objetos y de los estados que resulten de inters para el objetivo
de la Simulacin.
El MU nos deja en los umbrales del diseo del software de simulacin, es una
herramienta de comunicacin que nos permite la interaccin con los UF y
Programadores. El MP esta formado por los modelos para programar, que formalizan
an ms el MU, agregando una especificacin completa y precisa de la operacin de
tal manera que a partir de ellos se pueda elaborar un programa que implemente dicha
simulacin. Es decir, los modelos extremos son: el modelo real y el cdigo de la
simulacin.
Se establecieron herramientas que permiten representar en forma abstracta el
modelo real. Estas herramientas son bsicamente: conceptuales, documentales o
un mix de ambas.
En esta metodologa se consideran herramientas documentales a las que solo
"pasan en limpio" las ideas que el usuario ya tiene sobre la operacin. Generalmente
se usan para comunicar una idea y no para construirla, el Isomorfismo en esta
abstraccin no pasa por la construccin del modelo sino por su representacin.
Por otro lado Herramientas conceptuales son aquellas que tienen comnmente
una serie de reglas estrictas en cuanto a su definicin y validez por lo que su
elaboracin es de alguna forma isomrfica con la construccin de la idea que se quiere
representar. Esto hace que sean herramientas que ayudan al diseo del modelo y
establecen una retroalimentacin con el usuario sobre las ideas que quiere
representar.
Las herramientas de UML utilizadas son:
FINESI
SIMULACIN
Narrativa e infografa
Diagrama general de actividades
Casos de Uso
Grafo de transicin de estados
Objetos. Diagramas de Clases
Diagramas de Colaboracin.
Diagramas de Secuencia
documental
documental
documental/conceptual
documental/conceptual
conceptual
conceptual
conceptual
FINESI
SIMULACIN
encarar el control de la operacin que se va a simular, y esto es muy importante
para el UF.
Ubicacin de los modelos en un proyecto de simulacin
Al tratar el tema de hacer Modelos para ser usados en un Proyecto de
Simulacin es conveniente reconocer la existencia de ms de un modelo entre las
siguientes dos realidades: i) la operacin a simular, en un extremo, y ii) el software a
utilizar para llevar a cabo la simulacin, por el otro. Esto implica la aparicin de las
correspondientes interfases entre estos modelos
Como se dijo anteriormente existen dos realidades isomorfas: una, el proceso a
simular; la otra: su representacin en un equipo de computacin, que corresponden a
programas que simularan el proceso en cuestin.
Para pasar de una realidad a otra hay una serie de intelectualidades que
llamamos modelos, que pueden o no plasmarse en material escrito, iconogrfico o
impreso. Hemos establecido su nmero y contenido, cada uno de ellos es elaborado
y/o usado por uno o ms usuarios. Para cada uno de los modelos se especifica la
nomenclatura en la tabla I
NOMBRE
CODIGO
HUESPED
FORMALD
DETALLE
ORIENTAN
natural
MN
Usuario/
Analista
Informal
mucho
A la
operacin
del usuario
MU
Analista
Formal
poco
al proceso
del
programador
MP
Analista/
Programador
Muy Formal
mediano
al software
Tabla I - Modelos
Para estos Modelos existen transiciones, secuenciadas en dos interfases:
MN/MU y MU/MP. Si se quisiera establecer el lugar fsico en donde se encuentran
estas interfases, se pueden situar en la interrelacin de distintos huspedes. Esto es
importante ya que equivale a reconocer que el Analista - que cumplen los distintos
roles all descriptos- debe ser consciente que tiene en su mente tres modelos: MN, MU
y MP, cada uno de ellos adecuados a un tipo de situacin en la que deben actuar y
tomar decisiones.
(Natural: N . Del Usuario: U . Del Programador: P) Modelo
Narrativa, Infografa
Diagrama General de Actividades
Casos de Uso
Grafo de Transicin de Estados
Objetos. Diagrama de Clases
Diagramas de Colaboracin
Diagramas de Secuencia
N
N/U
N/U
U
U/P
U/P
P
FINESI
SIMULACIN
UML: Unified Modeling Language
El UML ofrece una notacin sintctica y semntica estndar para describir
estructuras y comportamiento de Objetos [QUA00].
Durante los aos noventa diferentes metodologas con sus notaciones fueron
introducidas al mercado. Tres de los mtodos mas populares fueron: OMT
(Rumbaugh), Booch y OOSE (Jacobson). Cada una de ellas aportaba valor en
distintas reas. OMT en anlisis, Booch en diseo y Jacobson en anlisis de
comportamiento. Luego de publicaciones en las cuales participaban en forma conjunta
los mtodos comenzaron a converger pero la notacin segua siendo divergente.
Hasta que lograron consensuar una notacin: UML. Es un lenguaje utilizado para
especificar, visualizar y documentar los artefactos de un sistema orientado a objetos
bajo desarrollo. Aunque los mtodos anteriormente citados fueron la base para la
fundacin de UML tambin participaron otros autores con sus metodologas: Meyer
(pre and post conditions), Harel (state charts), Wirfs-Brock (responsabilities), Fusion,
(Operations descriptions, message numbering), Embly (Singleton classes), Gamma
(frameworks, patterns, notes), Shlaer-Mellor (Objects Life Cycles) y Odell
(classification)
Modelacin Visual
Es una forma de tratar los problemas usando modelos iconogrficos e
interactivos organizados alrededor de las ideas del mundo real. Este tipo de
modelizacin posee reglas sintcticas y semnticas para lograr isomorfismo entre lo
que se construye y lo que se quiere representar.
La abstraccin es una capacidad humana fundamental que permite tratar la
complejidad. Para construir diseos complejos el Analista debe abstraer diferentes
vistas del Sistema, construir modelos utilizando notacin precisa, verificar que el
modelo satisface los requerimientos y gradualmente adicionar detalles para
transformar el modelo en una aplicacin.
Se construyen modelos para entender Sistemas complejos porque no es posible
abarcarlos como una integridad y comunicarlos en forma precisa. Hay lmites en la
capacidad humana para entender complejidades. Construir un modelo permite al
analista focalizarse en como las grandes partes del Sistema interactan sin tener que
profundizar en detalles especficos de cada componente. Los modelos ayudan a
organizar, entender y crear cosas complejas.
El triangulo para asegurar el cumplimiento del Objetivo: Se necesita contar con
tres aspectos para tener xito en el Ciclo de Vida de un Proyecto:
i) Una notacin. Para comunicar el modelo (sintctica y semntica)
ii) Un proceso. Como usar la notacin (interactiva e incrementalmente)
iii) Una herramienta. Sostn de la notacin y el proceso
UML brinda estas 3 dimensiones y acompaa la evolucin del Proyecto en los
estados de desarrollo, integracin y comunicacin.
FINESI
5
Figura 1 -
SIMULACIN
Figura 2
FINESI
SIMULACIN
se forman colas de espera. A esto se agregan las condiciones que deben cumplirse
para que se lleven a cabo las operaciones o para sacar algn tem de la cola.
En nuestro caso hemos preferido adoptar un modelo declarativo. Esta
seleccin se basa en las siguientes consideraciones:
Desde el punto de vista del usuario que debe manejar una operacin, su inters
est centrado en la utilizacin eficiente de equipos, personal, materiales, etc. que
entran al proceso. Es decir, objetos -entes materiales- que tienen ya sea un costo
unitario o bien un costo por unidad de tiempo. Es l -el UF- quin cuidar que esos
objetos interacten correctamente en las distintas actividades para maximizar la
productividad del sistema. El anlisis por objetos tiene mayor poder analtico que el
de las actividades en las que intervienen. La mayor parte de las medidas de
performance se refieren a relaciones entre tiempos productivos y tiempos no
productivos de los objetos que interaccionan en la operacin. Un anlisis de los
estados en los que pueden hallarse cada objeto lleva a evaluar directamente la
performance de dicho objeto en la operacin.
La estructura que debe tener un modelo conceptual de un sistema dinmico que se
va a simular por algn paradigma de eventos discreto se basa en sealar en una
lnea de tiempo los puntos (instantes) que marcarn el avance "a saltos" de la
simulacin. Estos instantes corresponden a aquellos en los que los Objetos
cambian de estado. Los objetos elegidos para integrar el modelo conceptual
quedan restrictivamente definidos por el conjunto de atributos -propiedades-. El
conjunto de valores que toman estos atributos en un instante dado definen el
estado del objeto. Los cambios de valores de las propiedades de los Objetos
establecen un nuevo estado particular y por ende del sistema. La relacin entre
realidad y modelo se torna as transparente. El usuario debe comprender que a
travs de la seleccin de objetos, atributos y estados se constituye en el controlador
del modelo que se va a usar para simular.
FINESI
SIMULACIN
Herramientas de los Modelos
En lo que sigue se describe someramente las herramientas que conforman la
metodologa para elaborar los modelos:
Narrativa, Infografa. Modelo Natural
La narrativa es una descripcin de las actividades que el sistema va a incluir para
la simulacin. Debe ser clara, precisa y consensuada con el Usuario.
Elementos: Documentos e Infografa.
Ejemplo de narrativa
FINESI
SIMULACIN
Tapa
PT2
PT1
Cuerpo
Figura
3 -Usuario
Diagrama General de Actividades (DGA). Modelo Natural/Modelo
del
Se utiliza para limitar el mbito de la simulacin. Es la primera versin icnica que
da una idea del proceso a resolver.
Llegada Pieza
Espera de
Pieza por PT1
Espera de
Pieza por PT2
Proceso de
Pieza en PT1
Proceso de
Pieza en PT2
Salida de Pi eza
Figura 4 -
FINESI
SIMULACIN
Tapa
Cuerpo
llegpi e
llegpi e
qpt1
qpt2
propt1
propt2
qpt2
qpt1
propt2
propt1
sal pie
salpie
Figura 6 -
FINESI
10
SIMULACIN
PT1
QPT1
libre
n+1
ocupado
n-1
Figura 5 -
Lneas de
Produccin
Productos
Semielaborados
Espera por
recurso
LP1
pa
Qrj
LP2
pb
Qrk
Lneas de
Produccin
rj
LP3
LP4
Figura 7 -
FINESI
11
SIMULACIN
Pieza
DTllegada : funcion
DTproceso : funcion
Obtener tiempo de Proceso()
Obtener Tiempo Llegada()
Tapa
Cuerpo
PuestoTrabajo
Cola
PT1
PT2
QPT1
QPT2
Figura 8 -
FINESI
12
SIMULACIN
: QPT1
4: Iniciar Proceso( )
2: Estado de PT1( )
: Inicio Proceso en
PT1
: PT1
3: Obtener Pieza( )
: Pieza
Figura 9 -
FINESI
13
SIMULACIN
: Inicio Proceso
en PT1
: QPT1
: Pieza
: Fin Proceso
en PT1
Estado de PT1( )
Elementos en QPT1( )
Obtener Pieza( )
Figura 10 -
CONCLUSIONES
Si se acta sagazmente es posible lograr como objetivo final de la elaboracin
de los Modelos la participacin activa del Usuario Final. Por eso una de las etapas del
modelo se denomina Modelo del Usuario y no para el Usuario.
Dada la forma de encarar esta insercin del Usuario Final, se trata de cumplir
una funcin didctica especial ya que no se estar haciendo modelos para un sistema
dado, se estar enseando a hacer Modelos con una determinada estructura. Se
estar creando nuevas estructuras para ver una realidad.
Los modelos visuales mejoran el entendimiento de los problemas, la
comunicacin, la elaboracin de documentacin y el diseo de programas. Este tipo
de modelizacin promueve un mejor entendimiento de los requerimientos, diseos
limpios y sistemas ms fciles de mantener.
UML es un lenguaje estndar y Universal que nos permite interactuar con distintos
actores de diferentes mbitos y regiones para la consecucin de un Proyecto de
Simulacin
FINESI
14
SIMULACIN
BIBLIOGRAFIA
FINESI
15