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

LOG 8430: Architecture logicielle et conception avancée

Présentations similaires


Présentation au sujet: "LOG 8430: Architecture logicielle et conception avancée"— Transcription de la présentation:

1 LOG 8430: Architecture logicielle et conception avancée
Foutse Khomh Professeur adjoint Local M-4123

2 Plan de séance Introduction.
Présentation et comparaison des types d’architectures : multi-niveaux, clients/serveurs, extensibles et dynamiques Résumé de la séance.

3 Plan de séance Introduction.
Présentation et comparaison des types d’architectures : multi-niveaux, clients/serveurs, extensibles et dynamiques Résumé de la séance.

4 Enseignants Professeur Foutse Khomh, PhD Chargé de laboratoire
Zéphyrin SOH, Étudiant de doctorat en Informatique à l’Ecole Polytechnique de Montréal

5 Présentation des étudiants
Nom, prénom Niveau d’ étude (B.sc, M.sc, ou Ph.D?) Qu’est ce qu’une architecture logicielle?

6 Objectifs de l’informatique (1/3)
Créer des logiciels Résoudre des problèmes existants Résoudre ces problèmes bien Logiciel Programme (code source / binaire) Architecture Conception Structure de données / données Documents

7 Objectifs de l’informatique (2/3)
Pour créer de bons logiciels Connaissances Compréhension Application Analyse Synthèse Évaluation

8 Objectifs de l’informatique (3/3)
Joshua Bloch ; Effective Java ; 2e Édition, Addison Wesley, avril 2008 Pour créer de bons logiciels Grammaire Algorithmique Paradigmes Vocabulaire Structure de données Opérations Services Usages Pratiques Efficacité Dans le cas de Java par exemple Grammaire Vos cours précédents Orienté objets Vocabulaire JLS JVM Bibliothèque de classes Usages Architectures, patrons de conception...

9 Objectifs du cours Présenter les principaux types d’architectures logicielles et les critères permettant de choisir un type spécifique d’architecture Présenter des approches basées sur des patrons de conception pour la réalisation d’application (distribuées) Donner un aperçu des approches émergentes de conception logicielle

10 Objectifs spécifiques d'apprentissage
À la fin du cours, l’étudiant sera en mesure de : concevoir l’architecture d’un logiciel en choisissant et en justifiant les architectures, les patrons de conception et les techniques de conception avancée utilisés (entre autres à la méta-programmation, la programmation par composants, les patrons d’architecture distribuée, les architectures orientées services); concevoir les composantes de l’architecture d’un logiciel (classes orientées-objets, composants logiciels ou services logiciels) à l’aide de techniques avancées et à partir de patrons d’architecture distribuée parmi les plus utilisés et de justifier ses choix; juger de la conception de l’architecture d’un logiciel et de suggérer des changements à cette architecture.

11 Situation du cours dans le programme
Le cours LOG8430 termine la chaîne de cours portant sur l’implantation, la conception et l’architecture des logiciels, commencée par les cours de programmation procédurale (INF1005C), le cours de programmation orientée objets (INF1010) et le cours de conception logicielle (LOG2410).

12 Méthodes d’enseignement
Niveau Activités 1. Connaissance Mémoriser des informations, définir des terminologies, des techniques, etc. 2. Compréhension Comprendre un article afin d'en faire un résumé 3. Application Utiliser les connaissances de l'apprenant pour les appliquer dans une situation concrète (« la vraie vie ») 4. Analyse Demander à l'apprenant de disséquer un sujet, d'en expliquer les tenants et les aboutissants 5. Synthèse Reformuler les parties d'un sujet ensemble mais d'une toute nouvelle manière en se basant sur plusieurs sources 6. Évaluation Juger la valeur d'un sujet dans un but spécifique

13 Travail personnel du cours
Le triplet horaire indique 4.5 heures de travail personnel par semaine. Pendant ces heures, il est conseillé de: D’ étudier les notions présentés durant les séances de cours, en particulier les nombreux exemples Appliquer les concepts vu en cours ainsi que ceux présentés dans les articles discutés en cours Travailler sur les travaux pratiques du cours

14 Séances de travaux pratiques
Durant les séances de travaux pratiques, les étudiants Travailleront à la conception d’un logiciel en utilisant les techniques et les concepts avancés de conception architecturale Evalueront des solutions alternatives développées par leurs camarades L’idée est de donner aux étudiants un aperçu des techniques et concepts ainsi qu’un point de comparaison qui leur permet alors de comprendre les avantages et les inconvénients de chaque architecture, patron de conception et technique avancée en contexte

15 Répartition des heures du cours (pourra être modifiée)
Hiver 2014 Répartition des heures du cours (pourra être modifiée)

