Introduction aux architectures logicielles

Institut Supérieur des Études Technologiques de Bizerte
1/4
100%

| | | | |

| --- | --- | --- | --- |

| Institut Sup rieur des Etudes Technologiques de Bizerte D partement Technologies de linformatique | | | |

| Parcours : | D veloppement des Syst me dInformations | | |

| Unit dEnseignement : | Environnement de D veloppement | | |

| Mati re : Architecture Logicielle | | | |

| Enseignants Responsables : Khaoula Jridi &Hatem Hamdi | | Ann e Universitaire : 2015-2016 | Semestre : 5 |

Chapitre 0 : Introduction aux architectures logicielles

Objectif :

  • Introduire la notion darchitecture logicielle
  • Motivation
  • Savoir les principaux styles architecturaux

1. Quest-ce quune architecture logicielle ?

Publicité

  • Une architecture est lexpression des premi res d cisions de conception concernant la d composition dun syst me en parties.
  • Larchitecture dun logiciel d finit le logiciel en terme de composantes et dinteractions entre composantes.

Larchitecture impose des contraintes la conception tout en laissant certaines d cisions en suspens, larchitecture ne d finit pas une implantation. Introduction Lanalyse d crit le quoi alors que larchitecture d crit le comment

Positionnement

  • Larchitecture = premi re tape de conception

+ - * r duire la complexit du syst me abord en le structurant en composants logiciels

![](data:image/png;base64...)

Permet de r fl chir et r pondre aux questions :

  • O d velopper ?
  • Comment d velopper ?
  • Quelles quipes, quelles technologies ?
  • Quel co t ?

A partir de larchitecture, on peut :

  • + - * + D finir un plan de travail

+ R partir le travail entre les quipes

Publicité

+ Allouer les ressources

+ Imposer des contraintes techniques

+ Structurer les diff rentes tapes

+ Le d veloppement

+ Les tests

+ La documentation

+ La maintenance

1. Comment d crire une architecture logicielle ?

Pour d crire une architecture logicielle pour une certaine application il faut se concentrer sur les points suivants :

  • D crire lorganisation g n rale dun syst me et sa d composition en composants
  • D terminer les interfaces entre les composants
  • D crire les interactions et le flot de contr le entre les composants
  • D crire les fonctionnalit s de chaque composant

1. Pourquoi d velopper une architecture logicielle ?

Publicité

  • Pour permettre tous de mieux comprendre le syst me r aliser
  • Pour donner les diff rentes vues sur lapplication ( logique, fonctionnelle, physique, etc)
  • Pour pr voir les parties du syst me les composantes logicielles et les relations entre elles.
  • Pour faciliter la r utilisation
  • Pour faciliter la maintenance (corrective + volutive)

1. Quest ce quun style architecturale? Exemple ?

  • Un style architectural est un patron (mod le) qui propose une organisation bien d fini des composants et leurs interactions.

, un style architectural est pr cis ment d fini par son vocabulaire (types de composants et de connecteurs), ses contraintes de configuration (contraintes topologiques), ses invariants, ses exemples dutilisation, ses avantages et inconv nients, et ses sp cialisations les plus communes.

Examinant le style architectural MVC (Mod le-Vue-Contr leur)

Le MVC propose trois types de composants

  • + Mod le : rassemble des donn es du domaine, des connaissances du syst me. Contient les classes dont les instances doivent tre vues et manipul es

+ Vue : utilis pour pr senter/afficher les donn es du mod le dans linterface utilisateur

+ Contr leur : contient les fonctionnalit s n cessaires pour g rer et contr ler les interactions de lutilisateur avec la vue et le mod le

| | |

| --- | --- |

Publicité

| Avantages | Inconv nients |

| Diviser pour r gner : les composants peuvent tre con us ind pendamment Coh sion : meilleure coh sion que si les couches vue et contr le taient dans linterface utilisateur. Couplage : le nombre de canaux de communication entre les 3 composants est minimal R utilisabilit : la vue et le contr le peuvent tre con us partir de composants d j existants Flexibilit : il est facile de changer linterface utilisateur | goulot d tranglement possible |

Int r ts de larchitecture MVC

  • Ind pendance entre :
  • la repr sentation logique d'une application (mod le)
  • la repr sentation visuelle (vue)
  • les actions que lutilisateur effectue (contr leur)

>zCette ind pendance favorise le d veloppement et la maintenance des applications :

  • Modularit dans la conception
  • vue et contr leur peuvent tre d velopp s ind pendamment du Mod le
  • Meilleure r partition des t ches
  • d veloppeurs du mod le/d veloppeurs de l'interface ont des comp tences

diff rentes

  • d veloppeurs du mod le : connaissance m tier
  • d veloppeurs de linterface : connaissance des besoins utilisateurs, souci dergonomie.
  • S paration claire entre les donn es du programme et linterface graphique affichant ces donn es.
  • Possibilit s de vues diff rentes d'un m me mod le

>jL'application peut montrer l' tat du mod le de diff rentes fa ons, avec diff rentes interfaces utilisateurs

![](data:image/png;base64...)

Introduction aux architectures logicielles

