slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
«  Validation Formelle de Systèmes Interactifs » PowerPoint Presentation
Download Presentation
«  Validation Formelle de Systèmes Interactifs »

Loading in 2 Seconds...

play fullscreen
1 / 22

«  Validation Formelle de Systèmes Interactifs » - PowerPoint PPT Presentation


  • 126 Views
  • Uploaded on

«  Validation Formelle de Systèmes Interactifs ». Alexandre Cortier ( ONERA) Bruno d’Ausbourg (ONERA) Yamine Aït-Ameur (LISI-ENSMA). Sommaire. - Introduction - Approche Proposée - Extraction d'un modèle B - Validation Formelle - Conclusions.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '«  Validation Formelle de Systèmes Interactifs »' - keala


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

«  Validation Formelle de Systèmes Interactifs »

Alexandre Cortier (ONERA)

Bruno d’Ausbourg (ONERA)

Yamine Aït-Ameur (LISI-ENSMA)

sommaire
Sommaire

- Introduction

- Approche Proposée

- Extraction d'un modèle B

- Validation Formelle

- Conclusions

slide3

I - Introduction : Terminologie

  • Utilisateur

IHM = Domaine d'étude de l' Interaction Homme-Machine

IU

NF

  • Système Interactif
slide4

I - Introduction : Généralités

Complexification des interfaces :

  • Type d'interaction : les modalités

-Windows,Icons, Menus, Pointer,

- Manipulation directe, Voie, Toucher

  • Applications plus volumineuses et critiques :

- Contrôle de centrale, Cockpit de l'A380

Développement coûteux:

  • IHM = 80% de l'effort global de développement
  • Vérification = Tests (50% du coût de développement)
slide5

I - Introduction : Généralités

I - Introduction : Généralités

Pragmatique :

Peu de méthodologies de conception et de validation pour

les IU qualifiées de critiques…(utilisation d’outils graphiques)

Conséquence :

  • code peu lisible et difficile à entretenir
  • comportement final de l’application difficile à prévoir

Proposition :

Explorer la mise en œuvre de nouvelles méthodes pour assurer la

CORRECTION de la partie interactive du système.

slide6

I - Introduction : Objectifs

I - Introduction :

Modèle de Tâche

CTT (Concur Task Tree)

Code Source

JAVA

Spécification Abstraite

du comportement de l'IHM.

Comportement réel

de l'application

Validation Formelle

L'implémentation respecte t-elle la spécification abstraite ?

slide7

I - Introduction : Modèle de Tâche CTT

CTT :

  • Structure hiérarchique de tâches

- Différents types de tâche

- Opérateurs temporels

  • Définition en compréhension
slide8

I - Introduction : Méthode B-Event

MODEL

NameM

VARIABLES

x1,x2,...

INVARIANT

p(x1),p(x2),...

INITIALISATION

EVENTS

evt_1= SELECTG

THENS

END;

evt_2= ANY x

WHERE p(x)

THEN S2

END;

.....

END

B-event :

- Adapté à la modélisation des Systèmes

réactifs

- Notion de raffinement

- Obligations de Preuve

slide10

I - Introduction : Exemple « jouet »

public void

actionPerformed(ActionEvent e)

{ output.setVisible(true);

if (e.getSource()==EF){

EF.setEnabled(false);

FE.setEnabled(true);

...}

else {

FE.setEnabled(false);

EF.setEnabled(true);

...}

output.setText(result);}

}

JVM

Traitement

listener

Méthode

Modification du

rendu de l’IU

événement

Click !

slide11

II - Approche Proposée

Hypothèse de travail :

- Prise en compte d'un sous-ensemble de Java

- Pas de contraintes de synchronisation entre thread

- Pas de création dynamique d'instances de widget pendant l'exécution

slide12

II - Approche Proposée

Vue globale de l'approche proposée :

slide13

III - Extraction d'un modèle B-Event

Extraire un modèle formel de l’application par Analyse Statique

du code source.

Ce modèle capture l’aspect comportemental de l’interface :

- Abstraction totale du noyau fonctionnel :

nécessite une bonne séparation du NF et de l’IU…

- Extraction des éléments pertinents : widgets, listeners,

méthodes listeners…

Notamment :

Clause INITIALIZATION : méthode main()

Clause EVENTS : méthodes listeners ActionPerformed, KeyPressed

slide14

III - Extraction d'un modèle B-Event

Techniques utilisées pour l'extraction du modèle comportemental :

Intervention de l'opérateur

slide15

III - Extraction d'un modèle B-Event

Modélisation de la bibliothèque Swing :

MODEL BSwing

SETS

WIDGETS, LISTENERS,

EVENT_TYPE={ActionPerformed, KeyPressed, KeyReleased,...}

VARIABLES

widgets, listeners, Jbutton, Jtextfield, ...

widgets_att, Jbutton_att ,Jtextfield_att ,

UA

INVARIANT

widgets WIDGETS & listeners : LISTENERS & Jbutton

widgets_att : widgets struct(enabled : BOOL, visible : BOOL, lists : P(listeners))

Jbutton_att : widgets ...

Jtextfield_att : widgets ...

UA : struct(source : widgets, Evt_type : EVENT_TYPE)

slide16

III - Extraction d'un modèle B-Event

Taduction des méthodes listener :

- In-lining des méthodes

- Abstraction

- Traduction des structures de contrôle (conditionnelle, séquencement,...)

public void

actionPerformed(ActionEvent e)

{ output.setVisible(true);

if (e.getSource()==EF){

EF.setEnabled(false);

FE.setEnabled(true);

...}

else {

FE.setEnabled(false);

EF.setEnabled(true);

...}

output.setText(result);}

}

slide17

IV - Validation Formelle

Méthode : Montrer que le modèle du système est un raffinement correcte

du modèle de tâche CTT.

Réalisation en trois étape :

1. Concrétisation et Formalidation du modèle de tâche

2. Couplage du modèle BapplM avec Btask par raffinement

3. Obligations de preuves

slide19

I - Validation Formelle

Etape 1 : Concrétisation et Formaisation du modèle de tâche

slide20

IV - Validation Formelle

Couplage des modèles Btask et BapplM par raffinement :

Couplage des modèles par raffinement

slide21

I - Conclusion

Nous avons mis en place une approche permettant de valider

un système interactif en terme d’utilisabilité.

Pour cela nous avons utilisé :

  • Un modèle de tâches : exigences du cahier des charges
  • Code source de l’application

Notre approche :

  • Utilise un unique langage formel pour la validation
  • A été utilisée avec succès sur une étude de cas simple

Perspectives à court terme :

  • Réalisation d’un outil permettant l’automatisation de la démarche

Perspectives à long terme :

  • Étendre la démarche (multimodalité, multi-threading)