CategoryTypeDescriptionExamples
System SoftwareOperating System (OS)Manages hardware resources and provides services for computer programsWindows, macOS, Linux, Android
Device DriversFacilitate communication between OS and hardware devicesPrinter drivers, graphics card drivers
UtilitiesTools for managing and maintaining computer systemsDisk defragmenters, antivirus software
Compiler and AssemblerConvert high-level languages to machine codeGCC, MASM
Linkers and LoadersCombine object files and load them into memoryld (Unix), link.exe (Windows)
FirmwareSoftware permanently stored on hardware devicesBIOS, router firmware
Application SoftwareProductivity SoftwareHelp users perform tasks efficiently and create contentMicrosoft Office, Google Workspace, LibreOffice
Business SoftwareMeet business needs and streamline operationsQuickBooks, Salesforce, Trello
Entertainment SoftwareDesigned for leisure and enjoymentMinecraft, Spotify, Netflix
Educational SoftwareSupport learning and skill developmentLMS (ULearn, Virtual Academy), Kahoot!, Duolingo
Programming LanguagesLow Level LanguagesClose to machine code, used for system-level programmingMachine Language, Assembly Language
High Level LanguagesMore abstract, easier for humans to read and writeProcedural: FORTRAN, Pascal, C, ALGOL
Object-Oriented: C++, Java, Visual Basic
PlantUML Diagram