SlideShare une entreprise Scribd logo
Approches par composant Les composants
année Master R&T
ière
1
1
II) Les Composants
II.1) Introduction :
Les besoins croissants des utilisateurs de systèmes logiciels, l'évolution rapide du matériel;
l'explosion des réseaux informatique ont motivé l'émergence de nouvelles approches de
développement d'application à grande échelle comme celles basées sur le paradigme de
composants qui se rapproche du paradigme objet. Puisque tous deux ont en commun de
privilégier le développement d'un système, et ce depuis sa phase de spécification jusqu'à
l’implémentation. Bien qua chaque d'eux porte l'accent sur des aspects différents du
développement logiciel en termes de niveau d'abstraction, de granularité et de mécaniques
opératoires, il n'y a pas de frontière très nette les deux. En ce sens, il n'est pas étonnant de
retrouver des points communs tant au niveau des motivations, des techniques que des
méthodes d’ailleurs, les développeurs et concepteurs de systèmes à base de composants sont
souvent tentés d'utiliser les modèles à objet comme support de spécification, de conception et
d'implémentation.
Par exp: un composant peut être représenté par une classe.
Interface de composant représenté par une interface de classe.
Interaction entre d'appels de méthodes
Cependant, force est de constater que l'approche objet souffre d'une certain, nombre de
lacunes au regard de systèmes à base de composants.
la structure des application objet est peu lisible ( un ensemble de fichiers)
la plupart des mécanismes objet sont gérés manuellement (création des instances, gestions des
dépendances entre classes, appels explicitées de méthodes..etc)
Il y a peu ou pas d'outils pour déployer (installer) les exécutables sur les différents sites.
Les architectures objets proposent de solutions pour faciliter l'adaptation et l'assemblage
d'objet.
- En général; les modèles objets ne sont pas adaptés à la description de schémas de
coordination et de communication complexes.
- En fin; la recherche des relations d'interaction dans une architectures objet n'est pas une
tâches facile (surtout en présence de pointeurs et requiers forcement l'inspection de tout les
systèmes).
Selon le petit Robert, un composant est un élément qui entre dans la composition de quelque
chose et qui remplit une fonction particulière.
Approches par composant Les composants
année Master R&T
ière
1
2
Le terme composant existe dans le vocabulaire informatique depuis la naissance du génie
logiciel. Il a cependant d'abord désigné des fragments de code alors qu’aujourd'hui, il englobe
toute unité de réutilisation.
Exp: concernant les composants électroniques, il suffit de connaître leur principe de
fonctionnement et la façon d'outils communiquant avec leur environnement (tension d'entrées
de sortie) pour leur implémentation.
L'idée de circuit logiciel intégré conduit ci la notion d'éléments logiciels qui peuvent être
connectées ou déconnectés d'un circuit plus complexe, remplacés ou/ et configurés. Il s'agit
alors d'agencer des composants logiciels de natures très diverse pour construire une
application, on ne parlera plus de programmation d'application mais plutôt de composition
d'application. Donc des principes fondamentaux doivent être respectes: « acheter plutôt que
construire et réutiliser plutôt qu'acheter » pour construire rapidement des applications les
nouvelles technologies logicielles adoptent de plus en plus le concept " composant" comme
clé de voûte de la réutilisation. Parmi les technologies, nous pouvons citer Active X, OLE,
DCOM, .NET, EJB, CORBA, Elles permettent d'utiliser des composants et des objets à forte
granularité, distribués et complexe.
En effet, l'utilisation de l'approche " composants" dans le développement d'application révèle
rapidement des interrogations. Quelle est la définition d'un composant? Quelle est sa
granularité, sa portée? Comment distingues et rechercher les composants de manières
rigoureuse, les manipulations les assembler, les réutiliser, les installer dans des contextes
matériels et logiciels variant dans le temps. Comment les administrer les faire évoluer? Etc
II.2) Concept de composant:
II.2.1) Notions et définitions:
Il existe plusieurs définition du concept de composant on prend celle de Harris 1999 qui a
donnée également une définition bien acceptés dans la communauté "architecture logicielle".
Un composant est un morceau de logiciel assez petit pour que l'on puisse le créer et le
maintenir et assez grand pour que l'on puisse l'installer et en assurer le support. De plus il est
doté d'interface standards pour pouvoir inter opérer.
L'analyse de l'ensemble définitions du concept de composant permet de déduire les propriétés
suivantes, à savoir qu'un composant est:
 Auto-descriptif: capable de disposer d'un mécanisme d'introspection permettant de
