A Leading UK University | University of Leicester · Model-based Development of Web Services WS on...
Transcript of A Leading UK University | University of Leicester · Model-based Development of Web Services WS on...
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 1
���������������� ����������������
�����������
������ ��� �������������������
����������������� ��������������������
��������� !��"���#$$%
� ����������������&'�������� ���(�����)
��) ������������������� ��������� �� ����� �� ��� � ������������� ��������������
� �������"����� ���"������* ��+� ������������ ,-
� ����������������
� �������� ��*��������������-
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 2
���������.�/�������
0�&��� ���"������
0�&��� ���"������
#& ���������
1& ��2"�������������
3& ���������
%& ���������������
�����������
Amazon.com:Online Shop
�����������
SparkassePB:Bank
�����������
myAgent:ShoppingAgent
�����������
Buecher.de:Online Shop
�
�����������
Bank24:Bank
�
� �
�
�"� ,
� ��(��� �����4�������+��5��� ���(����#36
� ��(�������������(�"�����5�� ������+��5���6
����� ��� ����������� �����
����������������"����������
������������"��
������� �������������� "����������
� ��������������� ����
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 3
��������'����������������"��*���-�������������
����������& ���������� ��������� ������� !��!����� ������������������������������������������"� ��������������������#����
�������
� �� �� ��
�������
� �� �� ���������
�� � � �� �
�������
�� � � �� �
�� � ���� �� �
�������
� � ���� ��� �
Publish
�������
� � ���� ��� �
�������
� � ���� ��� �
�������Bind andInteract
Query
�� � ���� �� � �� � � � � � � � �
� � �� �����������
� � �� �����������
WSDLWSDL
SOAP
UDDIUDDI
4������
� ����������& �� �����7��������(����8�/����(���
� ��!��������!�"!������"�����"�
� �����������"����&��������������(���9����������"����������������
� ���������� �!��
:���& ��������8�/������������������
� ���� �������� ���������������
� 4/�������
� ��������� ����������2"���������(���������
� ���������������� ����
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 4
Class Diagrams � XML Schema;)&�����,<
,;)&��� ��)=� � ����>?����?<
;)&�2"����<;)&�����������>? ��? �� �>?�&@�����?9<;)&�����������>?�������? �� �>?�&4���"��?
���'��"�>?$A ��)'��"�>?"���"����?9<;)&�����������>?��? �� �>?�&����"��:���?9<;)&�����������>?����5���"? �� �>?)&�����?9<;)&�����������>?����5�����? �� �>?)&�����?9<
;9)&�2"����<;9)&��� ��)=� �<;)&��� ��)=� � ����>?@�����?<
;)&�2"����<;)&�����������>?@�����5����?
�� �>?)&�����?9<;9)&�2"����<
;9)&��� ��)=� �<;9)&�����<
����
������
������������
����
������������
��������������
���������������� ����&.�/� ����������/���"���
� ���������� @��������� � 8�/������
� ����:����������� �����������(�������������
� 8�/=
� ������������ �������4"���������� @�� ������������ � ���/���.��:
� ����������4������ ��������������� � �4�/3��
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 5
Component Diagrams + Interfaces� WSDL
<portType name="ShopPortType"><operation name="placeOrder">
<input message="ns:placeOrderInput"/></operation>
</portType>
…
<message name="placeOrderInput"><part name="client" type="ns:Client"/><part name="product" type="ns:Product"/>
</message>
<<service>>
Online Shop
ShopInt
<<interface>>ShopInt
placeOrder(Client, Product)
���������������B:��������� �4�/3��
�������������������� ����������� ��!������"���� ���#
��������� ������ ��������������!������"���� ���#
������ ����������� ����������� ��!������"���� ���#
�������������
������
������� ��!������"�$�� ���#�����
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 6
@�����������=������������
@���������
@�� ������������
���������������
8�/������ ���/ �4�/3��
���:& ���"����������"������� ��������������* ������-���������������������)������� ��5�����&����4������050*8�/ ���/ �'�4-
:���"����& .�/ ������������/9�4�/3������� ��������������������������
���������������6
� �������� ���������"���������"��*������������-����� &99(((5"��� ��������5��9�9��������9��C��94�� ��9������9�'9����9����)5����
� ������������(�����"����/������� �5�5� ����(�����������������������������
� ��������������"��������
����� &99(((5�5��5��5"�9�������9�����9
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 7
�������� ����������������������������D�� �=������������
����!5�5��"��������5/������5����������������������������� :���5@���������������������#$$3 ��������
�����5@��������5�E������ ��������������� ����������������������������@����������D�� �=������������ :@D=7$3 ����
��������'����������������"��*���-�������������
����������& ���������� ��������� ������� !��!����� ������������������������������������������"� ��������������������#����
�������
� �� �� ��
�������
� �� �� ���������
�� � � �� �
�������
�� � � �� �
�� � ���� �� �
�������
� � ���� ��� �
Publish
�������
� � ���� ��� �
�������
� � ���� ��� �
�������Bind andInteract
Query
�� � ���� �� �
� � �� �����������
� � �� �����������
WSDLWSDL
SOAP
UDDIUDDI
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 8
���������������� �����������
�������������������#���� ������������"���"����� ����������������� �
� �����������������������������2"������� �������6
' ������������"��� @�� �������� ���������" ����(���"������ ���������������������2"����� �������6
��������� ��� �������� ����������"����������"�(�����) ����������2"����6
<<interface>>OnlineShopProvided
payment( a:AccountData, b:Bill): Acknowledgement…
<<interface>>OnlineShopRequired
payBill(a:AccountData, b:Bill)…
����=� ����������"��
������ �& ����� "������������������*��������-
' ������������"��&� F�������������&����������� ���$�����!��������������%���!� �����&�='���0GG%5
� ���5�:D��� ���
<<interface>>OnlineShopProvided
payment( a:AccountData, b:Bill): Acknowledgement…
<<interface>>OnlineShopRequired
payBill(a:AccountData, b:Bill)…
pays
Bill
total
status
provides
Bank
code
AccountDatanumberto
Client
name
Acknowledgementfor
from
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 9
��������&��������:���
�� ���� ������� ������ ���� ������� ����
Requestor
Provider
preR
preP
effectR
effectP
1. call 2. return
�������"�&�������@�������*����� HH-
� ��� ��������������>��������&��2"����� �������� �����) ���������� ������� �����������
:�"���������������(������������"��A ����I �����"(�����������5
J�" ������J'.�����"������5
� ��7 ����� ������������'(
:�) �����������(��������� ���" ��K ����A5
: ����������"������5
)!��*��2"�������
������+�!!'(
������� ���� �
� �"�����������������2"��������� ������������ ��� �������������� ����� ,
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 10
��%������&���
������������'����(
����)
������������'���� (
���*� ��
������������'����(
payBill(a, b)
������������'����(
������������'���� (
��%������&���
������������'����(
����)
���*� ��
�������
�+��
����
��)�%�)��+�� ������
���ack =
payment(a, b)
��%������&���
������������'����(
����)
������������'���� (
���*� ��
������������'����(
payBill(a, b)
������������'����(
������������'���� (
��%������&���
������������'����(
����)
���*� ��
�������
�+��
����
��)�%�)��+�� ������
���ack =
payment(a, b)
�������
�+��
����
(=) (DPB trans)
Model-based Development of Web Services WS on Spec. and Design Methodology, Bangalore, Jan 2005
Reiko Heckel, University of Leicester 11
Implem
entationlevel
Service RequestService Description
Model level
Ontology
:� �����������*4������ �-
DAML+OIL Rules
Matching(based on Jena)
AGG – TU Berlin(Attributed Graph Grammar System)UML Case Tool AGG
DAML+OILOntology typed over
DAML+OIL Rules
D��������&E����������������������@��������
� ��������� �� ��������/���"���
�������� ����E�����������L�����)� ��������M
���������� �4���5��8�//���"���
/�������� ���� ����������� , �������������������� �"���"����������5
�� ���������������
����