Command line interface

publicité
Développement
d’applications
interactives III
Semaine 03 – Interface
utilisateur
Plan de leçon
 Interface
utilisateur : définitions
 Utilité des interfaces utilisateurs
 L’histoire des interfaces utilisateurs
 Les concepts
 Les lignes directrices
 Tablette
Qu’est-ce qu’une interface?
 Généralité

:
Intermédiaire qui échange des informations
entre deux domaines différents.
 Informatique

:
Ensemble des règles et conventions qui
permettent l’échange d’informations entre
deux systèmes de données. (Larousse)
Exemple d’interface
 Voiture
: Tous les contrôles nécessaires à
la conduites du véhicule.
 Souris, clavier, écran.
 Manuel d’instructions, fichier XML, etc.
 Questions :


Donnez quelques exemples d’interfaces.
Donnez quelques exemples d’interfaces
utilisateur graphique.
Les types d’interfaces
API : Application programming
interface
IHM : Interface homme-machine
Qu’est-ce qu’un interface
utilisateur?
 Selon
les définitions de l’interface, nous
pourrions décrire l’interface utilisateur
comme suit

Ensemble de moyens avec lesquels une
personne (utilisateur) interagit avec une
machine, un périphérique, un logiciel ou
tout autre outil complexe (système).
L’interface utilisateur
 L’interface
pour :


utilisateur fournit des moyens
Entrer des données permettant à
l’utilisateur de manipuler un système.
Afficher des données, permettant au
système de produire des effets suite à la
manipulation de l’utilisateur.
Utilité des interfaces utilisateur
 L’interface
utilisateur permet d’échanger
des données entre les humains et les
machines.
 L'un des buts de la discipline est ainsi de
donner des outils et des éléments pour
mettre en forme au mieux cet
environnement, et ainsi permettre à
l'homme d'interagir plus agréablement ou
plus efficacement avec la machine.
Outils d’une interface
utilisateur
 Pour
facilité la communication, on utilise
différents éléments :


Souris, clavier, etc.
Écran, imprimante, etc.
 Question
: Nommez d’autres éléments de
communication.
Histoire des
interfaces
utilisateurs
Histoire de l’interface
utilisateur

L’histoire de l’interface utilisateur peut être
divisé en plusieurs parties :





Interface en lot (Batch interface), 1945-1968
Interface utilisateur en commande de ligne
(Command line interface), 1969-1980
Interface utilisateur graphique (GUI), 1980 présent
Tangible interfaces / Ubicomp (français?)
Interface utilisateur tactile (TUI)


Téléphone intelligent, tablette, …
Interface utilisateur auditif, gestuel, …
Interface en lot
 Jadis,
les ordinateurs étaient très rare et
dispendieux
 Les plus grosses machines traitaient moins
d’information que les micro-ondes
d’aujourd’hui
 L’interfaçage était considéré comme du
surplus, on devait utiliser la puissance du
processeur de façon optimale
 Les interfaces étaient rudimentaire
Interface en lot
 Les
utilisateurs devaient s’accommoder à
la machine au lieu du contraire
 Ils se programmaient à l’aide de cartes
perforées
 C’était un des seuls moyens de
communication entre l’utilisateur et
l’ordinateur
Interface en lot
La méthode de fonctionnement était assez
complexe.



Le programmeur devait coder sur des cartes
vierges à l’aide d’une perforeuse spécialisée
(Style machine à écrire). La programmation
était extrêmement stricte.
Ensuite, il devait placer son lot de cartes dans
une file d’attente et attendre que l’opérateur
place les cartes dans une machine spécialisée
qui traitait les cartes une à la fois.
L’attente pouvait durer des jours et si le
programmeur était chanceux quelques heures.
Interface en lot
Interface en ligne de
commande (CLI)




La ligne de commande fut une très grande
évolution dans le domaine de l’informatique.
En plus d’économiser du temps, on
économisait de l’argent, car le papier était
moins nécessaire.
Au lieu de prendre des jours à compiler un
programme, il ne fallait que quelques
secondes.
De plus, la programmation était modifiable
au fil du développement.
Interface en ligne de
commande (CLI)
 Le
CLI permit d’interagir directement
avec la machine.
 Ces interfaces avaient encore une
lacune pour les utilisateurs, c’était
l’apprentissage de syntaxes spécialisés
complexes pour ce dernier.
Interface en ligne de
commande
Interface utilisateur graphique


L’interface utilisateur
graphique fit son apparition
lors d’une démonstration
en décembre 1968, mais dû
au coût prohibitif des
machines à cette époque,
les GUI n’emmenait pas de
réels intérêts pour les clients.
En 1972, Pong fit son
apparition dans les arcades
et en 1975, une version
maison fut introduite. Ce
fut un des premiers
interfaces utilisateurs grand
public.
Interface utilisateur graphique
 La
production des premiers interfaces
graphiques « grand public » a dû attendre
que le prix des circuits imprimés diminue.
 Un autre problème des premiers
