Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Architecture du logiciel II.

Slides:



Advertisements
Présentations similaires
Module Systèmes d’exploitation
Advertisements

Module Systèmes d’exploitation
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Architecture du logiciel I.
GEF 243B Programmation informatique appliquée Listes chaînées I – Tableaux de structures §15.1 – 15.2.
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Le matériel des ordinateurs Revue Pt II (Tanenbaum 1.4)
GEF 435 Principes des systèmes dexploitation Structure du logiciel dE/S Partie II (Tanenbaum & 5.3.4)
GEF 435 Principes des systèmes dexploitation Les systèmes dexploitation en général (Tanenbaum 1.1 et 1.3)
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Structure de base des programmes en C.
GEF 243B Programmation informatique appliquée
Module Systèmes dexploitation Chapitre 6 Communication Interprocessus Partie III École Normale Supérieure Tétouan Département Informatique
GEF 243B Programmation informatique appliquée Boucles §
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Considération de temps.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Tests.
GEF 243B Programmation informatique appliquée
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) III (Tanenbaum 2.3)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Structure des systèmes dexploitation (Tanenbaum 1.7)
GEF 243B Programmation informatique appliquée Expressions et opérateurs §
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II.
GEF 243B Programmation informatique appliquée Listes chaînées II §15.1 – 15.2.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Génie logiciel et Vérification et validation.
GEF 243B Programmation informatique appliquée Décisions de design avec structures de données §15.1 – 15.2.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Types, variables et constantes.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Génie logiciel avec composantes.
GEF 243B Programmation informatique appliquée Types dérivés, structures et tableaux §
GEF 243B Programmation informatique appliquée Expressions de type mixte et blocs §
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Fonctions.
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Modules et masquage dinformation.
1 Les technologies XML Cours 1 : Les Web Services et Architectures Orientées Services Fé vrier Version 1.0 -
Urbanisation et Architecture CNAM NFE107
Introduction à la POO: Les classes vs les objets
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
FSAB1402: Informatique 2 Techniques de Programmation Orientée Objet
Prise de décision dans les shooters TER 08/09 Sandrine Buendia
Principes de la technologie orientée objets
Module 1 : Préparation de l'administration d'un serveur
Réalisée par :Samira RAHALI
Algorithmique et Programmation
IGL301 - Spécification et vérification des exgiences 1 Chapitre 1 Introduction (ref : Bray chapitre 1)
Présentation Structures de Données et TDA
Portée, arrimages et intervenants Évolution des méthodes
Sensibilisation a la modelisation
Patrons de conceptions de créations
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Supports de formation au SQ Unifié
Algorithmique et programmation (1)‏
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
1 Extension du modèle de composants CORBA avec accès concurrent à des données partagées Travail réalisé par : Landry BREUIL PFE, ISIMA Encadrants : Gabriel.
© Petko ValtchevUniversité de Montréal Février IFT 2251 Génie Logiciel Conception Hiver 2002 Petko Valtchev.
Introduction au Génie Logiciel
5ième Classe (Mercredi, 19 octobre) Prog CSI2572.
Initiation à la conception des systèmes d'informations
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
Le polymorphisme.
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
ISNET-43 Atelier de génie logiciel Approche fonctionnelle ou objets Concurrence ou complémentarité ? Synthèse.
Hiver 2004SEG2501 Chapître 41 Chapître 4 SDL – structure d’un système et son comportement.
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Architecture Client/Serveur
Introduction à la Programmation Orientée Objet
TP D’UML Groupe N° 3.
Introduction Module 1.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
Transcription de la présentation:

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Architecture du logiciel II

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Revue À quoi sert larchitecture pour les ingénieurs en logiciel? Quels genres de systèmes peuvent être représentés par une architecture de pipes et filtres? Quand utiliseriez vous une architecture en couches?

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Synopsis Autres types darchitectures Architectures dabstraction de données et orienté objet Référentiels Client-serveur Contrôle de processus Architectures hybrides

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architectures dabstraction de données et OO Nous avons déjà vus ce quest une abstraction Dans les architectures dabstractions de données et OO, toutes les données sont encapsulées dans un objet au lieu dun module La différence entre un module et un objet est quun objet a un type (un type de données abstrait) et lobjet est donc déclaré avant dêtre créé; les modules sont simplement utilisés Les méthodes (fonctions) font partie du type de lobjet et sont donc partie intégrante de lobjet

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architectures dabstraction de données et OO Si nous voulions créer lillusion dobjets avec les langages structurels et les modules, nous utiliserions les mots clés typedef et struct pour construire nos abstractions Chaque fois que nous voudrions créer un nouvel objet, nous ajouterions un nouveau nœud à notre liste chaînée Nos fonctions et nos données seraient alors encapsulés à lintérieur dun module, similairement aux objets Il y a bien plus que cela dans OO, mais ceci est pour un cour en OO

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architectures dabstraction de données et OO Les architectures OO sont de plus en plus répandus dans les nouveaux logiciels pour résoudre plusieurs sortes de problèmes Les systèmes OO ont plusieurs propriétés qui permettent aux ingénieurs de développer des solutions qui sont robustes et qui sont extensible Parce que OO encapsule la représentation des données et algorithmes dans un objet, limplémentation de cet objet peut changer sans affecter les autres objets tant que linterface de lobjet ne change pas Due à lapplication et vérification stricte des types dans les langages OO, ils sont vus, avec raison, comme des langages dingénierie

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architectures dabstraction de données et OO Les architectures des systèmes OO sont représentées par un ensemble dobjets qui coopèrent et leurs interactions entre ces objets Chaque objet qui est sur le diagramme appartient à un type de donnée abstrait (abstract data type) ou classe Chaque interaction est un appel de méthode, ces appels sont numérotés en ordre pour représenter la séquence des événements dans le système

