“Design process revolves around intense iteration.” – Jonathan Ive
Whether designing a new feature, or improving on an existing one, Iteration is at the heart of my design process. On a high level, I like to represent my design process in the diagram below, but as with all agile work, this is not set in stone and I adapted as required.
The design process is better understood by looking at what these steps achieve.
Requirements, Research and Discovery
Requirements for features usually come from Product Management, or from customer feedback. In a research and discovery phase, I look for possible existing solutions for the problem at hand. All the findings from these phases of the process are used to generate ideas for the designs. In this part of the process, it’s important to get as many ideas out there as possible.
Identifying the needs of the user and exploring solutions is an iterative process. Conceptual solutions are validated with users and internal stake holders and their feedback is used to refine the product design.
Design and Feedback
The main aim of this stage of the process is to provide benefits, not just add features in the product. This subtle distinction is key for improving the user’s experience in the product.
The design process usually starts on pen and paper, whiteboards. It’s the best way of gathering the ideas from the previous phase of the process in one place quickly, with a bird’s eye view of everything at once.
Sketching / whiteboarding allows me to rapidly iterate on my design and try different combinations to assess what design would work best.
It is important to consider all key stakeholders in the project. Stakeholders on the customer side includes users that interact with the product / feature, as well as the people that influence the purchase decision and implement the product in their company’s workflow. Internal stakeholders include Architects, Product Managers, Project Managers, Engineers, Quality Assurance, and sometimes Sales and Marketing as well.
After every major design milestone, I solicit feedback to iterate on the design, and create the design in a Sketch or Axure prototype (depending on the level of complexity of interactions in the feature)
I make interactive prototypes in Sketch and Axure for use in Usability Studies.
Usability studies validate the design, and allows us to understand the context of use of that feature / product.
Documentation and Development
The design is documented in the company wiki, and this serves as a resource for the engineers when they begin building the feature. I sync regularly with the engineering and QA teams during the development phase to ensure that the features are implemented as designed, and to handle any design conflicts that may arise.
This design process has been successful because I squeeze in an iteration on the design at every step of the way, always moving towards the better solution. This results in fewer post-deployment usability bugs, thus saving development and support resources.
I cannot display all my wire frame and design work on my website.