The key for a successful software product is fulfilling the user’s needs and desires to solve a concrete problem and also those software products have to provide user interfaces that allow the users to perform a task in an easy and efficient way.
To increment the usability level of the software products, the development team has to add the usability vision into the whole development process. Currently, the usability perspective is very important in the software production for obtaining a product that can be more appreciated by the users and contribute to an effective and easy form to interact with the software.
In the industry, there are different methodologies and development techniques but most of them do not include any phase especially dedicated to solve usability issues. The two approaches, usability and software development, must be performed side by side to generate a product with better quality and more oriented to the user’s side. Many times, the software is excellent but the interaction between the users and the product is complex or the UI is too difficult to understand and to use.
For integrating the usability techniques to the software development process, some changes have to be introduced to the phases of the different methodologies for obtaining more benefits in each phase.
- Analysis: Interviews, surveys, focus groups or field studies can be used to determine the real needs of the users and to obtain feedback to complement the design.
- Design: To test the design with the users and to obtain feedback the designers and developers can use prototypes, participatory designs or usability tests.
- Testing and Deployment: In the testing phase, there has to be guaranteed that the product doesn’t have bugs but also the usability must be tested in order to ensure that the users can work with the product; usability evaluation and surveys are some examples of the techniques that can be used.
The development process and the schedule of the development of a product must consider the times required to implement the usability techniques and to analyze the results and implement the corresponding changes. Also, it is recommended to use an iterative approach in order to be able to implement the changes associated to the obtained user feedback to the product.
Including and involving users to the development process can help to understand the real needs and to improve the design of the final product to generate a better interaction as well as being more efficient. But most of the organizations are incredulous about it because they have stereotypes and barriers like delay on the production schedules or that the usability tests will increase the number or requirements or even increase the budget. The solution to these problems is to analyze better our users, obtain feedback and plan in advance how to introduce usability in the development process to reserve enough resources to put it in practice.
Finally, adding the usability practices into the software development process can bring many benefits to the development teams and the companies including quality, easiness and usability to their products. On the other hand, implementing usability practices in a large company with a defined software development process required time to train the developers and also a specific budget to apply the techniques and to hire usability experts to be part of the team.
- Usability vs. Software Development
- The usability design process – Integrating User-Centered Systems Design in the Software Development Process