Usability in reference to any human-made object means ease of using or learning to use that object. Similarly, in context to software applications, usability means ease and clarity with which software can be used by its end users.
An application is said to have a good usability if it is:
- Easy to use
- Easy to Learn
- Easy to Remember
- Recoverable from Errors
- Satisfactory to use
How ‘Usability’ originated in our team:
I am working with a team of 20 people designing a web application as a supply chain management solution for one of our leading clients. We are the offshore team and work with the onsite client team to deliver the best solutions possible. The onsite team gets requirements from the sales team, who in turn gets requirements from the end-user customers. The product is used by actual customers in the US and is continually evolving as each customer has a new requirement.
As a part of this project, I was testing a newly migrated UI for our web app. By migration I mean that only the look and feel of the app was being changed, not the functionality. It was purely UI testing, not functional. While testing, we maintained an Excel sheet of bugs found. This sheet was shared across the team. As the project progressed, the Excel sheet was filled with a number of bugs that the developer kept fixing. However, this task was taking more time than what we actually thought/estimated for, which usually happens with most of us. 🙂
The management team analyzed the reasons for the continual delay. While doing this activity, they observed the pattern of bugs, and found that most of the bugs were not actually “bugs” but differences in UI (a tester “acting” as an end user Vs. an actual end-user resulted different expectations). This triggered a thought:
“Why is it that the end-user didn’t expect the same thing that we developed; or, why didn’t we develop the same thing that the end-user might have expected”.
This was researched, and all searches led to things like: User Centered Design, Usability, User Experience, etc. The next step was to understand this and achieve it in our app?
My manager found a related course HFI-CUA, which is one of the best courses to study user centered design and understand it. HFI (Human Factors International) is a leader in usability practices and also imparts trainings for the same. So 2 of the team (my self included) took the course.
About HFI-CUA: It is a 10 day course which anyone and everyone with usability bent of mind (noticing way users do things their patterns, ease with which they do things, user preferences) can do. There’s no minimum experience/designation required to do this course. Details of the course can be found on their website. HFI-CUA.
After completing the course:
Few things that need to be addressed before going forward:
- The course in no way makes you an awesome UI designer.
- Usability in no way means you will learn latest UI technologies.
- Course in no way teaches you mobile designing.
- Design cannot be learned. So do not go to this course with this expectation of learning design.
All the above bullet points were the expectations that we all had from the course; however, nothing alike happened. However, other amazing things happened.
Amazing Thing 1: Putting into practice whatever we learned from the course.
In order to put our new learning into practice, we modified the actual User Centered Design process that we learned in CUA course. The process we learned and that we used is illustrated as follows:
Though we skipped Step1 – User Centered Analysis (we didn’t have access to actual end users), it is still it is a very important part of User Centered Design. In our case, the client gave the requirements; and there was no/little scope for understanding the actual user need of the requirement.
To elaborate more on why this Step 1 is very important: Most of the time when we are designing something, we are actually redesigning it. That’s because it most likely exists in some way or another; and we are only designing a new way/approach to do it. Therefore, before you start designing it is very important to do Need Finding:
The way users are doing it currently.
- What are the challenges/hurdles they face doing it the way they are doing it.
- What is their motivation of doing that task?
- Is there a need to redesign?
As a part of Steps 2 & 3 (Design and Usability Testing), we created low fidelity wireframes (non-working prototypes that give an idea of UI and how it works). These mockups were shared with client before actual implementation and asked for their feedback. Any changes/feedback given by the client were made in the final implementation.
Benefits of implementing this process:
- No UI changes after the implementation.
- Both the teams onshore/offshore were on the same page in the sense that everybody could now have a visual view of what was being said and done.
- Client was very happy to see this extra effort of creating and sharing mockups, which enabled them visualize what they wanted before it was actually developed.
Amazing Thing II: Usability became a practice.
It took a lot of criticism and effort to get acceptance for a field that looked so simple and obvious, but trust me it was all WORTH IT.
Initially, usability, as the term implies, looked so simple and obvious to everyone that no separate resource was required to get it done, leaving aside a so called “Expert”. Nobody (except a few) thought making mock ups could in any way help the team; however we practiced it against all odds. There were times when people thought making wireframe was a complete waste of time and they could implement a feature in that time while mock was still being done.
Lessons Learned here:
Really keep a low fidelity wireframe a low fidelity wireframe—do NOT spend too much time making an early prototype so that team rejects the complete usability process altogether.
Keeping things simple is more easily said than done. People say what they developed is very simple because they have developed it; and they know how it works, and expect everyone to be able to easily understand it. For example, see at the below picture :
Q: What do you see at first glance?
A: Some see a rabbit with ears and some see a bird with a beak.
Why do all people not see same thing? This is what happens with our designs.
By now usability was discussed so much that every member now looked at things with user’s point of view. Our client was so happy with the results of this process that they started adding usability-related enhancements to our sprints.
Few examples of my work done to improve usability of the supply chain management web app:
Example 1: As a part of the project, we were developing a calendar functionality where a user could configure events for particular date. Initially, we developed a design where, to add a new event we gave a button on the top right of the calendar view thinking it will be clearly visible on the top. (Figure 1)
The feature was successfully developed; and while in testing phase, I observed the working pattern of one of my peers testing the feature. I observed that each time she wanted to add an event, she would click on the date for which she intended to add a new event. After clicking, she realized that event has to be added using the Add button which was on the top right corner. This increased number of clicks. This was a redesign opportunity! I decided to make this small but significant.
The re-design was to match user’s mental model and to add an event by clicking on the date itself. Re-design not only saved user clicks, it also saved the user from selecting Date of the event (which user had to do in the earlier design). In contrast, in this design the date field was pre populated with the value of date on which user clicked to add the event. (Figure 2)
Example 2: Another requirement was to accommodate 5 pie charts in a single screen. Following are the before and after designs of the same screen:
Before: All the pie charts were simply put on screen as per the screen size.
The pie charts were categorically grouped and placed: one of the pie charts in the group was maximized while the others were miniatures. When a miniature pie chart is selected, it was swapped with the maximized one. A user could choose which pie chart to focus on.
To Summarize: My journey towards Usability at first appeared to be a theoretical experience with lot of heuristics to be learned. But the challenge of applying that theory and relating it to the real world made me dive deeper into the concept.
Food for thought: Usability is an independent work stream in itself and we are encouraged to apply it to existing/new projects. It can not only increase any application’s business but can also reduce training/maintenance costs of poorly designed applications.
Think of it this way, if a website’s information is hard to read or doesn’t let user’s complete key tasks, they leave. If an application is not intuitive and is hard to use, users avoid using it. Do you see a pattern here? There’s no such thing as a user reading a website manual or otherwise spending much time trying to figure out an interface. Unless there is no other way to complete a task; leaving is the first line of defense when users encounter a difficulty.
It is also important to identify when and how much time to spend on usability practices.
You can also follow my personal blog space: http://garimavohra25.blogspot.in/
“Synerzip team is very responsive & quick to adopt new technologies. Team naturally follows best practices, does peer reviews and delivers quality output, thus exceeding client expectations.”
“Synerzip’s agile processes & daily scrums were very valuable, made communication & time zone issues work out successfully.”
“Synerzip’s flexible and responsible team grew to be an extension to the StepOne team. Typical concerns of time zone issues did not exist with Synerzip team.”
“Synerzip worked in perfect textbook Agile fashion – releasing working demos every two weeks. Though aggressive schedules, Synerzip was able to deliver a working product in 90 days, which helped Zimbra stand by their commitment to their customers.”
“Outstanding product delivery and exceptional project management, comes from DNA of Synerzip.”
“Studer product has practically taken a 180% turn from what it was, before Synerzip came in. Synerzip cost is very reasonable as compared to the work they do.”
“Synerzip makes the timezone differences work FOR the customer, enabling a positive experience for us. ‘Seeing is believing’, so we decided to give it a shot and the project was very successful.”
“The Synerzip team seamlessly integrates with our team. We started seeing results within the first sprint. And due to the team’s responsiveness, we were able to get our product to the sales cycle within 7 months.”
“Product management team from Synerzip is exceptional and has a clear understanding of Studer’s needs. Synerzip team gives consistent performance and never misses a deadline.”
“Synerzip is different because of the quality of their leadership, efficient team and clearly set methodologies. Studer gets high level of confidence from Synerzip along with significant cost advantage of almost 50%”
“Synerzip’s hiring approach and practices are worth applauding. Working with Synerzip is like
“What you see is what you get”.”
“Synerzip has dedicated experts for every area. Synerzip helped Tangoe save a lot of cost, still giving a very high quality product.”
“Synerzip gives tremendous cost advantage in terms of hiring and growing the team to be productive verses a readymade team. Synerzip is one company that delivers “co –development” to the core!”
“Synerzip is a great company to work with. Good leadership and a warm, welcoming attitude of the team are additional plus points.”
“Our relationship with Synerzip is very collaborative, and they are our true partners as our values match with theirs.”
“Synerzip has proven to be a great software product co-development partner. It is a leader because of its great culture, its history, and its employee retention policies. ExamSoft’s clients are happy with the product, and that’s how ExamSoft measures that all is going well.”
“They possess a great technical acumen with a burning desire to solve problems. The team always takes the initiative and ownership in all the processes they follow. Synerzip has played a vital role in our scaling up and was a perfect partner in cost, efficiency, and schedules.”
“As we are a startup, things change on a weekly basis, but Synerzip team has been flexible in adapting the same”
“Synerzip team has been very proactive in building the best quality software, bringing in best practices, and cutting edge innovation for our company.”
“We’ve been working for more than six years with Synerzip and its one of the better, if not the best, experience I’ve had working with an outsourcing company.”
“My experience with Synerzip is that they have the talent. You throw a problem at them, and someone from that team helps to solve the issue.”
“The breadth and depth of technical abilities that Synerzip brings on the table and the UX work done by them for this project exceeded my expectations!”
“Synerzip UX designers very closely represent their counterparts in the US in terms of their practice, how they tackle problems, and how they evangelize the value of UX.”
“Synerzip team understood the requirements well and documented them to make sure they understood them rightly.”
“Synerzip is definitely not a typical offshore company. Synerzip team is incredibly communicative, agile, and delivers on its commitments.”
“Working with Synerzip helped us accelerate our roadmap in ways we never thought possible!”
“While working with Synerzip, I get a feeling of working with a huge community of resources, who can jump in with the skills as needed.”