connaître et de modifier dynamiquement ses caractéristiques.
Approches par composant Les composants
année Master R&T
ière
1
3
 Composable: considéré comme une unité de composition il est censé être connectable
avec d'autres composants.
 Configurable: il doit être paramétrable via ses propriétés configurables selon un
contexte d'exécution particulier.
 Réutilisable: il doit être une unité de réutilisation une étape d'adaptation sera sans
doute nécessaire selon le contexte d'exécution.
 Autonome: il peut être déployé (diffusé et installé) et exécuté indépendamment des
autres composants.
II.2.2) Modèle d'un composant:
Aujourd'hui, bien qu'il existe une diversité considérable dans les propositions modèles de
composants, tous partagent une buse conceptuelle similaire, les éléments principaux de cette
base sont les suivants:
 Les composants sont définis comme des unités de composition qui décrivent et/ou
assurent des fonctions spécifiques, possèdent interfaces de besoins et des interfaces de
services et un contexte particulier d'exécution.
 Les interaction ou connecteurs représentent les interactions entre composants. Les
formes simples d'interactions, comme les pipes, les appels de procédures, les
événements en sont des exemples.
 Les interfaces d'un composant sont des points de communication qui lui permettent
d'interagir avec son environnement, y compris avec d'autres composants.
 Les propriétés représentent les informations sémantiques des composants et leurs
interactions.
 Les contraintes contrat représentent les moyens permettant à un modèle d'architecture
de rester valide durant sa durée de vie et de prendre en compte l'évolution et le
remplacement des composants logiciels dans cette architecture.
 Une architecture est une spécification des composants d'un système et de leurs
interactions (un méta modèle approprié pour prédire le comportement d'un système
avant de le construire et pour guider son développement.
 La composition : assemblage permet de construire des applications complexes à partir
de composants simples.
Approches par composant Les composants
année Master R&T
ière
1
4
II.2.3) Composants composites:
Un composant peut être composé d'autre composant et on l'appelle " composant composites"
d'un autre coté les composants internes sont les composants inclus dans un composant
composite.
Les composants internes peuvent être assembles afin de remplir les services du composant qui
dispose de ses propres interfaces et donc ses propres points de connexion.
-La mise en œuvre de la composition peut se faire au moment de la complication, mais aussi
au moment de l'exécution. Les compositions les plus utilisées sont:
Composition structurelle: ce types de composition est guidé par les interfaces fourniers et les
interfaces requises des composants.
Composition comportementale: l'objectif de ce types de composition est d'avoir un
comportement globale d'un composite à partir d'un ensemble de comportements individuels
de ses composants.
Composition fonctionnelles: l'objectif de ce type de composition est d'avoir un vue
fonctionnelle globale d'une application en assemblant des vues fonctionnelles existantes.
II.2.4) La réutilisation d'un composant:
Le concept de base est simple: développer un composant de taille raisonnable et le réutiliser.
Ensuite étendre l'idée du " composant code" à celui des composants besoin, analyse,
conception et test.
Afin de favoriser la réutilisation de composants, le groupe de travail ALRC recommande pour
l'élaboration d'architectures logicielles à base de composants réutilisable de respecter les
principes suivants:
 rester indépendant des infrastructures
 concevoir les architectures avec les composants
 mettre remplace un processus de développement basé sur la réutilisation de
composants
 exploiter les nouvelles formes de collaboration: internet, logiciels libre…
 vendre les systèmes réutilisables et flexibles par la méta- modélisation

Contenu connexe

Similaire à 2-Composants.docx

Composants Adaptables au dessus d'OSGi
Composants Adaptables au dessus d'OSGiComposants Adaptables au dessus d'OSGi
Composants Adaptables au dessus d'OSGi
Madjid KETFI
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - Ensim
Laurent Broudoux
 
André MORASSUT - GMIN30F
André MORASSUT - GMIN30FAndré MORASSUT - GMIN30F
André MORASSUT - GMIN30F
ssuser2806ea
 
Architecture mvc
Architecture mvcArchitecture mvc
Architecture mvcMadridal
 
Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.
Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.
Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.
Mohammed TAMALI
 
Projet COM02.ppt
Projet COM02.pptProjet COM02.ppt
Projet COM02.pptPtidej Team
 
Exposé de SE Systemes distribués
Exposé de SE Systemes distribuésExposé de SE Systemes distribués
Exposé de SE Systemes distribués
Youssouf Saleh Gao
 
Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db first
Zineb ELGARRAI
 
Introduction au Génie Logiciel
Introduction au Génie LogicielIntroduction au Génie Logiciel
Introduction au Génie Logiciel
guest0032c8
 
