110 likes | 222 Views
Incrémentalité et Réutilisation Quelques approches pour maîtriser les propriétés des systèmes complexes lors de leur développement, de leur vérification et de leur mise en œuvre Patrice CROS DTIM/CVSI. D'où viennent les problèmes... taille et éclatement des systèmes
E N D
Incrémentalité et RéutilisationQuelques approches pour maîtriser les propriétés des systèmes complexes lors de leur développement, de leur vérification et de leur mise en œuvrePatrice CROSDTIM/CVSI
D'où viennent les problèmes... • taille et éclatement des systèmes • distribution des intervenants, des données, des traitements • fédération, travail coopératif • ouverture • hétérogénéité • mode de développement • assemblage vs programmation • codes mobiles • ... • …et à quels moments se posent-ils? • Développement, Vérification et Validation du système • contrôle de la qualité du système a priori • Mise en œuvre: • fournir et maintenir le service attendu au niveau de qualité désiré,
Evolution des approches DERI/DTIM • 80: SPRAC: Spécification, Plan de développement • Simulation OS • CONCERTO: Environnement de développement • ToolUse, REPLAY: modélisation réutilisation des développements • ... • PAME, 3C3D, Elsa…: encapsulation, réutilisation de codes de calcul • DIS, RTI HLA: simulation distribuée interactive • FORMA/VAMOS: modularité et génération de test • 98: SAIDA sécurisation de composants sur étagères " • CESAME: simulation numérique distribuée • ….. Systèmes centralisés, Développements contrôlés " Programming in the small" ... Systèmes distribuéss, Contrôle des assemblages " Programming in the large" …
Que propose-t-on aujourd'hui? • de cibler différents types de propriétés • Fonctionnelles • Opérationnelles (performances, sûreté, sécurité, interopérabilité, …) • d'agir à différents endroits du cycle de vie d'un système: • en cours de réalisation - contrôle a priori • après réalisation et avant la mise en service - contrôle a posteriori • en évolution en élargissant les propriétés du système • en exploitation - choix architecturaux • en se basant sur la Modularité la Distribution
Utilisation de la modularité: idées directrices • se baser sur le découpage d'un système en sous systèmes • contrôler localement les propriétés qui peuvent l'être • prendre en compte les propriétés assurées par "l'environnement" du système • composer les résultats de vérifications locales pour vérifier des propriétés plus globales • raffiner des propriétés globales en • propriétés à vérifier localement • propriétés à vérifier à l'assemblage ou à la connexion • contraintes sur "l'environnement"
Module M Fournit S Module M2 Fournit S Assure P Assure P A besoin de S1 Assurant P1 A besoin de M1 Assurant P1 Module M1 Module M'1 Fournit S'1 Fournit S1 Assure P'1 Assure P1 A besoin de M2 Assurant P2 A besoin de M2 Assurant P2 Vérification locale de P en supposant P1 Correction de la connexion M/M1 Modélisation et contrôle de la connexion M/ M'1 Medium de communication, réseau Protection de M'1 par des mécanismes (middleware, réseau) adaptés
Travaux en cours: SAIDA • Nature du problème Ajouter la sécurité à des systèmes construits à partir de COTS • Approche • encapsulation et analyse statique de code, • intégration de middleware de sécurité • ingénierie de protocoles • étude de cas: architecture support de simulation HLA • Résultats • outils d'analyse • méthodologie de sécurisation • Clients - STTC • Collaboration - DERA Malvern
Travaux en cours: PEDALO • Nature du problème: Protection d'applications distribuées à base d'agents Sécurité de la norme CORBA • Approches • politique de sécurité fondée sur les rôles d'agents • réutilisation de fonctions de sécurité (wonderwall, GSS-API) • extension de serveurs CORBA pour ajouter les contrôles • étude de cas: travail coopératif • Résultats visés • implantation de la politique de sécurité "role-based" • répartition du contrôle des communications entre • clients et serveur CORBA • entre agents ( interne au serveur CORBA) • Clients et Collaboration - CNET Caen
Travaux en cours: FORMA/VAMOS • Nature du problème: Spécification et test de systèmes logiciels modulaires contrôles de : - la validité structurelle des assemblages - l'interopérabilité génération de tests guidée par la modularité • Approches • algébrique pour les aspects structures • logique temporelle pour les aspects comportementaux et la génération de test • cas d'étude EFCS et expérimentations sur l'environnement de spécification MOKA • Résultats visés • mariage des approches algébrique et logique • méthodologie de tests modulaires • Clients - STTC + MENRT • Collaboration - LIP6, Sextant Avionique
Travaux en cours: MINT • Nature du problème: Spécification modulaire de l'interaction dans un système distribué Vérification d'une spécification globale • Approches • Expression algébrique des spécifications • Représentation modulaire du middleware • Résultats • librairie de composants permettant de modéliser un middleware • application à CORBA • expérimentation sur l'outil de spécification modulaire MOKA • Clients: ONERA
Perspectives ConclusionsPoints d'étude • évolution de la notion de développement, contexte distribué, systèmes ouverts composition plus que programmation caractère dynamique de la composition (codes mobiles) développements hétérogènes (maquettage, simulation…) • diversité des moyens de VV (test, preuve, simulation, validation semi-formelle…) formalisation du processus de validation expression des objectifs de validation composition des résultats • évolution de la notion de qualité approximation prise en compte dynamique