Usability Engineering began to emerge as a distinct set of “professional practice” in the mid- to late 1980s. The majority of the professionals of this practices were from varied backgrounds such as Computer Science or in a sub-field of Psychology such as Perception, Cognition or Human Factors. Today this field is being populated from some newer discipline such as Cognitive Science and Human-Computer Interaction.
Usability engineering, is defined by Preece as
‘an approach to system design in which levels of usability are specified and defined quantitatively in advance, and the system is engineered towards these measures, which are known as metrics.’
The whole concept of Usability Engineering focuses on the “metrics for measuring usability”.
As the emphasis on usability metrics through “analysis and evaluation”is mostly the soul focus of this process, there is not enough focus on the actual design process. In this process the usability is tried to be attained through “engineering and quantifiable methods and techniques” rather than “designing the way to usability”.
Also the “usability engineering”focuses only on providing range of techniques to analyze users, specify usability goals, evaluate designs, but it does not address the whole development process.It has more of a focus on “assessing and making recommendations to improve usability than it does on design, though Usability Engineers may still engage in design to some extent, particularly design of wire-frames or other prototypes”.
The usability engineering mostly seen as a separate activity that can be plugged into different SDLC models as a separate set of activities from a process-oriented perspective.
The Usability Engineering conducts evaluations through the following tools and methodologies:
- usability testing
- focus groups
- cognitive walkthroughs
- heuristic evaluations
- RITE method
- cognitive task analysis
- contextual inquiry
- Think aloud protocol
User-Centered Systems Design (UCSD)
User-Centered Systems Design (UCDS) is set of “usability design” process focusing on usability throughout “the entire development process and further throughout the system life cycle”. It is based on the following key principle:
- User focus: The goals of the activity, the work domain or context of use, the users’ goals, tasksand needs should control the development.
- Active user involvement: Representative users should actively participate, early and continuously throughout the entire development process and throughout the system life cycle.
- Evolutionary systems development: The systems development should be both iterative and incremental.
- Simple design representations: The design must be represented in such ways that it can be easily understood by users and all other stakeholders.
- Prototyping: Early and continuously, prototypes should be used to visualize and evaluate ideas and design solutions in cooperation with the users.
- Evaluate use in context: Baseline usability goals and design criteria should control the development.
- Explicit and conscious design activities: The development process should contain dedicated design activities.
- A professional attitude: The development process should be conducted by effective multidisciplinary teams.
- Usability champion: Usability experts should be involved from the start of project to the very end.
- Holistic design: All aspects that influence the future use situation should be developed in parallel.
- Process customization: TheUCSDprocessmust be specified, adapted and implemented locally ineach organization. Usability cannot be achieved without a user-centered process. There is, however,no one-size-fits-all process.
- A user-centered attitude must be established: UCSD requires a user-centered attitude throughout theproject team, the development organization and the client organization.
The typical process flow of UCSD can be visualized as the following steps (based on ISO/TR 18529:2000):
- Pre-study and business analysis: It can be anything from a comprehensive analysis of work procedures, business processes, etc., to a brief statement or vision.
- Planning the user-centered systems design process: includes setting up the project with resources, activities, roles, methods, etc.
- Do iterative UCSD /Usability DesignActivities: The usability design process approximately.
- Formal Summative Evaluation: It covers the usability of the resulting system, as opposed to the formative evaluations used in the usability design process to learn about details in the design .
- Introduce and Operate the System: includes installation, change management, user training, evaluating long-term effects and so forth.
The focus of UCDS is all about “changing the attitude among all professionals involved in the software development process” and these set of 10 principles are key for the “user-centered systems design process” which helps in giving “equal weight to interaction design, analysis and evaluation, combining interaction design, and usability engineering”.
The Usability Design is roughly a subset of the UCSD process that matches the “Do Iterative UCSD” step of the UCSD process.
The usability design outlines the steps in the development process involving usability design aspects. The process can be divided into three main phases:
- Requirements analysis: This step is synonymous with planning and analysis phase of typical software development life cycle(SDLC).
- Growing software with iterative design: This is the design and testing phase and development phase of typical SDLC.
- Deployment: This is same as deployment phase of typical SDLC.
(c) 2012-14, Samir Dash