Institut Supérieur des Études Technologiques de Bizerte · Software Architecture · notes

Voir tous les documents en génie logiciel

| | | | |

| --- | --- | --- | --- |

| Institut Sup rieur des Etudes Technologiques de Bizerte D partement Technologies de linformatique | | | |

| Parcours : | D veloppement des Syst me dInformations | | |

| Unit dEnseignement : | Environnement de D veloppement | | |

| Mati re : Architecture Logicielle | | | |

| Enseignants Responsables : Khaoula Jridi &Hatem Hamdi | | Ann e Universitaire : 2015-2016 | Semestre : 5 |

Chapitre 0 : Introduction aux architectures logicielles

Objectif :

  • Introduire la notion darchitecture logicielle
  • Motivation
  • Savoir les principaux styles architecturaux

1. Quest-ce quune architecture logicielle ?

Publicité

  • Une architecture est lexpression des premi res d cisions de conception concernant la d composition dun syst me en parties.
  • Larchitecture dun logiciel d finit le logiciel en terme de composantes et dinteractions entre composantes.

Larchitecture impose des contraintes la conception tout en laissant certaines d cisions en suspens, larchitecture ne d finit pas une implantation. Introduction Lanalyse d crit le quoi alors que larchitecture d crit le comment

Positionnement

  • Larchitecture = premi re tape de conception

+ - * r duire la complexit du syst me abord en le structurant en composants logiciels

![](data:image/png;base64...)

Permet de r fl chir et r pondre aux questions :

  • O d velopper ?
  • Comment d velopper ?
  • Quelles quipes, quelles technologies ?
  • Quel co t ?

A partir de larchitecture, on peut :

  • + - * + D finir un plan de travail

+ R partir le travail entre les quipes

Publicité

+ Allouer les ressources

+ Imposer des contraintes techniques

+ Structurer les diff rentes tapes

+ Le d veloppement

+ Les tests

+ La documentation

+ La maintenance

1. Comment d crire une architecture logicielle ?

Pour d crire une architecture logicielle pour une certaine application il faut se concentrer sur les points suivants :

  • D crire lorganisation g n rale dun syst me et sa d composition en composants
  • D terminer les interfaces entre les composants
  • D crire les interactions et le flot de contr le entre les composants
  • D crire les fonctionnalit s de chaque composant

1. Pourquoi d velopper une architecture logicielle ?

Publicité

  • Pour permettre tous de mieux comprendre le syst me r aliser
  • Pour donner les diff rentes vues sur lapplication ( logique, fonctionnelle, physique, etc)
  • Pour pr voir les parties du syst me les composantes logicielles et les relations entre elles.
  • Pour faciliter la r utilisation
  • Pour faciliter la maintenance (corrective + volutive)

1. Quest ce quun style architecturale? Exemple ?

  • Un style architectural est un patron (mod le) qui propose une organisation bien d fini des composants et leurs interactions.

, un style architectural est pr cis ment d fini par son vocabulaire (types de composants et de connecteurs), ses contraintes de configuration (contraintes topologiques), ses invariants, ses exemples dutilisation, ses avantages et inconv nients, et ses sp cialisations les plus communes.

Examinant le style architectural MVC (Mod le-Vue-Contr leur)

Le MVC propose trois types de composants

  • + Mod le : rassemble des donn es du domaine, des connaissances du syst me. Contient les classes dont les instances doivent tre vues et manipul es

+ Vue : utilis pour pr senter/afficher les donn es du mod le dans linterface utilisateur

+ Contr leur : contient les fonctionnalit s n cessaires pour g rer et contr ler les interactions de lutilisateur avec la vue et le mod le

| | |

| --- | --- |

Publicité

| Avantages | Inconv nients |

| Diviser pour r gner : les composants peuvent tre con us ind pendamment Coh sion : meilleure coh sion que si les couches vue et contr le taient dans linterface utilisateur. Couplage : le nombre de canaux de communication entre les 3 composants est minimal R utilisabilit : la vue et le contr le peuvent tre con us partir de composants d j existants Flexibilit : il est facile de changer linterface utilisateur | goulot d tranglement possible |

Int r ts de larchitecture MVC

  • Ind pendance entre :
  • la repr sentation logique d'une application (mod le)
  • la repr sentation visuelle (vue)
  • les actions que lutilisateur effectue (contr leur)

>zCette ind pendance favorise le d veloppement et la maintenance des applications :

  • Modularit dans la conception
  • vue et contr leur peuvent tre d velopp s ind pendamment du Mod le
  • Meilleure r partition des t ches
  • d veloppeurs du mod le/d veloppeurs de l'interface ont des comp tences

diff rentes

  • d veloppeurs du mod le : connaissance m tier
  • d veloppeurs de linterface : connaissance des besoins utilisateurs, souci dergonomie.
  • S paration claire entre les donn es du programme et linterface graphique affichant ces donn es.
  • Possibilit s de vues diff rentes d'un m me mod le

>jL'application peut montrer l' tat du mod le de diff rentes fa ons, avec diff rentes interfaces utilisateurs

![](data:image/png;base64...)