Adaptation Dynamique Concepts et Expérimentations
Adaptation Dynamique Concepts et ExpérimentationsAdaptation Dynamique Concepts et Expérimentations
Adaptation Dynamique Concepts et Expérimentations
Madjid KETFI
 
Architectures n-tiers
Architectures n-tiersArchitectures n-tiers
Architectures n-tiers
Heithem Abbes
 
Présentation cours UML.pptx
Présentation  cours UML.pptxPrésentation  cours UML.pptx
Présentation cours UML.pptx
PrinceLankoand
 
cours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdv
cours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdvcours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdv
cours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdv
amine17157
 
Cours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyCours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategy
ENSET, Université Hassan II Casablanca
 
CoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-TotalCoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-TotalAhmed Mekkaoui
 
Soft fluent@md day2011
Soft fluent@md day2011Soft fluent@md day2011
Soft fluent@md day2011MDDAY11
 
Intro ihm
Intro ihmIntro ihm

Similaire à 2-Composants.docx (20)

Composants Adaptables au dessus d'OSGi
Composants Adaptables au dessus d'OSGiComposants Adaptables au dessus d'OSGi
Composants Adaptables au dessus d'OSGi
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - Ensim
 
André MORASSUT - GMIN30F
André MORASSUT - GMIN30FAndré MORASSUT - GMIN30F
André MORASSUT - GMIN30F
 
Architecture mvc
Architecture mvcArchitecture mvc
Architecture mvc
 
Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.
Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.
Chap10 : Outils de Simulation Cas des CAD 3D Concepts de base & fondements.
 
Projet COM02.ppt
Projet COM02.pptProjet COM02.ppt
Projet COM02.ppt
 
Exposé de SE Systemes distribués
Exposé de SE Systemes distribuésExposé de SE Systemes distribués
Exposé de SE Systemes distribués
 
Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db first
 
Introduction au Génie Logiciel
Introduction au Génie LogicielIntroduction au Génie Logiciel
Introduction au Génie Logiciel
 
Adaptation Dynamique Concepts et Expérimentations
Adaptation Dynamique Concepts et ExpérimentationsAdaptation Dynamique Concepts et Expérimentations
Adaptation Dynamique Concepts et Expérimentations
 
Architectures n-tiers
Architectures n-tiersArchitectures n-tiers
Architectures n-tiers
 
LMO02.ppt
LMO02.pptLMO02.ppt
LMO02.ppt
 
Présentation cours UML.pptx
Présentation  cours UML.pptxPrésentation  cours UML.pptx
Présentation cours UML.pptx
 
Debli technology 2
Debli technology 2Debli technology 2
Debli technology 2
 
cours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdv
cours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdvcours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdv
cours soa partie 1 dfvfvfdbgfbvdfhbvhdfbvhdbvhjdv
 
Cours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyCours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategy
 
CoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-TotalCoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-Total
 
Pe
PePe
Pe
 
Soft fluent@md day2011
Soft fluent@md day2011Soft fluent@md day2011
Soft fluent@md day2011
 
Intro ihm
Intro ihmIntro ihm
Intro ihm
 

Plus de bochramiinfo

chapitre1.ppt
chapitre1.pptchapitre1.ppt
chapitre1.ppt
bochramiinfo
 
Chap2-Ethernet.pptx
Chap2-Ethernet.pptxChap2-Ethernet.pptx
Chap2-Ethernet.pptx
bochramiinfo
 
Chap4-VLAN.pptx
Chap4-VLAN.pptxChap4-VLAN.pptx
Chap4-VLAN.pptx
bochramiinfo
 
Module_Simulation Cours N° 2 Exemples de Simulation.pptx
Module_Simulation Cours N° 2 Exemples de Simulation.pptxModule_Simulation Cours N° 2 Exemples de Simulation.pptx
Module_Simulation Cours N° 2 Exemples de Simulation.pptx
bochramiinfo
 
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptxModule_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptx
bochramiinfo
 
Commutation-Ethernet.pptx
Commutation-Ethernet.pptxCommutation-Ethernet.pptx
Commutation-Ethernet.pptx
bochramiinfo
 

Plus de bochramiinfo (6)

chapitre1.ppt
chapitre1.pptchapitre1.ppt
chapitre1.ppt
 
Chap2-Ethernet.pptx
Chap2-Ethernet.pptxChap2-Ethernet.pptx
Chap2-Ethernet.pptx
 
Chap4-VLAN.pptx
Chap4-VLAN.pptxChap4-VLAN.pptx
Chap4-VLAN.pptx
 
