What does utility software do, and how do we develop robust software and find its vulnerabilities?
Understand the purpose and functionality of utility software (file repair, backup, data compression, disk defragmentation, anti-malware), and the importance of developing robust software and methods of identifying vulnerabilities (audit trails, code reviews).
A focused answer to Edexcel GCSE Computer Science 3.2.2 and 3.2.3, covering utility software (file repair, backup, compression, defragmentation, anti-malware) and developing robust software with audit trails and code reviews.
Reviewed by: AI editorial process; not yet individually human-reviewed
Have a quick question? Jump to the Q&A page
Jump to a section
What this dot point is asking
Edexcel wants you to describe utility software and what each named utility does (file repair, backup, data compression, disk defragmentation, anti-malware), and to explain why robust software matters and how vulnerabilities are found using audit trails and code reviews.
Utility software
The five utilities Edexcel names each do a maintenance job:
- File repair detects and fixes corrupted files where possible, recovering data that has been damaged (for example by an interrupted save or a disk error).
- Backup makes copies of data to another device or location, so that if the original is lost, corrupted, deleted or stolen, it can be restored. Backups can be full or incremental, and scheduled to run automatically.
- Data compression reduces the size of files so they take less storage space and transfer faster (using lossless or lossy methods, as in Topic 2).
- Disk defragmentation reorganises files on a magnetic disk (see below).
- Anti-malware scans for, detects and removes malicious software such as viruses and worms, protecting the system from threats.
Disk defragmentation in detail
Fragmentation happens because deleting files leaves gaps, and a new large file gets split to fit the gaps. The read/write head then has to move around the disk to gather all the pieces, which is slow. Defragmentation gathers each file's pieces into one place and consolidates the free space. Importantly, this mainly benefits magnetic drives with moving heads; solid-state drives have no moving parts and are not defragmented (it would cause unnecessary wear for no speed gain).
Developing robust software
Robustness matters because software is used by many people, sometimes carelessly or maliciously, and unexpected input must not crash it or open a security hole. This is why programs validate input, handle errors gracefully and are tested with a range of data, including invalid and boundary values, before release.
Identifying vulnerabilities
These two methods catch different problems. An audit trail is about what happens while the system runs: by logging who did what and when, it lets you investigate incidents and detect attacks. A code review is about the code itself before or after release: fresh eyes spot bugs, poor practices and security holes that the original author overlooked, improving robustness and security.
Why it all fits together
Utility software keeps the system healthy and its data safe, while robust-software practices keep the programs themselves dependable and secure. Both are about reliability: utilities protect and optimise the existing system, and robustness plus vulnerability checking (audit trails, code reviews) prevent problems in the software being built. A strong answer states what a utility or method does and the benefit it brings.
Try this
Q1. State what disk defragmentation does. [1 mark]
- Cue. Reorganises a magnetic disk so each file's parts are stored together, speeding up access.
Q2. State one method of identifying vulnerabilities in software. [1 mark]
- Cue. Either keeping an audit trail (a log of actions) or carrying out a code review.
Exam-style practice questions
Practice questions written in the style of Pearson Edexcel exam questions on this dot point, with worked answer explainers. The year tag is the paper they imitate, not the source.
Edexcel 20224 marksDescribe how disk defragmentation software and backup software each help to maintain a computer system.Show worked answer →
Describe what each utility does and the benefit it brings.
Disk defragmentation reorganises the files on a magnetic hard disk so that the parts of each file are stored together (contiguously) rather than scattered, which reduces the movement of the read/write head and so speeds up access to files.
Backup software makes copies of data (to another device or location) so that if the original data is lost, corrupted or stolen, it can be restored, protecting against data loss from hardware failure, accidental deletion or malware.
Markers reward a developed description of each: defragmentation reassembles fragmented files to speed up access; backup creates restorable copies to protect against data loss.
Edexcel 20213 marksExplain why code reviews are used when developing software, and give one other method of identifying vulnerabilities in software.Show worked answer →
A code review is when other programmers read through the code to find errors, weaknesses and security vulnerabilities that the original author may have missed. This improves the robustness and security of the software before it is released, because more eyes catch more problems and poor practices.
One other method: keeping an audit trail (a record or log of actions and changes), which can be examined to detect misuse, trace how a problem arose, or spot suspicious activity.
Markers reward explaining that a code review has others inspect the code to find faults and vulnerabilities (improving robustness), plus naming audit trails as another method.
Related dot points
- Understand the purpose and functionality of an operating system (file management, process management, peripheral management, user management).
A focused answer to Edexcel GCSE Computer Science 3.2.1, covering the purpose of an operating system and its four key functions: file management, process management, peripheral management and user management.
- Understand the characteristics and purposes of low-level and high-level programming languages, and how an interpreter differs from a compiler in the way it translates high-level code into machine code.
A focused answer to Edexcel GCSE Computer Science 3.3.1 and 3.3.2, covering the characteristics of low-level and high-level programming languages and the difference between a compiler and an interpreter.
- Understand the role of secondary storage and the ways in which data is stored on devices (magnetic, optical, solid state).
A focused answer to Edexcel GCSE Computer Science 3.1.2, covering the role of secondary storage and how magnetic, optical and solid-state devices store data, with their advantages and uses.
- Understand that data storage is measured in binary multiples (bit, nibble, byte, kibibyte, mebibyte, gibibyte, tebibyte), construct expressions to calculate file sizes and data capacity, and understand the need for and methods of compression (lossless, lossy).
A focused answer to Edexcel GCSE Computer Science 2.3.1 and 2.3.2, covering the binary storage multiples (bit, nibble, byte, kibibyte up to tebibyte), file-size and capacity calculations, and lossy and lossless compression.
- Understand the threat to digital systems posed by malware (viruses, worms, Trojans, ransomware, key loggers), how hackers exploit technical vulnerabilities and use social engineering, and methods of protecting digital systems and data (anti-malware, encryption, acceptable use policies, backup and recovery).
A focused answer to Edexcel GCSE Computer Science 5.3.1 and 5.3.2, covering malware (viruses, worms, Trojans, ransomware, key loggers), how hackers exploit vulnerabilities and use social engineering, and protection methods (anti-malware, encryption, acceptable use policies, backup and recovery).
Sources & how we know this
- Pearson Edexcel GCSE (9-1) Computer Science (1CP2) specification — Pearson (2020)