KTp/Usability

From KDE Community Wiki

Introduction

Usability is often simplified as ease of use. But not every simple application makes users happy, and not all efficient products are well-designed for the target group. Software has to be efficient and effective, a task has to be done with a defined time, precision, effort or the like. But as well it should be engaging, make fun to use it, is has to be error tolerant and easy to learn. Often very different people use the product with more or less expertise, users have various goals, come from different cultures, and so on. Usability is a continuous process with building a hypothesis and evaluating it. Users are satisfied when their goals, mental models, tasks and requirements are all met. The combination of analysis, design and evaluation all approached starting from the user’s point of view creates usable products.

Vision

The first step of user-centred development is the definition of a straight, easy to understand vision. A vision is a concise leitmotif which describes why the world gets better with the product. It shows the future of development to users and pools the team together.

  • Have you ever wondered how to contact a particular person, desperately searching for his or her contact information?
  • Do you get confused by chatting with someone in one application and with another in a second tool?
  • Are you annoyed by protocol restrictions of your messenger, e.g. in case you want to share pictures or documents?
  • Did you ever get disturbed by incoming chat messages whilst busy doing something not KTp related, e.g. watching a film or writing a paper?
  • Your instant messenger does not satisfies your requirements? Does it lacks on integration with other programs like address book?


Telepathy is the solution to those questions. It integrates pluggable protocol backends into a communications framework. The currently scattered contacts, where a person is a collection of different instant messengers, an email address, a person in the photo digikam, a feed etc. is integrated into the human concept of a "person".
The frontend KDE-Telepathy has full desktop integration (plasmoids, runners) which makes accessing, sending and receiving easy and quick. It enables sharing of services like "sharing desktops", documents, files, starting games etc. KDE-Telepathy is flexible and configurable to fit both beginners and experts needs.

Persona

A persona represents the target group of users. It is neither a lead user in terms of an expert nor an abstract stereotype without specific features. A persona acts in scenarios and allows empathic decisions. With a persona it becomes easier to argue if a feature is good or not. For example, the statement "Alice wouldn't agree with it" makes it possible to abstract from a self-oriented "I don't like it in that way". Due to the fact that all team members have a shared knowledge on a persona it generates a common picture for the developer about users and their requirements.

[removed till we make it better]

Core usability goals

The term usability deals with many aspects of interaction. Software should be effective, efficient, and satisfactory along with criteria like understandability, learnability, operability, attractiveness. This kind of Swiss army knife is too general and needs specification for a particular product.

Based on the consideration above the core usability goal is simplicity. KTp should be easy to use, which means users are presented with familiar, common used design patterns, as less features and controls as possible, and a plain interface design.