Danocops : Collaboration de Solveurs - PowerPoint PPT Presentation

1 / 33
About This Presentation
Title:

Danocops : Collaboration de Solveurs

Description:

1.3 : Document :Principes de conversion en contraintes des objectifs ... conditions licites d'utilisation, ses op rations fournissent le service attendu ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 34
Provided by: O7104
Category:

less

Transcript and Presenter's Notes

Title: Danocops : Collaboration de Solveurs


1
Danocops Collaboration de Solveurs
  • Réunion du 11 juillet 2005

2
Planning à partir de T11/10/2004
3
SP1 Etude UML/OCL
  • 1.1 Identification de non-conformités aux
    spécifications
  • 1.2 Extraction des objectifs de non-conformités
  • 1.3 Document Principes de conversion en
    contraintes des objectifs
  • 1.4 Document couche contrainte pour traiter
    OCL
  • 1.5 Extension des mécanismes de résolution
  • 1.6 Prototypage d un outil de détection de
    non-conformités
  • 1.7 Evaluation

4
SP1 Etude UML
1.1
1.2
1.3
1.4
1.5
5
SP3 Etude B
6
Fournitures
  • La réunion à T1 6 Avril 2005
  • Document Plan de management consultable
  • Document Projet de Protocole daccord entre les
    partenaires  consultable
  • Document Etude UML  Définition des objectifs de
    non-conformités  consultable
  • Document Etude UML Principes dextraction des
    non-conformités à partir doutils de modélisation
    UML/OCL  consultable
  • Document Etude B  Définition des objectifs de
    non-conformités  consultable
  • Document Compte-Rendu avancement T06
    livrable
  • La réunion à T1 12 Octobre 2005
  • Document Etude UML  Principes de conversion en
    contraintes des objectifs de non-conformités 
    consultable
  • Document Etude UML  Spécification de la couche
    contrainte représentant les objectifs de
    non-conformités  consultable
  • Logiciel Prototype du module ResolCont(UML-OCL,C
    )  démontrable privé
  • Document Etude B  Principes dextraction des
    non-conformités à partir doutils de modélisation
    B  consultable
  • Document Etude Lustre  Architecture de
    lenvironnement Lutess intégrant les
    contraintes  consultable
  • Document Compte-Rendu avancement T012
    livrable

7
SP1 Etude UML/OCL
  • 1.1 définition des non-conformités ?
    fourniture
  • Design By Contract (Pré-conditions,
    Post-conditions,Invariants)
  • Types de non-conformités (client, fournisseur,
    intégrité)
  • Héritage, Terminaison
  • 1.2 Extraction ? fourniture
  • Utilisation langage dassertion intermédiaire
  • Outils danalyse
  • Formats de données cibles (TS, ASA)
  • 1.3 Conversion en contraintes
  • Revue architecture clp(s)
  • 1.4 Couche contrainte
  • Revue couche contrainte pour programme
    (assertion, extension langage, )
  • Introduction des opérateurs logico-ensemblistes
  • 1.5 Mécanismes de résolution
  • Étude de cas

8
SP3 Etude B
  • 3.1 Identification de non-conformités entre
    spécifications et programme
  • 3.2 Extraction des objectifs de non-conformités
  • 3.3 Extension des mécanismes de résolution
  • 3.4 Prototypage d un outil de détection de
    non-conformités
  • 3.5 Evaluation

9
SP3 Etude B
  • 3.1 Identification de non-conformités aux
    spécifications ?fourniture
  • 3.2 Extraction à contrainte des objectifs de
    non-conformités
  • Etude de la formalisation des points de
    connexions
  • Etude de la collaboration des solveurs
  • 3.3 Couche contrainte
  • Refonte architecture clp(S)

10
Objectifs de Non-conformités Héritage
  • C1 sous-classe de C0
  • C2 sous-classe de C1
  • C0  invariant I0
  •          m  opération
  • o  precond Pr0
  • o        postcond Po0
  • C1  Invariant I1
  •          m 
  • o        precond Pr1
  • o        postcond Po1
  • C2 Invariant I2
  •          m 
  • o        precond Pr2
  • o        postcond Po2.
  • Les propriétés résultantes sont 
  • Invariant(C1) I1 /\ I0
  • Invariant(C2) I2 /\ I1 /\ I0
  • Precondition(C1m) Pr0 \/ Pr1
  • Precondition(C2m) Pr0 vPr1 vPr2
  • Postcondition(C1m)
  • (Pr0 gt Po0) /\ (Pr1gtPo1)
  • Postcondition(C2m)
  • (Pr0 gt Po0)
  • /\(Pr1gtPo1)
  • /\(Pr2 gtPo2)