Module_Simulation Cours N° 2 Exemples de Simulation.pptx
Module_Simulation Cours N° 2 Exemples de Simulation.pptxModule_Simulation Cours N° 2 Exemples de Simulation.pptx
Module_Simulation Cours N° 2 Exemples de Simulation.pptx
 
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptxModule_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptx
 
Commutation-Ethernet.pptx
Commutation-Ethernet.pptxCommutation-Ethernet.pptx
Commutation-Ethernet.pptx
 

Dernier

Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 
Iris van Herpen. pptx
Iris            van        Herpen.     pptxIris            van        Herpen.     pptx
Iris van Herpen. pptx
Txaruka
 
Procédure consignation Lock Out Tag Out.pptx
Procédure consignation  Lock Out Tag Out.pptxProcédure consignation  Lock Out Tag Out.pptx
Procédure consignation Lock Out Tag Out.pptx
caggoune66
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
BenotGeorges3
 
Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024
Friends of African Village Libraries
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Oscar Smith
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
cristionobedi
 
Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025
Billy DEYLORD
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
WarlockeTamagafk
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
M2i Formation
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 

Dernier (11)

Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
 
Iris van Herpen. pptx
Iris            van        Herpen.     pptxIris            van        Herpen.     pptx
Iris van Herpen. pptx
 
Procédure consignation Lock Out Tag Out.pptx
Procédure consignation  Lock Out Tag Out.pptxProcédure consignation  Lock Out Tag Out.pptx
Procédure consignation Lock Out Tag Out.pptx
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
 
Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
 
Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
 

