Classification of Software

Classification of Software

System Software

  • System software is essential to manage and control computer hardware and application software.
  • It provides a platform for running application software and acts as an interface between user and hardware.
  • Operating systems, device drivers, compilers, and utility software are all examples of system software.

Operating Systems

  • Operating Systems (OS) control hardware and allow other programs to run.
  • It performs tasks such as memory management, process scheduling, and handling input and output operations.
  • Examples include Windows, Linux, macOS and Android.
  • Single-user, multi-user, multitasking, multiprocessing, and real-time systems are different kinds of operating systems.

Device Drivers

  • Device drivers are specific types of system software that interface with particular hardware devices.
  • They provide a standard way for the operating system to interact with hardware.

Compilers

  • Compilers are system software that transforms source code written in a programming language into machine code.
  • This code is directly executable by the computer’s CPU.

Utility Software

  • Utility software helps manage, maintain and control a computer, providing assistance to the operating system.
  • Disk defragmenters, antivirus programs and backup software are examples of utility software.

Application Software

  • Application software or app is designed to help users perform specific tasks on a computer or other devices.
  • Unlike system software, it is not involved in running the computer.
  • Examples include word processors, spreadsheets, media players, and database applications.
  • Other types include web applications, mobile apps, and enterprise software.

Custom Software

  • Custom software (also known as bespoke software) is specially designed and developed for a specific user or organisation.
  • It is designed to address their specific preferences and expectations, i.e., it is tailor-made.

Off-the-Shelf Software

  • Off-the-shelf software is designed for a broad audience with common needs.
  • It is typically mass-produced and commercially available, e.g., Microsoft Office.

Open Source Software

  • Open Source Software (OSS) has a source code that is available to the public, allowing anyone to see, modify, and distribute the program.
  • Software developers often use open source as a kind of crowdsourcing to create and improve code.

Proprietary Software

  • Proprietary software has source code that only the person, team, or entity who created it maintains exclusive control over.
  • Users purchase licenses to use it, but they can’t change it or distribute it.
  • Most off-the-shelf software is proprietary.

Conclusion

  • Evaluating the classification of software can be valuable when deciding what kind of software to use or develop for a specific purpose. Understanding the distinctions can help make these decisions more effectively.