Exam SOA 1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

Faculté des sciences de Bizerte AU : 2021/2022

Examen Final
Section : GLSI3 Date : 18/01/2022
Matière : SOA et WS Durée : 1h
Enseignante : Samya AMIRI AYARI Documents : Non Autorisés

Exercice N°1 : Choisissez la ou les bonnes réponses sans justification


1. L`orchestration des services permet de
a. Assurer la sécurité
b. Préserver le couplage faible
c. Assurer l`interopérabilité

2. Propriétés des services :


a. Découvrable manuellement
b. Réutilisable
c. Large granularité

3. L`ESB ?
a. est un moteur d`orchestration
b. ne permet pas d`éviter le couplage fort
c. permet une communication hétérogène et standardisée

4. Protocoles des web services


a. protocoles de description, de communication et de transport
b. Protocoles de définition et de communication
c. Protocole de publication et de communication

5. Dans le modèle en couche de la SOA, la couche intégration encode


a. Comprends les services techniques
b. Renseigne les types de Clients des services
c. Assure la coordination des services

Exercice N°2 : WSDL

L`annexe présente un exemple de fichier WSDL qui décrit un web service contenant 3 opérations. Analysez
ce fichier en répondants aux questions suivantes :

1. Déterminer le nom du Web service


2. Y a-t-il de nouveau type définis ? Si oui, le(s) quel(s) ?
3. Quelles sont les opérations implémentées par ce web service
4. Déterminer le protocole de communication et le protocole de transport
5. Donner l`URL du Web service

Exercice N°3 : SOA

Dans le domaine des assurances, le courtier joue le rôle intermédiaire entre les compagnies (qui offrent des
produits d`assurances) et les assurés ou les clients. En fait, il contacte les prospects et leur propose les offres
des compagnies d`assurance. Si un prospect valide son choix pour un produit donné, le courtier se charge de
toutes les opérations nécessaires pour finaliser le contrat : adhésion, souscription et signature du contrat.

1/6
Ainsi, un cabinet de courtage utilise un CRM (GRC en français), une application qui permet de rassembler
toutes les informations des prospects (futurs clients), des produits offerts par les compagnies et de faciliter le
processus de vente.

D`une part, les fournisseurs de fiches alimentent les bases du courtier avec des contacts à appeler pour leur
proposer des offres.

D`autre part, le courtier accède aux produits d`assurance (liste des produits et des garanties) pour faire des
propositions aux prospects et il doit être capable de transférer automatiquement en cas de vente, les contrats
réalisés sur les sites des compagnies ainsi que suivre le dossier du client.

