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

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:

  1. Simplify and optimise the user journey for the most common use case.
  2. Speed is paramount; there is no point in creating focussed software if is slow.
  3. 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.

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

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.