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.