1. Proposer une structure pour ce CRM d`assurances en le représentant avec un diagramme.


Commenter ce diagramme.
2. Préciser les quelles des fonctionnalités doivent être implémentées en tant que service.
3. Pour chaque service proposé donner le type.

***Good luck***

2/6
Annexe
4. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
5. <wsdl:definitions
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
6.
xmlns:tns="http://www.cleverbuilder.com/BookService/"
7. xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
8. xmlns:xsd="http://www.w3.org/2001/XMLSchema"
9. name="BookService"
10.
targetNamespace="http://www.cleverbuilder.com/BookService/">
11. <wsdl:documentation>Definition for a web service called
BookService,
12. which can be used to add or retrieve books from a collection.
13. </wsdl:documentation>
14.
15. <!-- -->
16. <wsdl:types>
17. <xsd:schema
targetNamespace="http://www.cleverbuilder.com/BookService/">
18. <xsd:element name="Book">
19. <xsd:complexType>
20. <xsd:sequence>
21. <xsd:element name="ID" type="xsd:string"
minOccurs="0"/>
22. <xsd:element name="Title" type="xsd:string"/>
23. <xsd:element name="Author" type="xsd:string"/>
24. </xsd:sequence>
25. </xsd:complexType>
26. </xsd:element>
27. <xsd:element name="Books">
28. <xsd:complexType>
29. <xsd:sequence>
30. <xsd:element ref="tns:Book" minOccurs="0"
maxOccurs="unbounded"/>
31. </xsd:sequence>
32. </xsd:complexType>
33. </xsd:element>
34.
35. <xsd:element name="GetBook">
36. <xsd:complexType>
37. <xsd:sequence>
38. <xsd:element name="ID" type="xsd:string"/>
39. </xsd:sequence>
40. </xsd:complexType>
41. </xsd:element>
42. <xsd:element name="GetBookResponse">
43. <xsd:complexType>
44. <xsd:sequence>
45. <xsd:element ref="tns:Book" minOccurs="0"
maxOccurs="1"/>
46. </xsd:sequence>
3/6
47. </xsd:complexType>
48. </xsd:element>
49.
50. <xsd:element name="AddBook">
51. <xsd:complexType>
52. <xsd:sequence>
53. <xsd:element ref="tns:Book" minOccurs="1"
maxOccurs="1"/>
54. </xsd:sequence>
55. </xsd:complexType>
56. </xsd:element>
57. <xsd:element name="AddBookResponse">
58. <xsd:complexType>
59. <xsd:sequence>
60. <xsd:element ref="tns:Book" minOccurs="0"
maxOccurs="1"/>
61. </xsd:sequence>
62. </xsd:complexType>
63. </xsd:element>
64. <xsd:element name="GetAllBooks">
65. <xsd:complexType/>
66. </xsd:element>
67. <xsd:element name="GetAllBooksResponse">
68. <xsd:complexType>
69. <xsd:sequence>
70. <xsd:element ref="tns:Book" minOccurs="0"
maxOccurs="unbounded"/>
71. </xsd:sequence>
72. </xsd:complexType>
73. </xsd:element>
74. </xsd:schema>
75. </wsdl:types>
76.
77.
78. <!-- -->
79.
80. <wsdl:message name="GetBookRequest">
81. <wsdl:part element="tns:GetBook" name="parameters"/>
82. </wsdl:message>
83. <wsdl:message name="GetBookResponse">
84. <wsdl:part element="tns:GetBookResponse" name="parameters"/>
85. </wsdl:message>
86. <wsdl:message name="AddBookRequest">
87. <wsdl:part name="parameters"
element="tns:AddBook"></wsdl:part>
88. </wsdl:message>
89. <wsdl:message name="AddBookResponse">
90. <wsdl:part name="parameters"
element="tns:AddBookResponse"></wsdl:part>
91. </wsdl:message>
92. <wsdl:message name="GetAllBooksRequest">
93. <wsdl:part name="parameters"
element="tns:GetAllBooks"></wsdl:part>
94. </wsdl:message>
95. <wsdl:message name="GetAllBooksResponse">
4/6
96. <wsdl:part name="parameters"
element="tns:GetAllBooksResponse"></wsdl:part>
97. </wsdl:message>
98.
99. <!-- -->
100. <wsdl:portType name="BookService">
101. <wsdl:operation name="GetBook">
102. <wsdl:input message="tns:GetBookRequest"/>
103. <wsdl:output message="tns:GetBookResponse"/>
104. </wsdl:operation>
105. <wsdl:operation name="AddBook">
106. <wsdl:input
message="tns:AddBookRequest"></wsdl:input>
107. <wsdl:output
message="tns:AddBookResponse"></wsdl:output>
108. </wsdl:operation>
109. <wsdl:operation name="GetAllBooks">
110. <wsdl:input
message="tns:GetAllBooksRequest"></wsdl:input>
111. <wsdl:output
message="tns:GetAllBooksResponse"></wsdl:output>
112. </wsdl:operation>
113. </wsdl:portType>
114.
115. <!-- -->
116. <wsdl:binding name="BookServiceSOAP"
type="tns:BookService">
117. <soap:binding style="document"
118.
transport="http://schemas.xmlsoap.org/soap/http"/>
119. <wsdl:operation name="GetBook">
120. <soap:operation
121.
soapAction="http://www.cleverbuilder.com/BookService/GetBook"/>
122. <wsdl:input>
123. <soap:body use="literal"/>
124. </wsdl:input>
125. <wsdl:output>
126. <soap:body use="literal"/>
127. </wsdl:output>
128. </wsdl:operation>
129. <wsdl:operation name="AddBook">
130. <soap:operation
131.
soapAction="http://www.cleverbuilder.com/BookService/AddBook"/>
132. <wsdl:input>
133. <soap:body use="literal"/>
134. </wsdl:input>
135. <wsdl:output>
136. <soap:body use="literal"/>
137. </wsdl:output>
138. </wsdl:operation>
139. <wsdl:operation name="GetAllBooks">
140. <soap:operation

5/6
141.
soapAction="http://www.cleverbuilder.com/BookService/GetAllBooks"/>
142. <wsdl:input>
143. <soap:body use="literal"/>
144. </wsdl:input>
145. <wsdl:output>
146. <soap:body use="literal"/>
147. </wsdl:output>
148. </wsdl:operation>
149. </wsdl:binding>
150.
151. <!-- -->
152. <wsdl:service name="BookService">
153. <wsdl:port binding="tns:BookServiceSOAP"
name="BookServiceSOAP">
154. <soap:address
location="http://www.example.org/BookService"/>
155. </wsdl:port>
156. </wsdl:service>
157. </wsdl:definitions>

6/6

Vous aimerez peut-être aussi