To create an intuitive and user-friendly website or app, there are a few parts to it:
Knowing and applying the usability conventions for the platforms you’re designing for
Involving users in the process so that we understand their needs and goals in depth and get regular feedback from them.
Match users’ mental models with the systems design. When we are designing, one of the activities that we do is to map out the user journeys. We map their triggers (what triggers the user to start that process), their goals are (tasks that they are trying to accomplish) and what actions they expect to take to achieve their goals.
Then we make the system’s design to align with those journeys. And we test it with users.
This is what will make the user journeys streamlined and tasks easy to be accomplished.
A lot of the time, when users are frustrated, it’s because the way they expect the system to work is different from what is actually there. So, for example, too many frictions, steps or missing content in that process.