Файл: Бабич UML первое знакомство.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 05.12.2019

Просмотров: 6223

Скачиваний: 38

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Вы ‚о ‰ы

Ин к‡п су лfl циfl з‡ щи щ‡ ет ‚ну т ен нее ус т ой ст ‚о объ ек т‡ и е ‡ ли -
зу ет сfl пу тем о„ ‡ ни че ниfl ‰о сту п‡ к ‡т и бу т‡м и опе ‡ ци flм кл‡с -
с‡ из ‰у „их ч‡ с тей по „‡м мы.

Обоб ще ние поз ‚о лfl ет по ‚то но ис поль зо ‚‡ть уже су ще ст ‚у ю щие
е ше ниfl,  со з‰‡ ‚‡fl  но ‚ые  кл‡с сы  пу тем  н‡ сле ‰о ‚‡ ниfl  от  име ю -
щих сfl кл‡с со‚.

По ли мо физм поз ‚о лfl ет ‡ бо т‡ть с „уп пой ‡з но о‰ ных объ ек то‚
о‰и н‡ ко ‚ым об ‡ зом, не з‡ ‰у мы ‚‡ flсь о ‡з ли чи flх ‚ е ‡ ли з‡ ции.

Ин к‡п су лfl циfl, н‡ сле ‰о ‚‡ ние и по ли мо физм — ти ки т‡, н‡ ко -
то ых ‰е жит сfl ООП.

В  лю бой  си с те ме  меж ‰у  объ ек т‡ ми  су ще ст ‚у ют  от но ше ниfl  ‡з -
ных ти по‚.

71

Лекциfl 3

Д臄‡мм‡ кл‡ссо‚: купным пл‡ном

Рис. 3.17


background image

От но ше ние з‡ ‚и си мо с ти оз н‡ ч‡ ет, что е ‡ ли з‡ циfl о‰ но „о кл‡с с‡
з‡ ‚и сит от спе ци фи к‡ ции опе ‡ ций ‰у „о „о кл‡с с‡.

Ас со ци ‡ циfl  ‚ы ‡ ж‡ ет  от но ше ние  меж ‰у  не сколь ки ми  ‡‚ но -
п‡‚ ны ми  объ ек т‡ ми  и  мо жет  иметь  н‡ п‡‚ ле ние,  о ли  и  к‡т -
ность, ‡ т‡к же изо б ‡ ж‡ть сfl ‚ ‚и ‰е кл‡с с‡ ‡с со ци ‡ ции.

Ком по зи циfl и ‡„ е „‡ циfl ис поль зу ют сfl, ес ли меж ‰у объ ек т‡ ми су -
ще ст ‚у ют  от но ше ниfl  ти п‡  «ч‡сть-це лое»,  пи чем  ком по зи циfl
пе‰ по л‡ „‡ ет, что ч‡ с ти не мо „ут су ще ст ‚о ‚‡ть от ‰ель но от це ло „о.

Кон толь ные ‚о по сы

К‡ кие ти пин ци п‡ ле ж‡т ‚ ос но ‚е ООП?

Что т‡ кое ин те фейс? Н‡ к‡ ком из б‡ зо ‚ых пин ци по‚ ООП ос -
но ‚‡н ме х‡ низм ин те фей со‚?

Что т‡ кое n-‡ н‡fl ‡с со ци ‡ циfl?

В чем ‡з ни ц‡ ме栉󠇄 е „‡ ци ей и ком по зи ци ей?

Что т‡ кое кл‡сс ‡с со ци ‡ ции?

Спи сок ис поль зо ‚‡н ных ис точ ни ко‚

1.

М‡ те и ‡ лы ку с‡ «SE201: В‚е ‰е ние ‚ по „‡мм ную ин же не ию»,
‡з ‡ бо т‡н ные П. Цы то ‚и чем

1

.

2.

Г. Буч, А. Дже коб сон, Дж. Р‡м бо. UML: Ру ко ‚о‰ ст ‚о поль зо ‚‡ те лfl. –
http://alice.stup.ac.ru/~dvn/uproc/books/uml_user_guide/index.htm.

3.

Ф‡ у ле М., Скотт К. UML ‚ к‡т ком из ло же нии. Пи ме не ние
ст‡н ‰‡т но „о flзы к‡ объ ект но „о мо ‰е ли о ‚‡ ниfl. – М.: Ми, 1999.

4.

Г. Буч. Объ ект но-ои ен ти о ‚‡н ное по ек ти о ‚‡ ние с пи ме ‡ ми
пи ме не ниfl. – М.: Кон ко‰, 1992.

5.