Architectures dabstraction de données et OO object1 : typeA object2 : typeB object3 : typeC object4 : typeA 1:opn1(param) 2:opn2(param) 3:opn1(param)

Architectures dabstraction de données et OO exemple: téléphone

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Référentiels Les référentiels de données ou référentiels, sont des systèmes qui ont deux types de composantes: un référentiel de données et des composantes exécutables qui opèrent sur ces données Référentiels Le référentiel est une structure de données centrale Il ny a pas de masquage dinformation dans cette architecture, les données sont observables et accessibles par tous Le référentiel contient létat du système

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Référentiels Composantes exécutables: sont des unités dexécutions indépendantes qui réagissent et transforment les données dans un référentiel central – appelées sources de connaissances (knowledge sources) Contrôle: Même si ce nest pas montré comme composante sur le diagramme, il faut un mécanisme de contrôle qui décide quelle composante doit exécuter à quel temps Le contrôle peut être implicite sur létat des données: Une source de connaissances est réveillée quand une partie de référentiel change (invocation implicite) Le contrôle peut être explicitement identifié ce qui est le cas pour les bases de données normales. Le mécanisme de contrôle est alors écrit comme une transaction dopérations (faire un retrait à une banque appel une composante spécifique)

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Référentiels Référentiel SC1 SC4 SC5 SC3 SC2

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Référentiels Les référentiels sont souvent utilisés pour les applications de bases de données pour les systèmes de commerce, le locus de contrôle dans ces cas est explicite et écrit dans des fonctions qui exécutent des transactions spécifiques Les référentiels sont aussi utilisés dans les transformations de données complexes tel que la reconnaissance de diction, la filtration et segmentation des images, la prise de décision tel que dans la navigation sur un terrain inconnu Les référentiels sont un bon choix pour les composantes qui ne sont pas couplés directement mais que doivent traiter la même information

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architecture client-serveur Larchitecture client-serveur est une variation sur larchitecture OO Un objet (OO) ou un module fournit un service pour un autre objet ou module dans une relation un à un Les serveurs et les clients sont souvent vus comme des ordinateurs qui remplissent un rôle, mais en génie logiciel, les serveurs et les clients sont des logiciels qui communiquent pour fournir un service

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architecture client-serveur Même si les architectures de client-serveur sont parfois synonyme avec deux ordinateurs opérants en deux sites distants, les deux entités peuvent souvent être sur le même ordinateur Les termes client et serveur réfèrent seulement aux services qui sont fournis et utilisés

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architecture client-serveur ClientServeur Demande Réponse

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Contrôle de processus Dans les systèmes qui doivent obtenir des lectures de senseurs dans lenvironnement, et ajuster certaines variables pour contrôler certains facteurs externes dans lenvironnement, nous pouvons utiliser nimporte quelle architecture que nous avons appris jusquà maintenant Cependant, quand nous traitons un système de contrôle, il existe des problèmes dinstabilités et des délais qui peuvent avoir un sérieux impact pour le système sous contrôle. Nous devons modéliser ces problèmes

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Contrôle de processus Les architectures de contrôle de processus, modélisent lenvironnement, entrées, transformations et sorties pour montrer le comportement du système entier Chaque système inclus le feedback et les ajustements des composantes pour représenter la performance du système actuel

Contrôle de processus Transformation/ processus comp Variables dentrée Point dopération Variables contrôlées Variables manipulées

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Architectures hybrides Les systèmes avec architecture hybride implémentent des solutions qui se servent dune variété darchitectures dans le même design La combinaison des architectures dans le logiciel est beaucoup transparent que dans les autres disciplines de génie La combinaison des architectures mixtes est une activité importante en génie qui nous permet daugmenter notre capacité à créer de nouveaux designs

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage Quiz Time Quelle est la différence entre un module et un objet? Pourquoi utiliseriez-vous un référentiel?