• Aucun résultat trouvé

Chapitre 5 Une approche de développement pour les systèmes interactifs critiques

1 Présentation générale du processus de développement

Cette section présente une vue d’ensemble du processus de développement proposé par cette thèse. La première partie de cette section (sous-section 1.1) propose une définition des mots clés de la terminologie utilisée pour décrire ce processus. Ces mots clés sont régulièrement utilisés dans la suite du mémoire. La seconde partie de cette section (sous-section 1.2) survole le processus de développement.

1.1 Terminologie utilisée pour décrire le processus de

développement

Nous utiliserons le terme générique système interactif critique ou système pour désigner la partie interactive du système à développer (pouvant être un ensemble ou un sous-ensemble des éléments suivants : interface utilisateur, application logicielle, objet matériel utilisé pour interagir avec le système, pilotes de périphériques d’interaction avec l’utilisateur).

Le terme phase employé dans de chapitre fait référence à un ensemble distinct d’étapes visant à : - Produire des éléments importants pour le système interactif critique.

- Déclencher une autre phase ou contribuer à une autre phase.

Le terme modélisation employé dans ce chapitre est générique et ne fait pas référence à une notation particulière. Ce terme peut être utilisé pour décrire :

- L’activité de modélisation. Cette activité permet de filtrer un certain nombre d’éléments du sujet que l’on veut décrire (flux, comportement, architecture, opérations,…) et de mettre en valeur les éléments nécessaires pour certaines étapes du processus de développement. Ainsi, à

- Les modèles produits. Ce sont des représentations issues de l’activité de modélisation. Ils peuvent être nécessaires en entrée d’une étape et/ou d’une phase de développement. Ils peuvent être produits en sortie d’une étape et/ou d’une phase de développement.

1.2 Survol du processus de développement

Dans cette section, nous allons proposer une vision abstraite du processus de développement qui a été défini dans le cadre de cette thèse. Cette vision abstraite donne une vue d’ensemble sur le processus et permet d’en comprendre le cheminement sans en connaître les détails.

Le processus de développement de systèmes interactifs critiques proposé par cette thèse intègre en particulier les phases (issues des domaines de l’IHM et des systèmes critiques) suivantes :

- Analyse et modélisation des tâches utilisateurs comme référence dans les différentes phases du processus et entre les différentes phases du processus.

- Modélisation formelle et prototypage très haute-fidélité du système. - Evaluation quantitative des performances de l’utilisateur.

- Développement d’un programme de formation à l’utilisation d’un système critique. - Traçabilité des exigences et besoins tout au long du processus de conception.

Les trois premières phases sont principalement issues du domaine de l’IHM. La quatrième phase et la cinquième phase sont issues du domaine des systèmes critiques.

La phase de développement d’un programme de formation permet de s’assurer qu’un utilisateur sera compétent pour exploiter un système critique. Cette phase ne fait généralement pas partie des processus de développement de systèmes interactifs critiques. Les programmes de formation, dans le cas où le personnel doit être qualifié au même moment où le système est opérationnel, est généralement conçu et mis en œuvre à partir de données et simulateurs de systèmes existants (le cas échéant). Sinon, les programmes de formation sont conçus et mis en œuvre, dans le meilleur des cas quand les contraintes temporelles ne l’empêchent pas, à partir du système nouvellement développé et déployé en s’appuyant sur : un manuel utilisateur (le cas échéant), un simulateur (le cas échéant), les spécifications du système. Intégrer la phase de conception du programme de formation au processus de développement du système interactif critique permet de concevoir un programme de formation avant le déploiement du système basé sur :

- L’analyse des activités de l’utilisateur correspondant au système développé. - La spécification formelle du système conçu.

- Le prototype très haute-fidélité du système conçu.

La phase de traçabilité des exigences par rapport au choix de conception permet de structurer et mettre en évidence les choix effectués ainsi que la mesure dans laquelle ils satisfont aux exigences et besoins pour le développement du système interactif critique. Ces informations peuvent être utiles pour la compréhension des choix effectués et sont nécessaires pour la certification dans certains domaines d’application.

Figure 57. Diagramme général du processus de développement d’un système interactif critique proposé

La Figure 57 décrit le processus de développement d’un système interactif critique qui débute par la phase d’analyse des besoins et exigences (intitulée « Needs and requirements analysis »). Cette première phase consiste à analyser les besoins des utilisateurs et les exigences liées à l’opérabilité et à la fiabilité du système interactif critique conçu. Elle produit un ensemble de besoins et d’exigences qui seront le point de départ de la phase de conception du système interactif critique. La phase de conception du système interactif critique (intitulée « Interactive Critical System Design » et détaillée dans la section 2), consiste à étudier la liste des besoins et exigences et à produire un prototype très haute-fidélité du système et sa spécification selon les propriétés d’utilisabilité et de fiabilité requises. Ces éléments sont alors transférés vers la phase de développement du programme de formation (intitulée « Training program development » et détaillée dans la section 3). Ils servent à analyser les besoins en formations pour les personnes allant opérer le système et à concevoir, développer, implémenter et évaluer un programme de formation adapté.

Lorsque le programme de formation est validé, le processus de développement du système interactif critique est poursuivi vers la phase de déploiement en aval (intitulée « Interactive critical system deployment »).

Chaque phase du processus peut fournir un retour aux phases précédentes si un problème d’utilisabilité ou de fiabilité non détecté auparavant a émergé. Ces problèmes peuvent remettre plus ou moins en

cause les éléments produits dans les phases amont et engendrer des modifications à ces éléments ou des changements plus importants (flèches de retour en pointillé « Proposal for redefining or mending… » sur la Figure 57).

De plus, ce processus fournit un support pour la traçabilité des choix de développement effectués tout au long du processus (détaillé dans la section 4).

Tout comme les processus de développement de systèmes interactifs et les processus de développement des systèmes critiques, ce processus de développement nécessite la participation de différents corps de métier, comme des concepteurs graphiques, des ergonomes, des experts en utilisabilité, des ingénieurs de conception et développement logiciel, des formateurs et consultants en formation.