interfaces était l’absence d’un dispositif
La souris:
adapté pour
utiliser ces nouveaux
interfaces. Inventé par un certain Engelbart en 1968.
PS: Il est décédé en 2013
 Question: Quel était ce dispositif?
Interface utilisateur graphique
 En
1973, les
chercheurs chez
PARC se sont
inspirés d’une
présentation de
« Enghelbart » pour
développer une
machine (Alto) qui
avait un affichage
graphique et une
souris.
Interface utilisateur graphique
 L’Alto
possédait la
plupart des contrôles
utilisés aujourd’hui :
Icônes, fenêtres,
barres de défilement,
boutons, etc.
 Le principal élément
visuel absent était la
liste déroulante qui a
été introduite par
Apple avec son Lisa
en 1979.
 Un autre aspect visuel
manquant était la
couleur.
Interface utilisateur graphique
 L’interface
ressemblait plus à un dessin
« etch-a-sketch » d’une interface
moderne.
 Après réflexion, c’est un peu désolant de
voir que les seules choses que l’on a
développé pour les interfaces utilisateur
graphique depuis 1973, ne sont que des
bonbons pour les yeux…
Interface utilisateur graphique
 Les
ordinateurs personnels possédant un
GUI fit leur début en 1981
 1981 : Xerox sort le Star qui fut un échec
commercial, car il était beaucoup trop
lent, trop faible et trop cher
 1982, Steve Job « patente » sont Apple lle
 IBM lance son PC avec un processeur
8088.
Interface utilisateur graphique
 Le
grand gagnant
de l’époque fut
Apple, car sa
machine
possédait une
interface utilisateur
convivial et était
« abordable » pour
le commun des
mortels.
Interfaces du futur
 Informatique
ubiquitaire
(omniprésente)


Vision de ce qui est petit, peu coûteux,
dispositifs de traitement réseau, intégrés et
distribués dans toute l’étendue de la vie
quotidienne.
Exemple domestique : Lorsque l’on entre
dans la maison les capteurs biométriques
indiquent au serveur qui est entré et ce
dernier ajuste l’environnement ambiante
selon la personne qui est entrée.
Interfaces tactiles
 Interface


utilisateur tactile :
Déjà implanté depuis plusieurs années, mais
qui, depuis l’avènement iPhone, connaît
une certaine explosion en terme de
développement.
Interface multi-tactile à 2$. Ici
Interfaces du futur
 Gestuel


Interface déjà existant avec l’avènement
de la Wii™ et Kinect™.
Porté à augmenter en popularité
 Sonore


Siri (Apple)
S Voice (Samsung)
Conclusion sur l’historiques
 Les
interfaces utilisateurs modernes se
basent sur l’histoire, i.e. ce que les
utilisateurs aiment ou n’aiment pas.
 Le meilleur des logiciels est voué à
l’échec si son IHM est mal conçu.
Concepts
Prise en compte de l’utilisateur

Utilisabilité d’un logiciel interactif



Apprenabilité (learnability) : Facilité qu’un
utilisateur a pour prendre en main un logiciel
Flexibilité : Capacité du système à offrir plusieurs
modes d’utilisation et à s’adapter
Robustesse : Niveau de satisfaction des tâches
permises par le système


Fiabilité + Satifaction
Expérience : L’émotion qu’un utilisateur a lors de
l’utilisation d’un produit, système ou service
Prise en compte de l’utilisateur
 Causalité
: Facilité de prédire le
comportement d’une action à l’aide de
l’historique (Interpolation des acquis)
 Observabilité : Facilité de visualiser les
effets d’un action (Feedback visuel)
Temps d’attente prévu
Affichage
2 à 6 secondes
Icônes d’attente (Sablier,
roue, …)
6 à 30 secondes
Progress bar
> 30 secondes
Progress bar + texte
indiquant les tâches
Prise en compte de l’utilisateur
 Familiarité
: Similarité avec les objets de
tous les jours

Métaphore : Machine à écrire, corbeille, …
Facteur de qualité essentiel
 Consistance


du logiciel
Toujours avoir un comportement
homogène et cohérent lors de l’utilisation
du système
Quel est le meilleur cas?
Incohérent
Cohérent
Ouvrir / Sauvegarder
Ouvrir / Fermer
Précédant / Suite
Haut / Bas
Oui / Annule
Ok / Annuler
Consistance
 Généricité
: Facilité de généralisation
d’expériences particulières avec le
système à d’autres fonctionnalités ou
d’autres logiciels

Renforce le sentiment de consistance
Standardisation et consistance




Certaines interfaces sont devenus des
standards de facto pour l’utilisateur et
participe à la généricité d’une application
Intégrer ces standard dans la conception du
logiciel
Assurer la consistance entre les versions du
logiciel
Conception attentive des fonctionnalités
différentes
Prendre en compte la diversité
des utilisateurs
 C’est
un facteur essentiel
 Un logiciel s’adresse souvent à plusieurs
communautés d’utilisateurs différentes
 Différence
entre les différentes cultures


