La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 1 CONCEPTION DES LOGICIELS : Chapitre 2 LE SYSTÈME ET SON ENVIRONNEMENT.

Présentations similaires


Présentation au sujet: "J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 1 CONCEPTION DES LOGICIELS : Chapitre 2 LE SYSTÈME ET SON ENVIRONNEMENT."— Transcription de la présentation:

1 J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 1 CONCEPTION DES LOGICIELS : Chapitre 2 LE SYSTÈME ET SON ENVIRONNEMENT : ÉLÉMENTS DANALYSE FONCTIONNELLE

2 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 2 Plan du chapitre Notions de théorie des systèmes Description du contexte système et de la collaboration entre acteurs Cas demploi « Use case » - Approche UML Comment modéliser - Méthodes et outils Exemple : Un contrôle aérien rudimentaire

3 J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 3 1 ère partie Notions de théorie des systèmes

4 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 4 Concepts de la théorie des systèmes (1/2) Système ( modèle cybernétique de N.Wiener [1948] ) : Ensemble déléments [ autres systèmes ] en interactions [ communicants ], ouvert sur lextérieur, qui opèrent en vue dune finalité [ contrat de service ] IntrantsExtrants Processus P de S Pilote Régulation R Mesures M Commandes C Temps de réponse Sphère de contrôle Proactive Réactive Temps de latence Hystérésis / inertie Stimulis Réponses

5 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 5 Perturbations (Bruit) Concepts de la théorie des systèmes (2/2) Chaîne de communication ( modèle de C.Shannon[1959] ) : Dans tout acte de communication, il y a un émetteur [langage L1], un destinataire [langage L2] et du bruit Mémoire Observateur Canal de transmission Sources d'Information Puits d'Information Émetteur Destinataire Capteurs Personne/Organisation Système +Erreurs humaines/Incertitudes Actionneurs Personne/Organisation Système +Erreurs humaines/Incertitudes Décodage + Distribution Fusion + Codage ÉMISSION RÉCEPTION A t-il bien reçu le message ? (intégrité, délai, sécurité, etc.) A t-il reçu le bon message ? Canal de correction Langage Métier L1 Langage Informatique L2 états

6 J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 6 2 ème partie Description du contexte système et de la collaboration entre acteurs

7 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 7 L'observation de la réalité (1/2) Les frontières du modèle et les interactions avec lextérieur Identification des sources d'information (émetteurs et récepteurs) Notion dacteurs Nature des flux d'information entrant et sortant Continu / discret, régulier / aléatoire, commandes-contrôles, événements Les flux de données ( messages ) Modèles conceptuel des données échangées Identification des canaux de communications qui relient les éléments du modèle et par lesquels transitent l'information ; Fusion / Distribution- Répartition des flux (selon exigences comportementales ) Organes de stockage (mémoire persistante / mémoire non persistante) Les processus Identification d'un ensemble d'opérations (algorithmes) et/ou de procédures (opérateurs humains) qui transforment l'information et qui régulent/contrôlent lenchaînement des opérations Nomenclature et terminologie courantes : Tâches, activités, fonctions, actions

8 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 8 L'observation de la réalité (2/2) Distinction aussi rigoureuse que possible entre TRANSFORMATION et PILOTAGE/CONTRÔLE Nomenclature des entités du système telles que perçues par les exploitants et usagers ( gestion des configurations ) Fonctions et organes assurant la transformation : Nom du canal et caractéristiques générales (débit, QOS, …) : cest déjà de limplémentation résultant des choix technologiques Nature des informations qui transitent dans le canal et des transformations associées : notion purement fonctionnelle (abstraction) Nécessité de classifications rigoureuses (selon points de vue) Notion de « système immunitaire » (intégrité / sécurité) Contraintes à satisfaire qui garantissent la finalité du système (support des caractéristiques dites non fonctionnelles FURPSE) Reconnaissance et élimination des éléments qui ne font pas partie du système (intrusions volontaires ou involontaires ; « fuite » de mémoire ; etc.) États incohérents et/ou interdits (notion de droits/privilèges ; invariants) Surveillance des capacités (capacity planning) et system management

