Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Rational Rose 2000 ΠΈ UML Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 13

Автор Π’Π΅Ρ€Ρ€ΠΈ ΠšΠ²Π°Ρ‚Ρ€Π°Π½ΠΈ

β–‘ сообщСния Π² Π²ΠΈΠ΄Π΅ тСкста ΠΈ стрСлки, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΊ поставщику.

Нотация языка UML для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², связСй ΠΈ сообщСний Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ взаимодСйствий ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° рис. 5.10.

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ создания Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ взаимодСйствий ΠΈΠ· Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Rational Rose:

1. Π”Π²Π°ΠΆΠ΄Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий Π² спискС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ.

2. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ мСню Browse => Create collaboration diagram (ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ => Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ взаимодСйствий) ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ F5.

3. Π Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ сообщСния Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π½ΡƒΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

Рис. 5.10. Нотация языка UML для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², связСй ΠΈ сообщСний Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ взаимодСйствий

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° взаимодСйствий ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° рис. 5.11.

МоТно сначала ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ взаимодСйствий. Π’ этом случаС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° ΠΈΠ· Π½Π΅Π΅. Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ

Рис. 5.11. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° взаимодСйствий

Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ мСню Browse => Create Sequence Diagram (ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ => Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий) ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ F5.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для просмотра сцСнария Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΌ порядкС: Ρ‡Ρ‚ΠΎ происходит сначала, Ρ‡Ρ‚ΠΎ происходит Π·Π°Ρ‚Π΅ΠΌ. Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΠ½ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ Π½Π° стадии Π°Π½Π°Π»ΠΈΠ·Π°. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° взаимодСйствий прСдставляСт ΠΎΠ±Ρ‰ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ сцСнария, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ взаимодСйствия Π½Π° Π½Π΅ΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ связанными Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. Π’Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π° этапС проСктирования, ΠΊΠΎΠ³Π΄Π° планируСтся рСализация ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ.

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий для систСмы рСгистрации курсов

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ Π°Π½Π°Π»ΠΈΠ· сцСнария Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡƒΡ‡Π΅Π±Π½ΠΎΠ³ΠΎ курса (Add a Course Offering). Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° рис. 5.12.

Рис. 5.12. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий для сцСнария Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡƒΡ‡Π΅Π±Π½ΠΎΠ³ΠΎ курса

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ классов ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½Ρ‹ ΠΊ рСализациям ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ². Они содСрТат прСдставлСния классов, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ² (participating classes).

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ создания прСдставлСния ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… классов Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Rational Rose:

1. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π° Π² ΠΎΠΊΠ½Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

2. Π’ появившСмся контСкстно-зависимом мСню Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ New => Class Diagram (Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ => Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° классов).

3. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя Π½ΠΎΠ²ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹.

4. Π”Π²Π°ΠΆΠ΄Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ Π½ΠΎΠ²ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π² спискС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π΅.

5. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ класс Π² логичСском прСдставлСнии ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΡ‹ΡˆΠΈ.

6. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ помСститС Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π½ΡƒΠΆΠ½Ρ‹Π΅ классы.

Π£Ρ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ классы для ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π° Π²Ρ‹Π±ΠΎΡ€ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ΠΎΠ² для обучСния ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π½Π° рис. 5.13.

Рис. 5.13. Π‘Ρ…Π΅ΠΌΠ° классов, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π΅

РСзюмС

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ² прСдставляСт внСшний Π²ΠΈΠ΄ систСмы. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ² отобраТаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΡ‚ΠΎΠΊΠ° событий. Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для описания Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ β€” это экзСмпляр ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π°. Он прСдставляСт собой ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ ΠΏΠΎ ΠΏΠΎΡ‚ΠΎΠΊΡƒ событий для ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ β€” это сплСтСниС сцСнариСв. Они ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, классы ΠΈ взаимодСйствия ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для исполнСния Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΠΎΠ³ΠΎ дСйствия, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠΌ.

ΠŸΠΎΡ‚ΠΎΠΊ событий для ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ описываСтся словами, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ сцСнарии β€” Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ взаимосвязи. БущСствуСт Π΄Π²Π° Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ взаимосвязи β€” Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий (sequence diagrams) ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ взаимодСйствий (collaboration diagrams). КаТдая Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° β€” это графичСскоС прСдставлСниС сцСнария.

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ взаимодСйствиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², упорядочСнноС ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° взаимодСйствий β€” это Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ способ отобраТСния сцСнариСв. Π­Ρ‚ΠΎΡ‚ Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ взаимодСйствиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π²ΠΎΠΊΡ€ΡƒΠ³ самих ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΈ ΠΈΡ… связи Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ.

Π“Π»Π°Π²Π° 6. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ

ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ

БистСма состоит ΠΈΠ· большого количСства классов ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π•Π΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ обСспСчиваСтся взаимодСйствиСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². НапримСр, студСнт добавляСтся ΠΊ курсу, ΠΊΠΎΠ³Π΄Π° Π½Π° курс поступаСт сообщСниС Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ студСнта. Π’ этом случаС часто говорят, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ посылаСт сообщСниС Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. Π”Π²Π° Ρ‚ΠΈΠΏΠ° ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° этапС Π°Π½Π°Π»ΠΈΠ·Π°, β€” это ассоциация ΠΈ агрСгация.

АссоциативныС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ

Ассоциация (association) β€” это двунаправлСнная сСмантичСская связь ΠΌΠ΅ΠΆΠ΄Ρƒ классами. Π­Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΡ‚ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ…, опрСдСляСмый Π² структурном Π°Π½Π°Π»ΠΈΠ·Π΅ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, β€” Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π² ΠΎΠ±ΠΎΠΈΡ… направлСниях ассоциативной связи. НаличиС ассоциации ΠΌΠ΅ΠΆΠ΄Ρƒ классами Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ этих классов взаимосвязаны. НапримСр, ассоциативныС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ классами ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ (Course) ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ курсов прСподаватСля (ProfessorCourseManager) ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ класса ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ связаны с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ класса ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ курсов прСподаватСля. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² зависит ΠΎΡ‚ мощности ассоциативных ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ. Π’ языкС UML ассоциативныС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ Π»ΠΈΠ½ΠΈΠΈ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π΅ΠΉ связанныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, β€” см. рис. 6.1.

Рис. 6.1. Нотация языка UML для ассоциативного ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ создания ассоциативных ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Rational Rose:

1. ΠΠ° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ Association (Ассоциация). Если ΠΎΠ½Π° отсутствуСт, Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Customize (Настройка) Π² появившСмся контСкстно-зависимом мСню.

2. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· классов Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ классов.

3. ΠŸΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΡˆΡƒΡŽ линию ассоциативной связи Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ класс.

АссоциативноС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ классами ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 6.2.


Рис. 6.2. АссоциативноС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅

АгрСгационныС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ

АгрСгационноС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ β€” это ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° ассоциации ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ†Π΅Π»Ρ‹ΠΌ ΠΈ Π΅Π³ΠΎ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΈΠ»ΠΈ частями. АгрСгация извСстна ΠΊΠ°ΠΊ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° Β«Ρ‡Π°ΡΡ‚ΡŒ ΠΎΡ‚Β» ΠΈΠ»ΠΈ «содСрТит». Π’ языкС UML ΠΎΠ½Π° изобраТаСтся Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ассоциация, Π½ΠΎ с Ρ€ΠΎΠΌΠ±ΠΎΠΌ Π½Π° ΠΊΠΎΠ½Ρ†Π΅ Π»ΠΈΠ½ΠΈΠΈ связи, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠΌ класс-Π°Π³Ρ€Π΅Π³Π°Ρ‚ (Ρ†Π΅Π»ΠΎΠ΅), β€” см. рис 6.3.

Рис. 6.3. Нотация языка UML для Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, являСтся Π»ΠΈ ассоциативная связь Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ тСстовыми вопросами:

1. ΠœΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„Ρ€Π°Π·Ρƒ Β«Ρ‡Π°ΡΡ‚ΡŒ ΠΎΡ‚Β», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅?

2. ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ Π»ΠΈ автоматичСскоС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Ρ†Π΅Π»Ρ‹ΠΌ ΠΊ Π΅Π³ΠΎ частям (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π° (Course) Π²Π΅Π΄Π΅Ρ‚ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ всСх относящихся ΠΊ Π½Π΅ΠΌΡƒ ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… курсов (CourseOffering))?

3. Π‘ущСствуСт Π»ΠΈ выраТСнная асиммСтрия Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ класс ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ?

НапримСр, ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ (ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° 101) ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ нСсколько Ρ€Π°Π· Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ сСмСстра. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ курс Π»Π΅ΠΊΡ†ΠΈΠΉ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρƒ прСдставлСн ΠΊΠ°ΠΊ ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΉ курс (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° 101, Ρ€Π°Π·Π΄Π΅Π» 1 ΠΈΠ»ΠΈ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° 101, Ρ€Π°Π·Π΄Π΅Π» 2). ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ΠΎΠΌ ΠΈ ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΌ курсом ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ агрСгация β€” ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ содСрТит нСсколько ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… курсов.

Для создания Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Rational Rose:

1. ΠΠ° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ Aggregation (АгрСгация). Если ΠΎΠ½Π° отсутствуСт, Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈ Π² появившСмся контСкстном мСню Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Customize (Настройка) для добавлСния ΠΊΠ½ΠΎΠΏΠΊΠΈ.

2. ΠΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ классов Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ классу, Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰Π΅ΠΌΡƒ Π² качСствС Ρ†Π΅Π»ΠΎΠ³ΠΎ, ΠΈ ΠΏΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΡˆΡƒΡŽ линию Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ связи Π½Π° класс, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ.

АгрСгационноС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ классами ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 6.4.

Рис. 6.4. АгрСгационноС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅

Ассоциация ΠΈΠ»ΠΈ агрСгация

Если Π΄Π²Π° класса ТСстко связаны ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ΠΌ Β«Ρ†Π΅Π»ΠΎΠ΅-Ρ‡Π°ΡΡ‚ΡŒΒ» β€” это Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠ΅ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅. «ИспользованиС Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° являСтся условным Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ. Часто Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π΄ΠΎΠ»ΠΆΠ½Π° Π»ΠΈ ассоциация ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ агрСгация. Однако, Ссли Π²Ρ‹ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ рассуТдали, нСбольшоС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ассоциациСй Π½Π΅ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ практичСских ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΒ»[5].

ЯвляСтся Π»ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ассоциациСй ΠΈΠ»ΠΈ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠ΅ΠΉ, часто зависит ΠΎΡ‚ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области. Какой Ρ‚ΠΈΠΏ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ для модСлирования ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ шин? Если систСма ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для сСрвисного Ρ†Π΅Π½Ρ‚Ρ€Π°, ΠΈ СдинствСнная ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ рассматриваСтС ΡˆΠΈΠ½Ρ‹, β€” ΠΈΡ… ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊ обслуТиваСмой машинС, ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠ΅ΠΉ. Однако, Ссли систСма ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° шин, Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΡˆΠΈΠ½Ρ‹ нСзависимо ΠΎΡ‚ автомобиля, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ассоциативным.