Difference between revisions of "KTp/Usability"
m (Drdanz moved page Real-Time Communication and Collaboration/Usability to KTp/Usability: As discussed at IRC meeting Real-Time_Communication_and_Collaboration is too long, we are moving all our pages to KTp)
Revision as of 00:31, 10 November 2012
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.
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.
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.
KTp is a tool that will be used by non-experts. Only the protocol Jabber is fully supported, all other modules are simple alternatives to other tools. Therefore a primary persona, Penny, act as the basic user and the other "anti-persona" Leonard is not target of development.
(Characters are based on the TV sitcom Big Bang Theory and most parts are adopted from Wikipedia.)
Penny (primary persona)
Penny is a waitress at the local Cheesecake Factory with aspirations of becoming an actress. She is a Sagittarius, meaning she was born between November 22 and December 21. She has full confidence in horoscopes and often has arguments with her friends Sheldon and Leonard about their accuracy. Penny is not well-educated (though she is smart) or savvy in a specific technical field, but she has great social skills and is very knowledgeable about pop culture. She is also messy and disorganized, but appears to like it that way.
Penny has a lot of friends and many romantic relationships. She uses social networking service to shares interests, to show pictures, and to date with friends. After explanation by Leonard she uses VOIP to call her best friend, and usually has long-lasting chats with her. Sometimes she is annoyed by messages from Leonard but does not know how to block it. She is a beginner in using computers and needs always help from Leonard, who installed Linux on her PC for this purpose.
Leonard has an IQ of 173, and was 24 years old when he received his Ph.D. He works as experimental physicist and shares an apartment with colleague Sheldon. He is usually seen wearing his characteristic black-framed glasses, low-cut black sneakers, neutral-colored sweat jackets, brown trousers, and physics-themed t-shirts. Despite his attempts to not appear to be a geek, Leonard owns, among other things, Star Wars hygiene products, an expansive Superman comic book collection and a Battlestar Galactica Colonial warrior's flight suit.
He is an expert user of computers and fan of KDE desktop since beta 1. As part of his business he usually attends video conference, has several open communication channels with colleagues around the world and prefers to use keyboard and self-made scripts.
Although Leonard feels at home with his geek colleague, he wants to be more social. He generally has difficulty in interacting with "non-geek" individuals. He is instantly captivated by Penny, his next-door neighbour, and wants to date her.
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.