Aspect-oriented modeling and simulation is a new approach which uses the separation of concerns principle to enhance the quality of models and simulation tools. It adopts the separation of concerns (SOC) principle. Thus, crosscutting concerns such as processes synchronization, steady state detection, and graphical animation could be separated from simulation functional modules. The capture of crosscutting concerns in a modular way is carried out to cope with complexity and to achieve the required engineering quality factors such as robustness, modularity, adaptability, and reusability. This paper provides a summary of aspect-oriented paradigm with its usage in simulation by illustrating the main crosscutting concerns that may infect simulation systems. A practical example is given with the use of the Japrosim discrete event simulation library.
In this paper, we discuss various aspects of the design, implementation, and use of JAPROSIM which is a general purpose discrete event simulation framework based on the Java programming language. JAPROSIM is an open source project developed for both academic and industrial purposes. It also merges processinteraction modeling structures with powerful java features in an intelligent way that encourages model simplicity, reusability and automatic statistics collection. Further motivations and aims are discussed. Java multithreading is a powerful built-in mechanism used to coordinate different entities in a coroutine-like mode. The main body of the paper is devoted for explaining the design of the framework in the context of Object Oriented Simulation. Finally, a summary of the proposed framework together with suggestions for improvements are given. JAPROSIM: A JAVA FRAMEWORK FOR DISCRETE EVENT SIMULATION 104 J OURNAL OF OBJECT TECHNOLOGY V OL. 7, NO. 1 long-term model development and maintenance because this programming skill is outside of the mainstream of information systems training in academia and within the enterprise. Some simulation languages allow for certain programming-like expressions or statements, which are inherently limited. Others allow the insertion of procedural routines written in other general-purpose programming languages. Even when that is possible, the task of the user is complicated. It has to learn and master a new language. It must also deal with creation, insertion and update of statistical variables which is a source of several errors. Object Oriented Modelling (OOM) is an excellent approach that deals with large and complex systems through abstraction, modularity, encapsulation, layering and reuse. OOM was born with SIMULA, the first object-oriented programming language. It introduced the object-oriented programming paradigm. Conceptual model is obtained by decomposing a real system in a set of objects in interaction. Each object represents a real world entity that encapsulates state and behaviour. A class is a template for creating objects that share common related characteristics. Guidelines are, in particular, identification of object classes that make up a system with their interfaces and implementations. Model conceptualization is one of the early steps in a simulation study for which OOM is suitable. Hence Object Oriented Simulation (OOS) benefits from all the powerful features of the OOM. It is, in addition, based on entities, events and simulation time that make the main differences, see [Joines & Roberts 98]. The use of the Unified Modelling Language (UML) in OOS seems to be even more appropriate since its version 2.0 offers significant improvements in dynamic behaviour modelling, which is a key aspect in any discrete event simulation, see [Page & Kreutzer 05]. The generation of executable code from static and dynamic UML models provides an important means for narrowing the gap between conceptual and computer models in simulation. Some research projects have already focused on a...
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.