2-Composants.docx

  • 1. Approches par composant Les composants année Master R&T ière 1 1 II) Les Composants II.1) Introduction : Les besoins croissants des utilisateurs de systèmes logiciels, l'évolution rapide du matériel; l'explosion des réseaux informatique ont motivé l'émergence de nouvelles approches de développement d'application à grande échelle comme celles basées sur le paradigme de composants qui se rapproche du paradigme objet. Puisque tous deux ont en commun de privilégier le développement d'un système, et ce depuis sa phase de spécification jusqu'à l’implémentation. Bien qua chaque d'eux porte l'accent sur des aspects différents du développement logiciel en termes de niveau d'abstraction, de granularité et de mécaniques opératoires, il n'y a pas de frontière très nette les deux. En ce sens, il n'est pas étonnant de retrouver des points communs tant au niveau des motivations, des techniques que des méthodes d’ailleurs, les développeurs et concepteurs de systèmes à base de composants sont souvent tentés d'utiliser les modèles à objet comme support de spécification, de conception et d'implémentation. Par exp: un composant peut être représenté par une classe. Interface de composant représenté par une interface de classe. Interaction entre d'appels de méthodes Cependant, force est de constater que l'approche objet souffre d'une certain, nombre de lacunes au regard de systèmes à base de composants. la structure des application objet est peu lisible ( un ensemble de fichiers) la plupart des mécanismes objet sont gérés manuellement (création des instances, gestions des dépendances entre classes, appels explicitées de méthodes..etc) Il y a peu ou pas d'outils pour déployer (installer) les exécutables sur les différents sites. Les architectures objets proposent de solutions pour faciliter l'adaptation et l'assemblage d'objet. - En général; les modèles objets ne sont pas adaptés à la description de schémas de coordination et de communication complexes. - En fin; la recherche des relations d'interaction dans une architectures objet n'est pas une tâches facile (surtout en présence de pointeurs et requiers forcement l'inspection de tout les systèmes). Selon le petit Robert, un composant est un élément qui entre dans la composition de quelque chose et qui remplit une fonction particulière.
  • 2. Approches par composant Les composants année Master R&T ière 1 2 Le terme composant existe dans le vocabulaire informatique depuis la naissance du génie logiciel. Il a cependant d'abord désigné des fragments de code alors qu’aujourd'hui, il englobe toute unité de réutilisation. Exp: concernant les composants électroniques, il suffit de connaître leur principe de fonctionnement et la façon d'outils communiquant avec leur environnement (tension d'entrées de sortie) pour leur implémentation. L'idée de circuit logiciel intégré conduit ci la notion d'éléments logiciels qui peuvent être connectées ou déconnectés d'un circuit plus complexe, remplacés ou/ et configurés. Il s'agit alors d'agencer des composants logiciels de natures très diverse pour construire une application, on ne parlera plus de programmation d'application mais plutôt de composition d'application. Donc des principes fondamentaux doivent être respectes: « acheter plutôt que construire et réutiliser plutôt qu'acheter » pour construire rapidement des applications les nouvelles technologies logicielles adoptent de plus en plus le concept " composant" comme clé de voûte de la réutilisation. Parmi les technologies, nous pouvons citer Active X, OLE, DCOM, .NET, EJB, CORBA, Elles permettent d'utiliser des composants et des objets à forte granularité, distribués et complexe. En effet, l'utilisation de l'approche " composants" dans le développement d'application révèle rapidement des interrogations. Quelle est la définition d'un composant? Quelle est sa granularité, sa portée? Comment distingues et rechercher les composants de manières rigoureuse, les manipulations les assembler, les réutiliser, les installer dans des contextes matériels et logiciels variant dans le temps. Comment les administrer les faire évoluer? Etc II.2) Concept de composant: II.2.1) Notions et définitions: Il existe plusieurs définition du concept de composant on prend celle de Harris 1999 qui a donnée également une définition bien acceptés dans la communauté "architecture logicielle". Un composant est un morceau de logiciel assez petit pour que l'on puisse le créer et le maintenir et assez grand pour que l'on puisse l'installer et en assurer le support. De plus il est doté d'interface standards pour pouvoir inter opérer. L'analyse de l'ensemble définitions du concept de composant permet de déduire les propriétés suivantes, à savoir qu'un composant est:  Auto-descriptif: capable de disposer d'un mécanisme d'introspection permettant de connaître et de modifier dynamiquement ses caractéristiques.
  • 3. Approches par composant Les composants année Master R&T ière 1 3  Composable: considéré comme une unité de composition il est censé être connectable avec d'autres composants.  Configurable: il doit être paramétrable via ses propriétés configurables selon un contexte d'exécution particulier.  Réutilisable: il doit être une unité de réutilisation une étape d'adaptation sera sans doute nécessaire selon le contexte d'exécution.  Autonome: il peut être déployé (diffusé et installé) et exécuté indépendamment des autres composants. II.2.2) Modèle d'un composant: Aujourd'hui, bien qu'il existe une diversité considérable dans les propositions modèles de composants, tous partagent une buse conceptuelle similaire, les éléments principaux de cette base sont les suivants:  Les composants sont définis comme des unités de composition qui décrivent et/ou assurent des fonctions spécifiques, possèdent interfaces de besoins et des interfaces de services et un contexte particulier d'exécution.  Les interaction ou connecteurs représentent les interactions entre composants. Les formes simples d'interactions, comme les pipes, les appels de procédures, les événements en sont des exemples.  Les interfaces d'un composant sont des points de communication qui lui permettent d'interagir avec son environnement, y compris avec d'autres composants.  Les propriétés représentent les informations sémantiques des composants et leurs interactions.  Les contraintes contrat représentent les moyens permettant à un modèle d'architecture de rester valide durant sa durée de vie et de prendre en compte l'évolution et le remplacement des composants logiciels dans cette architecture.  Une architecture est une spécification des composants d'un système et de leurs interactions (un méta modèle approprié pour prédire le comportement d'un système avant de le construire et pour guider son développement.  La composition : assemblage permet de construire des applications complexes à partir de composants simples.
  • 4. Approches par composant Les composants année Master R&T ière 1 4 II.2.3) Composants composites: Un composant peut être composé d'autre composant et on l'appelle " composant composites" d'un autre coté les composants internes sont les composants inclus dans un composant composite. Les composants internes peuvent être assembles afin de remplir les services du composant qui dispose de ses propres interfaces et donc ses propres points de connexion. -La mise en œuvre de la composition peut se faire au moment de la complication, mais aussi au moment de l'exécution. Les compositions les plus utilisées sont: Composition structurelle: ce types de composition est guidé par les interfaces fourniers et les interfaces requises des composants. Composition comportementale: l'objectif de ce types de composition est d'avoir un comportement globale d'un composite à partir d'un ensemble de comportements individuels de ses composants. Composition fonctionnelles: l'objectif de ce type de composition est d'avoir un vue fonctionnelle globale d'une application en assemblant des vues fonctionnelles existantes. II.2.4) La réutilisation d'un composant: Le concept de base est simple: développer un composant de taille raisonnable et le réutiliser. Ensuite étendre l'idée du " composant code" à celui des composants besoin, analyse, conception et test. Afin de favoriser la réutilisation de composants, le groupe de travail ALRC recommande pour l'élaboration d'architectures logicielles à base de composants réutilisable de respecter les principes suivants:  rester indépendant des infrastructures  concevoir les architectures avec les composants  mettre remplace un processus de développement basé sur la réutilisation de composants  exploiter les nouvelles formes de collaboration: internet, logiciels libre…  vendre les systèmes réutilisables et flexibles par la méta- modélisation