Niveau d’expertise
 Novice






et première utilisation
Anxieux, à rassurer pour facilité
l’apprentissage et éviter les rejets
Limiter le nombre d’actions et de concepts
Feedback d’information
Messages d’erreur informatifs
Manuel d’utilisateur intuitif, didacticiel
Aide contextuelle
Niveau d’expertise
 Utilisateur



occasionnel
Connaissance globale du système mais a
de la difficulté à se rappeler la position des
différentes fonctionnalités
Consistance de l’interface
Prévention des erreurs
 Utilisateur-explorateur

Aide en ligne
Expert
 Excellente
connaissance du domaine de
la tâche, du système et de son interface

Recherche avant tout l’efficacité et la
rapidité
 Raccourcis
clavier
 Commande en ligne
 Création de macros
Qualité d’un logiciel : flexibilité
 Adaptation


Adaptabilité : Paramétrisation par
l’utilisateur
Adaptativité : Modification initiée par le
système
Le système s’adapte
avec l’utilisation
Style d’interaction

Plusieurs styles d’interaction envisageable
pour une tâche donnée








Langage de commande
Langages de requête et questions / réponses
Menus
Manipulation directe: interfaces WIMP
Formulaires de saisie
Interfaces tactiles
Langage naturel (écrit, parole)
Interfaces 3D, gestuelles, réalité augmentée…
Styles d’interactions : Exemples
Langages de commande
complexité
flexibilité
richesse d’expression
complexité
apprentissage
erreurs
Sélection de menus
structuration
apprentissage aisé
gestion erreurs
lenteur
masquage info
peu flexible
Manipulation directe (WIMP)
visuel
apprentissage aisé
rétention apprentissage
flexibilité
WYSIWYG
lenteur (relative)
pointage
ambiguïté icônes
coûteux en espace
Formulaires
saisie données
apprentissage aisé
prévention erreurs
usage spécifique
Langage naturel
Naturalité
Imprécision
ambiguïté
Windows, Icons, Mouse, Pointers
Niveau d’expertise
Langages de
commande
Sélection de menus
Manipulation directe
(WIMP)
Formulaires
Publicité
La publicité sur le web


Avec la démocratisation de l’internet,
plusieurs d’études ont été effectuées pour
trouver le meilleur emplacement pour de la
publicité. Exemple
D’ordre général, nous plaçons la publicité
dans une zone qui ne dérangera pas le
parcours du contenu



À droite d’une page ou encore en bas
Certain site sans scrupule place de la
publicité directement dans la zone de lecture
Voir ce lien
Les lignes
directrices
Lignes directrices (guidelines)
 Les
lignes directrices sont les normes
établies par les organismes fournisseurs de
système

Ex : Microsoft, Android, Apple
 Ces
guides permettent aux utilisateurs
d’identifier un style d’interface au
système
 Lien vers plusieurs compagnies qui ont
établies leur propre ligne
Lignes directrices
 Chaque
organisme possède son image
 De plus en plus, nous croisons le terme
User Experience (UX)
 Ainsi l’ergonomie d’une application est
de plus en plus axée sur le retour et le
sentiment des utilisateurs
 Les grosses firmes possèdent pour la
majorité une équipe d’ergonomes et qui
étudie cet aspect des applications
Lignes directrices : Exemple
 Android

mets l’emphase sur trois points
Flamboyance
 Beauté

de l’application
Simplicité
 Utilisation

simple
Impressionne moi!
 Beaucoup
de caractéristiques
Flamboyance
 Il
faut que cela ait l’air facile
 Animation bien placée
 Utilisation de métaphores d’interface
 Personnalisation
 Apprentissage des coutumes de
l’utilisateur
Simplicité
 Garde
ça court!
 Une image vos milles mots
 Prend l’initiative, mais laisse-moi décider
 Montre-moi seulement ce que j’ai de
besoin lorsque j’en ai de besoin
 Je devrais toujours savoir où je suis
 Ne perds pas mes choses!
 Interrompes-moi seulement si c’est
important
Impressionne-moi
 Donne-moi
des trucs qui sont pareils
partout
 Ce n’est pas de ma faute
 Simplifie les tâches en plusieurs petites
 Fait les choses complexes pour moi
 Rend les choses importantes rapides
d’accès
Interface pour tablette
 Créer
une interface intuitive sans
encombre pour le sujet principal
 Rendre les outils disponibles sans être
totalement visibles

Exemple : Barre latérale dans la liste des
contacts d’un système Android
 Ajouter
la possibilité pour l’utilisateur de
masquer ou d’afficher les outils en
permanence
Lignes directrices
 Pour
pratiquer l’interface utilisateur, nous
allons développer sous Android
 Notre plateforme (ou émulateur) sera la
tablette Asus TF300T
 L’environnement de travail sera Eclipse
Références
 Interaction


Homme-Machine
Jean-Yves Antoine
http://www.info.univtours.fr/~antoine/IHM.html
Un peu d’humour ;)
Téléchargement