Flexibility - Product vs Service design

What is product flexibility?

Can’t do forms online? Fill out a PDF and upload. Can’t upload a photo? Take a photo using the device camera. Giving choice at the product level brings robustness and flexibility into the system. Users find this to be ‘easy to use’ and there's a much higher chance of users completing their journeys.

On the other hand, for power users, your system could allow bulk actions, navigational shortcuts, contextual menus, additional options, permission systems, audit logs and more. Flexible systems are usually complex.

Lidwell's flexibility - usability tradeoff

William Lidwell's Universal Principles of Design talks about a flexibility - usability tradeoff, i.e., the more flexible something is, the less usable it is.

There's nothing inherently unusable about flexible systems. It's just that flexible systems require users to be more aware of their working context, need to understand their options at various stages of the system, know the consequences of their actions, bear more cognitive load, have a bigger working memory and more.

With flexibility, comes complexity. We're simply asking users for more. More attention, more effort and more responsibility.

Can we make the service flexible instead?

Services are bigger than the product. Their surface area not only covers a system's internal processes, it also covers the physical space and the touchpoints where the offline and online meet. This wider net gives them greater powers to deal with complexity at various levels.

A service designer can distribute complexity elsewhere, so that the product ends up being simple.

They can help create processes that handle those additional options that were supposed to be part of the product. They could advocate for the service to be more modular, so that an individual product's complexity and responsibility is reduced.

Product - Service flexibility is the new tradeoff

One thing we should never compromise on, is usability. If usability is being effected, we must look back and see why and how we've ended up with so much responsbility and capability required in our system. Can this flexibility be traded up at the service level?

It might be too big of an ask, or it might just be a good chat with a system architect. Either way, it's worth every bit trying.