Single and multi-purposed software
There are two types of software, the ones with a specific focus (single-purpose) and the ones with multiple functionalities (multi-purpose).
Single-purpose software
Single-purpose software, also known as focused or task-oriented software, is created specifically to get a single job done. The ideal workflow allows the user to quickly open the app, complete their task and get on with their day.
Examples
- Currency converter
- Room booking
- Translator
- Video player
- Simple text editor (TextEdit and Notepad).
Characteristics of single-purpose software
To create a piece of software that adheres to this category, start by defining a clear goal. The scope has to be explainable in a couple of sentences.
Follow these guidelines when ideating and developing it:
- Simplify and optimise the user journey for the most common use case.
- Speed is paramount; there is no point in creating focussed software if is slow.
- Restrain from creating “personalised and smart” software.
How to streamline the user journey
At each point in their journey, show the user the information they need to proceed to the next step and a way to change what is already chosen. Also, ensure that eventual information or error messages can be seen; nobody wants to get stuck on a quick operation.
Example: room booking app
Its goal is to allow a user to choose and book an available room or desk with a few clicks. A possible journey could be to show a list of rooms, allowing the user to choose one from the available ones and book it all within two or three screens.
What does fast mean
Fast software is software that presents the right UI at the right moment. The goal is to optimise loading times and remove unnecessary screens and text messages.
Example: search
If the most common task is to search, prefocus the input field and make an eventual virtual keyboard pop-up. Preload enough content for each result to show at least part of the details as soon as the user selects a result.
Personalised and smart software?
Is easy to think that adding automatic customisation or recommendations would optimise a single-purpose software, but it usually does the opposite. A software of this type should not have options getting in the way, and anything generic enough to allow automatic customisation can get things wrong too often. If there is a wish to add customisation, allow the user to create theirs.
Multi-purpose software
The Swiss Army knife ones, instead, are either opened for a long stretch of time or can be used to create or modify everything about a piece of content.
Examples
- Image Editor (Adobe Photoshop and Affinity Photo)
- Rich Text Editors (Word)
- Chat (Slack and Microsoft Teams)
- Web Browser (Chrome, Firefox and Safari)
Characteristics of multi-purpose software
This type of software has an ever-increasing list of features and capabilities. The challenge here is to strike a balance between discovery and focus. All users should be able to learn and use the basics without issues, but ensuring that each functionality is well integrated with the rest of the software requires regular review.
How to make the user cope with it? Use Progressive discovery
This strategy is to create software only as complex as required. The goal is to get the user to a decent level of proficiency as soon as possible and have mechanisms to show and explain more advanced capabilities as they gain confidence with the software. Extra care must be taken into defining which tools are the most useful and show them first, with additional toolbars, menus, or panels only appearing when requested or necessary.
Integration with other software
One way to add functionalities is to provide a way to integrate with other software and services. This gives the ability to enhance what the software can do without exposing all the functionalities unless the integration is configured.
About user satisfaction
Each type has its specific way of improving if the users are satisfied.
Single-purpose software
Single-purpose software values efficiency. The user journey should be consistent across sessions, and all users should follow the same pattern. The ideal metric is to measure the time it takes for the operation to be completed. The way to improve it is to reduce the number of steps required to the smallest possible; it is a minimalistic endeavour, where each screen and each click or tap must be considered and valued.
Multi-purpose software
Multi-purpose software is much more challenging to scope. The goal is to provide a comprehensive set of tools to allow the user to get the job done without reaching for other software. One metric is to see how many features required to process a piece of content are available to the user and how hard it is to use them together.
Conclusion
Both single-purpose and multi-purpose software have their unique strengths and serve different needs of users. No matter which type of software you build, striking a balance between simplicity and functionality is key to crafting software that truly enhances the user experience.