9 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 9 Les frontières : diagrammes de contexte / diagrammes de collaboration (1/2) Exemple d'une billetterie BILLETTERIE AGENCE SOURCES PROCESSUSSOURCE Règles d'interopérabilité (conventions entre les systèmes) Requêtes : Carte ID, code, montant, reçu Réponses : Remise des billets, Refus, Renseignements complémentaires, Mise à jour de la carte. AUTRES AGENCES AUTRES BANQUES CENTRE CARTES BANCAIRES > Système et/ou application externe > Système et/ou application externe > Système et/ou application externe FLUX

10 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 10 Compensation Inter-banques Les frontières : diagrammes de contexte / diagrammes de collaboration (2/2) Distributeur Mise à Jour client agence Vérification CB Transfert autres agences Transfert autres banques Comptes clients Transferts agencesCompensation ON/OFF Décomposition du processus BILLETERIE AGENCE Autres agences Autres banques Centre cartes bancaires Processus de stockage de linformation (fichiers ou BD)

11 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 11 Symboles et icônes Acteurs Développement Exploitation/Support Acteurs usagers du SI > Système et/ou application externe Stéréotype Acteurs non humains Équipements ; Autres systèmes PROCESSUS OU Typologie des messages ÉmetteurRécepteur Messages (Poussés / Tirés) Message simple (lettre) / recommandée Message avec accusé de réception (AR) Message avec une priorité Message à traiter avant un délai t Message déclenchant lactivation dune fonction (Signal synchrone ou asynchrone) Message déclenchant larrêt temporaire/définitif et/ou la destruction dune entité Etc. mxmx

12 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 12 Classification et typologie des acteurs (1/2) > Acteur généralisé abstrait > Diverses catégorie dutilisateurs > Diverses catégories déquipements > Pilote du système global > Un ou plusieurs administrateur par SI > Administration du référentiel des données > Supervision et administration des différents réseaux > Authentification, droit daccès > Usager ayant déjà une grande expérience du système > Usager sans expérience > Dépannage de 1er niveau, mise à jour des versions Variété {Typologie, Nombre doccurrences} Liste des caractéristiques et attributs (FURPSE) des différents acteurs (Notion de classe dacteurs)

13 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 13 Les processus de traitement (1/2) Différentes catégories de processus Processus de transformation Description des transformations (ce sont des traductions et/ou des calculs) des différents flux jusquà obtention du résultat souhaité Constituants dun processus : Tâches/activités ; Fonctions/procédures ; Blocs/actions/transactions Processus de contrôle/enchaînement Description des règles et procédures qui définissent le comportement (ce sont des régulations) dun ou plusieurs processus par rapport à la finalité du système Caractéristiques du contrôle Évènements déclenchant, exceptions, priorités, partage de ressources, synchronisation, parallélisme, surveillance, etc.

