• Aucun résultat trouvé

Analyse et conception des Analyse et conception des systèmes d'information dans systèmes d'information dans

N/A
N/A
Protected

Academic year: 2022

Partager "Analyse et conception des Analyse et conception des systèmes d'information dans systèmes d'information dans "

Copied!
25
0
0

Texte intégral

(1)

Analyse et conception des Analyse et conception des systèmes d'information dans systèmes d'information dans

l'entreprise l'entreprise

INF7215 INF7215

Tho Tho - - Hau Nguyen Hau Nguyen

(2)

Plan du cours Plan du cours

„„

Motivations de l'orientation objet Motivations de l'orientation objet

„„

Concepts Concepts

(3)

Motivations de l'orientation objet Motivations de l'orientation objet

„„ Génie LogicielGénie Logiciel

Coût de la maintenanceCoût de la maintenance

Conception et maintenance de logiciels plus complexesConception et maintenance de logiciels plus complexes Logiciels modifiables, réutilisables, Logiciels modifiables, réutilisables,

compréhensibles,…

compréhensibles,…

„„ Intelligence artificielleIntelligence artificielle

Représentation de la connaissanceReprésentation de la connaissance

(4)

Motivations de l'orientation objet Motivations de l'orientation objet

(suite) (suite)

„„ Bases de donnéesBases de données

Objets complexes et évolutifs (textes, graphiques, Objets complexes et évolutifs (textes, graphiques, images,…)

images,…)

Langages de programmation et BDLangages de programmation et BD

„„

Systèmes d'information Systèmes d'information

–– Trop de modèlesTrop de modèles

–– Modèle conceptuel, logique et physique uniqueModèle conceptuel, logique et physique unique –– Réutilisation (conception, modèle)Réutilisation (conception, modèle)

(5)

L'orientation

L'orientation - - objet une approche objet une approche naturelle et intuitive

naturelle et intuitive

Insérer le graphe

(6)

Langages OO…un peu d'histoire Langages OO…un peu d'histoire

„„

Programmation structurée Programmation structurée

–– Procédures + structures de donnéesProcédures + structures de données –– AvantagesAvantages

»» Diviser pour mieux régnerDiviser pour mieux régner

»» Programmation dirigée par le traitementProgrammation dirigée par le traitement

„„

Programmation objet Programmation objet

–– Objet = données + procéduresObjet = données + procédures –– AvantagesAvantages

»» Programmation dirigée par les donnéesProgrammation dirigée par les données

(7)

Langages Orientés

Langages Orientés - - objet objet

„„ Deux famillesDeux familles

SimulaSimula

»» Regroupement de données et procéduresRegroupement de données et procédures

»» Concept de classeConcept de classe

»» Concept d'héritageConcept d'héritage

»» Ex: C++, Ex: C++, Object Object Pascal, EiffelPascal, Eiffel

SmalltalkSmalltalk

»» Envoi de messageEnvoi de message

»» Méta-Méta-classeclasse

»» Environnement de programmation completEnvironnement de programmation complet

»» Ex: Ex: FlavorsFlavors, Clos, Objective C, , Clos, Objective C, ObjectlispObjectlisp

(8)

Caractéristiques des LOO Caractéristiques des LOO

„„

Abstraction des données Abstraction des données

–– Principe d'utilisationPrincipe d'utilisation

»» L'objet est uniquement accessible par son interface L'objet est uniquement accessible par son interface opérationnelle (partie publique)

opérationnelle (partie publique)

»» Interface = protocole de communicationInterface = protocole de communication

–– Principe de dissimulationPrincipe de dissimulation

»» La réalisation des opérations de l'objet et son La réalisation des opérations de l'objet et son implantation physique sont dissimulées

implantation physique sont dissimulées

(9)

Caractéristiques des LOO (suite) Caractéristiques des LOO (suite)

„„

Regroupement des objets Regroupement des objets

–– Le programmeur est obligé de structurer les Le programmeur est obligé de structurer les objets de son application en classes

objets de son application en classes

„„

Partage des connaissances Partage des connaissances

–– Les objets peuvent partager des propriétésLes objets peuvent partager des propriétés

(10)

Objet Objet

„„

Collection d'éléments de données structurés, Collection d'éléments de données structurés, identifiés par une référence unique

identifiés par une référence unique

„„

Exemples Exemples

–– La personne JeanneLa personne Jeanne –– L'avion AC710L'avion AC710

–– Le cercle CLe cercle C

–– L'hôtel L'EsterelL'hôtel L'Esterel

–– Le congrès IMQLe congrès IMQ--9999

(11)

Objet (suite) Objet (suite)

„„

Concept fondamental Concept fondamental

–– Dans une base de données orientéeDans une base de données orientée--objet, tout objet, tout objet est identifié par un identificateur unique objet est identifié par un identificateur unique

»» OID (OID (Object Object Identifier)Identifier)

–– Chaque objet possède une identitéChaque objet possède une identité

–– Deux objets ayant les mêmes valeurs, mais un Deux objets ayant les mêmes valeurs, mais un identifiant différent, sont considérés comme identifiant différent, sont considérés comme différents