16 Répartition des heures du cours (pourra être modifiée)
Hiver 2014 Répartition des heures du cours (pourra être modifiée) Exceptionnellement les présentations auront lieu le jeudi 30 janvier à l’heure de travaux pratiques car je serai absent le Mardi 4 février pour raison de participation à une conférence internationale. Il y aura travaux pratiques le Mardi 4 février 2014.

17 Contrôles du cours L'évaluation est constituée de 6 travaux pratiques, 6 évaluations de travaux pratiques, 3 évaluations d’articles (fiche de lecture) et d’un examen final selon la pondération indiquée ci-dessous. Nature Nombre Pondération Travaux pratiques de conception (en équipe) 6 20 % Jugements sur des conceptions d’architectures (en équipe) 20% Fiches de lecture (individuel) 3 Examen final (individuel) 1 40 %

18 Notes importantes Toutes matière présentée en cours est sujet à Contrôles Les travaux pratiques remis en retard seront pénalisés de 10% par jour de retard En cas d’absence à un examen, toute demande d’examen différé devra être motivée auprès du bureau des affaires académiques

19 Notes importantes Pour les travaux pratiques, les étudiants travaillent par groupes de 2 à 3 et ces groupes sont IMMUABLES pendant la session Les fiches de lecture sont à rendre par courriel au professeur en format doc ou PDF au plus tard le dimanche soir (à 23h59 ) précédent la date de la présentation. Elles devraient faire un minimum de 1 page et un maximum de 2 pages

20 Notes importantes Les règlements relatifs au plagiat (annuaire du programme de baccalauréat de l’ École polytechnique de Montréal) s’appliquent en tout temps.

21 Téléphones et ordinateurs
Autorisé seulement pour les besoins du cours

22 La présence en classe est fortement recommandée
Quelques bonnes raisons d’assister au cours La matière du cours vous intéresse Les explications du professeur vous aident à mieux comprendre la matière du cours Les étudiants qui assistent régulièrement au cours réussissent mieux le cours en général Le professeur a du plaisir à échanger avec vous Les travaux pratiques et l’examen final porteront sur le contenu des séances de cours

23 Manuel du cours Software engineering : a practitioner's approach, Roger S. Pressman. 5th ed. Boston, Mass. ; Toronto : McGraw Hill, c2001 The unified software development process, Ivar Jacobson, Grady Booch, James Rumbaugh. Boston ; Montreal : ACM Press/Addison Wesley c1999 Software architecture in practice , Len Bass, Paul Clements, Rick Kazman. Reading, Mass. ; Don Mills, Ont. : Addison-Wesley, c1998 Software architecture design patterns in Java, Partha Kuchana. Boca Raton, FL : Auerbach Publications, c2004 Architecture logicielle : concevoir des applications simples, sûres et adaptables, Printz, Jacques. Paris, Dunod, c2006

24 Contenu du cours Cours Sujets Cours 1
Architectures : multi-niveaux, clients/serveurs, extensibles et dynamiques Architectures: style architecturaux (suite) et conception détaillée Cours 2 Cours 3 Bibliothèques et chargement de composantes dynamiques 1ère séance de présentation Cours 4 Cours 5 Cadres et plugiciels Composition et architectures par composants Cours 6 Cours 7 Patrons pour la conception d’applications distribuées 2ème séance de présentation Cours 8

25 Contenu du cours Cours 9 Patrons pour la conception d’applications distribuées (suite) Applications de base de la conception orientée aspect : surveillance, traçage et profilage Cours 10 Cours 11 Introduction aux architectures Orientée Service 3ème séance de présentations Cours 12 Cours 13 Retour sur les évaluations + Révisions

26 Contenu des travaux pratiques
Sujets Conception d’un système de gestion de fichiers « simple » et choix/justification de l’architecture Conception du même système de gestion de fichiers en utilisant les techniques avancées de chargement de composantes dynamiques Conception du même système de gestion de fichiers en utilisant un cadriciel lui-même à base de « plugiciels » Conception du même système de gestion de fichiers en utilisant la programmation par composants Conception du même système de gestion de fichiers en utilisant des patrons de conception d’applications distribuées permettant la parallélisation des traitements sur les fichiers Application de base de la conception orientée aspect : surveillance, traçage et profilage à un système de gestion de fichiers

27 Fiches de Lecture Une liste d’articles est proposée sur Moodle

28 Pourquoi ce cours est-il important pour un ingénieur en Informatique?

29 Plan de séance Introduction.
Présentation et comparaison des types d’architectures : multi-niveaux, clients/serveurs, extensibles et dynamiques Résumé de la séance.

30 Plan de séance Introduction.
Présentation et comparaison des types d’architectures : multi-niveaux, clients/serveurs, extensibles et dynamiques Résumé de la séance.


Télécharger ppt "LOG 8430: Architecture logicielle et conception avancée"

Présentations similaires


Annonces Google