A Tool for Checking Conformance of UML Specification

7
World Academy of Science, Engineering and Technology 51 2011 270

Transcript of A Tool for Checking Conformance of UML Specification

����������� ��� �� ���� ����� �� �� �������� ��� ���� ����������� ��� ���������� ��� �������� ������ �� ��� ������ ��������� ��� �� � ��� ��� !"#$ %!����&"����#������ �� $������'���������� �������( �� ������ �� ���� ���� ��� ��� ������������������� �������� �������� ������ �� �� )���� �������� � ������������ ��� � ���� !"#$ ���������� ��� ���( ��������������� �� �������� �� �������&��� ��� ���* �� ����� �� "�����+������ ,������� %"+,' �������* �� ������� ������ ���� ����* ����������� ��� ����������� ������ ��� � ���)��( �� ���������)�������� ������ ��� ��� ��� ���� ���� ������� ������)� ��� ���� ����� ������� ���� ���� ��* ��� ���� �� ��� ���� ��)� ��� ��)� ��)�������* �� ���� �� ��� ������� ����������� ������� ���� ����-������� ��� ���� ������� �����- �� �� ���� �� ����������� ������� ��.��� �� ����� ��������( /����� �� ���������� ��� )�������� ��������� �� ������������ ������������ ������ ��� �� 0�� ������ �������� ��� ������ ���������� ��� ���(12345�6�7"����� ������� ��������*!"#$ ���������� ��� ���*8������&���*9�����������(:(:/#9;<=:9/<>#<?:9/�� ��������� ���� �� ������ ����* ����� �������� �������� ���� ������� ���� �� ���� @AB&@CB* ������� ������ �� ���� ����� ����� ������ ����� ����� ������*���� ��� ��� �� ���� �� �������� ��� ���� ���� ���������� � ��� ��.����� @DB( ?��� �� ����� ���������� ��� ������� "��(A* �� ��������)� ������ � ���� ����� ��������� �������������� �� �� ���� �� ������ ����( "����������* ���� ���������� ��� ��� ��* ������� ��� ������� ����������* �������������������� ��� � ���������� �� ��� ������� �-������� ����� ����* ���� �������� � �� ���� ��� ��)��� ��� @EB( �������� ���* �� �)�����* ����� C ����� ������� ���� ����� ��� FGD���� ��������* ��� ��� �� ��� ����� ��)��������� ����� ������������ �� ��� ������������G��������������� ����� ���)��"(H(!( ?��)�*"( "�������*=( =����* ,(=( I���� =�����*H($( I��-������I(#( =�������� ���� :?+$J? ���� �� +���������� * $����� ��� �� $����*#�� ;�(,��K��� L��������� �� ,������* CDA* CFMM&MNF* $����* $�������%�����O PDEAFFQDCMEMMR ��-O PDEAFFQDFAAESR �&�����O���T����(���(��R����T����(���(��R ����� ����T��(���(��R ���(�����( �����T��(���(��RU��T����(���(��R�V���(��)��T����( ��(��'(#($(=( ?����� �� ���� ,>9&$����� $����������* >��(*#�� #�������;��W�� I�����W��* >��� FM* CCNM&MMM CCNE&AQS I���* $�������%�&����O����(������T����( ��(��'(I(=(?( #������*,( "�X�� ��� I(>( ;������� ���� "+<$J"� ���� ��+���������� �� <��)������ �� $����* #�� ;�(#������ "����*CFMM&CYE $����*$������� %�&�����O �������T�����(��(��R������T��(��(��R�������T��(��(��'(

