Upload
dorothee-martinez
View
106
Download
1
Embed Size (px)
Citation preview
1
Cours DESS
Nantes 04 Décembre 2002
La méthode B et La méthode B et l’ingénierie Systèmel’ingénierie Système
Réponse à un appel d’offre : étude Réponse à un appel d’offre : étude de cas de cas
Didier ESSAME
2 © Siemens Transportation Systems
AgendaAgenda
Rappels› Ingénierie système
› Guide méthodologique : B Système approche Siemens
Construction de modèles B Système› Concepts de base
› Principes de base
› Spécification générale formelle
› Spécification détaillée formelle
Conclusion
3 © Siemens Transportation Systems
Ingénierie Système : Besoins & ExigencesIngénierie Système : Besoins & Exigences
Espace de la solution
Besoin
Espace du problème
Proposition
Exigences de référence
Proposition
Exigences de référence
Cahier des charges
Appel d’offre
ClientUtilisateur Concepteur
Expert métierConcepteur
Expert métier
Pré-étude Etude Système
Spécifications
ExigencesInduites
4 © Siemens Transportation Systems
Ingénierie Système : Contraintes Ingénierie Système : Contraintes industriellesindustrielles
Contraintes industrielles Exigences pour B Système
Utilisation systématique
S’intégrer au cycle de vie
Maintenir la répartition des tâches
Pas de rupture documentaire
Ne pas exclure les non spécialistes
GuideGuide méthodologiqueméthodologique
Documentation
Rentabilité
Cycle de vie système bien défini
Découpage des tâches d’ingénierie
Hétérogénéité des compétences
5 © Siemens Transportation Systems
B Système : Résultats du projet PREDITB Système : Résultats du projet PREDIT
Processus
Activités Techniques
GuideMéthodologique
Définition et analyse des besoins
Définition des exigences
Analyse des exigences
Construction en B d ’un modèle de données
Construction en B d’une spécification générale formelle
Construction en B d’une spécification détaillée formelle
Transcription informelle d’une spécification détaillée formelle
Formalisation des données
Formalisation des besoins
Formalisation des exigences
Formalisation des spécifications fonctionnelles système
6 © Siemens Transportation Systems
Modèles B Système : Concepts de base Modèles B Système : Concepts de base
EnvironnementSystème de Commande
Fluxd ’observation
Fluxde commande
Environnement Observation Commande
Espaces de référence
Système
7 © Siemens Transportation Systems
Modèles B Système : Principes de baseModèles B Système : Principes de base
Organisation du modèle sur la base des espaces de référence
Autonomie des espaces de références
Les données d’un espace de référence ne peuvent être modifiées que dans cet espace de référence
1
2
3
8 © Siemens Transportation Systems
Modèle B Système : Principes Modèle B Système : Principes d’architectured’architecture
Spécification Générale Formelle
Spécification Détaillée Formelle
Formaliser en B les exigences de référence
Formaliser en B les exigences induites
Vérifier par la preuve que les exigences induites établissent les exigences de référence
Formaliser en B les données des espaces de référence1
2
3
4
Allouer fonctionnellement les exigences
Spécifier les événements
Raffiner la spécification générale formelle1
2
3
Vérifier par la preuve que les actions des événements ne contredisent pas les exigences
4
9 © Siemens Transportation Systems
Construction d’une spécification générale Construction d’une spécification générale form.form.
Principes de basePrincipes de base
sys_main_simu.mch
sys_main_simu_r.ref
sys_env_simu.mch sys_env_obs.mch sys_env_ctrl.mch
Séquenceur du système
Séquenceur de l’espace d’observation
Séquenceur de l ’environnement
SEES SEES
INCLUDES
Données de l’environnement
Exigences de références
Données d’observation
Exigences induites d’observation
Séquenceur de l’espace de commande
Données de commande
Exigences induitesde commande
10 © Siemens Transportation Systems
Spécification générale formelle : ExempleSpécification générale formelle : Exemple
1 Extrait du cahier des charges
Le titulaire devra fournir un système de signalisation permettant de garantir la sécurité de la circulation des trains sur l’ensemble de notre réseau, y compris dans les aires de garage
2 Le besoin
Le système de signalisation doit permettre de garantir la sécurité de la circulation des trains sur l’ensemble du réseau
3 Analyse du besoin : Exigences de référence
Expertise métier
zone
Le système de signalisation doit permettre de garantir qu’un train au plus occupe une zone
Le système de signalisation doit assurer l’immobilité des appareils de voie dans les zones occupées par un train
Éviter les collisions
Éviter les déraillements
11 © Siemens Transportation Systems
Spécification générale formelle : ExempleSpécification générale formelle : Exemple
4 Formalisation des exigences de référence
dma_trains : ensemble des trains
dma_zones : ensemble des zones
trains_zone : ensemble des couples (zone, train) tels que le train train occupe totalement ou partiellement la zone zone.
Formalisation de l’évitement des collisions
Données
Variables
trains_zone : dma_zone+->dma_trains
12 © Siemens Transportation Systems
Spécification générale formelle : ExempleSpécification générale formelle : Exemple
5 Analyse des exigences de référence : Exigences induites
Décisions
Hypothèses
Assertions
Expertise métier
Mise en place d’un mécanisme d’autorisation pour entrer dans les zones
A chaque instant un train au plus doit avoir l’autorisation d ’entrer dans une zone
Un train ne doit être autorisé à entrer dans une zone que si celle-ci n ’est pas vue occupée
D1D1
D2D2
Toute zone effectivement occupée par un train est supposée vue occupée par le système de signalisation
Les trains respectent les interdictions qui leurs sont fournies par le système de signalisation
H1H1
H2H2
Une zone effectivement occupée par un train ne peut faire l ’objet d ’une autorisation d ’entrée
A1A1
13 © Siemens Transportation Systems
Spécification générale formelle : ExempleSpécification générale formelle : Exemple
6 Formalisation des exigences de induites
aut_entree_zone : ensemble des couples (zone, train) tels que le train train est autorisé à entrer dans la zone zone.
Formalisation des décisions
Variables
zone_vues_occupees : ensemble zones qui sont vues occupées par le système de signalisation.
D1D1 aut_entree_zone : dma_zones+->dma_trains
D2D2 dom(aut_entree_zone)/\zones_vues_occupees={}
H1H1 dom(trains_zone)<:zones_vues_occupees
A1A1 dom(trains_zone)/\dom(aut_entree_zone)={}
Formalisation des hypothèses
Formalisation de l’assertion
14 © Siemens Transportation Systems
Spécification générale formelle : ExempleSpécification générale formelle : Exemple
sys_main_simu.mch
sys_main_simu_r.ref
sys_env_simu.mchsys_env_ctrl.mch sys_env_obs.mch
MACHINE sys_env_ctrlSEES dma, sys_env_obs ABSTRACT_VARIABLES aut_entree_zoneINVARIANT /* D1 */ aut_entree_zone:dma_zones+->dma_trainsINITIALISATION aut_entree_zone:={}OPERATIONS controler_env= BEGIN aut_entree_zone:(aut_entree_zone:dma_zones+->dma_trains & z_vues_occupees/\dom(aut_entree_zone)={}) /* D2*/ ENDEND
MACHINE sys_env_ctrlSEES dma, sys_env_obs ABSTRACT_VARIABLES aut_entree_zoneINVARIANT /* D1 */ aut_entree_zone:dma_zones+->dma_trainsINITIALISATION aut_entree_zone:={}OPERATIONS controler_env= BEGIN aut_entree_zone:(aut_entree_zone:dma_zones+->dma_trains & z_vues_occupees/\dom(aut_entree_zone)={}) /* D2*/ ENDEND
MACHINE sys_env_obs SEES dma, sys_env_simuABSTRACT_VARIABLES z_vues_occupees INVARIANT z_vues_occupees<:dma_zonesINITIALISATION z_vues_occupees:=dma_zonesOPERATIONS observer_env= BEGIN z_vues_occupees:(z_vues_occupees<:dma_zones & dom(trains_zone)<:z_vues_occupees) /* H1 */ END END
MACHINE sys_env_obs SEES dma, sys_env_simuABSTRACT_VARIABLES z_vues_occupees INVARIANT z_vues_occupees<:dma_zonesINITIALISATION z_vues_occupees:=dma_zonesOPERATIONS observer_env= BEGIN z_vues_occupees:(z_vues_occupees<:dma_zones & dom(trains_zone)<:z_vues_occupees) /* H1 */ END END
MACHINE sys_env_simuSEES dma ABSTRACT_VARIABLES trains_zone INVARIANT trains_zone:dma_zones+->dma_trains /*P1 */ INITIALISATION trains_zone:={}OPERATIONS simuler_evolution_env= BEGIN trains_zone::dma_zones+->dma_trains END END
MACHINE sys_env_simuSEES dma ABSTRACT_VARIABLES trains_zone INVARIANT trains_zone:dma_zones+->dma_trains /*P1 */ INITIALISATION trains_zone:={}OPERATIONS simuler_evolution_env= BEGIN trains_zone::dma_zones+->dma_trains END END
INCLUDES
SEES
15 © Siemens Transportation Systems
Construction d’une spécification détaillée Construction d’une spécification détaillée formelleformelle
Principes de basePrincipes de basesys_main_simu.mch
sys_main_simu_r.ref
sys_env_simu.mch SEES SEES
INCLUDES
sys_env_simu_r.ref
env_fonct_j.mch
sys_env_obs.mch
sys_env_obs_r.ref
sys_env_ctrl.mch
sys_env_ctrl_r.ref
env_fonct_i.mch
obs_fonct_a.mch obs_fonct_b.mch
ctrl_fonct_1.mch ctrl_fonct_2.mch
16 © Siemens Transportation Systems
Spécification détaillée formelle : ExempleSpécification détaillée formelle : Exemple
sys_main_simu.mch
sys_main_simu_r.ref
sys_env_simu.mch SEES SEES
INCLUDES
sys_env_simu_r.ref
env_occupation_zone.mch
sys_env_obs.mch
sys_env_obs_r.ref
sys_env_ctrl.mch
sys_env_ctrl_r.ref
obs_zones_occupees.mch ctrl_autorisations.mch
env_occupation_zone_r.ref
evt_train_occupe_zone
trains_zone
evt_train_libere_zone
Variables
Événements
ax_aut_entree_zoneevt_aut_entree_zone evt_retrait_aut_entree_zone
aut_entree_zone
Variables
Événements
ax_zones_vues_occupees
evt_zone_plus_vue_occupee
zones_vues_occupees
evt_zone_vue_occuppee
Variables
Événements
ax_trains_zone
17 © Siemens Transportation Systems
ConclusionConclusion
Guide méthodologique› Identification claire des processus et des activités de
l’ingénierie système où le B système peut être utilisé
› Description des techniques et des activités
Approche systématique› Simplicité d’utilisation
› Pas de rupture documentaire
18 © Siemens Transportation Systems
Processus de définition et d’analyse des Processus de définition et d’analyse des besoinsbesoins
Définir les conceptsmétiers
Définir les missions dusystème
Définir les attentes desutilisateurs
Définir les acteurs
Définir lesscénarios
Définir lescontraintes
Gérer les évolutionsdes besoins
19 © Siemens Transportation Systems
Processus de définition des exigencesProcessus de définition des exigences
Définition des données
Définition des Exigences Fonctionnelles
Définition des Exigences non Fonctionnelles
Définir les modes d'opération
Définir les Contraintes
Gérer la couverture des Besoins
Gérer les évolutions des Exigences
20 © Siemens Transportation Systems
Formalisation des donnéesFormalisation des données
Objectifs Formaliser les concepts et les entités significatives du système Formaliser les propriétés des entités du système
Etapes1. Identification des entités significatives
2. Description informelle des données
3. Construction du modèle formel des données
4. Validation du modèle formel des données
5. Transcription informelle du modèle formel des données
Entrées Sorties Cahier des charges Notes techniques Interviews
Document de définition des données
21 © Siemens Transportation Systems
Formalisation des besoinsFormalisation des besoins
Objectifs Exprimer clairement les besoins en levant les non dits et les ambiguïtés Clarifier la vision du système du point de vue des parties prenantes
Etapes1. Identification des besoins
2. Analyse des besoins (élaboration des exigences de référence)
3. Formalisation des exigences de référence
4. Transcription informelle des exigences de référence formalisées
Entrées Sorties Cahier des charges Document de définition des données Interviews Normes et Directives réglementaires
Cahier des Exigences de référence
22 © Siemens Transportation Systems
Formalisation des exigencesFormalisation des exigences
Objectifs Exprimer clairement les exigences Clarifier la vision du système du point de vue technique Valider formellement les exigences en vérifiant que les décisions prises par les
concepteurs établissent les assertions
Etapes1. Identification des exigences
2. Formalisation des exigences
3. Construction de la spécification générale formelle
4. Preuve de la spécification générale formelle
5. Transcription informelle de la spécification générale formelle
Entrées Sorties Cahier des exigences de référence Document de définition des données Notes techniques
Cahier des exigences et justificatifs Spécification générale formelle
23 © Siemens Transportation Systems
Formalisation des Spécifications Formalisation des Spécifications FonctionnellesFonctionnelles
Objectifs Identification des fonctions et des sous-fonctions Organisation et allocation fonctionnelle des exigences Valider formellement la vision technique du système
Etapes1. Identification des fonctions
2. Allocation des exigences
3. Identification des événements (flux)
4. Construction et preuve de la spécification détaillée formelle
5. Transcription informelle de la spécification détaillée formelle
Entrées Sorties Cahier des exigences et justificatifs Document de définition des données Spécification générale formelle
Spécifications fonctionnelles système Spécification détaillée formelle
24 © Siemens Transportation Systems
Définitions (1)Définitions (1)
ActivitéActivitéSéquence de tâches et d’actions conduisant éventuellement à la production d’un livrable et subdivisée généralement en étapes
ProcessusProcessusSéquence d ’activités, de méthodes, de techniques et de pratique utilisées dans un but précis
Techniques Techniques Spécification plus ou moins détaillée d ’une théorie ou d ’un principe à utiliser pour produire un livrable
LivrableLivrableSortie principale d ’une activité ; il peut s ’agir d’un document, d’un modèle B, etc.
25 © Siemens Transportation Systems
Définitions (2)Définitions (2)
BesoinBesoinVision du système du point de vue strictement utilisateur. Il exprime une caractéristique du système dont doivent jouir les utilisateurs
Exigences de référenceExigences de référenceExigence qui découlent de l ’expression du besoin en des termes techniques qui prennent en compte l’expertise du métier
Exigences induites Exigences induites Exigences qui découle de l ’analyse des exigences de référence. Elles incluent les décisions et les hypothèses que prennent les concepteurs pour répondre aux « besoins » exprimés à travers les exigences de référence
ExigenceExigenceVision du système du point de vue des concepteurs (du point de vue technique).
Le système de signalisation doit permettre de garantir la sécurité de la circulation des trains
Le système de signalisation doit permettre de garantir qu’un train au plus occupe une zone
Le système de signalisation doit assurer l ’immobilité des appareils de voie dans les zones occupées par un train
B1B1
ER_1ER_1
ER_1ER_1
26 © Siemens Transportation Systems
Ingénierie système : SystèmeIngénierie système : Système
Concepts de base Concepts de base
Flux_ObservationEnvironnementSystème deCommande
Système
1..n
1
1..n
1
1..n
1
1..n
1
Flux_commande
produit
subit
utilise
elabore