14 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 14 Les processus de traitement (2/2) P1 CÉLIBATAIRE«CLONES» IDENTIQUES HIÉRARCHIE DE PROCESSUS M1 MONITEUR / Pilote de transformation PÈRE FILS PETIT-FILS MONITEUR (Scrutateur / Event poller) PROCESSUS RÉENTRANT P1 M1 Évènements reçus Évènements émis Ordre de balayage Ensemble de ressources à surveiller (et les évènements associés) Nombreux exemples de ce type de structure en transactionnel (plusieurs instances, imbrication de transactions, etc.

15 J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 15 3 ème partie Cas demploi – « Use case » Approche UML

16 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 16 Définition Quest ce quun cas dutilisation Cest un ensemble de séquences dactions réalisées par le système et produisant un résultat observable sémantiquement intéressant pour un acteur particulier (humain et/ou non humain) Un cas dutilisation modélise un service rendu par le système. Il exprime les interactions acteurs/système et permet de comprendre ce que fait exactement lacteur(s) concerné(s) par le cas dutilisation Le cas dutilisation porte la sémantique du point de vue des acteurs Un cas dutilisation est décrit à laide de scénarios : cest une succession particulière denchaînement jugés significatifs et porteur de sémantique par rapport aux opérations futures Cest une représentation en extension du système

17 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 17 Symbologie et représentation graphique Cas dutilisation Scénario N°3 Scénario N°2 Scénario N°1 Description textuelle du cas dutilisation (Processus et fonctions) Diagrammes dactivités Diagrammes états- transitions Diagrammes de collaboration – contexte acteurs Diagrammes de séquences Ensemble de scénarios explicitant le cas dutilisation de façon à permettre la traduction en concepts informatiques Si nécessaires à la compréhension des scénarios

18 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 18 Description textuelle du cas dutilisation Informations obligatoires : Identification Description des enchaînements – caractéristiques fonctionnelles du/des fonctions (ce que ça fait dans un monde « parfait ») En particulier : interopérabilité avec dautres systèmes ; sécurité Caractéristiques non fonctionnelle (F URPSE ) – prise en comte du monde réel et des contraintes associées En particulier : pré et post-conditions conformément au processus/fonctions génériques NB : labsence dinformation sur le comportement est déjà une information !!! Évènements gérés et/ou générés par le cas dutilisation

19 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 19 De la description dun cas dutilisation la mise en pratique indispensable à une bonne communication Chaque cas dutilisation doit être commenté. Typiquement entre 1 et 3 pages : Un titre décrivant le cas dutilisation Un résumé bâti en trois parties (idéalement) le déclenchement : « ce cas d utilisation commence lorsque… » les actions : « ce cas d utilisation consiste en… » la terminaison : « ce cas d utilisation prend fin lorsque… » Une description textuelle qui développe les quatre points (idéalement) : quand : à quel moment, ordonnancement qui : les acteurs quoi : les actions comment : les contraintes Le but exprimé selon le point de vue métier de lacteur principal Les acteurs participants au cas dutilisation Les flux dinformation (informations échangées) par les acteurs Le flot normal des actions : qui correspond au comportement nominal liste de points numérotés du point de vue des acteurs, sans les détails dimplémentation Les flots dactions alternés : les erreurs, les exceptions ou des cas très particuliers comment ce flot sinsère-t-il dans le flot normal ? comment se fait le retour au flot normal ? ressemblent souvent à des extends (extension dun cas d utilisation) détailler les conditions de déclenchement

20 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 20 De la description dun cas dutilisation dun point de vue plus organisationnel Identification de léquipe en charge de ce use-case Et pour la traçabilité, historique des équipes ayant travaillé sur ce use-case Plusieurs équipes dans léquipes des uses-cases Numéro de version du use-case (et peut être ID use-case lui même) Gestion de configuration, gestion des évolutions, traçabilité Personnes, équipes, chargée de la validation Rapports de validation Travail en groupe, contrôle global de la cohérence Priorité du use-case Numéro de version du prototype à partir duquel il doit figurer dans le système Dans le cadre dun développement itératif et incrémental Liens avec dautres use-cases termes définis dans un glossaire commun au projet ou à un système Références vers des documents Faisant parti du projet, système de références croisées avec et / ou glossaire / lexique normatifs : ANSI, ISO, OMG, W3C, etc. extérieurs : au projet ou à lorganisation : manuels de référence, documentation APIs antérieurs : travaux menés antérieurement et réutilisables Dans le cadre de la gestion dun projet important (ou dun système) on devra probablement ajouter des éléments informatifs tels que : Stricto sensu, cest de la gestion de configuration C.M. Nécessaire dès quon travaille en équipe et/ou sur la durée et pour obtenir les satisfecits ISO, CMM, etc.

21 J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 21 4 ème partie Comment modéliser - Méthodes et outils

22 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 22 Outils théoriques et concepts pour larchitecte modélisateur Descriptions statiques du système Descriptions dynamiques du système OUTILLAGE Ensembles Relations Fonctions calculables Langages formels Systèmes de classification OUTILLAGE Automates Machines à états finis (machines abstraites) Systèmes à états-transitions Communication et théorie de linformation Nombreuses interactions et dépendances entre tous ces aspects (relations de dualité), doù : GRANDE COMPLEXITÉ

23 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 23 Fondements des sciences de linformation Caractéristiques des problèmes Peu de variables Beaucoup de variables Déterministe Stochastique Ordre simple Ordre complexe Désordre simple Désordre complexe Physique classique et sciences de lingénieur correspondantes Calcul différentiel et intégral Équations différentielles et aux différences finies Géométrie analytique Physique moderne et sciences de lingénieur correspondantes Programmation mathématique Programmation et algèbre linéaire Calcul tensoriel, analyse spectrale, opérateurs et espaces de Hilbert Physique statistique/Thermodynamique et sciences de lingénieur correspondantes Probabilités et statistiques Sciences du comportement et de la vie; science de la décision et de la communication Recherche opérationnelle (graphes, complexité) Théorie de linformation et de la communication (langages, grammaires et automates) Logique floue ; modélisation qualitative Systèmes non linéaires et chaos

24 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 24 Modèles statiques Répond à la question : Comment cest fait Plan de montage / Construction du système ( Intégration ) cf. les notions de bibliothèques et/ou de packages (gestion de configuration) Modèles de classes basés sur les concepts (issus de la logique) de : ENSEMBLES et RELATIONS appliqués aux trois catégories dentités de lanalyse fonctionnelle Données / Flux Instructions-Fonctions / Processus Contrôles / Pilotage FONCTIONS Caractérisent la nature des transformations à effectuer ; elles sexpriment à laide de langages (syntaxe + sémantique) Textes

25 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 25 Modèles dynamiques Répond à la question : Comment ça marche Description des enchaînements des transformations effectuées par les fonctions Modèles de traitements ; Diagrammes dactivités (UML) Pilotage et contrôle du système Ordonnancement et séquençage des opérations à partir des évènements et/ou messages reçus Description des séquences denvoi/réception de messages (MSC en UML) Notion de protocole Modèles de comportements du système (issus de la théorie des automates) : Systèmes à États – Transitions Machines à états finis (automates à mémoire)

26 J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 26 5 ème partie : Exemple : Un contrôle aérien rudimentaire

27 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 27 Scène réelle SYSTÈME DE CONTRÔLE DU TRAFFIC AÉRIEN DÉTECTION de TOUS LES OBJETS VISUALISATION CONTRÔLES / COMMANDES E Surveillance RADAR ACTEURS E/S

28 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 28 Diagramme de contexte / collaboration RADAR SCTA DÉFENSE AÉRIENNE RADAR VISU- ALISATION OPÉRA- TEURS PLANS DE VOLS EURO- CONTROL Visualisation en temps réel de la situation aérienne au voisinage de l'aéroport Gestion de l'espace aérien par les contrôleurs Tenue à jour des plans de vol par les différentes compagnies aériennes accréditées Dialogues avec les centres de contrôle européens Dialogues avec la défense aérienne France + OTAN Couverture aérienne par les radars civils MÉTÉO NATION- NALE

29 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 29 FLOTS DE DONNÉES, PROCESSUS, STOCKAGE (1/2) PLANS DE VOLS MONITEUR CONSOLES OPÉRATEURS MONITEUR CONSOLES VISUALISATION NOYAU DU SYSTÈME MONITEUR DES RADARS TAMPON ACTIVATION DU SYSTÈME DE VISUALISATION ACTIVATION DU SYSTÈME DE COMMANDES POSITION {x,y,z} ET IDENTIFICATION DES OBJETS VOLANTS Contient les extraits des plans de vol des avions sous contrôle du système FORMATION DES TRAJECTOIRES «PISTES» COMMANDES DE GESTION DES «PISTES» Msg x,y,… vers les SI des compagnies aériennes, avec accusés de réception (AR)

30 J.Printz / CNAM - CMSL / Conception des logiciels – Analyse fonctionnelle / Vers. 5.3Page 30 FLOTS DE DONNÉES, PROCESSUS, STOCKAGE (2/2) RADARS Mécanisme de« polling» GESTION RADAR FICHIER PISTES COMMAN- DES VISU FICHIER PISTES 1 File d'attente par RADAR INTERFACE VISUALISATION INTERFACE COMMANDES OPÉRATEURS Messages à Visualiser avec AR L'intégrité de ce fichier est primordiale TIMER Gestion physique Gestion logique Pile 2 canaux sont prévus selon la nature des commandes (courtes, longues, prioritaires, …) avec accusés de réception AR +AR évènements


Télécharger ppt "J.Printz / CNAM - CMSL / Conception des logiciels - Analyse fonctionnelle / Vers. 5.3Page 1 CONCEPTION DES LOGICIELS : Chapitre 2 LE SYSTÈME ET SON ENVIRONNEMENT."

Présentations similaires


Annonces Google