Analisando-se a literatura de simulação discreta pode-se observar que os autores, em geral, constroem seus modelos de simulação baseados em abordagens tradicionais e aceitas tais como orientação a eventos, orientação a mensagens, orientação a filas, etc. Mais recentemente encontram-se ambientes que afirmam utilizar o chamado paradigma de simulação orientado a objetos. No entanto não existe consenso na definição de tal paradigma e diferentes interpretações podem ser encontradas. Considerando que um modelo de simulação pertence a classe dos sistemas de software, nada mais natural do que aplicar conceitos de orientação a objetos em seu desenvolvimento. Deve ficar claro, entretanto, que existe uma grande diferença entre um paradigma de simulação, isto é, as idéias e recursos usados na construção de um modelo, e um paradigma de projeto e implementação aplicado ao desenvolvimento de sistemas de simulação. Linguagens orientadas a objetos podem ser aplicadas na implementação de sistemas de simulação que utilizam conceitos de modelagem distintos. Ainda que todos possam ser chamados de sistemas orientados a objetos, pode haver confusão quanto ao significado do termo simulação orientada a objetos. Este trabalho apresenta um esquema original de classificação para sistemas de simulação quanto a sua arquitetura de software onde são considerados aspectos tais como a maneira pela qual as entidades do modelo se comunicam e a forma pela qual se descrevem os eventos que alteram seu estado, entre outros. Conceitos fundamentais são identificados de maneira a definir um modelo de referencia onde diferentes paradigmas de simulação possam ser caracterizados e classificados. Especial atenção e dada ao relacionamento entre os paradigmas de simulação e a orientação a objetos, onde esta Ultima e vista como uma estratégia de projeto e implementação. Uma nova forma de caracterizar um paradigma de simulação e proposta. SIMOO e um "framework. ' para simulação discreta orientada a objetos que foi construído de maneira a poder validar os conceitos propostos. Composto por uma biblioteca de classes e de uma ferramenta de edição de modelos, a principal vantagem do use de SIMOO em relação a outras abordagens esta no fato de que SIMOO permite a seleção do paradigma mais adequado a descrição de cada entidade do modelo. Esta característica permite a criação de modelos que incorporam, simultaneamente, mais de um paradigma de simulação. A abstração básica da biblioteca de classes de SIMOO, a partir da qual são derivadas todas as entidades de um modelo, e o elemento autônomo. Este encapsula uma "thread" própria de execução e um sistema de comunicação por mensagens não tipadas que são a base de todos os paradigmas suportados por SIMOO. A ferramenta de edição de modelos de SIMOO e chamada de MET. MET utiliza um diagrama de classes hierárquico enriquecido com recursos adequados para a construção de modelos de simulação. Além do diagrama de classes, descreve-se também um diagrama de instâncias, onde as especificações genéricas do diagrama de classes são particularizadas. A partir da especificação dos diagramas e da descrição do comportamento das entidades, MET gera um modelo executável. Finalmente, SIMOO preocupa-se com a separação de domínios entre a descrição do modelo propriamente dito e os aspectos de visualização de resultados e interação com o usuário. Uma categoria especial de elementos autônomos chamados de monitores e provida para permitir essa separação. Além de apresentar o "framework" SIMOO em termos de especificação e implementação, este trabalho mostra aplicações através de situações exemplo e apresenta uma análise comparativa com outros ambientes descritos na literatura. / When one surveys the literature on discrete simulation. it will be noticed that, in general. authors build their simulation models usin g traditional approaches such as event-oriented. message-oriented, queue-oriented. etc. In more recent texts, frameworks can be found that allegedly use the so called object-oriented simulation paradigm. However, there is no generally accepted definition of such a paradigm. and various interpretations can be found. If we consider that a simulation system is an instance of the more general class of software systems, it is strai ghtforward to apply concepts of object orientation to develop simulation systems. Nonetheless. it is important to emphasize that there is a major difference between a simulation paradigm. i.e.. the principles and resources used to build the model, and a design and implementation paradi gm used to develop the simulation system. Object-oriented languages can be used to implement simulation systems that follow different paradigms. If we refer to all these systems as objectoriented systems, confusion about the exact meanin g of object-oriented simulation may occur. This work presents an original classification of simulation systems according to their software architectures, where different aspects are taken into account, such as the way the entities in the model communicate with each other, the way one describes events that modify the entities' state, and others. In this classification, we identify basic concepts that are used to define a reference model, with which different simulation paradigms may be characterized and classified. In particular, special attention to the relationship between simulation paradigms and object-orientation is given, the latter here being seen as a strategy to design and implement simulation systems. SIMOO is an object-oriented framework for discrete simulation. composed by a Class Library and a Model Editing Tool that has been built in order to validate the proposed concepts. The main advantage of SIMOO with respect to other frameworks is that it allows a selection of the most adequate paradigm to describe each entity in the model. As a consequence, we are able to create models that instantiate, simultaneously, more than one simulation paradigm. The basic element of the SIMOO class library, based on which the framework derives all the entities in the model, is the autonomous element. This autonomous element has its own execution thread and an untyped message-based communication system that constitute the basis of all the paradigms SIMOO supports. The SIMOO Model Editing Tool (MET) uses a hierarchical class diagram extended with resources needed to build simulation models. Along with the classe diagram, MET allows one to describe an instance diagram that details the more generic class diagram. From the diagrams and the description of the behavior of the entities, MET generates an executable model. The SIMOO framework also emphasizes the distinction between model description and aspects of visualization and user interaction. It provides a special category of autonomous elements, the monitors, that implements this separation. Besides presenting the formal specification and the implementation of the framework, in this work several examples of how to use the SIMOO are presented, along with a comparison with other existing frameworks.
Identifer | oai:union.ndltd.org:IBICT/oai:lume.ufrgs.br:10183/17753 |
Date | January 1997 |
Creators | Copstein, Bernardo |
Contributors | Wagner, Flavio Rech |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/doctoralThesis |
Format | application/pdf |
Source | reponame:Biblioteca Digital de Teses e Dissertações da UFRGS, instname:Universidade Federal do Rio Grande do Sul, instacron:UFRGS |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0023 seconds