Title: Modlisation des tches en conception
1Modélisation des tâches en conception
Réunion de travail sur le thème des Modèles de
tâches
Mercredi 15 janvier 2003
2Objectif de la thèse
- Approche de Conception
- Noyau fonctionnel formel déjà existant
- Développement du dialogue sur la base dun modèle
de tâches existant - Approche de modélisation et vérification
- Spécification et validation formelle d interface
homme-machine
3Conception assistée par un outil
- Caractéristiques de loutil de conception
- Noyau fonctionnel formel existant
- Besoins utilisateurs (Modèles de tâches
existant) - Outil de construction dapplications de type
WIMP - Programmation visuelle (programmation sur
exemple) - Vérification des différents modèles
4Résumé de la démarche
Spécialiste de la programmation
Noyau Fonctionnel
Concepteur dinterface
Conception
Présentation
Contrôleur de Dialogue
Interface avec lApplication
Modèle de tâches
Utilisateur
Modèle de tâches existant
Génération
Communication
Ergonomes
5Plan de la présentation Technique
- Le modèle de tâches abstrait
- Le noyau fonctionnel formel existant
- La sémantique du modèle de tâches abstrait
- La vérification
- Le modèle de tâches concret
- La présentation
- La sémantique du modèle de tâches concret
- La vérification
Loutil SUIDT
Conclusion et perspectives
6Noyau fonctionnel formel existant
- Objectifs de la formalisation du NF
- Respecter les propriétés fonctionnelles
- Respecter les règles du génie logiciel
- Modèle sûr et validé
- Technique et outil
- Atelier B (Langage B)
- Preuve
7Noyau fonctionnel formel existant
- Fonctionnalités du NF
- Méthodes de modification
- Méthodes daccession
- Paramètres IN/OUT
- Prédicats de typage
- Prédicats de propriétés
- Types simples
Concepteur dinterface
8Vers une prise en compte de besoins utilisateurs
Comment décrire lapplication (sans
présentation) du point de vue de lutilisateur ?
Par lintermédiaire du modèle tâches abstrait
Modèle de tâches abstrait
9Sémantique du modèle de tâches abstrait
CTT ConcurTaskTrees
Modèle de tâches abstrait
Restrictions
Sans modification de la sémantique de CTT
10Sémantique du modèle de tâches abstrait
11Le formalisme CTT
- Atouts de CTT
- Syntaxe graphique
- Diversité des tâches (utilisateur, application,
abstraite et interaction) - Opérateurs temporels issus de Lotos
- Limitations de CTT
- Faible description de la sémantique
dutilisation des objets - Faible niveau de description de la présentation
12Modèles existant pour le modèle de tâches abstrait
- Modèle de tâches abstrait
- Modèle de tâches CTT issues des travaux des
ergonomes - Opérateurs temporels (logique d entrelacement
T1T2 gt T1gtgtT2 - Catégories de tâches de CTT
- Les objets du NF
- Méthodes daccession et de modification
- Les relations entre tâches et objets du NF
- Pré-condition dune tâche ?
- Corps dune tâche ?
13Caractéristiques dune tâche
- Pré-condition
- Prédicat qui doit être dans létat vrai pour que
la tâche soit activable - Par défaut état vrai
- Corps de tâche
- Ensemble de modification du système qui forment
la post-condition - Par défaut vide, aucune modification
Pré-condition
Corps de tâche
Une tâche
14Pré-condition dans le modèle de tâches abstrait
- Pré-condition à quel niveau?
- Modifiable à tous les niveaux du modèle de tâche
abstrait - Conjonction des pré-conditions
- Construction du prédicat
- Méthodes accesseurs du NF
- Fonctions diverses (nombres aléatoires)
- Opérateurs de comparaison (and, gt, lt)
15Pré-condition dans le modèle de tâches abstrait
16Corps de tâche dans le modèle de tâches abstrait
- Corps de tâche à quel niveau?
- Modifiable sur les tâches feuilles du modèle de
tâches abstrait
- Construction dun corps de tâche
- Méthodes accesseurs du NF
- Méthodes de modification du NF
- Fonctions diverses (nombres aléatoires)
- Opérateurs (, -, and, gt, lt)
17Corps de tâche dans le modèle de tâches abstrait
18La simulation du modèle de tâches abstrait
- La simulation permet
- Vérifier le dialogue avec le NF
- Valider et proposer des scénarii dappels aux
objets du NF - Respecter les invariants du NF
- Le principe de vérification
- A la manière de CTTE (Sélection tâches
activables)
19Le déroulement du modèle de tâches abstrait
- Déroulement de la simulation
- Visualiser létat du NF
- Interagir avec lapplication pour éventuellement
saisir des valeurs de paramètres de fonctions.
Modèle de tâches abstrait
Visualisation des valeurs du NF
Affecter des valeurs possibles aux paramètres
20La démarche
Spécialiste de la programmation
Noyau Fonctionnel
Concepteur dinterface
Conception
Modèle de tâches
Interface avec lApplication
Utilisateur
Modèle de tâches existant
Génération
Communication
Ergonomes
21La présentation
- Une base solide
- Plusieurs vues possibles pour un même modèle de
tâches abstrait
?
- Objets de la présentation
- Création par un GUI-Builder
- Ensemble de composants graphiques
- Attributs des composants
- Evènements des composants
22Décomposition du point de vue de lutilisateur
Modèle de tâches abstrait
Modèle de tâches concret
Interface Utilisateur
Noyau Fonctionnel
Noyau Fonctionnel
Concrétisation
Résultat du point de vue utilisateur
Manipulation des objets
23Modèle de tâches concret
- Définition dun modèle de tâche concret
- Concrétiser dans une IHM les tâches du modèle de
tâches abstrait
Tâche du modèle de tâches abstrait
Tâche concrète d interaction
Concrétisation
Tâche concrète d interaction
24Modèle de tâches concret
25Modèles existant pour le modèle de tâches concret
- Modèle de tâches concret
- Basée sur le modèle de tâches abstrait (Même
opérateurs temporels) - Nouvelles catégories de tâches les tâches
concrètes
- Les objets du NF
- Méthodes daccession et de modification
- Les objets de la présentation
- Composants graphiques de la présentation
- Les relations entre tâches et objets
- Pré-condition dune tâche ?
- Corps dune tâche ?
26La concrétisation
- Définition dun modèle de tâche concret
- Décrire lIHM des tâches interactions et
applications concrétisées du modèle de tâche
abstrait - Restriction 1 seul niveau de concrétisation
27Catégories de tâches concrètes
Description des tâches concrètes
Tâche Application
Tâche Interaction
ou
Tâche concrète interaction
Tâche concrète feedback
Tâche concrète system
Concrétisation
28Catégories de tâches concrètes
- Construction dune tâche concrète
- Un composant graphique
- Une particularité du composant
- Tâche concrète dinteraction
- 1 événement (click souris)
- Tâche concrète system
- impression
- Tâche concrète feedback
- 1 attribut graphique(positionx, text)
29Pré-condition dans le modèle de tâches concret
- Pré-condition à quel niveau?
- Modifiable à tous les niveaux du modèle de tâche
concret - Conjonction des pré-conditions
- Construction du prédicat
- Méthodes accesseurs du NF
- Attributs graphiques de la présentation
- Fonctions diverses (nombres aléatoires)
- Opérateurs de comparaison (and, gt, lt)
30Pré-condition dans le modèle de tâches concret
31Corps de tâche dans le modèle de tâches concret
- Corps de tâche à quel niveau?
- Modifiable sur les tâches feuilles du modèle de
tâches concret
- Construction dun corps de tâche
- Méthodes accesseurs du NF
- Méthodes de modification du NF
- Fonctions diverses, opérateurs
- Une particularité, dépendant du type de la tâche
concrète
32Corps de tâche dans le modèle de tâches concret
33La simulation du modèle de tâches concret
- Le modèle de tâches concret
- Déterministe, une vue unique de la présentation
- Gère le dialogue de lapplication interactive
- La simulation va permettre
- Vérifier des propriétés ergonomiques
- Atteignabilités
- Fonctionnalités
34La simulation du modèle de tâches concret
Modèle de tâches concret
Visualisation des valeurs des objets
Interaction
35La démarche
Spécialiste de la programmation
Noyau Fonctionnel
Concepteur dinterface
Conception
Présentation
Interface avec lApplication
Modèle de tâches
Utilisateur
Modèle de tâches existant
Génération
Communication
Ergonomes
36L outil SUIDT
- SUIDT Safe User Interface Development Tool
- Outil danimation de noyau fonctionnel formel
- Éditeur de modèle de tâche (abstrait et concret)
- Outil de conception dinterfaces utilisateurs
(GUI-Builder) - Outils de vérification (Simulation des modèles de
tâches)
Bientôt disponible à http//www.lisi.ensma.fr/SUID
T
37Conclusion et perspectives
- Démarche de conception dapplication sûre
- Précisez le modèle darchitecture
- Intégrer un modèle de tâche dans la conception
issue du travail d un ergonome (Travail de
Vincent) - Vérifier interactivement ou par simulation
- Perspectives
- Liaison avec dautres outils, CTTE, Atelier B
- Génération de lapplication finale
- Définir une méthode de conception
38Discutions
- Discutions
- Liens avec un modèle de tâches issus de
lergonome - Pré-conditions et corps des tâches
- Vocabulaire (modèle de tâches abstrait, corps des
tâches)