Pour l’utilisateur final, l’IHM c’est l’application !
L’Interface Homme Machine est la partie visible du logiciel. Pour l’utilisateur final, elle se confond logiquement avec l’application informatique dans sa globalité et sert de révélateur. Les attentes envers l’IHM sont donc naturellement fortes : une présentation visuelle ergonomique et actuelle, ainsi qu’une interaction prédictible et conforme aux standards sont indispensables.
1er challenge : Adaptabilité
L’utilisateur compte sur l’IHM pour faciliter son activité, s’intégrer à son environnement technologique et s’adapter à son contexte métier sans le perturber. Le défi pour le développeur est de concevoir une interface graphique riche, ergonomique, adaptée aux besoins des utilisateurs et à son contexte de travail. Pour cela, il doit opter pour une solution lui permettant de se concentrer sur les besoins métier de l’application.
2nd challenge : Evolutivité.
Mais le développement d’une IHM reste complexe. Les technologies vieillissantes cohabitent avec les standards actuels. Les données manipulées sont hétérogènes, les architectures mises en œuvre sont variées, évoluant constamment : client lourd, client léger, client riche, architecture orientée services... De nouveaux besoins émergent, de nouveaux terminaux apparaissent : tablet PC, smart phones, PDA... Des modes d’interaction inédits en découlent, se traduisant par des interfaces multimodales, adaptatives, prenant en compte le contexte de l’utilisateur. On constate simultanément un besoin incontournable de changement, la nécessité de préserver un existant et celle de minimiser l’impact du futur en évoluant de manière cohérente.
3ème challenge : Maîtrise
Le développement d’une IHM est aussi lourd et coûteux : "50% du code dans les nouveaux développements est lié à l’IHM" (source : International Engineering Consortium). Le prototypage est souvent inexistant ou inexploitable, d’où un décalage entre les attentes des utilisateurs et le résultat obtenu. A la nature intrinsèquement complexe des IHM vient s’ajouter l’évolution rapide des technologies, des besoins, des services et de la présentation. La programmation évènementielle d’une IHM moderne, dépend souvent d’un état courant ou du profil de l’utilisateur.
Une approche basée sur la modélisation paraît seule capable de prendre en compte de telles contraintes tout en assurant la séparation entre le monde métier et le monde technique. Mais à ce jour, les promesses de l’approche MDA (Model Driven Architecture) n’ont pas été remplies et le respect des contraintes de coûts et de délais reste problématique.