@YB( ���� ����� �� ���� ���� ��� �������������� ��� ��������%�� � ����* ��)��� ��� ������)��* ����� ������' ��� �� ��������� �� ��� �� ����� �������� �������� �������* ���� ����� ������ ��������� � ���������� ������� ������ �� ��������� �����( ���� ����� �� ��� ������� ��������� �� ����������� ������� �� ������ %!"#$' ��������� ��� �� ��� ����������O ������������� �� ������������ ������� �����-��� ����� �������� ������� ����� @NB($�������� ����� �� ��� ����� �� ���� ����� ����������������� �� ������������������� �����-* ���� ���� ������� ������ �� � ���� ���* ��� � ���)���� ��� ���� �� ������ ��������� ��� ��� ���( ��� ��� �� ������� ��)���� �� ��� �����*�-�������� ������ ��� �-������ ����� ��.����� ��� ��� ����� �(Z��� ��� ��������� ����� �� ��)� � ������� �����* ����������� ���� ���������� ��� �������� ���� @NB(=�� ������ ��� ���������� ��� ���* ��� �� ��� ��U����)������� �� ���� ������ ������ �� ���.�� �� ��� ������ ��� ��������� ��� ��� ����� ��.���������( $������������ ��� ���������� �� 0� ����� ���������� ����� ��� ����( �� ��� ����� �������� ��� ��� �� 0� ��� ������ ������� � ����� ���� ���������� �� ����������� )��( ?�������������* ������� ������ ��)��������� ������� �� �� ��� ��� ���* U������ �� ��� ��� ������(;�������� �� ��� ��� ����� �����* ��� ������ ����� ������ ��� �� ��� ����������� ��� �� ��������� ��� ���������������������� ����* �� ������� ������* ��)�� �� ���� ��� ��������� ������* ������ ����� ��������� ������� �������������� �� �������( �� �� ����� �� ��� ��������� ������������� ��� ����� ��� )���� ���� �� ��0�� ���� � ���� �� ����@QB(�� �����- �� ���������� ���������������� ����� ��� � ����������� ������� ���� �������* �������� ��� ��������( ������� ������� ����� �� ���� ����� ����������� ���� ����� �� ����� ��� ��� ����� ��������� ��� ��������� ��������� ���� �������� ��-���� @NB(+��-� ���������� �� ��� 0 �� ��� ��� �� � ���� �������������� ��� )���� ������(��� ��������� ���� ������� ���� ���� ���-� ���������� ���� ������ ������)����� ��������� �� �����0 ���� ���������� ���)���� ����� ������*��������������� ������ �� �������� ���� � ���� ��� ��� ������� ������������� ��� )���� ������ �����0 ����( /�)���������* ���-������ �������� ��� ���������� �������� �������� �������� �*���)���� ������� �������� � �� ��� ��� �� ���� �� ������������� ��.�����(

"(H(!( ?��)�* "("�������* =(=����* ,(=(I���� =�����* H($( I��-���* I(#( =�����* #($(=( ?�����*I(=(?( #������* ,( "�X�� ��� I(>( ;����"����� +������ ,������� %"+,',������ �� 8���������� 9����������� $�� ��� �� $��������� ;��?������$

World Academy of Science, Engineering and Technology 51 2011

270

������������ ������������������������������������������������������������� �������� � �������� ������������������������������� ������������������������!����������������������������������� ��������������������������"������������������������#�� �������������������������������������������� ������������� ������������� ��������� ����� ������ ��� ����������$��������������"��������������������������������� � ��� ������������������� �������� �����������������%���������������� ������������&���������������� ���� �������������" �����������' ��&��� ������(����)*+,-./01234567+893*+:;;1345+*<*:.=+3*+24;>4+)*+)+,?@.�A;@=.@67+BA:.4� ����� � �������������� ��� ���������������������������� �������� � ������ ��� ��������C������ �������������������� ������������������%��� ��� �������� ������ �� � ���������� �����' ���������%����������D�EF�������������������������������������������� ������ �����������������%����

�� � H�������������(�������������������������������� �� ��KLM�� ������� �� �������� ������ �������%�������������������DS��������������"������

���������������������������������������� �������� � �������� ����������������� ������������������������!���������������� �������������������������������������#�� �������������������������� ������������� ����� ����� ������ ��� ������������"������������������������������������������� �������� ������������������ ������������&�����������������" �����������' ��&��� ������(����*+:;;1345+*<*:.=+3*+24;>4+)*+)+,?@.��� � �������������� ��� ������������ �������� � ������ ��� �������������������� ��������������������� ������ �� � ���������� ���������D�EF���������������������������� ������ �����������������%����

�� �������������� ���������������������G�������������� H� ������� ��� ������������������������ ������������ ����� ������������� ������� ������ ������������������������������������������' �����������������&����� ��� ��� �������%������� �� � �������(��(���� ������������������� ��� �����������I�������������������� ���� ����������������� ����� ��������������� ��������������"���������������I������������ ����������� ��� ��������� ������������ �������������%����������������� ��� ���������� �� ���� ��������� ������������������������������������ ��������������� ������� ��������� � ���������������������������������������J���������� �������"������������������������������� ���� � ������������������ ���������������� ��� ���������������������� �������� � ��������� �� (�������������� (������KLM������ �(����������������������������������� ����� ��� �������������"����������������������KL�����������������������������(������� � ������� � ���� �����������������"������� ��� ������N���� ��� ������� �� � ������(��������������� ���������� ���������� ������ ������������������� ����� ��G������������ ��� �������������� ������ �� ������������� ��� ������� ���������%������������ ������� ����/<+)+,5@3??.@7+*<*:.=6�������������� ( �������� ������ ����� ������������ ������ ��� ��������� ����� � �����KOM�%�������������������������� ����(������ � ��������� (�������������������������� ������������� �������N� ��������"������ ������(������������������&���������' ����������� ��� ������� ����G�������������� ������� ����� ��� ������ ��� ��� �������������' ��������������������K�M�KPM�����Q�� ��� �������� �DG����������KOM�������� �������������D������������������ (�DQ�������������DP�����DE�����DF� �����������DR����������������� ��������DO� ����� ��S� ������ ��� ������� �� � ������������������ ����������������������������������������������G������������"���������� ��� ���������� �������������������������� ����T��������� ��������������"����������������K�UM������������������ ��������������������� ��� �������

������� ���������������������G������������������ ��� ������������������������ ����������� ������������� ������� ������ ���������������������������������' ��������������� ��� ��� �������%������� �� � �������(������������������ ��� �����������I����������� ���� ����������������� ����� ����������������������"���������������I��������������� ��� ��������� ������������ ����������������������� ��� ���������� �� ���� ���������������������������������������� �������������� ��������� � ������������������������������J���������� �������"������������������������ ���� � ��������������������������� ��� ������������������������ ��������� �� (�������������� (���������(����������������������������������� ����������������"����������������������KLM�������������������(������� � �������������������������"������� ��� ������N������� �� � ������(��������������� ���������� �� ������ ������������������� ����� ��G����� ��� �������������� ������ ������� ��� ������� ���������%������������ ����/<+)+,5@3??.@7+*<*:.=6�������������� (� ������ ����� ������������ ������ ��� ������� � �����KOM��������������������� ����(������ � ������������������������������ ������������N� ��������"������ ������(������������������' ����������� ��� ������� ����G������������� ����� ��� ������ ��� ��� ��������������������������K�M�KPM���� �������� �DG����������KOM�������� ��������������������� (�DQ�������������DP�����������������DR����������������� ��������DO� ��������� ��� ��� ������� �� � ������������������ �������������������������������������G������"���������� ��� ���������� ������� ���������� ����T��������� ���������������������K�UM������������������ ���������������� �������

World Academy of Science, Engineering and Technology 51 2011

271

���������� ������������������������ ������������� ������������������������������������������ ������������������������������������� � ��������� ��� ������������ ���� ��������������� �������� �������� ������������������������������������������������� ��������� ������ �������������� �������������� ������������ ������������������� ������� ������������������������������ ����� �������� ������������������������������ ������������������ ����������������� ���� ���� �������� ������������� ���������� ���������������������������������������� � ������� !"#$%&�$'&($))&�� �������� �� ���� �� ��� �������������������������������� ����������� ��� ��� ���� ����������� ���������������������������� ������� �������� ������������������������������ ������ ������������ ��������������������������������� ���� ����� �������������������*������ �$)+&�,�������� ������ �������������������������������������������� ��� ������������������ ��������������!-.!/�0!,�"1������������������������������������� ������������������� ������� ������� ��������� ����������������������� ����������������� ��������������������� ����$'&������������������� � ������������� �������������� ����� ����� ���������� ��� ����������"����������������������������������������������� ����������������������������������������2������� ��� ���������������������� �������������������������� ���� ����������� ������������ ������������������������� ���������������� ������ �������������� ������ ��� ������������������������� � 3(�� ������������������������������� ������������������������������� ������ ���� ������������ ����� ��������������� �������������������������������������� ����������� ��������������� ��� ������� �����������������������������������,!�4�,����!���� ���������� ����4��������#� ���04��0�������4����� ��������� ���#� ���������������� �������������������������������� ������5������ ���������������� ��������������� ����������������/ ������/������� ������#� ���0/�4��0�������/���� �������� ����4��������#� ������ ��������������������� ������ ��������� ������ �������� ���6��� �� �������� ��������6��� ��� ���������������������5���� ��������������������7������������ ��������������������� ������������ ������� ������������� ���������� ����8��������������� ��� ���������� ��������������������� �� ���������������������������������������� ��������������� ��� �������������������������������� ���������������������������������������9������� ��9� ��������� ��������� ���������� ����� ��������� �� ��������������������������������� ����� ������ �����4���������������������� (�������� ����� ������������������� �� �� ����� ������ ���������2� ����� ���

�� ����� ����� ����� ���%;�<<<<<<<<�����������������"�� �������� �����6��������� ����� � �� ��� ���� �� ��

�������������������� ������������� ������������������������ ���������������������� � ��������� ��� ����������������� �������� �������� ��������������������������������� ���������������� ���������������������������� ������� ���������� ����� �������� ��������������������������������� ����������������� ��������������� ���������� ����������������������� � ������� !"#$%&�$'&(���� �� ��� ������������������������������ ��� ��� ���� ����������� ������������� ������� �������� ������������� ������ ������������ ��������������� ���� ����� ���������� �$)+&�,�������� ������ ������������������������������ ��� ����������������!-.!/�0!,�"1��������������������� ��������������� ��������� ����������������������� ��������������������� ����$'&� ������������� �������������� ���� ��� ����������"������������������������������ ������������������������2������� ��� ������������������������� ���� ����������� ������������ ����������� ���������������� ����� ������ ��� �������������������������������������������������� ���������������� ������ ���� ����������������� ��������������������� ����������� ���������������������������������������������,!�4����� ����4��������#� ���04�������� ���#� ����������������������������������� ��������� ��������������� ����������������/ ���#� ���0/�4��0�������/���� �����#�������������� ������ ��������� ������ �������� ��������6��� ��� �������� ��������������������7��������������� ������������ ������� ������� ������ ��� ���������� �������������������������������������������������� ��� �����������������������������������������������������9������� ��9����� ���������� ����� ���������������������������� ����� ��������� (�������� ����� ������������� ������ ���������2� ����� ���

�� ������������ ����������������� ���������������������������������� ��������������� ������������������ ����������������� ������������������� �� ���������������������������� ��� �������� � ���� �������� ����������� ������ ������������ � ���� ���������������� ��������� ��� ����� ���������������� ����� ���� ������� �������������������� ����������������������� ������� �������������������������� ���%;������������������������������ ���������2< ����� ��� ��2�� ���� ����=�>()?�@�#A< 4������ ����2� � �� .� ��� " �� � ."����������)+;6)+;���6���A< ��� ��2�'�B�A< "��� ��2�C�+�D8��C�+E���� ����A< ���� �������������2�F;�+;�D8���G+>�D8A< / �������5��������� ����2();���G?>;�D8A< 4���� �2�H'�������184��)H�������A< ������ ���2��� ������������������ ������+%;6+%��6������������ ����������������������������������������������������������������� ����������������)������ �������������� ������� ���������������� �� � ������������������������ ��� ���� ��������������������������������� ���������������� ������� ��� ����������"�������������� ������ ��������������� ������������ ��� ������������� ������������������?4�� ������ ��������:#��������� �������� ����� ����������������������� ����?������������ ������������� ���� �� �������������������������������� ������� ����������� ��������������������� ������������ �5���� ���6�������������� ������������������������������"��� ����������� �� ������ ������������� ������ �������� ��������� ����������� �������������� ������ ����?����� �����(������������H;;I��� ����� ���2�� #��� ��� ���� ���������� ������� ��������� ����� �������� � ������������������ �������������������������������� ������������#��! ��� ���� �������������);;���������������������������� ��6���%����������������� ���+>������������������������ �� ����� �������������� �������������� ����%���� ����������� ������������ �������������� ��������� ��������� ��� ��� ����� �������������������������� ��������� ������������ ������������ �������������� ������������� ����������� ��������������������

������� ����������������� ������������������������� ��������������� ���������������������������� ������������������� �� ������ ������������� ��� �������� � ���� ������������� ������ ������������ � ���� ���������� ��������� ��� ����� ���������������� ���������� �������������������� ������������������ ������� �������������������������� ��:����������������������� ���������2� ��� ��2�� ���� ����=�>()?�@�#A��� ����2� � �� .� ��� " �� � ."#�������)+;6)+;���6���A�� ��2�'�B�A ��2�C�+�D8��C�+E���� ����A� �������������2�F;�+;�D8���G+>�D8A�����5��������� ����2();���G?>;�D8A� �2�H'�������184��)H�������A�� ���2��� ������������������ ������+%;6+%;���� �������������������������������������������������������� ����������������)������ ����� ������� ���������������� �� � ���������������� ��� ���� �������������������������������������������� ������� ��� ����������������� ������ ��������������� ������������ �������� ������������������?4�� ������ �:#��������� �������� ����� ��������������� ����?������������ ����������� �� �������������������������������� ������� ������������������������ ������������ �5���� ������� ������������������������������"��� ������ ������ ������������� ������ �������� ������������� �������������� ��������(������������H;;I��� ����� ���2�� #��� ��� �����#� ���������� ������� ���� ����� �������� � ������������������ ������������������������ ������������#��! �������������);;���������������������������� ����������������� ���+>������������������������ �������������� �������������� ����%������� ������������ �������������� ������������ ��� ��� ����� ������������������������������ ������������ ������������ �������������������� ����������� ����������������������

World Academy of Science, Engineering and Technology 51 2011

272

World Academy of Science, Engineering and Technology 51 2011

273

������������ ���������������������

������������ ����������������������

������������ ����������������������

World Academy of Science, Engineering and Technology 51 2011

274

������������ ����������������������World Academy of Science, Engineering and Technology 51 2011

275

������������ ���������������� ���������������������������������� !�"�"���#����"�"���������$�%���������&���'(��'�������������) �*�"����*��� ������+������,�����"�����-#�����!�����&������������������ �������.��������//0������1����0��� 234567897:;<=5>7?9897@AB>7CDAE7FAE>7GHIJ5B5KAJ5;47L;M7N3A65JD�#����������,��� ������ ���������#���,#��#�������������I;EOM7P;4JM;6Q>7R88S7TUJ=7R4JOM4AJ5;4A678;4LOMO4PO7;478;BI;<5JO"���������V����WX� ����YW��X������1��Z ?97897@AB>7:5A4=3A7@R>7A4[7234567897:;<=5>7G25B36JA4O;3<7HIJ5B5KAJ5;4��.��W$�����,������W! ����������������-#����������,8;BI;<5JO<Q>7\H@?S] 78HS\H2R_]2>7]a bc ?7deef>7g;697dh>������i j���k���#��l�� mnopqnrstu v w������������)������ �������� �����������0�%���!�"�x)�y�z����W��$��//���0 X�{#��V��#�����#�|#�����������,����!�V� ����"�����������,�����#������ �� �����������W������� ����������, ������������� ������+����&�ix���Zy/i}�����1 &�&�!�����~�������!�~���~��G� ����'��������#������������������������k��#�%��,�.�������Q�X��������"��#�����"���������������������������/������Y����0� �i1�}i1Y��Y !�"�"���#����"�"���������X�"�V�������&���'(��'�Gc4A6D<5<7;L7\36JM3<5;47\M;PO<<54�7;L78;BI;<5JO<7;L7b4<AJ3MAJO[\;6DO<JOM7O<547�5J=7�6A<<75�OM<Q>7\;6DBOM78;BI;<5JO<>7:34O7T��U>�����1�������/ ��W@97@53>7G�3BOM5PA67B;[O654�7;47I36JM3<5;47;L7P;BI;<5JO7R7�OABQ>��� ����������&+& ���!��������"�����������,����������w����i��"���������,��00�W0Y����� �97g5;6A>7_97\;MJE;;[>7\97b�M5P=>7A4[7�9797�O�M;;J>7G�3BOM5PA6;IJ5B5KAJ5;47;L7I36JM3<5;47654O7;IOMAJ54�7IAMABOJOM<Q>7f�J=7R4JOM4AJ5;4A6!&"�)!�� ������&��#�����&��!&��& ����//�� ��/0YW�/1i���� �972A4J5A�;>7�97@;B�OMA>7297bMN35KA>7297S97S;<P=5AM>7GS;[O6A[;�3B�M5P;7[O67\M;PO<;7[O7\36JM3<5�47O47SAJOM5A6O<78;BI3O<J;<Q>"���������������#�����0����Z�iY�WiY/��������� !�����|��X�)����������.��.���,�� ����'������ ��������������,-#�����������)������&�������-��#��(����Z/�#&����������������-#�!���������#���������w����������������//Z���� l��#�V�X��susp���o���up�mqt���nq�r���������W$���w������������)����������1���Z :97SAP�OM6O>7G545JO7O6OBO4J�����������������������������������, ������������� ���������#������#������ �� ������+�������,�� #�x�/YiWdeef�Q>78;BI3JAJ5;4A67SAJOM5A6<72P5O4PO>7g;63BO7fT>7�;�OB�OM���Z��Y1W��/�

World Academy of Science, Engineering and Technology 51 2011

276