Usability Engineering

usability-engineering.jpg
Table of Contents

Usability engineering is the discipline that is concerned with designing and evaluating software and user interfaces in such a way as to make them more user-friendly, efficient, and effective. In essence, usability engineering is about designing software that is easy to use, and interfaces that are intuitive and easy to navigate. The goal of usability engineering is to ensure that software meets the needs and expectations of users, while also achieving business goals.

Usability engineering has become increasingly important in recent years as computer technology has become more complex and widespread. The usability of software and interfaces has a direct impact on user satisfaction, which in turn affects user adoption rates, retention rates, and ultimately, business success.

The history of usability engineering can be traced back to the 1980s, when computer technology was in its infancy. The concept of usability engineering was first introduced by Donald Norman, a software engineer and usability expert, in his book “The Psychology of Everyday Things.” Norman argued that software and interfaces should be designed with the user’s needs and abilities in mind. He also emphasized the importance of usability testing to evaluate the effectiveness of software and interfaces.

The key principles of usability engineering include user-centered design, iterative design, and usability testing. User-centered design involves designing software and interfaces with the needs and goals of users in mind. This involves understanding the user’s tasks, preferences, and limitations, and incorporating this information into the design process. Iterative design involves designing and testing software in a series of cycles, with each cycle improving on the previous one. Usability testing involves evaluating software and interfaces with actual users to identify usability issues and gather feedback.

Usability engineering employs a range of methods to design and evaluate software and interfaces. These methods include heuristic evaluation, cognitive walkthroughs, usability testing, and user surveys. Heuristic evaluation involves evaluating software and interfaces based on a set of usability principles or guidelines. Cognitive walkthroughs involve evaluating software and interfaces based on the user’s mental model of the system. Usability testing involves evaluating software and interfaces with actual users to identify usability issues and gather feedback. User surveys involve gathering feedback from users about their experience using software and interfaces.

Usability engineering faces several challenges, including time and resource constraints, conflicting priorities, and cultural differences. Designing and testing software and interfaces can be time-consuming and resource-intensive, especially in large organizations or complex systems. Conflicting priorities between stakeholders, such as designers, developers, and business managers, can also make it difficult to prioritize usability. Cultural differences, such as language barriers or different user preferences, can also pose challenges to usability engineering.

Despite these challenges, usability engineering provides several benefits for software development, user satisfaction, and business success. Usability engineering can help reduce development time and costs by identifying usability issues early in the design process. It can also improve user satisfaction and adoption rates by creating software and interfaces that are easy to use and meet the needs of users. Finally, usability engineering can help organizations achieve their business goals by increasing user engagement, loyalty, and profitability.

Usability engineering is a crucial aspect of software design and development. It aims to create software and user interfaces that are easy to use, efficient, and effective. Usability engineering is based on several key principles, including user-centered design, iterative design, and usability testing. It employs a range of methods, including heuristic evaluation, cognitive walkthroughs, usability testing, and user surveys. While usability engineering faces several challenges, it provides several benefits for software development, user satisfaction, and business success.

Usability engineering is a discipline that focuses on designing and evaluating software and user interfaces to make them more user-friendly, efficient, and effective. This paper provides an overview of usability engineering, including its history, key principles, methods, and challenges. It also discusses the benefits of usability engineering for software development, user satisfaction, and business success.

Usability engineering is a crucial aspect of software design and development. It aims to create software and user interfaces that are easy to use, efficient, and effective. The goal of usability engineering is to ensure that software meets the needs and expectations of users while also achieving business goals. This paper provides an overview of usability engineering, including its history, key principles, methods, and challenges. It also discusses the benefits of usability engineering for software development, user satisfaction, and business success.

History of Usability Engineering

The concept of usability engineering emerged in the 1980s, as computer technology became more widespread and complex. The term was first used by the software engineer and usability expert, Donald Norman, in his book “The Psychology of Everyday Things.” Norman argued that software and user interfaces should be designed with the user’s needs and abilities in mind. He also emphasized the importance of usability testing to evaluate the effectiveness of software and interfaces.