OMG Unified Modeling Language Specifications. – Copyright © 2007,
Object Management Group. – http://www.omg.org/technology/docu-
ments/formal/uml.htm.

6.

Zicom Mentor: Visual Dictionary UML 2.0. – Copyright © 2003-2004
Zicom Systems Pty. Limited. – http://zicomsystems.com/.

Кус

72

UML: Пе‚ое зн‡комст‚о


background image

Лек циfl 4. Ди ‡ „‡м м‡ ‡к ти‚ но с тей: куп ным пл‡ ном

Ди ‡ „‡м м‡ ‡к ти‚ но с тей (или, к‡к ч‡ с то „о ‚о flт, ‰и ‡ „‡м м‡ ‰е fl тель -

но с ти) — ‰и ‡ „‡м м‡ UML, ‚ы „лfl ‰fl щ‡fl н‡ и бо лее по стой, по сколь ку н‡ -
по ми н‡ ет пи ‚ыч ную ‚сем блок-схе му. Н‡ с‡ мом же ‰е ле ‰и ‡ „‡м м‡ ‡к -
ти‚ но с ти — это не что боль шее, чем блок-схе м‡, хо тfl це ли у них по хо жи:
обе они ото б ‡ ж‡ ют не кий 

‡л „о итм

. Мы уже ‚сте ч‡ лись с т‡ ки ми ‰и ‡ -

„‡м м‡ ми ‚ лек ции «Ви ‰ы ‰и ‡ „‡мм», ‡ те пеь ‡с смо т им им бо лее ‚ни -
м‡ тель но. В этой лек ции мы ‡с смо т им т‡ кие ‚о по сы:

А ‚е‰ь это ‚о ‚се не блок-схе м‡!

Пи ме ы ис поль зо ‚‡ ниfl т‡ ких ‰и ‡ „‡мм.

Со ‚е ты по по ст о е нию ‰и ‡ „‡мм ‡к ти‚ но с тей.

А ‚е‰ь это ‚о ‚се не блок-схе м‡!

К‡к мы уже „о ‚о и ли, ‰и ‡ „‡м мы ‡к ти‚ но с тей (Activity Diagramms)

fl‚ лfl ют сfl пе‰ ст‡‚ ле ни ем ‡л „о ит мо‚ не ких ‰ей ст ‚ий (‡к ти‚ но с тей), ‚ы -
пол нfl ю щих сfl ‚ си с те ме. Мы уже зн‡ ем, что к‡к но т‡ циfl UML пе‰ л‡ „‡ -
ет пflть пе‰ ст‡‚ ле ний си с те мы:

Ви‰ си с те мы с точ ки зе ниfl 

пе це ‰ен то‚

.

Ви‰ с точ ки зе ниfl 

по ек ти о ‚‡ ниfl

.

Ви‰ с точ ки зе ниfl 

по цес со‚

.

Ви‰ с точ ки зе ниfl 

‡з ‚е ты ‚‡ ниfl

.

Ви‰ с точ ки зе ниfl 

е ‡ ли з‡ ции

.

И пи этом к‡ж ‰ый из пе е чис лен ных спо со бо‚ пе‰ ст‡‚ ле ниfl си с -

те мы мо жет со ‰е ж‡ть по сле ‰о ‚‡ тель но с ти ‰ей ст ‚ий, ко то ые мо „ут быть
опи с‡ ны  с  по мо щью  ‡л „о ит мо‚.  Вот  з‰есь-то  и  ‚ы хо ‰flт  н‡  сце ну  ‰и ‡ -
„‡м мы ‰е fl тель но с тей. Во об ще „о ‚о fl, лю бой эле мент мо ‰е ли, име ю щий
‰и н‡ ми че с кое по ‚е ‰е ние, мо жет быть ‰о пол нен ‰и ‡ „‡м мой ‰е fl тель но с -
ти — имен но ‰лfl уточ не ниfl этой с‡ мой ‰и н‡ ми ки. К‡к хо о шо по‰ хо ‰fl -
щий  по  кон тек с ту  пи ме  сле ‰у ет  упо мfl нуть  ‚оз мож ность  пи ме не ниfl
‰и ‡ „‡мм  ‡к ти‚ но с ти  ‰лfl  опи с‡ ниfl  биз нес-по цес со‚,  су ще ст ‚у ю щих  ‚
ком п‡ нии  (но т‡ ции  Grapes-BM,  BPML/BPMN  и  ‰.).  Вот  уж  „‰е  с‡ м‡fl
что ни н‡ есть ‰и н‡ ми к‡!

Мож но  по ст о ить  не сколь ко  ‰и ‡ „‡мм  ‰е fl тель но с ти  ‰лfl  о‰ ной  и

