ABSTRACT This work reports on two courses for computer scientists.The first is a graduate course on modeling and simulation andthe second is a course on component based softwareengineering. For both of these courses we principally use thesame basis, that is, the Java Beans component technology andthe DEVS system theory formalism for discrete eventsimulation. However, in the two coursed, we pursue quitedifferent objectives. While in the first course the Java Beanstechnology is used to teach discrete event simulation, in thesecond course we use simulation as an example to show howa component library can be realized using Java Beans. MODELLING AND SIMULATION COURSE Introduction The first course is a classical modeling and simulation coursefor computer science students. Emphasis is more onsimulation modeling and simulation programming than onsystem analysis and experimental data evaluation. The coursetakes into account the background and also the interests of thestudents. They have a strong background in softwareengineering and object oriented programming but also a goodknowledge of statistical methods. However, many studentslack knowledge and experience in classical technical fieldsand mathematics, e.g. differential equations. The course is anattempt to teach simulation from a systems theoreticperspective and using modern software engineeringapproaches. Much efforts have been put into the pedagogicalpreparation of the topic.So the emphasis is to give them an overview and an generalunderstanding of simulation and programming of simulationsystems. After the course students should§ have a general understanding what simulation is and howsimulation works§ have an understanding of the different simulationapproaches§ have an overview of the manifold application areas ofsimulation§ know when and where the different simulationapproaches can be applied§ be able to see potential applications and limitations ofsimulation approaches§ be able to evaluate the advantages and limitations ofvarious simulation languages and tools§ know in detail how simulation systems are built upand how they are implemented§ have a broader view of programming, especially, beable to work with state space descriptions and statetransition diagrams, event communication, andhierarchical object composition (see below).We try to achieve these manifold objectives pursuing thefollowing points:§ We base on a general systems theoretic backgroundand a state space description for continuous models,discrete time models as well as for discrete eventmodels.§ We work out that system simulation in general dealswith the complexity emerging from components‘dynamic behavior and components‘ interaction.§ We work out the essential of the modeling approacheswithout considering any particular application,however, with referring to examples in differentapplication domains.§ We work out more the commonalties of the modelingapproaches and application domains than stressingtheir differences and specialties.§ Instead of taking a commercial simulation languageor system students work with a general purposeprogramming language (Java) and a library ofsimulation components which, however, does notenforce any particular modeling approach.
The paper reports on an effort to use both the system theoretic DEVS (discrete event simulation) formalism and the JavaBeans component model as a basis for a component based discrete event simulation framework. The result of the synergism of DEVS and JavaBeans is a powerful component based simulation framework together with a set of flexible bean components for building simulation systems. Component frameworks are dedicated and focused architectures with a set of policies for mechanisms at the component level. We describe the component framework we have developed for discrete event simulations. Simulation components are based on this framework and can be composed for the creation of various simulation scenarios.
This paper reviews Zeigler's approach to base modeling and simulation on a rigorous systems theoretic foundation. And it reviews Zeigler's approach to utilize artificial intelligence techniques to support the multifaceted modeling methodology—a methodology that recognizes the multiplicity of objectives and multiplicities of models in a problem solving enterprise. After discussing the role of simulation in the general scientific problem solving process, we discuss the role of systems theory in modeling and simulation. Then, we present the system entity structure knowledge representation scheme that constitutes the key concept of the multifaceted modeling methodology. Finally, we outline the design of an integrated systems theory instrumented modeling and simulation environment and its stage of implementation at the University of Linz.