11
Types de non-conformités
  • Fournisseur
  • Vérifier quune classe respecte toujours son
    contrat de fournisseur, cest à dire que dans des
    conditions licites dutilisation, ses opérations
    fournissent le service attendu
  • Client
  • vérifier que chaque classe utilise les autres en
    respectant ses obligations de client cest à dire
    leurs conditions dutilisations
  • Intégrité
  • vérifier que les objets des classes conservent
    leur intégrité, cest à dire que sur tout point
    observable (à lentrée ou à la sortie de
    lexécution de chaque opération), ils respectent
    leurs invariants

12
Non-conformité fournisseur
  • Soit lopération m de la classe C,
  • dont la postcondition agrégée par héritage est 
  • ?i 1..n (Precondi gtPostCondi)
  • soit ?p (Invarp) les invariants hérités par cette
    classe.
  • La non-conformité fournisseur sexprimera par 
  • (i, O C, Arg),
  • (?p(Invar)(O) et Precondi) O.m(Arg)
    not(PostCondi)

13
Terminaison exceptionnelle
  • Precondition gt Terminaison_Exceptionnelle(E) gt
    ExceptionPostCondition
  • Où Terminaison_Exceptionnelle(E) exprime que
    lopération renvoie lexception E
  • On peut envisager trois cas 
  • Si ExceptionPostcondition true  cela signifie
    que si la précondition est vérifiée, lopération
    est autorisée à produire lexception E
  • Si ExceptionPostcondition false  cela signifie
    que si la précondition est vérifiée, lopération
    ne doit jamais produire lexception E
  • Sinon  cela signifie que si la précondition est
    vraie, lopération ne peut produire lexception E
    que si la postcondition est vraie.

14
Terminaison normale
  • Precondition gt Terminaison_Normale gt
    PostCondition
  •  
  •      
  • Si Postcondition true  cela signifie que si la
    précondition est vérifiée, que lopération est
    autorisée à terminer normalement.
  • Si Postcondition false  cela signifie que si
    la précondition est vérifiée, lopération ne doit
    jamais terminer normalement.
  • Sinon  cela signifie que si la précondition est
    vraie, lopération ne peut terminer normalement
    que si la postcondition est vraie.

15
Non-conformité fournisseur
  • Soit lopération m de la classe C,
  • dont la postcondition agrégée par héritage est 
  • ?i 1..n (Precondi gtTerminaisonigtPostCondi)
  • et
  • soit ?p (Invarp) les invariants hérités par cette
    classe.
  • La non-conformité fournisseur sexprimera par 
  • (i, O C, Args),
  • (?p(Invar)(O) et Precondi)
  • O.m(Arg)
  • (Terminaisoni ? not(PostCondi))

16
Questions
  • Conversion des objectifs en contraintes (1.3)
  • Comment obtenir/gérer les propriétés (analyse
    stockage)
  • Comment traduire un objectif
  • décomposition des spécifs (négations, quantifs)
  • pose du programme et désignation
  • API de soumission dobjectifs
  • Spécification couche contraintes (1.4)
  • Couche contrainte pour les spécifs
  • Couche contrainte pour le programme
  • Connexion couches
  • Intégration des solveurs
  • Prototype de résolution conjointe
  • Exemples
  • Démonstration de pose des objectifs et résolution
    conjointe
  • Démontrer la génération de tests ?

17
INKA V2 Architecture
Source C
ASA/TS
Normalisation
FINOP
Objectif
Contrôles (if,while,..)
Cas de test
Mémoire
Structures
Interpréteur
Pilote
Tableaux
Flottants
Cas de test
Solveur
Pointeurs
Couverture
Entiers
18
Responsabilités
  • Conversion des objectifs en contraintes (1.3)
  • Comment obtenir/gérer les propriétés (analyse
    stockage)
  • Comment traduire un objectif
  • décomposition des spécifs (négations, quantifs)
  • pose du programme et désignation
  • API de soumission dobjectifs
  • Spécification couche contraintes (1.4)
  • Couche contrainte pour les spécifs
  • Couche contrainte pour le programme
  • Connexion couches
  • Intégration des solveurs
  • Prototype de résolution conjointe
  • Exemples
  • Démonstration de pose des objectifs et résolution
    conjointe
  • Démontrer la génération de tests ?