différents

(12)

Objet: Employé Objet: Employé

Insérer le dessin

(13)

Propriété Propriété

„„ Caractéristique d'un objet désigné par un nom Caractéristique d'un objet désigné par un nom pouvant correspondre à:

pouvant correspondre à:

Un attributUn attribut

Un sousUn sous--objet composantobjet composant

(14)

Propriété (suite) Propriété (suite)

Exemples:Exemples:

»» Attribut simpleAttribut simple

„„ Nom d'une personneNom d'une personne

„

„ Longueur d'une tableLongueur d'une table

»» Sous-Sous-objet composantobjet composant

„„ Enfants d'une personneEnfants d'une personne

„„ Propriétés d'une personnePropriétés d'une personne

(15)

Méthode Méthode

„„

Opération associée à une classe qui Opération associée à une classe qui

manipule ou retourne l'état d'un objet ou manipule ou retourne l'état d'un objet ou

d'une partie d'un objet de la classe d'une partie d'un objet de la classe

–– Exemples:Exemples:

»» ImprimerImprimer

»» CréerCréer

(16)

Des objets: Propriétés et Des objets: Propriétés et

Méthodes Méthodes

Insérer le dessin

(17)

L'encapsulation L'encapsulation

Insérer le dessin

(18)

Héritage Héritage

„„ Transmission des propriétés d'une classe vers une Transmission des propriétés d'une classe vers une soussous--classeclasse

„„ Possibilité d'un type d'objet A d'hériter des Possibilité d'un type d'objet A d'hériter des

propriétés et des opérations d'un type d'objet B propriétés et des opérations d'un type d'objet B

„„ Possibilités de créer des types d'objets spécialisés Possibilités de créer des types d'objets spécialisés à partir d'objets généraux

à partir d'objets généraux

„„ PermetPermet

RéutilisationRéutilisation

On parle de classificationOn parle de classification

(19)

Héritage: un exemple Héritage: un exemple

Insérer le dessin

(20)

Classe, instance Classe, instance

„„ Classe:Classe:

Type de données abstraitType de données abstrait Ensemble d'objetsEnsemble d'objets

»» Même structure (attributs)Même structure (attributs)

»» Même comportement (méthodes)Même comportement (méthodes)

»» Même protocole de communicationMême protocole de communication

Moule pour générerMoule pour générer

»» Ses représentants physiques (instances)Ses représentants physiques (instances)

(21)

Classe, instance (suite) Classe, instance (suite)

Exemples:Exemples:

»» Les personnesLes personnes

»» Les cartes géographiquesLes cartes géographiques

»» Les municipalitésLes municipalités

»» Les informaticiens du QuébecLes informaticiens du Québec

(22)

Classe, instance: un exemple Classe, instance: un exemple

Insérer le dessin

(23)

Liens sémantiques entre classes Liens sémantiques entre classes

„„

Généralisation Généralisation

–– Lien hiérarchique entre deux classes spécifiant Lien hiérarchique entre deux classes spécifiant que les objets de la classe supérieure sont plus que les objets de la classe supérieure sont plus généraux que ceux de la classe inférieure

généraux que ceux de la classe inférieure

„„

Agrégation Agrégation

–– Composant –Composant – composécomposé

(24)

Message Message

„„ Bloc de paramètres permettant par envoi Bloc de paramètres permettant par envoi

l'invocation d'une méthode publique d'un objet l'invocation d'une méthode publique d'un objet

„„ Un objet réagit à un message en exécutant la Un objet réagit à un message en exécutant la

méthode associée et en retournant les paramètres méthode associée et en retournant les paramètres

résultats de la méthode résultats de la méthode

„„ Le retour des résultats peut être sous forme de Le retour des résultats peut être sous forme de message à la méthode appelante

message à la méthode appelante

Exemples:Exemples:

»» Tracteur, avanceTracteur, avance

(25)

Message: un exemple Message: un exemple

Insérer le dessin

Références

Documents relatifs

La méthode AVL (Analyse de la Vraisemblance des Liens) est davantage connue pour la classification de l’ensemble V des variables descriptives que pour celle

r la peirrnission de travailler. Il eût un succès formidable. est pas de mon invention. en tournant la main droite comme une roue. C'était /'express et nous

Mouvements et interactions– Dossier 1 – Cours Page 1 Le Soleil exerce une action attractive, à distance, sur chaque planète, astéroïde ou comète qui se déplacent autour de

- Une méthode de classe (modificateur static en Java) exécute une action indépendante d’une instance particulière de la classe. - Une méthode de classe peut être considérée

- Réaliser une classe PointA, dérivée de Point disposant d’une méthode affiche affichant (en fenêtre console) les coordonnées d’un point. - Écrire un programme utilisant les

Prendre notes des 4 cas de facteurs

– – Ensemble de valeurs des attributs des objets et des Ensemble de valeurs des attributs des objets et des associations entre ces objets à un instant donné. associations entre

Point p2=p1 ; // constructeur de recopie : création de l’objet p2 // et son initialisation avec les données de p1.. Attention : il faut différencier entre recopie et