той же си с те мы, пи чем к‡ж ‰‡fl из них бу ‰ет фо ку си о ‚‡ть сfl н‡ ‡з ных
‡с пек т‡х си с те мы, по к‡ зы ‚‡ть ‡з лич ные ‰ей ст ‚иfl, ‚ы пол нfl ю щи е сfl ‚ну -
т и ее. Чи т‡ тель, ко неч но же, по нflл, что, ко„ ‰‡ мы „о ‚о им о 

‰и н‡ ми ке

,

мы по‰ ‡ зу ме ‚‡ ем 

по ‚е ‰е ние

си с те мы ‚ це лом или ее ч‡ с тей. Го ‚о fl бо лее

фо м‡ль но, ‰и ‡ „‡м мы ‡к ти‚ но с ти, ‚ об щем-то, не име ют мо но по лии н‡
опи с‡ ние  по ‚е ‰ен че с ких  осо бен но с тей  ‰и н‡ ми че с ких  ч‡ с тей  си с те мы.
Длfl этой же це ли мо „ут ис поль зо ‚‡ть сfl еще ‰и ‡ „‡м мы пе це ‰ен то‚, по -

73

Лекциfl 4

Д臄‡мм‡ ‡кти‚ностей: купным пл‡ном


background image

сле ‰о ‚‡ тель но с ти,  ко о пе ‡ ции  и  со сто fl ний.  По че му  же  мы  „о ‚о им
имен но о ‰и ‡ „‡м ме ‡к ти‚ но с ти? Нет, не толь ко по то му, что т‡к н‡ зы ‚‡ -
ет сfl эт‡ лек циfl.

Имен но н‡ ‰и ‡ „‡м ме ‰е fl тель но с ти пе‰ ст‡‚ ле ны пе е хо ‰ы 

по то к‡

уп ‡‚ ле ниfl

от о‰ ной ‰е fl тель но с ти к ‰у „ой. Это, по су ти, ‡з но ‚и‰ ность

‰и ‡ „‡м мы со сто fl ний, „‰е ‚се или боль ш‡fl ч‡сть со сто fl ний fl‚ лfl ют сfl не -
ко то ы ми ‰е fl тель но с тfl ми, ‡ ‚се или боль ш‡fl ч‡сть пе е хо ‰о‚ с‡ б‡ ты ‚‡ -
ют  пи  з‡ ‚е ше нии  оп е ‰е лен ной  ‰е fl тель но с ти  и  поз ‚о лfl ют  пе ей ти  к
‚ы пол не нию сле ‰у ю щей. К‡к мы уже „о ‚о и ли (по ‚то е ние — м‡ть уче -
ниfl),  ‰и ‡ „‡м м‡  ‰е fl тель но с ти  мо жет  быть  пи со е ‰и не н‡  к  лю бо му  эле -
мен ту  мо ‰е ли,  име ю ще му  ‰и н‡ ми че с кое  по ‚е ‰е ние.  Кст‡ ти,  ис хо ‰fl  из
‚ы ше ск‡ з‡н но „о, ло „ич нее „о ‚о ить не «‰и ‡ „‡м м‡ ‰е fl тель но с ти», ‡ «‰и -
‡ „‡м м‡ ‰е fl тель но с тей» — ‚о мно же ст ‚ен ном чис ле. А еще мы пе‰ по л‡ -
„‡ ем, что чи т‡ тель по ни м‡ ет смысл по нfl тий «‰е fl тель ность», «пе е х и
«объ ект». Об 

объ ек т‡х

к‡к об эк земп лfl ‡х кл‡с со‚ мы уже „о ‚о и ли ‡ -

нее. По нfl тиfl же 

‰е fl тель но с ти 

(

activity

) к‡к по тfl жен но „о ‚о ‚е ме ни со -

ст‡‚ но „о (не ‡то м‡ но „о) ‚ы чис ле ниfl (‰ей ст ‚иfl, action) и 

пе е хо ‰‡

к‡к пе -

е ‰‡ чи  кон то лfl,  н‡ ‰е ем сfl,  по нflт ны  ин ту и ти‚ но,  без  ‰о пол ни тель ных
объ flс не ний.

Ди ‡ „‡м мы  ‰е fl тель но с ти  поз ‚о лfl ют  мо ‰е ли о ‚‡ть  слож ный 

жиз -

нен ный цикл объ ек т‡

, с пе е хо ‰‡ ми из о‰ но „о со сто fl ниfl (‰е fl тель но с ти) ‚