TAS/EM LIFC/?
LIFC/?
TAS/BB
TAS/BB
LIFC/?
TAS/BB
TAS/SL LIFC/
TAS/BB LIFC/?
TAS/SL LIFC/FD
19
Actions
  • Pour 1 septembre
  • chacun rédige une première version de ses parties
  • Mise au point de la démo
  • Points a réfléchir et à intégrer en septembre
  • Connexions
  • Gestion des propriétés
  • Décomposition des objectifs en contraintes

20
InKa/JMLTT
  • Prototype de collaboration

21
Plan
  • Structure de la collaboration
  • Interface InKa/JMLTT
  • Sous objets

22
Structure de la collaboration
InKa
JMLTT
Analyse
Normalisation
Init
Constructeur2
ExecuteMethod
Lien entre les paramètres
Solve
Énumération
23
  • Entrée
  • Fichier .cpp
  • Sortie
  • ASA
  • TS
  • TNS

InKa
JMLTT
Analyse
Normalisation
Init
Constructeur2
ExecuteMethod
Lien entre les paramètres
Solve
Énumération
24
InKa
JMLTT
Analyse
  • Entrée
  • ASA
  • TS
  • TNS
  • Sortie
  • FINOP
  • def_struct

Normalisation
Init
Constructeur2
ExecuteMethod
Lien entre les paramètres
Solve
Énumération
25
InKa
JMLTT
Analyse
  • Entrée
  • Fichier .bzp
  • Sortie
  • Environnement vide

Normalisation
Init
Constructeur2
ExecuteMethod
Lien entre les paramètres
Solve
Énumération
26
InKa
JMLTT
Analyse
Normalisation
Init
  • Entrée
  • Nom de la classe
  • Environnement vide
  • Sortie
  • Environnement avec objet this
  • Nom de this

Constructeur2
ExecuteMethod
Lien entre les paramètres
Solve
Énumération
27
InKa
JMLTT
Analyse
Normalisation
  • Entrée
  • Nom de la méthode
  • Environnement avec objet this
  • Paramètres
  • Sortie
  • Environnement avec this modifié

Init
Constructeur2
ExecuteMethod
Lien entre les paramètres
Solve
Énumération
28
  • Entrée
  • Environnement avant ExecuteMethod
  • Environnement après ExecuteMethod
  • Mémoire entrée FINOP
  • Mémoire sortie FINOP
  • Noms des paramètres de la fonction
  • Noms des attributs de this
  • Effet
  • Lien CLPFD entre les paramètres et attributs

InKa
JMLTT
Analyse
Normalisation
Init
Constructeur2
ExecuteMethod
Lien entre les paramètres
Solve
Énumération
29
InKa
JMLTT
Analyse
Normalisation
Init
Constructeur2
ExecuteMethod
  • Entrée
  • Mémoire entrée FINOP
  • Mémoire sortie FINOP
  • Contraintes du code source
  • Effet
  • Résout les contraintes

Lien entre les paramètres
Solve
Énumération
30
InKa
JMLTT
Analyse
Normalisation
Init
Constructeur2
ExecuteMethod
Lien entre les paramètres
  • Entrée
  • Mémoire entrée FINOP
  • Mémoire sortie FINOP
  • Effet
  • Énumère les solutions

Solve
Énumération
31
Interface InKa/JMLTT
  • Identifiants
  • JMLTT b_id
  • InKa id.clef_asa
  • Lien entre variables
  • Paramètres de la fonction
  • Attributs de this
  • Dans le cas de sous-objets, quelle initialisation
    ?
  • Pas de static pour les attributs dans InKa pour
    linstant
  • Globales ?
  • Parcours des structures pour lier les attributs ?

32
Exemple de sous-objets
  • public class A public int a, b, c
  • public class B public A _a
  • constructeur2(B, This)
  • Comment est initialisé This-gt_a ?
  • Quel solveur gère _a ? Réveils ?

33
Types traités dans JMLTT
  • Types traités ?
  • Entiers
  • Flottants
  • Objets
  • Pointeurs ? (pas en Java)
Write a Comment
User Comments (0)
About PowerShow.com