Bir simülasyon, bilgisayardaki gerçek dünyanın bir temsilidir. Yazılım, bilgisayarlarda çalışmak üzere tasarlanmış programlar ve rutinlerdir. Simülasyon yazılımı, bilgisayar ortamında gerçek dünyadaki durumları ve deneyimleri temsil eden bilgisayar çalışması için verilen addır, çalışma, eğlence, projeksiyonlar, verimliliği arttırma, stratejik bir seçim öncesinde olası alternatifleri modelleme ve diğer nedenler.
Farklı simülasyon yazılımı türlerini sınıflandırmanın bir yolu, simülasyonun uygulama alanıdır. Akademik ortamlarda simülasyon yazılımı, tarım, işletme, iletişim, savunma, sağlık, üretim, petrol terminalleri, servis, trafik ve atık işleme gibi uygulama alanlarında kullanılmaktadır. Endüstriyel ortamlarda, uygulama alanları arasında iş süreçleri, iletişim, derleyici ağlar, müşteri hizmetleri, dağıtım, üretim, paketleme salonları, onarım, anketlerde istatistiksel örnekleme ve stok kontrolü bulunmaktadır. Eğlence için yapılan simülasyonlar bu hiyerarşide başka bir kategori oluşturur.
APES ™ (Tarımsal Üretim ve Dışsallıklar Simülatörü), hava ve yönetim tekniklerinin tarımsal üretimi nasıl etkileyeceğini belirlemede kullanılan bir uygulama örneğidir. StarLogo ™, merkezi olmayan sistemlerin nasıl çalıştığını analiz etmek için kullanılan ve örneğin trafik sıkışıklığını analiz etmek için kullanılan bir modelleme yazılımıdır. SimCity® by Electronic Arts® bir dizi simülasyon oyununun bir ürünüdür. Elektronik donanım simülasyonları, mekanik ve kimyasal sistem simülasyonları da bulunmaktadır.
Farklı simülasyon yazılımı türlerini sınıflandırmanın ikinci bir yolu, yazılımın işlevselliğidir. Örneğin, aracı simülasyonu ortamlardaki insanları içerebilir ve havaalanları veya alışveriş merkezleri gibi gerçek dünya ortamlarında çok sayıda insanın davranışlarını ve etkileşimlerini simüle etmek için kullanılabilir. Alternatif olarak, kullanıcı bir avatarı bir ortam içinde hareket ettirdiğinde eğlencede kullanılabilir. Ağ simülasyonu, test amacıyla bir ağ davranışı modeli oluşturur. E-öğrenme simülasyonu bir ortamı çoğaltabilir, böylece kullanıcı ekipmanı nasıl çalıştıracağını veya tehlikeli bir ortamda nasıl çalışacağını öğrenebilir ya da en az sonuçla arızalanabilir veya becerilerini netleştirebilir.
Simülasyon yazılımını kategorize etmenin üçüncü bir yolu da genel yetenekleridir. En geniş ölçekte, bazı simülasyon yazılımları ayrık bir olayı modellerken, diğerleri sürekli süreyi veya dinamik sistemleri modelleyebilir. Hem sürekli zaman hem de kesikli olayları modelleyebilen hibrid simülatörler de vardır.