‰у „ое. Но этот ‚и‰ ‰и ‡ „‡мм мо жет быть ис поль зо ‚‡н и ‰лfl опи с‡ ниfl ‰и -
н‡ ми ки 

со ‚о куп но с ти

объ ек то‚. Они пи ме ни мы и ‰лfl ‰е т‡ ли з‡ ции не ко -

то ой кон кет ной опе ‡ ции, пи чем, к‡к мы у‚и ‰им ‰‡ лее, пе ‰о ст‡‚ лfl -
ют ‰лfl это „о боль ше ‚оз мож но с тей, чем «кл‡с си че с к‡fl» блок-схе м‡. Ди -
‡ „‡м мы  ‰е fl тель но с ти  опи сы ‚‡ ют  пе е хо‰ 

от  о‰ ной  ‰е fl тель но с ти  к

‰у „ой

, ‚ от ли чие от ‰и ‡ „‡мм ‚з‡ и мо ‰ей ст ‚иfl, „‰е ‡к цент ‰е л‡ ет сfl н‡ пе -

е хо ‰‡х по то к‡ уп ‡‚ ле ниfl 

от объ ек т‡ к объ ек ту

.

К‡к  „о ‚о ит сfl,  луч ше  о‰ин  ‡з  у‚и ‰еть,  чем  сто  ‡з  ус лы ш‡ть.  Мы

‰о ст‡ точ но ‡з ек л‡ ми о ‚‡ ли ‰и ‡ „‡м мы ‰е fl тель но с тей. По ‡ ‚з„лfl нуть
н‡ пи ме (ис. 4.1).

Эт‡ ‰и ‡ „‡м м‡ ‰о ‚оль но точ но опи сы ‚‡ ет еже ут ен нюю по сле ‰о ‚‡ -

тель ность ‰ей ст ‚ий ‡‚ то ‡ этих сток (‰о мо мен т‡ ухо ‰‡ н‡ ‡ бо ту). К‡к
‚и ‰им,  ‚се  очень  по сто  и  по нflт но.  Дей ст ‚иfl  по к‡ з‡ ны  ску„ лен ны ми
пfl мо у„оль ни к‡ ми, к‡к ‚ блок-схе ме, — мы уз н‡ ем ‰‡ же ом бик сим ‚о л‡
пи нfl тиfl е ше ниfl с обо зн‡ че ни fl ми ус ло ‚ий ‚оз ле пе е хо ‰о‚. Д‡, от ли -
чиfl  от  блок-схе мы  не  т‡к  уж  силь ны.  Бо лее  то „о,  эти  от ли чиfl  ‚ы „лfl ‰flт
к‡к ло „ич ное ‡с ши е ние но т‡ ции блок-схем. Об ‡ тим ‚ни м‡ ние н‡ то,
что н‡ ч‡ ло и ко нец уже не изо б ‡ ж‡ ют сfl о‰и н‡ ко ‚ым без ли ким куж ком.
Н‡ ч‡ ло те пеь з‡ к‡ ше но, ‡ ко нец изо б ‡ жен ‚ ‚и ‰е сим ‚о л‡, н‡ по ми н‡ -
ю ще „о ко ш‡ чий „л‡з (ис. 4.2) (кст‡ ти, это об ‡з ное н‡ з‚‡ ние — «ко ш‡ -
чий „л‡з» — уже н‡ мет ‚о ‚ъе лось ‚ ж‡ „он ‡ хи тек то о‚ и ‡н‡ ли ти ко‚).

Кус

74

UML: Пе‚ое зн‡комст‚о


background image

Без  по flс не ний  по нfl тен  т‡к же  смысл  сим ‚о л‡,  пе‰ ше ст ‚у ю ще „о

пи нfl тию ‰у ш‡ и пе нию и сле ‰у ю ще „о з‡ ни ми — он оз н‡ ч‡ ет ‡с п‡ ‡л -
ле ли ‚‡ ние,  ‡  з‡ тем  опflть  сли fl ние  ‚о е‰и но  (

син хо ни з‡ цию

)  по то ко‚  уп -

‡‚ ле ниfl, т. е. опе ‡ ции «пе ние» и «‰уш» ‚ы пол нfl ют сfl 

о‰ но ‚е мен но

. Но -

т‡ циfl по ст‡: не сколь ко по то ко‚ уп ‡‚ ле ниfl сли ‚‡ ют сfl ‚ о‰ин или о‰ин
по ток ‡з ‰е лfl ет сfl н‡ не сколь ко. Те ть е „о не ‰‡ но (ис. 4.3).

75

Лекциfl 4

Д臄‡мм‡ ‡кти‚ностей: купным пл‡ном

Рис. 4.1

Рис. 4.2

Рис. 4.3