Key Principles 

The field is based on several key principles, including user-centered design, iterative design, and usability testing. User-centered design involves designing software and interfaces with the needs and goals of users in mind. This involves understanding the user’s tasks, preferences, and limitations, and incorporating this information into the design process. Iterative design involves designing and testing software in a series of cycles, with each cycle improving on the previous one. Usability testing involves evaluating software and interfaces with actual users to identify usability issues and gather feedback.

Methods 

Usability engineering employs a range of methods to design and evaluate software and interfaces. These methods include heuristic evaluation, cognitive walkthroughs, usability testing, and user surveys. Heuristic evaluation involves evaluating software and interfaces based on a set of usability principles or guidelines. Cognitive walkthroughs involve evaluating software and interfaces based on the user’s mental model of the system. Usability testing involves evaluating software and interfaces with actual users to identify usability issues and gather feedback. User surveys involve gathering feedback from users about their experience using software and interfaces.

Challenges 

Usability engineering faces several challenges, including time and resource constraints, conflicting priorities, and cultural differences. Designing and testing software and interfaces can be time-consuming and resource-intensive, especially in large organizations or complex systems. Conflicting priorities between stakeholders, such as designers, developers, and business managers, can also make it difficult to prioritize usability. Cultural differences, such as language barriers or different user preferences, can also pose challenges to usability engineering.

Benefits 

Despite these challenges, usability engineering provides several benefits for software development, user satisfaction, and business success. Usability engineering can help reduce development time and costs by identifying usability issues early in the design process. It can also improve user satisfaction and adoption rates by creating software and interfaces that are easy to use and meet the needs of users. Finally, usability engineering can help organizations achieve their business goals by increasing user engagement, loyalty, and profitability.

Usability engineering is a crucial aspect of software design and development. It aims to create software and user interfaces that are easy to use, efficient, and effective. Usability engineering is based on several key principles, including user-centered design, iterative design, and usability testing. It employs a range of methods, including heuristic evaluation, cognitive walkthroughs, usability testing, and user surveys. While usability engineering faces several challenges, it provides several benefits for software development.

Android Application

On starting the app, it asks the user to fill some information about him like gender, state and profession. No private information is asked that he is unwilling to share to a unknown guy. Until, the user fills in the info, the user is unable to proceed with the application and no data is collected from the user. Once the user fills in the his information, it sends the data to the server to save. To display on the screen, the app collects foreground time of the applications used by the users for the last 24 hrs and display it on the screen. On clicking any element on the table, the app shows how many users have used the app in the last 6 hrs, 12 hrs and 24 hrs of time.

In background, the app securely sends the collected data to the server, at every hour after the time of filling in of the survey pageServer.

Usability Engineering

Results and Discussion

The data was collected from 32 users for a period of 18 days. In Fig 1, the average usage of application per day has been shown. The days were selected continuously and carefully to avoid any external factors such as spring fest or sports meet in order to have a normal dataset rather than skewed one. However getting such a long period

UE2

of contiguous days was not easy and we hindered by the industrial trip week; where the students attended for their respective events which has lead to different usage scenarios as seen in Fig 1.

In Fig 2, we show the average app usage by various users (tagged by their user IDs to avoid linking to the original user). Some skeptical users did not follow through with letting the usage of our app in order to collect data and hence the lower avg usage times on their devices.

Conclusion

In this paper, we have presented the usage analysis of mobile phones of 32 students over a period of 18 days. In short, this paper included the following contributions (amongst others): average usage time differs extensively between app categories, ¢ a context-related analysis that led to the following conclusions (among other findings):

(1) mobile phones are still used mostly for communication (text and voice); (2) some apps have somewhat intense spikes in relative usage (e.g. music and social apps), whereas others are more generally average used; (3) when people actively use their devices they spend less time with each app. (4) Most app used by males and females.(5) Which network mode people use more for the Internet use.

Usability Engineering 2
UE4