In my 13 years as a UX/UI designer I’ve learned that good UX design starts and ends with purpose. A reason for why you create a design, and why you created it the way you did. Every part of a UX design should serve a functional purpose.
No part of a user experience should be explained with “because I like it”, or “because it looked good”. That only describes a designer experience rather than a user experience.
Every part of a user experience needs to answer: What purpose does this design serve for the user?
Truly good user experience design is a process of ideation, prototyping, testing, evaluation, and refinement. Its a cycle, and done correctly its a rapid one. Its not done in one try and its not done alone.
User experiences are created to solve problems. Without a clear understanding of these problems the designs with fail to thrive.
Knowing who will use your designs can inform you as to the problems users in your space are facing.
Ways to know your users include:
I believe in rapid iteration on serveral ideas at once. I use Invision, Sketch, Axure, FramerJs, and HTML/CSS and others to create functional motion prototypes. With native design motion standards and even hybrid design animations, its becoming more and more difficult to fully communicate a UI to a team without creating a usable prototype. I do this in the UX stage for rough functionality and in the UI stages to refine usability.
Motion prototyping is especially useful when designing for native apps on Android and iOS. There is a big difference between the two platforms. Android’s Material design and iOS HID have very different standards concerning timing, animation, permissions, and visuals. Being able to use them side by side really gives stakeholders a sense of usability that flat mockups just can’t provide.
With the speed of mocking up UI designs in Sketch and Photoshop I find little reason to stay low fidelity for very long so jumping right into prototyping is faster than ever. This allows more time for A-B testing and user feedback to refine designs.
My back ground as a frontend developer gives me the ability to work closely with developers on design integration.