Overview of the various kinds of simulation, discrete simulation (computational concepts, simulation of queuing systems, simulation in Java, professional simulation tools), required probability concepts and statistics, modeling paradigms (e.g., event/process-oriented, queuing systems, Petri nets, UML statecharts), input modeling (selecting input probability distributions), random number generation (linear congruential generators and variants, generating random variates), output analysis (warm-up period detection, independent replications, result presentation), continuous and hybrid simulation (differential equations, numerical solution, hybrid statecharts), simulation software, case studies, parallel and distributed simulation.