A simulator for quantum information systems cannot be both general, that is, easily used for every possible system, and efficient. Therefore, some systems will have aspects which can only be simulated by cunning modeling. On the other hand, a simulation may convenienty do extra-systemic processing that would be impractical in a real system. We illustrate with examples from our quantum computing simulator, QCSim. We model the [3,1} Hamming code jin the presence of random bit flip or generalized amplitude damping noise, and calculate the expected result in one simulation run, as opposed to, say, a Monte Carlo simulation, and keep the original state to compute the chance of successful transmission, too. We also model the BB84 protocol with eavesdropping and random choice of information received faithfully. Finally, we present our simulation of teleportations as an example of the trade-off between complexity of the simulation model and complexity of simulation inputs and as an example of modeling measurements and classical bits.