This work introduces the application of the Java programming language in discrete-event simulation. In addition, the fundamental concepts and practical simulation techniques for modelling different types of systems to study their general behaviour and their performance are introduced. The approaches applied are the process interaction approach to discrete-event simulation and object-oriented modelling. Java is used as the implementation language and UML as the modelling language. The first offers several advantages compared to C++, the most important being thread handling, graphical user interfaces (GUI), and Web computing. The second language, UML (Unified Modeling Language), is the standard notation used today for modelling systems as a collection of classes, class relationships, objects, and object behaviour. The book concentrates on object-oriented modelling and implementation aspects of simulation models using Java and practical simulation techniques. In addition, the book illustrates the dynamic behaviour of systems using the various simulation models as case studies.
1. Introduction to Simulation. 2. Objects, Classes and UML. 3. Relevant Aspects of the Java. 4. Discrete-Event Simulation. 5. Simulation with the Process Worldview. 6. Models of Multi-Server Systems. 7. Multi-Class Queuing Models. 8. Resources. 9. Basic Process Cooperation. 10. Synchronous Cooperation. 11. Conditional Waiting. 12. Interrupts. 13. More Simulation Models. 14. Basic Probability Theory and Random Numbers. 15. Overview of Model. Appendix A. Appendix B. About the Author. Index.