What you'll learn
Software is the set of programs that tell computer hardware what to do. It splits into system software, which runs and manages the computer itself, and application software, which lets people carry out tasks such as writing, calculating or editing photos. This guide covers both, along with the operating system's main jobs, the different kinds of user interface, utilities and device drivers, firmware, and the business decisions around software: open-source versus proprietary, bespoke versus off-the-shelf, and the different types of licence.
Exam questions on this topic range from one-mark definitions ("What is a device driver?") to extended scenarios where an organisation must choose software and you must weigh up the costs and benefits. The scenario questions reward balanced answers that consider cost, fit, support and security, not just price.
Key terms and definitions
Software — Programs and the data they use, which instruct the hardware.
System software — Software that runs and manages the computer, such as the operating system, utilities and drivers.
Application software — Software that lets users carry out tasks, such as word processing, spreadsheets, browsers and games.
Operating system (OS) — The system software that manages hardware and resources and provides a user interface. Examples: Windows, macOS, Linux, Android, iOS.
Utility program — Software that performs a maintenance task, such as antivirus scanning, backup or file compression.
Device driver — Software that lets the operating system communicate with a specific hardware device.
Firmware — Software stored permanently in a device's hardware (ROM or flash memory) to control it.
User interface — The way a person interacts with a computer: graphical, command-line, menu-driven or voice.
Open-source software — Software whose source code is freely available to view, change and share under its licence.
Proprietary software — Software owned by a company that keeps the source code private; users buy a licence to use it.
Bespoke software — Software written specially for one organisation's needs.
Off-the-shelf software — Ready-made software sold to many users.
Software licence — A legal agreement setting out how software may be used.
Patch — An update that fixes bugs or security weaknesses.
Core concepts
System software and application software
A simple test separates the two: system software would still be needed on a computer that never did any useful work for anyone, because it keeps the machine running. Application software exists to serve the user's purpose.
Common application types you should be able to name and match to tasks:
- Word processing — letters, reports, essays.
- Spreadsheets — calculations, budgets, models and charts.
- Databases — storing and searching large amounts of structured data.
- Desktop publishing (DTP) — newsletters, posters and leaflets where precise layout matters.
- Presentation software — slide shows.
- Graphics and photo editing — creating and changing images.
- Web browsers — viewing web pages.
What the operating system does
The operating system sits between the hardware and every other program. Its main jobs are:
- Memory management — allocating RAM to each program, keeping programs from overwriting each other's data, and moving data to virtual memory when RAM is full.
- Process management (multitasking) — sharing processor time between running programs so quickly that they appear to run at once.
- File management — organising files into folders, controlling how they are saved, named, copied and deleted.
- Peripheral management — communicating with input, output and storage devices, using drivers.
- Security and user management — user accounts, passwords and access permissions so users can only reach their own files.
- Providing a user interface — so people can control the computer.
Mobile operating systems do the same jobs but are designed around touchscreens, small displays, app stores and careful power management to extend battery life.
Types of user interface
Graphical user interface (GUI). Uses windows, icons, menus and a pointer (sometimes called WIMP). It is intuitive for beginners because options are visible, so nothing needs memorising. It uses more memory and processing power.
Command-line interface (CLI). The user types text commands. It is fast and powerful for experts, commands can be combined into scripts to automate repetitive jobs, and it uses few resources. It is hard for beginners, and a single typing error can cause problems. Network technicians often prefer it.
Menu-driven interface. The user chooses from a short list of options, as at a cash machine or ticket kiosk. It suits members of the public because only valid choices are offered, so errors are rare and no training is needed.
Voice (natural language) interface. The user speaks commands. It is hands-free and helpful for people with limited mobility, but it can misinterpret speech in noisy places or with unfamiliar accents.
The right interface depends on the users and the task. A kiosk for older library visitors needs large buttons and few choices; a server administrator needs speed and automation.
Utilities and drivers
Utilities keep the computer healthy: antivirus software, backup tools, file compression, disk clean-up and defragmentation (for hard disks) are all examples.
Device drivers translate the operating system's general instructions into the specific commands one model of hardware understands. A new printer, scanner or graphics card may need its driver installed before it works properly. A missing or out-of-date driver is a common cause of hardware faults.
Firmware
Firmware is software built into a device to control it at the lowest level — in routers, printers, washing machines and the computer's own start-up system. It is updated less often than applications, and firmware updates carry extra risk: if an update is interrupted, the device may be left unable to start.
Open-source versus proprietary
| Open-source | Proprietary | |
|---|---|---|
| Cost | Usually free to obtain | Licence must be bought |
| Source code | Available to view and modify | Kept private |
| Support | Mainly community forums; paid support sometimes available | Official support from the company |
| Customisation | Can be adapted by anyone with the skills | Only the company can change it |
Free does not always mean cheaper overall. Switching an organisation to open-source software may save licence fees but add costs for retraining staff, fixing compatibility problems with files from clients, and arranging support. This idea is sometimes called the total cost of ownership.
Bespoke versus off-the-shelf
Off-the-shelf software is cheaper because development costs are shared among many buyers. It is available immediately, has been tested by many users, and help is easy to find online. However, it may include features you do not need and miss some you do.
Bespoke software is designed to fit an organisation's exact processes. It suits specialist needs, such as hospital patient records with strict legal requirements. It is expensive, takes time to develop and test, and depends on the developer for future support.
Licences, updates and piracy
Licences set out how software may be used. Common types include:
- Single-user licence — one person or device.
- Site licence — any number of computers at one organisation, usually cheaper than buying many single licences.
- Subscription — pay monthly or yearly; you get the latest version, but payments never end and access stops if you stop paying.
- Free and open-source licences — use and share freely under stated conditions.
Copying software without a licence (piracy) is illegal and denies developers payment. Pirated copies also carry risks for the user: they often contain malware and do not receive official security updates.
Installing patches promptly matters because once a weakness is published, attackers target computers that have not yet been updated. An operating system that is no longer supported is a security risk even if it still works, because new weaknesses will never be fixed. Large organisations often test updates on a few machines first, because an update can occasionally break compatibility with existing software or hardware.
Worked examples
Example 1: Choosing an interface
A railway company is designing a ticket machine for use by the public. Which type of interface is most suitable? Justify your answer. (3 marks)
Answer: A menu-driven touchscreen interface (1). Users are members of the public with no training, so offering a small set of clear choices makes the machine easy to use (1) and prevents invalid entries, reducing errors and queues (1).
Example 2: Bespoke or off-the-shelf
A small café wants software to produce its weekly menu and a monthly newsletter. Should it buy off-the-shelf software or commission bespoke software?
Answer: Off-the-shelf. The café's needs are simple and common, so ready-made word processing or DTP software will do the job. It is cheap, available immediately and well supported. Bespoke software would be far more expensive and take time to develop, with no real benefit for such a standard task.
Example 3: Evaluating a switch to open-source
A firm of 50 staff is considering replacing its paid office suite with a free open-source one. Evaluate this decision.
Answer: The firm would save licence fees every year, and open-source software can be installed on as many machines as needed. However, staff may need retraining, documents exchanged with clients may not always display identically, and there may be no official support line if something goes wrong. If the firm's work relies heavily on sharing complex documents with clients, the hidden costs may outweigh the savings; if documents are mainly internal, the switch is more likely to be worthwhile.
Example 4: Device drivers
A user plugs in a new graphics tablet, but it does not respond. Suggest the most likely cause and solution.
Answer: The device driver for the tablet has not been installed, so the operating system cannot communicate with it. Installing the correct driver from the manufacturer should fix the problem.
Common mistakes and how to avoid them
- Calling the operating system an application. It is system software. Applications run on it.
- Listing OS functions vaguely. "It runs the computer" earns nothing. Name specific jobs: memory management, multitasking, file management, peripherals, security, user interface.
- Saying open-source is always better because it is free. Mention support, training and compatibility costs to show balance.
- Mixing up firmware and drivers. Firmware is inside the device; a driver is installed on the computer to talk to the device.
- Choosing a CLI for beginners. Match the interface to the user's skill and the task.
- Forgetting security in update questions. The main reason to install updates promptly is to close security holes.
Exam technique for "Components of Computer Systems: Software"
- When asked to classify, give the category and a reason: "Antivirus is a utility because it maintains the system's security rather than performing a user task."
- For compare questions, use the same criteria for both options — cost, support, customisation, time to obtain.
- For evaluate or justify questions, end with a decision tied to the scenario: who the users are, what they need, and their budget.
- Learn three or four named examples for each category (operating systems, utilities, applications) so that you can give them quickly.
Quick revision summary
- System software runs the computer (OS, utilities, drivers); application software does user tasks.
- The OS manages memory, processes, files, peripherals and security, and provides the user interface.
- Interfaces: GUI (easy, resource-heavy), CLI (fast, scriptable, expert), menu-driven (public, few choices), voice (hands-free, can mishear).
- Drivers let the OS talk to hardware; firmware controls a device from inside it.
- Open-source: free, modifiable, community support. Proprietary: paid, closed, official support.
- Bespoke: exact fit, expensive, slow. Off-the-shelf: cheap, immediate, tested, may not fit perfectly.
- Licences include single-user, site and subscription. Piracy is illegal and risky.
- Install patches promptly; unsupported software is a security risk.