Académique Documents
Professionnel Documents
Culture Documents
et
CBSD: Component Based Software Development
Dfinitions
Un composant alors?
Notion de composant
What is a component ?
Composant
OT vs CBSE
Implantation
Interfaces
CBSD
Obstacles surmonter?
Contraintes
Pour le dveloppeur
Pour lintgrateur
10
Dveloppement de composants
Les fonctionnalits
Les proprits (non fonctionnelles/techniques)
performance,
Consommation des ressources,
Limitations et
Robutesse
11
12
13
14
Niveaux dutilisation
Enterprise Architecture
Technologie
des composants
System Architecture
Application Architecture
Macro Architecture
Technologie
Objet
Micro Architecture
object
15
Les composants
16
Modles de composants:
caractrisation du composant
17
Modle de composants:
Conteneur et structures daccueil
Conteneur
Structures daccueil
18
Modles de composants:
Conteneur et structure daccueil
19
COM
Java
CORBA
COM
component
JavaBeans
CORBA
Objects
Distribution
DCOM
RMI
CORBA IIOP
Services dentreprise
COM+
EJB/J2EE
CORBA
Services
Composant de base
20
Linfrastructure daccueil
Les middlewares
Contraintes de la distribution(1)
22
Contraintes de la distribution(2)
23
Solution
24
Le concept de middleware
Middleware
Cours de Gnie Logiciel
25
Middleware
Noeud1
Noeud2
Noeudn
26
27
Serveur de
traitements
Interface au
serveur de
traitement
Interface au
serveur de
donnes
Serveur de
donnes
28
Modle client/serveur
Client
Serveur
29
30
Fonction de lintergiciel
31
32
Intgration dapplications
Web Services
Coordination
Accs aux donnes, persistance
Support dapplications mobiles
Cours de Gnie Logiciel
33
Application A
Application B
rseau
Interprtation
sauvegarde
Middleware
Cours de Gnie Logiciel
sauvegarde
34
Application 3
Application 1
Application 2
Cours de Gnie Logiciel
35
Client
Proc A
Proc A
Proc B
Proc B
Fournisseur
Middleware /RPC
36
Fournisseur
Middleware
Cours de Gnie Logiciel
37
Schma de fonctionnement
Site Appelant (Client)
appel
Emballage
Envoi(req.,param.)
Client
Rception(req.,param.)
dballage
<attente>
Excution
Procdure
Messages
emballage
envoi(rsultats)
Rception(rsultats)
Deballage
Retour
Proxy
Biblio.
Communication
Biblio.
Communication
Squelette et
Dispatcher
serveur
Communication Physique
Communication Logique
38
L ARCHITECTURE DE
L OMG
CORBA
Application
Cliente
Rfrence
de lobjet
Code
dimplantation
Bus CORBA
Objet
Requte
CORBA
Activation
Etat de
lobjet
Interface
de lobjet
Application
Serveur
40
41
Interfaces
de domaines
Utilitaires communs
Tlcoms
Spcifiques et
non standardiss
Sant
IHM
Finance
Administration
Data Warehouse
Workflow
Nommage
Persistance
Interrogations
Externalisation
Evnements
Transactions
Relations
Cycle de vie
Proprits
Collections
Changements
Concurrence
Scurit
Temps
Vendeur
Licences
Services dobjets
communs
42
43
44
SII
Fournisseur
DII
SSI
DSI
Adaptateur dobjets
Interface Bus
Interface Bus
ORB
ORB
45
46
lments dimplantation
Ces diffrents blocs sont dcrits dans le langage IDL, ce qui les
rend accessibles au travers du bus. Cela permet dhomogniser
les diffrentes implantations possibles de la norme.
Il est possible de construire un bus CORBA :
A lintrieur dun seul processus utilisation dIDL pour spcifier
entre processus dune mme machine systme dexploitation
objet (Spring)
entre processus de sites diffrents par exemple sur Internet avec
IIOP
par fdration du bus CORBA passerelles spcifiques ou
gnriques (DSI)
Les IOR pour IIOP doivent contenir :
ladresse IP de la machine Internet
un port pour se connecter au serveur
une cl -de format libre- pour dsigner lobjet dans le serveur
Cours de Gnie Logiciel
47
Interfaces de domaines
Spcifiques et
non standardiss
Tlcoms
Sant
Utilitaires communs
IHM
Finance
Administration
Data Warehouse
Workflow
Nommage
Persistance
Interrogations
Externalisation
Evnements
Transactions
Relations
Cycle de vie
Proprits
Collections
Changements
Concurrence
Scurit
Vendeur
Temps
Licences
Services dobjets
communs
48
Interfaces de domaines
Spcifiques et
non standardiss
Tlcoms
Sant
Utilitaires communs
IHM
Finance
Administration
Data Warehouse
Workflow
Nommage
Persistance
Interrogations
Externalisation
Evnements
Transactions
Relations
Cycle de vie
Proprits
Collections
Changements
Concurrence
Scurit
Vendeur
Temps
Licences
Services dobjets
communs
49
LOMG IDL
50
LOMG IDL
51
Types complexes
TypeCode
any
Types simples
Short
UShort
Long
Ulong
LongLong
ULongLong
Types dobjets
Dfinis par
lutilisateur
Enum
Struct
Union
Array
Sequence
Float
Double
LongDouble
Char
WChar
String
WString
Boolean
Octet
52
IDL : UN LANGAGE
FORTEMENT TYPE
Le format des types de base est dfini par la norme pour rgler
les problmes dhtrognit des donnes.
Nouveaut : les types de mtadonnes :
TypeCode : pour stocker la description dun type.
Any : pour stocker une valeur dun type et son TypeCode.
Interface PileGnrique {
readonly attribute any sommet;
void empiler (in any valeur);
...
ID
L
53
I D L : HERITAGE
Calendrier
CalendrierFerie
Calculatrice
Calendrier_Calculatrice
CalendrierFerie_Calculatrice
Cours de Gnie Logiciel
54
I D L : HERITAGE
55
Prcompilateur
IDL vers Java
Client C++
Serveur Java
Souches C++
Squelette Java
IIOP
ORB A
ORB B
56
Smantiques
pr/post conditions
graphes dobjets
...
57
LES COMPOSANTES DU
BUS CORBA
Les principales composantes ncessaires la mise en uvre dun bus
CORBA sont :
58
LINTERFACE O R B
Une rfrence vers un objet de type CORBA::ORB est retourn
linitialisation du bus.
Elle permet dobtenir ensuite les premiers objets utiles : les objets
notoires que sont par exemple le service de nommage et le
rfrentiel des interfaces.
ID
L
interface ORB {
typedef string ObjectId;
typedef sequence<ObjectId>ObjectIdList;
ObjectIdList list_initial_services O;
Pbject resolve_initial_references (in ObjectID identifier);
};
59
LINTERFACE O R B
ID
L
interface ORB {
string Object_to_string (in Object obj);
Object string_to_Object (in string str);
};
60
61
62
63
rsultat
any
valeur
Cours de Gnie Logiciel
TypeCode
64
65
66
67
client
serveur
IDL
DSI
DII
requte A
IDL
requte B
68
69
70
71
72
73
le producteur a linitiative,
le consommateur est notifi des dpts.
Mode Pull :
74
producteur
consommateur
Push
Pull
Canal dvnement
75
Client
4-End T
Serveur
3-register
ORB
1-Begin T
5-propagate
context
Transaction Service
Cours de Gnie Logiciel
76
serveur dauthentification
clients / rles / droits (et dlgation de droits)
Secure IIOP (utilisant Kerberos ou SSL)
77
78
la cration,
la copie,
le dplacement,
la destruction
79
80
81
Conclusion
rpartis,
htrognes,
ouverts,
volutifs.
82
Bibliographie
83