UML - Doshishamikilab.doshisha.ac.jp/.../UML_semi/UML_semi.pdf · 2006. 5. 19. · UML(UML:Uni ed...
Transcript of UML - Doshishamikilab.doshisha.ac.jp/.../UML_semi/UML_semi.pdf · 2006. 5. 19. · UML(UML:Uni ed...
2006����������� ��� ������������� �����
�1 � UML ���
��� �!�" #%$'& (�)�*�+ ,�-.*�/�0 1�2�3�*.4�5 6�78�9�:�; #%<.= >�*�?�@ A�BC�D�E #
2006 F 5 G 19E
HJILKNM: OLPRQTSVUXW�YVZL[L\VQX]L[_^L`VaNbLc_dLW UML egfNhRiTjLkVlnm�oRprqVb_W�sRtTd
EclipseUML e�u�v�w�a x�v�d�y�z1 {}|�~��� F������������ 8��g�����g�������R�g�������g��������g�V��� *�� �R�g �¡V¢�£�¤R¥g¦V§�¨��L©�ª�«¬® �°¯.±.²'³´C�µ·¶ � �®� ©'¸V¹�º®¹ *V» «.�®� ��¯±�² «g¼�½���¾g¿�ÀRÁ�¥ Cgµ ¨��gÂ�� *�à �« Cgµ "«.Ä�Å'«�Æ´Ç'«�È.É'�°Ê.¼'¥�Ë·�_¸ �'» Å * C�µ " «.ÄÅ�Ì�É�«nÍ�Î�¥gÏÐ� »�Ñ ³ Å � �gÒ�ÓÕÔ �g¯�±�³nÖ�×Ñ � ��¸�Ø ��� Å�� * ÒÕÓ�Ô � ¢�£�ÙgÚ�ÛgÜ ± Å�Ý��UML(UML:Unified Modeling Language)
¥Eclipse
«Plugin
Å'Ý��EclipseUML
¥�Þ.¡ ��ß�à ¸2 UML
2.1 UML á�âUML
� �'���´����� 8'��¾�¿�À'Á�¥�ã.ä�Ô'��¦�§.¨��©'ª´«�¦´å ¯´± Å *næ Â'�®ç��´��è®é � ¡'¾�¿´À'Á´«ê.ë.ì´í ��î´¡'¥ * ç��°è'é.�ðïòñ( ó�ô'õ Û.ö.Á ) ÷ Ñ¡·�ùø´Å.¦.§´¨'� »®Ñ Å'Ý´�.¸ » «.�®��� �®�.�ú�ú�·�8'�.«°û'é´¥�ü´Ø Ñ ¨®� »®Ñ Å *gý.þ � ¾°¿.À'Á´« ê´ë
ÿ���� ��Í´Î.Å � * ¾°¿.À'Á C�µ ¥����.Ô®���'ª´� »®Ñ¥���®��¨®��©®ª.«�¢´£·Ù°Ú.Û ³ Å � �.¸ » «�¢´£·Ù°ÚÛ.¥�¨®��©®ª.�´� * ¾°¿.À'Á ³ ����'« ê� .×�� ¥ ��.�´�´�·� Ñ ¹ ��� é * �'�.�´�´�·� «�� ��ì ���.�´���� Ä�«�����¥���Í *���� ¨�� »'Ñ ³�Ö�× Å�Ý���¸2.2 UML ���������•
¦´§�� ³! �" Ůݴ�°©®ª!#%$ ³!&�' �!(®é´� »®Ñ ³Å � �• )���*�õ ¤�Å�Ý.��©�ª ��� ��Í�Î�Å � �• 1 + «�¾g¿VÀ�ÁV¥gã-,VÔ �/.10 º32_è�� »RÑ ³ Å� �• 4 Â�Ô���Ì�É�¹ù©�5 � *�6�7�8 ¾�9�Ú ³ Å � �•
C°µ "·Ñ;: 8�<�8 Ä´«�5 � *=6�7�8 ¾>9XÚ ÿ!? 2�º� � �•
ê�@ ¹ ©UML
¢�£�¤�¥�A'« C�µ � ÿ�B Þ�Å � �3 CED�FHG�IKJMLON
UML¥ û éú�ú�ú� � �ú�g�g� � 8 � ³°Öú× Å Ýú� . ��.�ú�ú�·� 8'�´� *-P�Q�R Í'¥�û®é�S'�!T'ºU2 è'é.�!VW � + ¡ � û®é *g� ��X´� ³�Y!Z «�[�\'¥�] �°��^ ½ ¹
�.�·� *`_ «�V W Ñ ��acbed 8®� « ì·�;f·� «�g´Å�h�i¥ Ñ � Ñ ¡ �ùû®é ¯ Å'Ý.�´¸kjUl°Å.Þ´¡m2 � �®� © ê´ën «gûÐé ¯ Å��-oqp�Û�ö�ÁÕ« R Í3r Ñ � � \�¹ � ¡�©³ *ts�u�v � � � Ñ�� \·¹ ©·� Ñ ÿ R Í'« �Uw ¯'³ � º2 � � � �.º�2 Å�Ý���¸3.1 xUy�z�{�|�� á�â�'�.�ú�´� � 8'��Å®� * ��}´¨'��£ 8�~ «���� Ñù*L��'���.¨'��a���b���� í ��î�¡�� ¥�l Ñ ª � ï �'�.�´��·� ÷ Ñ ¹ *L� �'¥!��g��'���®� »'Ñ ÅU��� ���´�úõ ¥ê�@ Å � �.¸`l�© * �'�.�´�ú�·� ¥.� � Ó��.Ô � ÿ «.�¨'� »®Ñ ¥!� W n Ñ ¡.¡ * � W n ¹ù© ÿ «´¥ � ö�¿ Ñ;�à ¸��'� *V» �'� s�u�v � ��� ���´�´õ C�µ Å����.Ô �û'é ¯ Å®Ý.�.¸ �'�.�ú�´�·� « 4 + «����'�´����� * í��î�¡ * ��� * õ�ô £�Ú�À���ÀU� ³ Ý���¸����� £ 8�~ � Ñ � * �����´����� « Y�Z «���� ø���q� ��� «��q��¥ * �q���
attribute��«��ÕÅÕ¦�§Õ¨��Õ¸
�¡ Ô���� *�¢ Í�Ô � �'��������� «������ ï s ��¶ ÷ï Ö ¶ ÷ 藍 ÷ ���n³ Ý � *�¥ «t�q�ÕÅÐ� Fig. 1«Õ�Ð�� 罹�¨ ÷ ï ; F.G E ÷ 睊�« ÷ ï ¡.Ö ÷ 溺��® ÷ �U��³Å�Ý���¸í ��î.¡¯�ªa���b��°� Ñ � *Là �'�.�´�´�·� � Y�Z «í ��î´¡'¥�] + »'Ñ Å'Ý.�´¸ ¢ Í.Ô � �'�.�N�´�·� « í��î.¡ Ñ ¹ ��±
Fig. 1«.�'�°� ï ¥ ÷ « �'�.�ú�´�·� Å� 者´¨ ÷ 荒 � ÷ 華�µ'� ÷ 襁'� ÷ 覆·� ÷ ����³ Ý´�.¸
Fig. 1��� Ñ í ��î�¡�«����
( ¸�¹ #�ºM» )
��� Ñ � * �'�.�´�´� � ��¼ ^ Å�½�¾���S * Fig. 2«�'���!¿�S�À.º.« �'�´�ú�ú�·� Ñ �!�'¥!] � � ¡'� »'Ñ
1
Å�Ý���¸
Fig. 2 ���.����������� «���� ( ¸t¹ #�ºM» )
õ�ô £'Ú�À�� À�� Ñ � *Là �'�.�´�ú�·� � * À.º.« ��.�ú�ú�·� º�2 º 2�¥����.Å � � º� � Ó��'¥!] � � ¡� »�Ñ Å�Ý���¸3.2 x�y�z�{�|��� ��������'�.�´�´�·� 8'��«���� Ñ ¹ � � *�� o�d.¤ n * a�bd 8'��� b°¾�Ú.Û *����.* ã���� �U� Å'Ý.�.¸ » �m2��� � � W «��/©�« ê�ë ¥ 6 2 � ¡-�-�ÕÅ ÿ�� » Å � �»'Ñ Å'Ý´�.¸ �¡�� Ñ ¹ � � * À�� ) «� �!#" ~ Ú´¥�$�#%°À�� ) « �!'¥&´�'� »®Ñ ³ �� � »'Ñ ³')( 2 ��.¸ ��*'� 2 * À�� ) Å.ã·�°«�a 8 � 8 ³�+®� � ê´ë ÅPtQ ¥ » � © Ñ ¹ � ÿ * À,� ) « � » ¯Õ±Ð³�- ��2 S *l°© Q). ¥ f �0/ é � ÿ � » ��1�2'¥3®é � ¡®ºU2 Å®Ý��¸� o!d.¤ n Ñ � *
Fig. 3�.Ý.�´�'��� �'�´�ú�ú��� �4 l��®��£ 8U~ ¥�T Q ºU205�6 ¹ *87 C'¶ � � ¡®���9ì a��>bc�ùº�2�«!g õ´� d´¿.Å � �´�'�°��¨®��:���g´ÅÝ.�.¸ » « B 0 � �'�´�´�´� � « ^ ½��'¥ ª *-P�Q «:´¬ -�;®�c�°³ T Q �<1�2 ¹°�®�ú� � �´¸>=�¼ �?®é�% *¨.Å'�!½�¾·¹ � ¡'� �'�.�N�´�·� � *-P�Q ê.ë´ì � »�@Í'¥�A�B'� 6 2 � ¡����.Å ÿ * T Q º�2�«�a>b;d 8'� ���¹ ��C�³�D���� ����º�¥ 6 ��� ¡�� %�¡�¡�«�Å�Ý��.¸
a�b;d 8'��� b ¾.Ú.Û Ñ � * �'�.�´�ú�·� ��� ¹ � 8E ¥�3®é.�F.Ó®«�Ü�G´Å'Ý´�.¸ » « Ñ ��ì ��f·�´¶ �®�H�I ì�J�K « »'Ñ ¥�a�bMd 8�� Ñ ¡��X¸
Fig. 3 ���.������� 8���«�:���g ( ¸�¹ #�ºM» )
���·Ñ � *Fig. 4
«.�®���.Ý´� �®�.�ú�ú�·� ³ _ « ��.�ú�ú� � «!���®¥�L � �NMPO �'� ¸�Q ���!�'« »'Ñ ÅÝ.�.¸ ��� ¶ �.© �'�´�´�´� � ¥�¿ 8���8'� ö�¿ *R���¹ © ���������·� ¥�S ��� ö�¿ Ñ ¡��X¸l�©�T�U'� �'�.�N�´�·� 8'�.« s �´� ���´Å'Ý.�´¸�VÙù¢U���W'Á � ã������ Ñ � * �#X ¦�¨'«�a�b;d 8'� ¥
Fig. 4��� «�Y�Z
( ¸�¹ #�ºM» )
[ � � ÿ\ w Ü®�.� � ��]�^'� a��cb�� ³ ��_ ¸ ¶ �'�»'Ñ Å®Ý.�.¸`=�¼'�?'é�% *Fig. 5
«.�'��� �)X �#a�Åÿ J�K ��¨'� ³ *�� ��X���Å K é ³�b ��«�Å�Ý���¸
Fig. 5ã�����« �¡��
( ¸t¹ #�ºM» )
3.3 xUy�z�{�|��� ���)c�d�®�ú�L�L� � 8®� Å » � ©�o%p´Û´öúÁ´�<e B Þ ¹ © � *f & ¹ ì ¨·� �ú� � ¡'�.«°Å *gý.þ º + s�u�v n ¨®���� ���´�úõ ¥��.Í * e�g·¹ * ��� ���´�´õ «°;�h�� / (��©'ª´��i���j'� � �.¸ » «.�®��� �®�.�ú�ú�·� 8®�.¥Þ.¡®� »®Ñ Å�k�l��'� / ��� «°¬ � am'�!� R Å � ������ � �.¸
2
4 UML �������������4.1 x�y�z�{�|��� ���� ������ UML
�'�.�.�.� � 8'��Å.Þ�¡m2ù�'� UML�
Table 1«.�
����ã�������©'��¸Table 1 UML
«���
¾°¿´À'Á´« ê� .×�� Ñù� «������!�®¥��´Ô®��¦´§´¨'�»'Ñ ³ Å � � � ö�¿®ñ * �'�.�N�´�·� Ä´« ì·� Ñ � ¥����� Å�¦�§�¨��.¾ 8�7 Ú�¿�ñ ����³ Ý���¸4.2 �� �!�"4.2.1 �� �!�"'á�â¢.£.¤ n Ñ � * �'�´�ú�ú�·� 8'�´� � ¡ � § æ�#�$ �ÝÕ� ¢ ¥ * ï £ 8�~n÷ Ñ ï í �nîÕ¡ ÷ Ñ ¡ � 2 + « êq ×�� Å´¢.£´¤ n ¹ � * 5´Ú�% *=8�~ / �°¦.§´¨'�´¸ ï £ 8~�÷ Ñ � * ¢.£.¤ n «�� W·Ñ � � ¢ «���� ì ��� ��� ¥¦.¨�#�$.Å'Ý.�´¸/l�© * ï í ��î.¡ ÷ Ñ � *g� « ¢ ³�&�'¨��(� ì * £ 8�~ ¥���Þ�¨���Ü�G�¥�¦�¨ ¸4.2.2 |�)*���+�,�-�.
Fig. 6«.¾�/ Ù � ºU2 � ö°¿'¥!g + w �.¸ Ü�0 Ñ ¹ ��1 5 «�É � Å'Ý���¸
•
¦�2 Ñ ��2�¥�¨�µ � � ' ¨���¸• �3�4 ¥�l Ñ ª.��¸•
¦52®� � ö ¿ * ô Ú°¿ ~ Ú ¿ * ��� ��� � � �´¨ �´¸•
��2�� � » � a���b�� ����� J ¨��.¸•
¾°¿´À'Á´���!�®«�6´¡ ÿ «´¥�7�8 ¹ � * a��cbc� «9 � � ��¦�2�¥�:�¹ * � ö�¿�¥ '�; ¨���¸
Fig. 6*
Fig. 7� � * 1 5 «´�'�°� � ö°¿®¥ » ¨'�´¸ï
A¶< ÷ = Member � ö�¿ï Ø ÷ = Book � ö�¿¾�¿�À�Á���Ó�>·¹�º � ¡�«�Å � ö�¿�����¹ � ¡�¸ï@?�A�S ô � ÷ = Site � ö�¿
4.3 |�)�*�B���+�,4.3.1 EclipseUML C�D���|�)*�B���+�,
EclipseUML¥ Þú¡ � � ö ¿®ñFEú¡ � ¡ �X¸ Eclipse
¥G���¹ *
Fig. 8«.����� ï ��H ô ¤ ÷ -
ï@I u ÷ -ï o�p
������� ÷ ¥J�K�¨���¸
Fig. 6¾/�Ù � ( ¸�¹ #Mº�» )
Fig. 7 � ö�¿�« » ( ¸t¹ #�ºM» )
Fig. 8o�p ������� « » ( ¸�¹ #�ºM» )
3
Fig. 9o�p ������� «J�K ( ¸t¹ #�ºM» )
Fig. 9� E ¨Ð�Ð��� * ï
Java ÷ -ïJava
oqp ������� ÷¥J�K�¹ � ï A�� ÷ ¥ � Ù�b � ¨'��¸ï o�p �N�N� � ¦ ÷ � Sample UML¥&�� ¹ � *
Fig.
10«������ *���� ¨���¸
Fig. 10o�p ������� ¦�«�&�� ( ¸�¹ #MºM» )
Fig. 11� E ¨Ð���n� * ï ��H ô ¤ ÷ -
ï I u ÷ -ï � «
_ ÷ ¥J�K�¨��.¸
Fig. 11� « _ «J�K
( ¸t¹ #�ºM» )
ïUML Diagram ÷ -
ïUML Class Diagram ÷ ¥ J K¹ � *
Fig. 12«������ * ï A�� ÷ ¥ � Ù�b � ¨���¸ï�������¤ ót8 ¥�&q��ln©Ð� J K ÷ Å Sample UMLÑ &���¨�� �
Fig. 13�X¸
Fig. 14«��'� � ä�� � � »�Ñ ¥ '�� ¨���¸
Fig. 15� E ¨��'��� * � 8 ¤�� 8 ��Ý.����£.Å C
Ñ��º���© ï
create a class ÷ " ~ Ú�¥�$�¨ ¸
Fig. 12 � � <�8 �ù¥J�K ( ¸�¹ #MºM» )
Fig. 13������¤ ó�8 «�&�� ( ¸�¹ #MºM» )
Fig. 14��H ô ¤�« '�� ( ¸�¹ #MºM» )
Fig. 15� 8 ¤�� 8 «J�K ( ¸�¹ #MºM» )
Fig. 16� E ¨������ * ¿ 7 b������ P ÅH� ö�b�Û�¹����� ¥J�K�¨���¸
ï ¦�¨ ÷ � MemberÑ &���¨'��¸
Fig. 17� E ¨'�'�� *%_ «�� � b � "Ub � ¿�¥����'�'¹ � ï ��� ÷ " ~ Ú¥ � Ù�b � ¨���¸
4
Fig. 16��� «J�K
( ¸t¹ #�ºM» )
Fig. 17 � ö�¿�¦�«�&�� ( ¸�¹ #�ºM» )
Fig. 18«.�'�°� * � ö�¿'ñ.¥ ó.� ¤ � Ù�b � ¨'� Ñ *
Fig. 19«/o p � À�� )M*�8 � � J ¨ � 5 8 � ³ ¸ §N¨ �N¸
Fig. 18 Member« � ö�¿'ñ ( ¸�¹ #�ºM» )
Fig. 195 8 � « ¸ § ( ¸t¹ #�ºM» )
� ¬'�ðï Book ÷�� ö°¿ Ñ ï Site ÷�� ö�¿ ÿ » ¹ *g��m2�¥ ó.� ¤ � Ù�b � ¨'�.¸ Fig. 20« ï
Book ÷V� ö�¿Ñ ïSite ÷®� ö�¿�«�o�p � ÀU� )�*�8 ��� J ¨'��5 8 �¥ ¸ § ¶ ����¸
Fig. 20 ��� ö�¿�ñ.« ¸ � ( ¸�¹ #MºM» )
4.3.2 |�)*���+�,Fig. 21
� E ¨Ð���n� * ï ��H ô ¤ ÷ -ï I u ÷ -
ï � ö¿ ÷ ¥J�K.¨���¸
Fig. 21 � ö�¿�« » ( ¸�¹ #�ºM» )
ï ¦q¨ ÷ � * AppÑ &-� ¹ �
App.java¥ » ¨���¸ï
public static void main(String[] args) ÷ « � � b � ">b� ¿���� � b � ¥�&.� � * ï ��� ÷ ¥ � Ù�b � ¨�� �Fig.
22�X¸
Fig. 22 App.java« »
( ¸�¹ #MºM» )
Fig. 23� E ¨������ * � b 7�8������ ¿�o�p 8 ö 8«
App.java¥�¿ 7 b������ P ��� ö�b�Û����Mp�b�o�¥��¡ * 5 8 � º�2 � ö�¿�ñ�¥ » ¨���¸
App.java� � ¡ � *
main � � Fig. 24«�o�p�Û�ö�Á¥� ��� é � *
Fig. 25«������ *� ½�¥����X¸
Book.javaÅ
Fig. 26«�o%púÛ´öúÁ´¥ � �� é´�ú¸
Fig.
27� E ¨������ *� ½�¥����X¸
App.java¥ C.� * ï æ � ÷ -
ïJava õ o�Ù 7�8 ¾U9�Ú ÷¥J�K�¨�� �
Fig. 28�X¸
5
Fig. 235 8 � º�2 � ö�¿�ñ.¥ » ( ¸�¹ #MºM» )
Fig. 24 App.java( ¸�¹ #MºM» )
Fig. 25 main � «� ��� é ( ¸�¹ #�ºM» )
Fig. 26 Book.java( ¸!¹ #MºM» )
Fig. 29« * 5�Ú�� 8 ¤ )�*�8 �1 5 «���� � ��� ³
¸ � ¶ ����¸� �� b ��� ö�¿�« ô Ú�¿ ~ Ú�¿ ³ » �¶ ��l�¹ ©����� � ö�¿�« ô Ú�¿ ~ Ú�¿ ³ » �¶ ��l�¹ ©��S ô � � ö�¿�« ô Ú�¿ ~ Ú�¿ ³ » �¶ ��l�¹ ©��
� �Book � ön¿�Å� � Ù�b � ¥ ��¡ * Fig. 30
«Õ���g�
Fig. 27 Book.java«� ��� é
( ¸t¹ #�ºM» )
Fig. 28 Java õ o�Ù 7�8 ¾�9�Ú�«�J�K ( ¸�¹ #�ºM» )
Fig. 295�Ú�� 8 ¤ )�*�8 ( ¸�¹ #MºM» )
ïview selector ÷ ¥J�K�¨��.¸Fig. 31
� E ¨ � � � * ïAttributes ÷�~ � «ï
name:String ÷ « � � b � "�b � ¿ � � � b � ¥ &����¸ïMethods ÷�~ � « ï
getName():String ÷ Ñ ï set-Name(String) ÷ « � � b � "�b � ¿ � � � b � ¥�&'�� ¸�lN© * ï
Signature ÷ « ï Display parameter type ÷Ñ ïDisplay parameter name ÷ * ï Display return type ÷« � � b � "Ub � ¿Ð� � � b � ¥8&��Ð�Õ¸ ï OK ÷ " ~ Ú¥ � Ù�b � ¨�� �
Fig. 32�X¸
» « æ �����¥Fig. 33
� E ¨ ¸
6
Fig. 30 view selector«J�K
( ¸�¹ #Mº�» )
Fig. 31 Attributes( ¸�¹ #MºM» )
Fig. 32 Methods( ¸�¹ #MºM» )
� ö�¿�ñ Ñ 5 8 � «�� J � Fig. 34«�É � Å�Ý���¸
Fig. 33 Book � ö�¿ ( ¸t¹ #�ºM» )
Fig. 34 � ö�¿�ñ Ñ 5 8 � «�� J ( ¸�¹ #MºM» )
4.4 ������� ��+�,Fig. 6
«L¾ / Ù � É � � a ��b�� ¥ » ¹ * Ø « ������ ¥�®ª´��o%p´Û´ö´Á´¥ » ¨®�´¸!l!S *App.java
« -; ¥�·�_¸to�p.Û´ö´Á.¥
Fig. 35«.�®�°� -�; ¥� � ©'¸
Fig. 35 App.java( ¸�¹ #MºM» )
» «qoqp�ÛÕöÕÁ��Õ� ��� *App.java
�Book.java
Å; 3 ¹ù©´Ø'«�¦�¨ Ñ � � � ô Ú°¿ ~ Ú�¿���¥�] �°�®���¡��.¸!A�� *
Book.java«�o�p.Û�ö.Á.¥� ��� é��.¸ -
; U�«�o�p.Û�ö�Á�¥Fig. 36
�������¸» « æ ������ * 1 5 «�É � Å�Ý���¸
7
Fig. 36 Book.java( ¸!¹ #MºM» )
� �1 � ç�����&�¹ ©����'«�¦�¨�� ì�¶ ¹ ¡ Java��G��
2000 � Å�¨2 � ç�����&�¹ ©����'«�¦�¨�� PHP �����G��
2500 � Å�¨3 � ç�����&�¹ ©����'«�¦�¨�� Linux
&���G��
1500 � Å�¨�� ¡ / ( � ¡.©����'« � � �6000 � � �'� l�¨
� �
�������
1) ����������� UML, �������� �!�"�#�$� 2003 %�&2) UML '�(�)�* , +�,-�� �.�/�0� 2005 %�&3) 13241323546 UML 738:9<;4= , >@?4A3B4�3 DC3E4F3G3 2006 %3&
8