А ®ўкґєв®ў
5.4. ЋЎкҐЄвл
ЋЎкҐЄв (object) пў«пҐвбп ®в¤Ґ«мл нЄ§ҐЇ«па® Є«бб, Є®в®ал© б®§¤Ґвбп нвЇҐ ўлЇ®«ҐЁп Їа®Јал. Ћ ЁҐҐв бў®Ґ б®Ўб⢥®Ґ Ёп Ё Є®ЄаҐвлҐ §зҐЁп ваЁЎгв®ў. ‚ бЁ«г бле ৫Ёзле ЇаЁзЁ ®¦Ґв ў®§ЁЄгвм Ґ®Ўе®¤Ё®бвм Ї®Є§вм ў§Ё®бўп§Ё Ґ в®«мЄ® Ґ¦¤г Є«ббЁ ®¤Ґ«Ё, ® Ё Ґ¦¤г ®в¤Ґ«млЁ ®ЎкҐЄвЁ, ५Ё§гойЁЁ нвЁ Є«ббл. ‚ ¤® б«гзҐ ®¦Ґв Ўлвм а§аЎ®в ¤ЁЈа ®ЎкҐЄв®ў, Є®в®ап, е®вп Ё Ґ пў«пҐвбп Є®ЁзҐбЄ®© ў Ґв®¤Ґ«Ё п§лЄ UML, ® ЁҐҐв б®бв®п⥫쮥 §зҐЁҐ.
„«п ЈадЁзҐбЄ®Ј® Ё§®Ўа¦ҐЁп ®ЎкҐЄв®ў ЁбЇ®«м§гҐвбп вЄ®© ¦Ґ бЁў®« Їап®гЈ®«мЁЄ, зв® Ё ¤«п Є«бб®ў. Ћв«ЁзЁп Їа®пў«повбп ЇаЁ гЄ§ЁЁ ЁҐ ®ЎкҐЄв®ў, Є®в®алҐ ў б«гзҐ ®ЎкҐЄв®ў ®Ўп§вҐ«м® Ї®¤зҐаЄЁўовбп (аЁб. 5.18). ЏаЁ нв® §ЇЁбм ЁҐЁ ®ЎкҐЄв ЇаҐ¤бвў«пҐв б®Ў®© бва®Єг ⥪бв "Ёп ®ЎкҐЄв:Ёп Є«бб", ৤Ґ«Ґго ¤ў®Ґв®зЁҐ (аЁб. 5.18 , Ў). €п ®ЎкҐЄв ®¦Ґв ®вбгвбвў®ўвм, ў нв® б«гзҐ ЇаҐ¤Ї®«ЈҐвбп, зв® ®ЎкҐЄв пў«пҐвбп ®Ёл, Ё ¤ў®Ґв®зЁҐ 㪧뢥⠤®Ґ ®Ўбв®п⥫мбвў® (аЁб. 5.18, Ј). Ћвбгвбвў®ўвм ®¦Ґв Ё Ёп Є«бб. ’®Ј¤ 㪧뢥вбп Їа®бв® Ёп ®ЎкҐЄв (аЁб. 5.18, ў). ЂваЁЎгвл ®ЎкҐЄв®ў ЇаЁЁов Є®ЄаҐвлҐ §зҐЁп.
ЏаЁ Ё§®Ўа¦ҐЁЁ ¤ЁЈал ®ЎкҐЄв®ў 㦮 Ї®Ёвм, зв® Є¦¤л© ®ЎкҐЄв ЇаҐ¤бвў«пҐв б®Ў®© нЄ§ҐЇ«па ᮮ⢥вбвўго饣® Є«бб, ®в®иҐЁп Ґ¦¤г ®ЎкҐЄвЁ ®ЇЁблўовбп б Ї®®ймо бўп§Ґ© (links), Є®в®алҐ пў«повбп нЄ§ҐЇ«пਠᮮ⢥вбвўгойЁе ®в®иҐЁ©. ЏаЁ нв® ўбҐ бўп§Ё Ё§®Ўа¦овбп бЇ«®илЁ «ЁЁпЁ. Ѓ®«ҐҐ Ї®¤а®Ў® ®б®ЎҐ®бвЁ ЇаҐ¤бвў«ҐЁп ®ЎкҐЄв®ў Ўг¤гв абб®ваҐл ў Ј«ўҐ 9 ЇаЁ Ё§г票Ё ¤ЁЈа Є®®ЇҐажЁЁ.
ђЁб. 5.18. ЏаЁҐа ЈадЁзҐбЄ®Ј® Ё§®Ўа¦ҐЁп ®ЎкҐЄв®ў ¤ЁЈае п§лЄ UML
„ЁЈа б®бв®пЁ©
„ЁЈа б®бв®пЁ© ®ЇЁб뢥⠯а®жҐбб Ё§ҐҐЁп б®бв®пЁ© в®«мЄ® ®¤®Ј® Є«бб, в®зҐҐ - ®¤®Ј® нЄ§ҐЇ«па ®ЇаҐ¤Ґ«Ґ®Ј® Є«бб, в. Ґ. ®¤Ґ«ЁагҐв ўбҐ ў®§®¦лҐ Ё§ҐҐЁп ў б®бв®пЁЁ Є®ЄаҐв®Ј® ®ЎкҐЄв. ЏаЁ нв® Ё§ҐҐЁҐ б®бв®пЁп ®ЎкҐЄв ®¦Ґв Ўлвм ўл§ў® ўҐиЁЁ ў®§¤Ґ©бвўЁпЁ б® бв®а®л ¤агЈЁе ®ЎкҐЄв®ў Ё«Ё Ё§ўҐ. €Ґ® ¤«п ®ЇЁбЁп ४樨 ®ЎкҐЄв Ї®¤®ЎлҐ ўҐиЁҐ ў®§¤Ґ©бвўЁп Ё ЁбЇ®«м§говбп ¤ЁЈал б®бв®пЁ©.
ѓ«ў®Ґ ЇаҐ¤§зҐЁҐ нв®© ¤ЁЈал - ®ЇЁбвм ў®§®¦лҐ Ї®б«Ґ¤®ўвҐ«м®бвЁ б®бв®пЁ© Ё ЇҐаҐе®¤®ў, Є®в®алҐ ў б®ў®ЄгЇ®бвЁ еаЄвҐаЁ§гов Ї®ўҐ¤ҐЁҐ н«ҐҐв ®¤Ґ«Ё ў вҐзҐЁҐ ҐЈ® ¦Ё§Ґ®Ј® жЁЄ«. „ЁЈа б®бв®пЁ© ЇаҐ¤бвў«пҐв ¤ЁЁзҐбЄ®Ґ Ї®ўҐ¤ҐЁҐ бгй®б⥩, ®б®ўҐ бЇҐжЁдЁЄжЁЁ Ёе ४樨 ў®бЇаЁпвЁҐ ҐЄ®в®але Є®ЄаҐвле б®ЎлвЁ©..
„ЁЈа б®бв®пЁ© Ї® бгйҐбвўг пў«пҐвбп Јад® бЇҐжЁ«м®Ј® ўЁ¤, Є®в®ал© ЇаҐ¤бвў«пҐв ҐЄ®в®ал© ўв®в. ‚ҐаиЁЁ нв®Ј® Јад пў«повбп б®бв®пЁп Ё ҐЄ®в®алҐ ¤агЈЁҐ вЁЇл н«ҐҐв®ў ўв®в (ЇбҐў¤®б®бв®пЁп), Є®в®алҐ Ё§®Ўа¦овбп ᮮ⢥вбвўгойЁЁ ЈадЁзҐбЄЁЁ бЁў®«Ё. „гЈЁ Јад б«г¦в ¤«п ®Ў®§зҐЁп ЇҐаҐе®¤®ў Ё§ б®бв®пЁп ў б®бв®пЁҐ. „ЁЈал б®бв®пЁ© ®Јгв Ўлвм ў«®¦Ґл ¤агЈ ў ¤агЈ, ®Ўа§гп ў«®¦ҐлҐ ¤ЁЈал Ў®«ҐҐ ¤Ґв«м®Ј® ЇаҐ¤бвў«ҐЁп ®в¤Ґ«мле н«ҐҐв®ў ®¤Ґ«Ё. „«п Ї®ЁЁп бҐвЁЄЁ Є®ЄаҐв®© ¤ЁЈал б®бв®пЁ© Ґ®Ўе®¤Ё® ЇаҐ¤бвў«пвм Ґ в®«мЄ® ®б®ЎҐ®бвЁ Ї®ўҐ¤ҐЁп ®¤Ґ«Ёа㥮© бгй®бвЁ, ® Ё §вм ®ЎйЁҐ ᢥ¤ҐЁп Ї® ⥮ਨ ўв®в®ў.
6.1. Ђўв®вл
Ђўв®в (state machine) ў п§лЄҐ UML ЇаҐ¤бвў«пҐв б®Ў®© ҐЄ®в®ал© д®а«Ё§ ¤«п ®¤Ґ«Ёа®ўЁп Ї®ўҐ¤ҐЁп н«ҐҐв®ў ®¤Ґ«Ё Ё бЁбвҐл ў 楫®. Ђўв®в ®ЇЁб뢥⠯®ўҐ¤ҐЁҐ ®в¤Ґ«м®Ј® ®ЎкҐЄв ў д®аҐ Ї®б«Ґ¤®ўвҐ«м®бвЁ б®бв®пЁ©, Є®в®алҐ ®еўвлўо⠢ᥠнвЇл ҐЈ® ¦Ё§Ґ®Ј® жЁЄ«, зЁп ®в ᮧ¤Ёп ®ЎкҐЄв Ё §ЄзЁўп ҐЈ® гЁз⮦ҐЁҐ. Љ¦¤п ¤ЁЈа б®бв®пЁ© ЇаҐ¤бвў«пҐв ҐЄ®в®ал© ўв®в.
Џа®бвҐ©иЁ ЇаЁҐа® ўЁ§г«м®Ј® ЇаҐ¤бвў«ҐЁп б®бв®пЁ© Ё ЇҐаҐе®¤®ў ®б®ўҐ д®а«Ё§ ўв®в®ў ®¦Ґв б«г¦Ёвм бЁвгжЁп б ЁбЇаў®бвмо вҐеЁзҐбЄ®Ј® гбва®©бвў, вЄ®Ј® ЄЄ Є®ЇмовҐа (аЁб. 6.1).
ђЁб. 6.1. Џа®б⥩訩 ЇаЁҐа ¤ЁЈал б®бв®пЁ© ¤«п вҐеЁзҐбЄ®Ј® гбва®©бвў вЁЇ Є®ЇмовҐа
‚ ®ЎйҐ б«гзҐ ўв®в ЇаҐ¤бвў«пҐв ¤ЁЁзҐбЄЁҐ бЇҐЄвл ®¤Ґ«Ёа㥮© бЁбвҐл ў ўЁ¤Ґ ®аЁҐвЁа®ў®Ј® Јад, ўҐаиЁл Є®в®а®Ј® ᮮ⢥вбвўгов б®бв®пЁп, ¤гЈЁ - ЇҐаҐе®¤. ЏаЁ нв® Ї®ўҐ¤ҐЁҐ ®¤Ґ«ЁагҐвбп ЄЄ Ї®б«Ґ¤®ўвҐ«м®Ґ ЇҐаҐҐйҐЁҐ Ї® Јадг б®бв®пЁ© ®в ўҐаиЁл Є ўҐаиЁҐ Ї® бўп§лўойЁ Ёе ¤гЈ б гзҐв® Ёе ®аЁҐвжЁЁ.
6.2. ‘®бв®пЁҐ
‚ п§лЄҐ UML Ї®¤ б®бв®пЁҐ Ї®ЁҐвбп ЎбваЄвл© ҐвЄ«бб, ЁбЇ®«м§гҐл© ¤«п ®¤Ґ«Ёа®ўЁп ®в¤Ґ«м®© бЁвгжЁЁ, ў вҐзҐЁҐ Є®в®а®© ЁҐҐв Ґбв® ўлЇ®«ҐЁҐ ҐЄ®в®а®Ј® гб«®ўЁп. ‘®бв®пЁҐ ®¦Ґв Ўлвм §¤® ў ўЁ¤Ґ Ў®а Є®ЄаҐвле §зҐЁ© ваЁЎгв®ў Є«бб Ё«Ё ®ЎкҐЄв, ЇаЁ нв® Ё§ҐҐЁҐ Ёе ®в¤Ґ«мле §зҐЁ© Ўг¤Ґв ®ва¦вм Ё§ҐҐЁҐ б®бв®пЁп ®¤Ґ«Ёа㥮Ј® Є«бб Ё«Ё ®ЎкҐЄв.
ђЁб. 6.2. ѓадЁзҐбЄ®Ґ Ё§®Ўа¦ҐЁҐ б®бв®пЁ© ¤ЁЈаҐ б®бв®пЁ©
‘®бв®пЁҐ ¤ЁЈаҐ Ё§®Ўа¦Ґвбп Їап®гЈ®«мЁЄ® б® бЄагЈ«ҐлЁ ўҐаиЁЁ (аЁб. 6.2).
€п б®бв®пЁп
€п б®бв®пЁп ЇаҐ¤бвў«пҐв б®Ў®© бва®Єг ⥪бв, Є®в®ап абЄа뢥в ᮤҐа¦вҐ«мл© блб« ¤®Ј® б®бв®пЁп. €п ўбҐЈ¤ §ЇЁб뢥вбп б §Ј«ў®© ЎгЄўл.
‘ЇЁб®Є ўгваҐЁе ¤Ґ©бвўЁ©
‘ЇЁб®Є ўгваҐЁе ¤Ґ©бвўЁ©
ќв ᥪжЁп ᮤҐа¦Ёв ЇҐаҐзҐм ўгваҐЁе ¤Ґ©бвўЁ© Ё«Ё ¤Ґп⥫м®б⥩, Є®в®алҐ ўлЇ®«повбп ў Їа®жҐбᥠ宦¤ҐЁп ®¤Ґ«Ёа㥮Ј® н«ҐҐв ў ¤® б®бв®пЁЁ. Љ¦¤®Ґ Ё§ ¤Ґ©бвўЁ© §ЇЁб뢥вбп ў ўЁ¤Ґ ®в¤Ґ«м®© бва®ЄЁ Ё ЁҐҐв б«Ґ¤гойЁ© д®ав:
<ҐвЄ-¤с©бвўЁп '/' ўлথЁҐ-¤Ґ©бвўЁп>
ЊҐвЄ ¤Ґ©бвўЁп 㪧뢥⠮Ўбв®п⥫мбвў Ё«Ё гб«®ўЁп, ЇаЁ Є®в®але Ўг¤Ґв ўлЇ®«пвмбп ¤Ґп⥫м®бвм, ®ЇаҐ¤Ґ«Ґп ўлথЁҐ ¤Ґ©бвўЁп. ЏаЁ нв® ўлথЁҐ ¤Ґ©бвўЁп ®¦Ґв ЁбЇ®«м§®ўвм «оЎлҐ ваЁЎгвл Ё бўп§Ё, Є®в®алҐ ЇаЁ¤«Ґ¦в ®Ў«бвЁ ЁҐ Ё«Ё Є®вҐЄбвг ®¤Ґ«Ёа㥮Ј® ®ЎкҐЄв. …б«Ё бЇЁб®Є ўлথЁ© ¤Ґ©бвўЁп Їгбв®©, ⮠৤Ґ«ЁвҐ«м ў ўЁ¤Ґ Є«®®© зҐавл '/' ®¦Ґв Ґ гЄ§лўвмбп.
ЏҐаҐзҐм Ґв®Є ¤Ґ©бвўЁп ЁҐҐв дЁЄбЁа®ўлҐ §зҐЁп ў п§лЄҐ UML, Є®в®алҐ Ґ ®Јгв Ўлвм ЁбЇ®«м§®ўл ў ЄзҐб⢥ ЁҐ б®ЎлвЁ©. ќвЁ §зҐЁп б«Ґ¤гойЁҐ:
- entry - н⠥⪠㪧뢥⠤Ґ©бвўЁҐ, бЇҐжЁдЁжЁа®ў®Ґ б«Ґ¤гойЁ § Ґ© ўлথЁҐ ¤Ґ©бвўЁп, Є®в®а®Ґ ўлЇ®«пҐвбп ў ®Ґв ўе®¤ ў ¤®Ґ б®бв®пЁҐ (ўе®¤®Ґ ¤Ґ©бвўЁҐ);
- exit - н⠥⪠㪧뢥⠤Ґ©бвўЁҐ, бЇҐжЁдЁжЁа®ў®Ґ б«Ґ¤гойЁ § Ґ© ўлথЁҐ ¤Ґ©бвўЁп, Є®в®а®Ґ ўлЇ®«пҐвбп ў ®Ґв ўл室 Ё§ ¤®Ј® б®бв®пЁп (ўл室®Ґ ¤Ґ©бвўЁҐ);
- do - нв ҐвЄ бЇҐжЁдЁжЁагҐв ўлЇ®«пойгобп ¤Ґп⥫м®бвм ("do activity"), Є®в®ап ўлЇ®«пҐвбп ў вҐзҐЁҐ ўбҐЈ® ўаҐҐЁ, Ї®Є ®ЎкҐЄв 室Ёвбп ў ¤® б®бв®пЁЁ, Ё«Ё ¤® вҐе Ї®а, Ї®Є Ґ §Є®зЁвбп ўлзЁб«ҐЁҐ, бЇҐжЁдЁжЁа®ў®Ґ б«Ґ¤гойЁ § Ґ© ўлথЁҐ ¤Ґ©бвўЁп.
‚ Ї®б«Ґ¤Ґ б«гзҐ ЇаЁ §ўҐа襨Ё б®ЎлвЁп ЈҐҐаЁагҐвбп ᮮ⢥вбвўгойЁ© १г«мвв;
- include - нв ҐвЄ ЁбЇ®«м§гҐвбп ¤«п ®ЎайҐЁп Є Ї®¤ўв®вг, ЇаЁ нв® б«Ґ¤го饥 § Ґ© ўлথЁҐ ¤Ґ©бвўЁп ᮤҐа¦Ёв Ёп нв®Ј® Ї®¤ўв®в.
‚® ўбҐе ®бв«мле б«гзпе ҐвЄ ¤Ґ©бвўЁп Ё¤ҐвЁдЁжЁагҐв б®ЎлвЁҐ, Є®в®а®Ґ §ЇгбЄҐв ᮮ⢥вбвўго饥 ўлথЁҐ ¤Ґ©бвўЁп. ќвЁ б®ЎлвЁп §лўовбп ўгв२Ё ЇҐаҐе®¤Ё Ё бҐвЁзҐбЄЁ нЄўЁў«Ґвл ЇҐаҐе®¤ ў б® нв® б®бв®пЁҐ, § ЁбЄ«о票Ґ в®© ®б®ЎҐ®бвЁ, зв® ўл室 Ё§ нв®Ј® б®бв®пЁп Ё«Ё Ї®ўв®ал© ўе®¤ ў ҐЈ® Ґ Їа®Ёб室Ёв. ќв® ®§зҐв, зв® ¤Ґ©бвўЁп ўе®¤ Ё ўл室 Ґ ўлЇ®«повбп.
‚ ЄзҐб⢥ ЇаЁҐа б®бв®пЁп абб®ваЁ бЁвгжЁо ўў®¤ Їа®«п Ї®«м§®ўвҐ«п ЇаЁ гвҐвЁдЁЄжЁЁ ўе®¤ ў ҐЄ®в®аго Їа®Јаго бЁбвҐг (аЁб. 6.3). ‚ нв® б«гзҐ бЇЁб®Є ўгваҐЁе ¤Ґ©бвўЁ© ў ¤® б®бв®пЁЁ Ґ Їгбв Ё ўЄ«озҐв 4 ®в¤Ґ«мле ¤Ґ©бвўЁп, ЇҐаўлҐ ¤ў Ё§ Є®в®але бв¤авлҐ Ё ®ЇЁбл ўлиҐ, ¤ў Ї®б«Ґ¤Ёе ®ЇаҐ¤Ґ«повбп бў®Ґ© бЇҐжЁдЁЄжЁҐ©.
ђЁб. 6.3. ЏаЁҐа б®бв®пЁп б ҐЇгбв®© ᥪ樥© ўгваҐЁе ¤Ґ©бвўЁ©
Ќз«м®Ґ б®бв®пЁҐ
Ќз«м®Ґ б®бв®пЁҐ ЇаҐ¤бвў«пҐв б®Ў®© збвл© б«гз© б®бв®пЁп, Є®в®а®Ґ Ґ ᮤҐа¦Ёв ЁЄЄЁе ўгваҐЁе ¤Ґ©бвўЁ© (ЇбҐў¤®б®бв®пЁп). ‚ нв® б®бв®пЁЁ 室Ёвбп ®ЎкҐЄв Ї® г®«зЁо ў з«мл© ®Ґв ўаҐҐЁ. Ћ® б«г¦Ёв ¤«п гЄ§Ёп ¤ЁЈаҐ б®бв®пЁ© ЈадЁзҐбЄ®© ®Ў«бвЁ, ®в Є®в®а®© зЁҐвбп Їа®жҐбб Ё§ҐҐЁп б®бв®пЁ©. ѓадЁзҐбЄЁ з«м®Ґ б®бв®пЁҐ ў п§лЄҐ UML ®Ў®§зҐвбп ў ўЁ¤Ґ §Єа襮Ј® Єаг¦Є (аЁб. 6.4, ), Ё§ Є®в®а®Ј® ®¦Ґв в®«мЄ® ўл室Ёвм бв५Є, ᮮ⢥вбвўгойп ЇҐаҐе®¤г.
ђЁб. 6.4. ѓадЁзҐбЄ®Ґ Ё§®Ўа¦ҐЁҐ з«м®Ј® Ё Є®Ґз®Ј® б®бв®пЁ© ¤ЁЈаҐ б®бв®пЁ©
.
Љ®Ґз®Ґ б®бв®пЁҐ
Љ®Ґз®Ґ (䨫쮥) б®бв®пЁҐ ЇаҐ¤бвў«пҐв б®Ў®© збвл© б«гз© б®бв®пЁп, Є®в®а®Ґ вЄ¦Ґ Ґ ᮤҐа¦Ёв ЁЄЄЁе ўгваҐЁе ¤Ґ©бвўЁ© (ЇбҐў¤®б®бв®пЁп). ‚ нв® б®бв®пЁЁ Ўг¤Ґв 室Ёвмбп ®ЎкҐЄв Ї® г®«зЁо Ї®б«Ґ §ўҐа襨п аЎ®вл ўв®в ў Є®Ґзл© ®Ґв ўаҐҐЁ. Ћ® б«г¦Ёв ¤«п гЄ§Ёп ¤ЁЈаҐ б®бв®пЁ© ЈадЁзҐбЄ®© ®Ў«бвЁ, ў Є®в®а®© §ўҐаиҐвбп Їа®жҐбб Ё§ҐҐЁп б®бв®пЁ© Ё«Ё ¦Ё§Ґл© жЁЄ« ¤®Ј® ®ЎкҐЄв. ѓадЁзҐбЄЁ Є®Ґз®Ґ б®бв®пЁҐ ў п§лЄҐ UML ®Ў®§зҐвбп ў ўЁ¤Ґ §Єа襮Ј® Єаг¦Є, Ї®ҐйҐ®Ј® ў ®Єа㦮бвм (аЁб. 6.4, Ў), ў Є®в®аго ®¦Ґв в®«мЄ® ўе®¤Ёвм бв५Є, ᮮ⢥вбвўгойп ЇҐаҐе®¤г.
6.3. ЏҐаҐе®¤
Џа®бв®© ЇҐаҐе®¤ (simple transition) ЇаҐ¤бвў«пҐв б®Ў®© ®в®иҐЁҐ Ґ¦¤г ¤ўгп Ї®б«Ґ¤®ўвҐ«млЁ б®бв®пЁпЁ, Є®в®а®Ґ 㪧뢥в дЄв бҐл ®¤®Ј® б®бв®пЁп ¤агЈЁ. ЏаҐЎлўЁҐ ®¤Ґ«Ёа㥮Ј® ®ЎкҐЄв ў ЇҐаў® б®бв®пЁЁ ®¦Ґв б®Їа®ў®¦¤вмбп ўлЇ®«ҐЁҐ ҐЄ®в®але ¤Ґ©бвўЁ©, ЇҐаҐе®¤ ў® ўв®а®Ґ б®бв®пЁҐ Ўг¤Ґв ў®§®¦Ґ Ї®б«Ґ §ўҐа襨п нвЁе ¤Ґ©бвўЁ©, вЄ¦Ґ Ї®б«Ґ 㤮ў«Ґвў®аҐЁп ҐЄ®в®але ¤®Ї®«ЁвҐ«мле гб«®ўЁ©. ‚ нв® б«гзҐ Ј®ў®апв, зв® ЇҐаҐе®¤ баЎв뢥в, €«Ё Їа®Ёб室Ёв баЎвлўЁҐ ЇҐаҐе®¤. „® баЎвлўЁп ЇҐаҐе®¤ ®ЎкҐЄв 室Ёвбп ў ЇаҐ¤л¤гйҐ ®в ҐЈ® б®бв®пЁЁ, §лўҐл Ёб室л б®бв®пЁҐ, Ё«Ё ў Ёбв®зЁЄҐ (Ґ Їгввм б з«мл б®бв®пЁҐ - нв® а§лҐ Ї®пвЁп), Ї®б«Ґ ҐЈ® баЎвлўЁп ®ЎкҐЄв 室Ёвбп ў Ї®б«Ґ¤гойҐ ®в ҐЈ® б®бв®пЁЁ (楫Ґў® б®бв®пЁЁ).
ЏҐаҐе®¤ ®бгйҐбвў«пҐвбп ЇаЁ бвгЇ«ҐЁЁ ҐЄ®в®а®Ј® б®ЎлвЁп: ®Є®зЁп ўлЇ®«ҐЁп ¤Ґп⥫м®бвЁ, Ї®«г票Ё ®ЎкҐЄв® б®®ЎйҐЁп Ё«Ё ЇаЁҐ® бЁЈ«. Ќ ЇҐаҐе®¤Ґ 㪧뢥вбп Ёп б®ЎлвЁп Ља®Ґ в®Ј®, ЇҐаҐе®¤Ґ ®Јгв гЄ§лўвмбп ¤Ґ©бвўЁп, Їа®Ё§ў®¤ЁлҐ ®ЎкҐЄв® ў ®вўҐв ўҐиЁҐ б®ЎлвЁп ЇаЁ ЇҐаҐе®¤Ґ Ё§ ®¤®Ј® б®бв®пЁп ў ¤агЈ®Ґ. ‘аЎвлўЁҐ ЇҐаҐе®¤ ®¦Ґв §ўЁбҐвм Ґ в®«мЄ® ®в бвгЇ«ҐЁп ҐЄ®в®а®Ј® б®ЎлвЁп, ® Ё ®в ўлЇ®«ҐЁп ®ЇаҐ¤Ґ«Ґ®Ј® гб«®ўЁп, §лўҐ®Ј® бв®а®¦Ґўл гб«®ўЁҐ. ЋЎкҐЄв ЇҐаҐ©¤Ґв Ё§ ®¤®Ј® б®бв®пЁп ў ¤агЈ®Ґ ў в® б«гзҐ, Ґб«Ё Їа®Ё§®и«® гЄ§®Ґ б®ЎлвЁҐ Ё бв®а®¦Ґў®Ґ гб«®ўЁҐ ЇаЁп«® §зҐЁҐ "ЁбвЁ".
‘®ЎлвЁҐ
‚ п§лЄҐ UML б®ЎлвЁп ЁЈаов а®«м бвЁг«®ў, Є®в®алҐ ЁЁжЁЁагов ЇҐаҐе®¤л Ё§ ®¤Ёе б®бв®пЁ© ў ¤агЈЁҐ. ‚ ЄзҐб⢥ б®ЎлвЁ© ®¦® аббваЁўвм бЁЈ«л, ўл§®ўл, ®Є®зЁҐ дЁЄбЁа®ўле Їа®Ґ¦гвЄ®ў ўаҐҐЁ Ё«Ё ®Ґвл ®Є®зЁп ўлЇ®«ҐЁп ®ЇаҐ¤Ґ«Ґле ¤Ґ©бвўЁ©. €п б®ЎлвЁп Ё¤ҐвЁдЁжЁагҐв Є¦¤л© ®в¤Ґ«мл© ЇҐаҐе®¤ ¤ЁЈаҐ б®бв®пЁ© Ё ®¦Ґв ᮤҐа¦вм бва®Єг ⥪бв, зЁойгобп б® бва®з®© ЎгЄўл.
‘в®а®¦Ґў®Ґ гб«®ўЁҐ
‘в®а®¦Ґў®Ґ гб«®ўЁҐ (guard condition), Ґб«Ё ®® Ґбвм, ўбҐЈ¤ §ЇЁб뢥вбп ў Їапле бЄ®ЎЄе Ї®б«Ґ б®ЎлвЁп-ваЁЈЈҐа Ё ЇаҐ¤бвў«пҐв б®Ў®© ҐЄ®в®а®Ґ Ўг«ҐўбЄ®Ґ ўлথЁҐ. ЌЇ®Ё, зв® Ўг«ҐўбЄ®Ґ ўлথЁҐ ¤®«¦® ЇаЁЁвм ®¤® Ёе ¤ўге ў§Ё® ЁбЄ«озойЁе §зҐЁ©: "ЁбвЁ" Ё«Ё "«®¦м". ‚ўҐ¤ҐЁҐ ¤«п ЇҐаҐе®¤ бв®а®¦Ґў®Ј® гб«®ўЁп Ї®§ў®«пҐв пў® бЇҐжЁдЁжЁа®ўвм бҐвЁЄг ҐЈ® баЎвлўЁп. …б«Ё бв®а®¦Ґў®Ґ гб«®ўЁҐ ЇаЁЁҐв §зҐЁҐ "ЁбвЁ", ⮠ᮮ⢥вбвўгойЁ© ЇҐаҐе®¤ ®¦Ґв баЎ®ввм, ў १г«мв⥠祣® ®ЎкҐЄв ЇҐаҐ©¤Ґв ў 楫Ґў®Ґ б®бв®пЁҐ. …б«Ё ¦Ґ бв®а®¦Ґў®Ґ гб«®ўЁҐ ЇаЁЁҐв §зҐЁҐ "«®¦м", в® ЇҐаҐе®¤ Ґ ®¦Ґв баЎ®ввм, Ё ЇаЁ ®вбгвбвўЁЁ ¤агЈЁе ЇҐаҐе®¤®ў ®ЎкҐЄв Ґ ®¦Ґв ЇҐаҐ©вЁ ў 楫Ґў®Ґ б®бв®пЁҐ Ї® нв®г ЇҐаҐе®¤г. Ћ¤Є® ўлзЁб«ҐЁҐ ЁбвЁ®бвЁ бв®а®¦Ґў®Ј® гб«®ўЁп Їа®Ёб室Ёв в®«мЄ® Ї®б«Ґ ў®§ЁЄ®ўҐЁп бб®жЁЁа®ў®Ј® б Ё б®ЎлвЁп, ЁЁжЁЁаго饣® ᮮ⢥вбвўгойЁ© ЇҐаҐе®¤.
ЏаЁҐа® б®ЎлвЁп-ваЁЈЈҐа ®¦Ґв б«г¦Ёвм а§алў вҐ«Ґд®®Ј® ᮥ¤ЁҐЁп б Їа®ў©¤Ґа® €вҐаҐв-гб«гЈ Ї®б«Ґ ®Є®зЁп §Јаг§ЄЁ н«ҐЄва®®© Ї®звл Є«ЁҐвбЄ®© Ї®зв®ў®© Їа®Ја®© (ЇаЁ 㤫Ґ® ¤®бвгЇҐ Є €вҐаҐвг). ‚ нв® б«гзҐ бв®а®¦Ґў®Ґ гб«®ўЁҐ Ґбвм Ґ зв® Ё®Ґ, ЄЄ ®вўҐв ў®Їа®б: "Џгбв «Ё Ї®зв®ўл© пйЁЄ Є«ЁҐв бҐаўҐаҐ Їа®ў©¤Ґа?". ‚ б«гзҐ Ї®«®¦ЁвҐ«м®Ј® ®вўҐв "ЁбвЁ", б«Ґ¤гҐв ®вЄ«озЁвм ᮥ¤ЁҐЁҐ б Їа®ў©¤Ґа®, зв® Ё ¤Ґ«Ґв ўв®вЁзҐбЄЁ Ї®зв®ўп Їа®Ја-Є«ЁҐв. ‚ б«гзҐ ®ваЁж⥫쮣® ®вўҐв "«®¦м", б«Ґ¤гҐв ®бвўвмбп ў б®бв®пЁЁ §Јаг§ЄЁ Ї®звл Ё Ґ а§алўвм ⥫Ґд®®Ґ ᮥ¤ЁҐЁҐ.
ѓадЁзҐбЄЁ даЈҐв «®ЈЁЄЁ ®¤Ґ«Ёа®ўЁп Ї®зв®ў®© Їа®Јал ®¦Ґв Ўлвм ЇаҐ¤бвў«Ґ ў ўЁ¤Ґ б«Ґ¤го饩 ¤ЁЈал б®бв®пЁ© (аЁб. 6.5).
ђЁб. 6.5. „ЁЈа б®бв®пЁ© ¤«п ®¤Ґ«Ёа®ўЁп Ї®зв®ў®© Їа®Јал-Є«ЁҐв
‚в®а®© ваЁЈЈҐал© ЇҐаҐе®¤ ¤ЁЈаҐ ЁЁжЁЁагҐв ўв®вЁзҐбЄЁ© а§алў вҐ«Ґд®®Ј® ᮥ¤ЁҐЁп б Їа®ў©¤Ґа® Ї®б«Ґ ®Є®зЁп §Јаг§ЄЁ Ї®звл Є®ЇмовҐа Ї®«м§®ўвҐ«п. ‚' нв® б«гзҐ б®ЎлвЁҐ-ваЁЈЈҐа "§Є®зЁвм §Јаг§Єг Ї®звл" Їа®Ёб室Ёв Ї®б«Ґ Їа®ўҐаЄЁ бв®а®¦Ґў®Ј® гб«®ўЁп "Ї®зв®ўл© пйЁЄ бҐаўҐаҐ Їгбв", Є®в®а®Ґ вЄ¦Ґ б«Ґ¤гҐв Ї®Ёвм ў д®аҐ ў®Їа®б. ЏаЁ Ї®«®¦ЁвҐ«м® ®вўҐвҐ нв®в ў®Їа®б (ўбп Ї®зв §Ја㦥 Ё«Ё ҐҐ Їа®бв® Ґв ў пйЁЄҐ) Ї®зв®ўп Їа®Ја ЇаҐЄайҐв §Јаг§Єг Ї®звл Ё ЇҐаҐе®¤Ёв ў б®бв®пЁҐ ЄвЁўЁ§жЁЁ. ‚ б«гзҐ ¦Ґ ®ваЁж⥫쮣® ®вўҐв §Јаг§Є Ї®звл Ўг¤Ґв Їа®¤®«¦Ґ.