System Software
A good user interface should be easy to navigate and easy to learn. Easy to navigate means you can move around the interface and find the area or option you need. Easy to learn means a new user can work out what to do by looking, without training or memorising commands.
Available actions should be visible or discoverable. If an action can only be used by remembering a hidden command or a secret key combination, many users will never find it. Showing the choices on screen lets users explore and work out what the interface can do. For example, a school clubs booking screen could show a clearly labelled Book a place option on each club, so a pupil can see how to sign up without being told.
Clear labels use plain words that say what an option does. A label such as Book a place is easier to understand than an abbreviation such as BP. Logical grouping puts related controls together. On the clubs screen, clubs could be grouped under the day they run, and booking options kept with each club. Users can then scan the relevant group instead of searching the whole screen, which helps them find what they need faster.
When actions are visible and well labelled, users learn the interface faster and feel less frustrated. They make fewer mistakes because they choose the option that matches what they want, rather than guessing. This matters most for people who are new to computers, but it helps everyone: users waste less time hunting for controls, so starting a task feels simpler.
A consistent layout places controls in predictable positions and makes them behave in the same way every time. Once you have learned where a control is and what it does on one screen, you should find it in the same place, doing the same job, on another screen or in another program.
Most programs get this for free by using the standard interface elements the operating system provides, such as its own buttons, sliders and colour pickers. Because every program draws on the same set, software you have never opened before still feels familiar: the slider that sets the volume in a music player moves in just the same way as the slider that sets the brush size in a drawing app, and the colour picker in a photo editor shows the same grid as the one in a poster design tool.
Consistency also matters within one program. If a video editor keeps its trim tool in the toolbar of the timeline screen but hides it in a side panel in the clip editor, you have to hunt for it twice. One place and one behaviour means you learn it once.
A consistent layout is not about looking tidy. It tells you where to look and what will happen when you click, and that predictability is what makes an interface quick to use. It matters most to beginners, who have nothing learned to fall back on, but it helps everyone: even an expert slows down when a routine action suddenly moves.
Help and error messages are parts of a user interface that guide you when a task is unclear or something goes wrong. A good error message does two jobs: it explains what has gone wrong and tells you what to do next. It should be specific and written in plain language, not vague or packed with technical jargon.
An error message that only says something failed leaves you stuck. Compare these messages:
| Weak message | Better message | Why it is better |
|---|---|---|
| Upload failed. | Your photo is 12 MB. The gallery accepts files up to 8 MB, so choose a smaller photo or compress this one. | It states the problem and gives two ways to fix it. |
| Cannot save. | The file name contains a slash. Remove the / and try saving again. | It points to the exact cause and the next step. |
Messages like these let you recover from a problem on your own, without needing to ask for support.
Help facilities are features that let you find out how to use parts of the interface. They include tooltips, a searchable help menu and on-screen hints and tips. For example, resting the pointer on a padlock icon in a shared photo album could show a tooltip explaining that only invited friends can view the album. A help menu might let you search for instructions on cropping a picture or changing a password. Help facilities are built into the interface, so you can get answers while you are working instead of hunting for a manual.
Clear error messages and useful help reduce frustration, help users recover from problems and mean fewer requests for support. They help everyone, not just beginners: experienced users also meet unfamiliar tasks or forget where a setting is. Clear help keeps you working independently.
Accessibility features are options in the user interface that remove barriers for users with disabilities, so they can use a computer independently instead of relying on someone else. They are provided by the operating system, so once switched on in the settings they keep working in every program you open.
| Feature | What it does | Barrier it removes |
|---|---|---|
| Screen reader | Reads the screen aloud, including text, menu names and button labels | A user who cannot see the display can still hear what is on it |
| Magnification | Enlarges part of the screen | Small text and tiny controls become usable for someone with low vision |
| High-contrast display | Uses strongly different colours, such as pale letters on a dark background | Text and controls stand out instead of blurring into the background |
| Larger text | Increases the size of text and icons across the interface | Content can be read comfortably without leaning in close |
| Voice control | Lets the user give commands by speaking them | A user who cannot easily click or type can still control the computer |
No single feature suits every user. Someone with low vision might magnify a spreadsheet of numbers but switch on a screen reader for a long article, so the features are designed to be combined.
Daniel can move his head but finds clicking accurately and typing very hard. With voice control turned on he says the name of the program he wants and it opens, then he dictates a paragraph of his geography homework, saying "full stop" where one is needed. The computer has not become any easier to click; instead the barrier has been removed, and Daniel can work at the same pace as the class without waiting for an adult to type for him.
These options are not only for people with a long-term condition. A pupil who has left their glasses at home can magnify a diagram until it is big enough to copy, and the settings can be turned off again just as easily.
Customisation means letting the user change the interface to suit their own preferences. The settings are saved, so the interface opens the way they like it every time they start work.
Common settings cover appearance, such as a dark or light theme, the accent colour used for highlights and the shape of window corners. Language and regional settings let the user pick the language for menus and messages, and the order that dates, times and numbers appear in.
For example, Sam shares a home computer with his sister. On his account he picks a dark theme with green highlights and rounded window corners because he likes how it looks, while she keeps the default blue. Nothing on the screen was hard for Sam to see: he simply prefers it, and the interface feels familiar the moment it opens.
Customisation is about personal preference. Accessibility features, such as captions, colour filters or switch access, remove barriers that a disability creates. Choosing green highlights because you like them is customisation; switching on a colour filter because some colours are hard to tell apart is accessibility. One setting could serve both purposes, but the reason it is switched on tells you which idea it is.
A customised interface is more comfortable and familiar, so the user spends less effort working out where things are and can get on with their task. Since the same software can be adjusted for many different tastes and formats, a customisable interface suits a wider range of users.
Two people can use the same program and need very different things from it. Interface features remove particular barriers, so you choose a feature by looking at what a user finds difficult and then explain how it helps them.
Magnification zooms in on part of the screen so small details can be picked out. High contrast separates text and controls from the background when similar shades are hard to tell apart, and larger text makes labels and instructions easier to read. A screen reader speaks text and controls aloud, so the user does not need to see the screen, and voice control lets them choose options by speaking instead of aiming at small targets.
A student with low vision checking their homework timetable on a tablet benefits from high contrast, because finished and unfinished tasks are easy to tell apart, and from a screen reader, which reads out each task before they start it.
The barrier here is not knowing what to do next. Visible controls, such as an option labelled Print, show the actions on offer, so the user can see what is possible without being taught every step. A consistent layout keeps the same actions in the same places on every screen, so the user builds a routine and knows where to look. Helpful error messages explain in plain language what went wrong and how to put it right, so a slip does not stop the user working.
A new member of a gardening club recording planting dates in a shared spreadsheet benefits from an error message saying 'Type a date as DD/MM/YYYY', because they can correct the entry themselves instead of asking someone else.
Naming a feature does not explain anything on its own: 'use magnification' leaves the question of why unanswered. 'Magnification helps this user pick out the small date on each row' links the feature to the difficulty. Name the barrier, choose a feature that removes it and say how it removes it for that user.