فهرست رده‌های نرم‌افزار
نرم‌افزار کامپیوتری می‌تواند بر اساس عملکرد به چندین رده تقسیم شود. سه رده اصلی در این رده‌بندی جای می‌گیرند: (۱)نرم‌افزارهای کاربردی، برای انجام کارهای کاربر طراحی شده‌اند. این نرم‌افزارها می‌توانند استفاده عمومی همچون واژه‌پردازهای عمومی و مرورگرهای اینترنتی باشند یا استفاده‌های خاصی همچون مدیریت کاربران، مدیریت اتومبیل‌ها و... باشند. نرم‌افزارهای کاربردی با (۲)نرم‌افزارهای سیستمی ارتباط برقرار می‌کنند. نامی که برای برنامه‌هایی به کار می‌رود که وظایفی همچون به‌راه انداختن کامپیوتر، اتصال به اینترنت و... را انجام می‌دهند. گونه دیگر، (۳)ابزارهای برنامه‌نویسی کامپیوتر همچون کامپایلرها و پیوند دهنده‌ها هستند.
نرم‌افزار چندسکویی
بسترهای نرم‌افزاری می‌توانند به نوع پردازنده (CPU) یا سخت‌افزار دیگری که یک سیستم عامل یا برنامه معین بر روی آن اجرا می‌شود، نوع سیستم عامل در رایانه یا ترکیبی از نوع سخت‌افزار و نوع سیستم عاملی که روی آن اجرا می‌شود، اشاره کنند. یک مثال از یک پلتفرم مشترک، Microsoft Windows است که با معماری x86 اجرا می‌شود. سایر سیستم عامل‌های رایانه رومیزی معروف شامل Linux / Unix و macOS هستند - هر دوی اینها خود کراس پلتفرم هستند. با این حال، بسیاری از دستگاه‌ها مانند تلفن‌های هوشمند وجود دارند که همچنین به‌طور مؤثر سیستم عامل رایانه هستند اما کمتر در مورد آنها حرفی زده می‌شود. نرم‌افزار کاربردی را می‌توان بسته به ویژگیهای یک سیستم عامل خاص - سخت‌افزار، سیستم عامل یا ماشین مجازی که در آن کار می‌کند - نوشت. بستر جاوا یک پلت فرم ماشین مجازی است که روی بسیاری از سیستم عامل‌ها و انواع سخت‌افزار اجرا می‌شود و بستر مشترک نرم‌افزاری است که می‌توان برای آن نوشت.