Lab-4 - SEG-2506 - Vérification de systèmes concurrents

Partie A: Un exercice en analyse d'accessibilité sur papier

Nous considérons deux machines d'états avec le comportement montré sur le diagramme ci-dessous. Les machines communiquent par l'échange de messages asynchrones et des files d'attente FIFO. Les messages sont nommés a, b, c, d et e.

figure

Vos tâches:

  1. Faites une analyse d'accessibilité pour explorer le comportement du système global qui est formé par les deux machines d'états communicants. Dessinez les états globaux qui sont accessibles de l'état initial du système, et les transitions impliquées (en utilisant la notation introduite dans les notes de cours).
  2. Identifiez des problèmes de conception (s'il y en a) - tel que des réceptions non spécifiées ou des blocages.
  3. Pour chaque problème identifié, expliquez une solution possible en indiquant les changements que vous suggérez à appliquer aux spécifications des deux machines d'états. Si vous avez assez de temps, vérifiez que les solutions proposées produisent un comportement du système sans problèmes.

À préparer:

  1. Esquisse du graphe d'accessibilité pour le système global.
  2. Courtes explications des points 2 et 3 ci-dessus (et un deuxième graph d'accessibilité si vous avez le temps de le faire)

Partie B: Analyser d'autres versions de TCP par LTSA

Nous commençons avec la version 4 de la spécification LTSA de TCP, comme discutée dans les notes de cours.

Vos tâches:

  1. Modifier la spécification TCP pour réaliser les interactions de service à la OSI, comme montrées dans la figure (b) dans les notes de cours: Version 5
  2. Inclure la phase de disconnexion (comme montrée par le diagramme de Wikipedia): Version 6
  3. Inclure une version simple d'échange de données en supposant que les données des usagers sont envoyées dans des messages data entre les deux parties.

A remettre

Ceci est un lab "informel". À la fin du laboratoire, s.v.p., montrez au TA les brouillons de diagrammes et textes et spécifications LTSA que vous avez préparés pour votre travail. Le TA prendra note de la complétude (ou non) de votre travail, mais n'évaluera pas la qualité de vos travaux.

S.v.p., consultez le TA pendant les sessions de laboratoire. Le rôle du TA est de vous aider à faire les travaux suggérés dans les laboratoires.


Dernière revision: 3 février, 2015