2003, revisé 2006, 07 et 08SEG Chapitre 21 Chapître 2 Principes de base concernant les exigences
2003, revisé 2006, 07 et 08SEG Chapitre 22 Les sections: Introduction au système exemple Nature d’un système Techniques pour gérer la complexité Approches à la description de comportements Quelques approches de description La méthodologie présentée dans ce livre La notation SOON
2003, revisé 2006, 07 et 08SEG Chapitre : Introduction au système exemple Le système de contrôle d’accès (Access Control System (AC-System)) Un point d’accès (Access point) La station locale (Local station) La station centrale (Central station)
2003, revisé 2006, 07 et 08SEG Chapitre 24 Le panneau et la carte
2003, revisé 2006, 07 et 08SEG Chapitre 25 La structure du système
2003, revisé 2006, 07 et 08SEG Chapitre : La nature d’un système C’est quoi, un système ? Comportement Structure Système temps-réel
2003, revisé 2006, 07 et 08SEG Chapitre 27 C’est quoi, un système ? Un système est une partie du monde réel qu’une personne ou un groupe de personnes considèrent, pendant un certain temps et pour un but particulier, comme un tout; il consiste de composantes interreliées, chaque composante étant caractérisée par des propriétés qui ont été sélectionnées parce qu’elles sont pertinentes pour le but considéré.
2003, revisé 2006, 07 et 08SEG Chapitre 28 Système hiérarchique
2003, revisé 2006, 07 et 08SEG Chapitre 29 Un système d’alarme simple
2003, revisé 2006, 07 et 08SEG Chapitre 210 La description du système Il y a deux buts: –Décrire le comportement fonctionnel pour qu’il soit complètement compris –Décrire la réalisation pour que le système puisse être produit Système vs description du système
2003, revisé 2006, 07 et 08SEG Chapitre 211 Système et description du système
2003, revisé 2006, 07 et 08SEG Chapitre 212 Comportement Le comportement d’un système est le développement des états et des transitions entre états générés par les actions du système pendant le laps de temps pour lequel il est étudié Comportement est un développement dynamique à travers le temps
2003, revisé 2006, 07 et 08SEG Chapitre 213 Un segment de comportement
2003, revisé 2006, 07 et 08SEG Chapitre 214 Structure La structure d’un système est l’aspect du système qui reste invariant (fixe) pendant l’intervalle de temps sur laquelle le système est étudié La structure d’un système est la disposition, l’arrangement des parties du système
2003, revisé 2006, 07 et 08SEG Chapitre 215 Systèmes temps-réels Un système est un système temps-réel si un de ses rôles d’usager a des contraintes de temps
2003, revisé 2006, 07 et 08SEG Chapitre 216 Exemple: système de contrôle (real-time) Pipe Flow meter Valve Interface Computer Time Input flow reading Processing Output valve angle
2003, revisé 2006, 07 et 08SEG Chapitre 217 Un four de séchage de grain (real-time) Fuel Tank Furnace Bin Pipe fuel grain
2003, revisé 2006, 07 et 08SEG Chapitre 218 Un système de contrôle de processus (real-time) Process Control Computer Chemicals and Materials Valve Temperature Transducer Stirrer Finished Products PLANT
2003, revisé 2006, 07 et 08SEG Chapitre : Techniques pour gérer la complexité Abstraction –Projection –Composition (agréger) et décomposition –Généralisation et spécialisation
2003, revisé 2006, 07 et 08SEG Chapitre 220 Abstraction Ignorer certains aspects d’un phénomène pour décrire (et comprendre) plus clairement d’autres aspects. Le contraire de concret ou physique L’abstraction devrait être claire et précise, offrir une implantation efficace et supporter l’évolution et la réutilisation
2003, revisé 2006, 07 et 08SEG Chapitre 221 Projection Lors d’une projection, nous regardons le système d’un certain angle Une projection est une description d’un système comme il est aperçu par un sous- ensemble de ses interfaces –Seulement les interfaces visibles sont observables, les autres sont cachés
2003, revisé 2006, 07 et 08SEG Chapitre 222 Agrégation et décomposition (1) Tous les systèmes non triviaux sont composés de composants Le processus de combiner des composants pour en faire un tout est appelé agrégation Le processus opposé est appelé décomposition
2003, revisé 2006, 07 et 08SEG Chapitre 223 Agrégation et décomposition (2)
2003, revisé 2006, 07 et 08SEG Chapitre 224 Généralisation et spécialisation Dans le monde réel, il y a un grand nombre d’objets similaires Au lieu de décrire et comprendre tous les objets individuels en détails, nous pourrions les décrire et les comprendre par leurs traits similaires Un type est une entité conceptuelle qui nous sert à structurer nos descriptions et pensées Un objet individuel est une instance d’un type Un sous-type d’un type définit des traits supplémentaires qui seront satisfaits par toutes ses instances
2003, revisé 2006, 07 et 08SEG Chapitre 225 Hiérarchie de spécialisation / généralisation
2003, revisé 2006, 07 et 08SEG Chapitre 226 Décomposition d’un type (une composante, nommé Ls, a une structure particulière)
2003, revisé 2006, 07 et 08SEG Chapitre 227 Sous-type : Héritage et spécialisation (concepts souvent utilisés avec des sens variés)
2003, revisé 2006, 07 et 08SEG Chapitre : Approches à la description de comportement Le problème Notes sur l’évolution des langages L’orientation objet
2003, revisé 2006, 07 et 08SEG Chapitre 229 Le problème La qualité d’un système temps-réel est déterminée principalement par son comportement Le comportement est l’aspect d’un système le plus difficile à décrire à cause de sa nature dynamique et éphémère Comment peut-on représenter un comportement dynamique et possiblement infini dans une forme statique et finie ?
2003, revisé 2006, 07 et 08SEG Chapitre 230 Exemple d’une description de comportement
2003, revisé 2006, 07 et 08SEG Chapitre 231 Différentes formes de description de comportement Description orientée-état –Met le point sur des états et des transitions –Chaque état est représenté par un nœud –Chaque transition représente un instance d’action Description orientée-action –Met le point sur les types d’actions et leur ordre d’exécution qui peut être influencé par les valeurs de variables –Les états ne sont pas nécessairement représentés explicitement, mais ils peuvent être trouvés en analysant les actions
2003, revisé 2006, 07 et 08SEG Chapitre : Quelques approches de description Description abstraite Description par entités et relations Une notation parlant des instances Diagrammes de flux de données Les diagrammes d’activités (de UML) et “Use Case Maps” (non discutés dans le livre) Machine à états finis
2003, revisé 2006, 07 et 08SEG Chapitre 233 Descriptions abstraites Il y a des approches différentes à la description abstraite des systèmes Conflit entre le besoin de formaliser et de comprendre Les méthodes de description qui ont été le plus utilisées jusqu’à date était celles qui s’attardaient surtout au besoin des utilisateurs pour comprendre La formalisation est une étape nécessaire au développement d’outils (pour l’édition de descriptions, la vérification, le développement d’implantation ou le développement de tests)
2003, revisé 2006, 07 et 08SEG Chapitre 234 Description entité-relationnelle
2003, revisé 2006, 07 et 08SEG Chapitre 235 Entity Relationship Diagram Legend
2003, revisé 2006, 07 et 08SEG Chapitre 236 Another Entity Relationship Diagram
2003, revisé 2006, 07 et 08SEG Chapitre 237 SOON Notation (used in book by Braek)
2003, revisé 2006, 07 et 08SEG Chapitre 238 SOON: classes et instances
2003, revisé 2006, 07 et 08SEG Chapitre 239 UML Class Diagram
2003, revisé 2006, 07 et 08SEG Chapitre 240 Diagramme de flux de données
2003, revisé 2006, 07 et 08SEG Chapitre 241 UML: Diagrammes d’activités Ce type diagramme rassemble aux anciennes diagrammes de flux de données. Voici un exemple:
2003, revisé 2006, 07 et 08SEG Chapitre 242 Use Case Maps Une notation (avec racines à Ottawa) sémantiquement similaire Voici le même exemple: Receive Order Fill Order Send Invoice Ship Order Make Payment Acccept Payment Close Order Warehouse Office Client [ Order rejected ] [ Order accepted ]
2003, revisé 2006, 07 et 08SEG Chapitre 243 Concepts pour décrire les exigences Each Use Case is a scenario –Actions done by actors in some given order Action: Activity / Responsibility Actor: Swimlane / Component Order: sequence, alternatives, concurrency, arbitrary control flows (similar to Petri nets) Abstraction: refinement of activity / Plug-in Data-Flow: Object flow / not in UCMs. Question: what type of data is exchanged (an extension of control flow) –Input assertions for input data flow –Output assertions for output data flow –Conditions for alternatives (also in UCMs)
2003, revisé 2006, 07 et 08SEG Chapitre 244 Machine à états finis (finite state machine, FSM)
2003, revisé 2006, 07 et 08SEG Chapitre 245 Une FSM est définie par: Un ensemble fini d’entrées, I; Un ensemble fini de sorties, O; Un ensemble fini d’états, S; Une fonction du prochain état, F S : S x I S; Une fonction de sortie, F O : S x I O*; Un état initial désigné, Initial.
2003, revisé 2006, 07 et 08SEG Chapitre : La méthodologie présentée dans ce livre
2003, revisé 2006, 07 et 08SEG Chapitre 247 Sommaire des notations
2003, revisé 2006, 07 et 08SEG Chapitre : La notation SOON “SISU Object-Oriented Notation” Utilisée pour décrire la structure d’un système où le langage SDL n’est pas approprié Moins formelle et n’implique pas la sémantique de SDL
2003, revisé 2006, 07 et 08SEG Chapitre 249 Les symboles de SOON
2003, revisé 2006, 07 et 08SEG Chapitre 250 La syntaxe de SOON
2003, revisé 2006, 07 et 08SEG Chapitre 251 La syntaxe de SOON (II)