User-Centered Software Engineering (UCSE)

Date:   Thursday , June 11, 2009

As the world has become a global village and commodities are bought and sold to and from across the seas, software usability engineering has come into prominence. Since software is the window to showcase the products and services, the consumers interact with this window to complete the transaction. Abundance of information on the Internet and equally voluminous quantum of commodity that sell on the Internet make it very difficult to manage the human-computer interface (HCI) design problems. As software is becoming ubiquitous in every walk of life, it’s very important for software developers to think out of the box and not depend only on their intuitions as to decide what product designs are likely to be seen as usable.

Software engineering firms have to understand the perceptual psychological, cognitive psychological, and other scientific underpinnings of usability; having understood these, they would have to define and implement aspects of usability engineering methods used in the pursuit of ‘user-centered design’ and then judiciously apply usability engineering in a software development project. Essentially all software projects need ‘user-centered approach’. With functionality and ‘speeds and feeds’ becoming a norm, they no longer are success factors of any products. Functionality isn’t enough: users are demanding that ease of use be designed into the products they use. Many of our customers are now asking us to demonstrate the usability of solutions and products through usability testing methods or devices, and some of them also want the products to be ISO 9241-11 standard compliant.

What is User-Centered Design?
User-centered design is a process in which the demands, wants, and limitations of the end user of the product are given prime attention at each stage of the design process. Users are an integral part of the product design and development. The user-centered approach is a multi-stage problem solving process that compels designers to not only analyze and foresee how users are likely to use an interface, but also, to test the validity of their assumptions with regards to user behavior in real world tests with actual users. These testings are imperative, as they clear the barriers for the end users and give the intuitive understanding to the designers as to what users would experience and the learning curve associated with different strata of user base.

How to approach User-Centered Design?
Understand the business goals and objectives:
* What is the target market?
* Who are the intended users?
* Who is the competition?
* Include users

Understand the users, this will open up newer avenues and become a driving force behind product design. User feedback plays an important role in product planning, prioritizing, and decision-making. Design for total customer experience, it’s no more about what you see is what you get, but it’s about the way you use is what you get, everything the customer sees, hears, and touches should be designed by specialists, right from textures to color palettes to iconography, and everything from look and feel to ease of use should reflect in the experience that the customers expect. Contiguous feedback from user groups in quick succession helps drive and evolve the product design.

Laser focus on the users’ current mannerism to accomplish the tasks helps in creating designs that add value; jazzed up designs are feel good but not necessarily popular. Popularity of the interface, success of the product, and simplicity with look and feel go hand-in-hand: the greatness of the design should be its simplicity.

Why User-Centered Software Engineering - UCSE?
UCSE should be employed to churn out products that are more usable, as usability increases customer satisfaction and productivity, leading to customer trust and loyalty that certainly results in tangible cost savings and profitability. As user interface (UI) development is part of the solution and product development cost, it helps if it is done the right way. It avoids a lot of rework and changes in the UI and system design as well. The UCSE approach to the development of solutions and products returns many benefits to the enterprises, such as:
* Increased user satisfaction
* Reduction of user errors
* Decreased dependency on support systems such as help desk, user manuals, or online help, and hence decreased support and training costs
* Early changes incorporated during design life cycle results in savings in time and material
* Increased sales for product companies
* Reduction of customer support costs
* Early changes incorporated during design life cycle results in savings in product rework development costs
* Reduced costs in user training

Early focus on user-centered design and usability helps make key decisions on system design; it also helps keep the product perfectly aligned with the core business goals and objectives.

Author is CEO of SpadeWorx Software Services.