Π‘ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠ΅ UML
Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΠ½Π΄ΡΡΡΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ 90-Ρ
Π³ΠΎΠ΄ΠΎΠ² ΠΏΡΠΎΡΠ»ΠΎΠ³ΠΎ Π²Π΅ΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π°Π½Π°Π»ΠΈΡΠΈΠΊΠΈ Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡ ΠΊΠ°ΠΊ «Π²ΠΎΠΉΠ½Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²» ΠΈΠ»ΠΈ «Π²ΠΎΠΉΠ½Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΉ».
ΠΠ°ΠΆΠ΅ Π½Π° ΠΏΠΎΡΠΎΠ³Π΅ ΡΠ»ΠΈΡΠ½ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΡΡ
ΠΈ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π½ΡΡ
ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² — ΠΠΠ’ (Object Modeling Technique), ΠΌΠ΅ΡΠΎΠ΄Π° ΠΡΡΠ° ΠΈ OOSE (Object-Oriented Software Engineering) — Π½Π΅ Π±ΡΠ»ΠΈ ΡΠ΅ΡΠ΅Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅ΠΌΡΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄Π΅. ΠΠΎΡΠ°ΡΠΈΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π»ΠΈ «Π²ΠΈΠ΄Π΅Π½ΠΈΠ΅» ΡΠΈΡΡΠ΅ΠΌΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, Π½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΈ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠΎΠ½Π΅Ρ «Π²ΠΎΠΉΠ½Π΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²» ΠΏΠΎΠ»ΠΎΠΆΠΈΠ»ΠΎ ΠΏΡΠΈΠ½ΡΡΠΈΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ° ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Unified Modeling Language — UML, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Rational Software Corporation. UML — ΡΡΠΎ ΡΠ·ΡΠΊ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ [9].
UML ΡΠ½ΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΏΡΠΈΠ½ΡΡΡΠ΅ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ ΠΡΡΠ°, ΠΠΠ’ ΠΈ OOSE, ΡΠΎΡΠ΅ΡΠ°Π΅Ρ Π² ΡΠ΅Π±Π΅ Π²ΡΠ΅ Π»ΡΡΡΠ΅Π΅ ΠΈΠ· ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ², ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ
Π°Π²ΡΠΎΡΠ°ΠΌΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΈΡ
Π½ΠΎΠ²ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ.
ΠΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ UML Π±ΡΠ»ΠΈ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅Π»ΠΈ:
- β’ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π³ΠΎΡΠΎΠ²ΡΠΉ Π²ΡΡΠ°Π·ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΈΠΌΠΈ;
- β’ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ;
- β’ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΠΎΡΠ½ΠΎΠ²Ρ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΡΠ·ΡΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΡΠ½ΡΠΌ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ);
- β’ ΡΡΠΈΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΡΡ ΡΡΠ½ΠΊΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΡ
ΡΡΠ΅Π΄ΡΡΠ²;
- β’ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π»ΡΡΡΠΈΠΉ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΎΠΏΡΡ.
UML ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΠΏΠ΅ΡΠ½ΡΡ ΠΏΠΎΠΏΡΡΠΊΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠ° Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ — ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ Π½ΠΎΡΠ°ΡΠΈΠΈ ΠΈ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ.
ΠΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ° (0.8) ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π² 1995 Π³ΠΎΠ΄Ρ, Π° Π² 1997 Π³ΠΎΠ΄Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Object Management Group (OMG) ΠΎΠ΄ΠΎΠ±ΡΠΈΠ»Π° ΠΈ ΡΡΠ²Π΅ΡΠ΄ΠΈΠ»Π° UML Π²Π΅ΡΡΠΈΠΈ 1.1 Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ° ΡΠ·ΡΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π‘ ΡΠ΅Ρ
ΠΏΠΎΡ UML ΠΏΠΎΠ»ΡΡΠΈΠ» Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΠΈ ΡΠΈΡΠΎΠΊΠΎΠ΅ ΠΏΡΠΈΠ·Π½Π°Π½ΠΈΠ΅ Π² ΠΎΡΡΠ°ΡΠ»ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ
ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.
Π 2005 Π³ΠΎΠ΄Ρ Π±ΡΠ»Π° ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π° Π²Π΅ΡΡΠΈΡ UML 2.0.
Π―Π·ΡΠΊ UML Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, Ρ
ΠΎΡΡ ΠΏΠΎΠ·ΠΆΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Rational ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ»Π° ΠΏΡΠΎΡΠ΅ΡΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΡΠΎΠΌΡ ΡΠ·ΡΠΊΡ, ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Rational Unified Process (Π£Π½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ [ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ] Rational). ΠΠ°ΠΌΠ΅ΡΠΈΠΌ, Π²ΠΏΡΠΎΡΠ΅ΠΌ, ΡΡΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ ΠΊΠ°ΠΊ «ΡΠ°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ».