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

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

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

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

Добавлен: 05.12.2019

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

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

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
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 по цес со‚ (н‡ пи ме, биз нес-по цес со‚) или опе ‡ ций (‚ы -
чис ле ний). Во ‚то ом слу ч‡е UML ‚ы сту п‡ ет ‚ о ли ‚и зу ‡ль но „о
flзы к‡ по „‡м ми о ‚‡ ниfl.

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

К‡ кие еще ‚и ‰ы ‰и ‡ „‡мм (ко ме ‰и ‡ „‡мм ‡к ти‚ но с тей) мож но
ис поль зо ‚‡ть ‰лfl мо ‰е ли о ‚‡ ниfl ‰и н‡ ми ки си с те мы?

Чем  ‰и ‡ „‡м мы  ‰е fl тель но с ти  от ли ч‡ ют сfl  от  блок-схем?  К‡ кие
пе иму ще ст ‚‡ это су лит ‡з ‡ бот чи к‡м?

Что т‡ кое т‡ ек то иfl объ ек т‡?

Чем ко неч ное со сто fl ние по то к‡ от ли ч‡ ет сfl от ко неч но „о со сто fl -
ниfl ‰е fl тель но с ти?

Чем мо ‰е ли о ‚‡ ние по цес со‚ от ли ч‡ ет сfl от мо ‰е ли о ‚‡ ниfl опе -
‡ ций?

Пи ме ни мы ли ‰и ‡ „‡м мы ‰е fl тель но с ти бе зот но си тель но к ООП?

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

1.

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

2.

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

3.

Ле о нен ко‚. С‡ мо учи тель по UML. – http://khpi-
iip.mipk.kharkiv.edu/library/case/leon/index.html.

4.

Дж. Шму ле. Ос ‚ой с‡ мо сто fl тель но UML з‡ 24 ч‡ с‡. – 2-е из‰.,
пе. с ‡н„л. М.: Из‰. ‰ом «Ви ль flмс», 2002.

5.

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

Кус

86

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


background image

6.

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

7.

Tool support for verifying UML activity diagrams. Eshuis R., Wieringa R. –
Software Engineering, IEEE Transactions on, Volume: 30, Issue: 7, July
2004. Pages:437–447.

8.

A. Kleppe, J. Warmer: Making UML Activity Diagrams Object-Oriented. –
http://csdl.computer.org/comp/proceedings/tools/2000/0731/00/073102
88abs.htm.

87

Лекциfl 4

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


background image

Лек циfl 5. Ди ‡ „‡м мы ‚з‡ и мо ‰ей ст ‚иfl: 

куп ным пл‡ ном

Мы уже по зн‡ ко ми лись с ‰и ‡ „‡м м‡ ми UML не сколь ких ‚и ‰о‚. О‰ -

ни  из  них  опи сы ‚‡ ют  си с те му  со  ст‡ ти че с кой  точ ки  зе ниfl,  н‡ пи ме,
‰и ‡ „‡м м‡ кл‡с со‚. Ду „ие — с точ ки зе ниfl опи с‡ ниfl по ‚е ‰е ниfl си с те -
мы,  ее  ‰и н‡ ми ки,  н‡ пи ме,  ‰и ‡ „‡м м‡  ‡к ти‚ но с тей.  Еще  о‰ ним  ти пом
‰и ‡ „‡мм, опи сы ‚‡ ю щих по ‚е ‰ен че с кие ‡с пек ты си с те мы, fl‚ лfl ют сfl ‰и ‡ -
„‡м м‡ со сто fl ний (о ко то ой мы ‚ этой кни „е „о ‚о ить не бу ‰ем, т. к. ‡с -
смо т е ние ‰и ‡ „‡мм со сто fl ний ‚ы хо ‰ит з‡ ‡м ки те с т‡ UM0-100) и ‰и ‡ -
„‡м мы ‚з‡ и мо ‰ей ст ‚иfl, к ко то ым от но сflт сfl ‰и ‡ „‡м мы по сле ‰о ‚‡ тель -
но с тей  (Sequence  Diagram)  и  ко о пе ‡ ции  (Cooperation  Diagram).  Вот  о
них-то мы сей ч‡с и по „о ‚о им. В этой лек ции мы ‡с смо т им т‡ кие ‚о -
по сы:

Ди ‡ „‡м мы ‚з‡ и мо ‰ей ст ‚иfl и их ме с то се ‰и ‰у „их ‰и ‡ „‡мм UML.

Ди ‡ „‡м мы по сле ‰о ‚‡ тель но с тей и их но т‡ ци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с нfl ет, что т‡ кое ‰и ‡ „‡м мы ко о пе ‡ ции и по сле ‰о -

‚‡ тель но с тей.

Ди ‡ „‡м м‡ по сле ‰о ‚‡ тель но с тей

— ‰и ‡ „‡м м‡ ‚з‡ и мо ‰ей ст ‚иfl, ‚ ко -

то ой ос но‚ ной ‡к цент с‰е л‡н н‡ упо fl ‰о че нии со об ще ний ‚о ‚е ме ни.

Ди ‡ „‡м м‡  ко о пе ‡ ции

—  ‰и ‡ „‡м м‡  ‚з‡ и мо ‰ей ст ‚ий,  ‚  ко то ой  ос -

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

Кус

88

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


background image

То есть ‰и ‡ „‡м м‡ по сле ‰о ‚‡ тель но с ти опи сы ‚‡ ет (и имен но по это -

му т‡к и н‡ зы ‚‡ ет сfl) 

по сле ‰о ‚‡ тель ность

, ‚ ко то ой объ ек ты от п‡‚ лfl ют

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

о лflх

,  ко то ые  объ ек ты

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

А к‡ кое же ме с то ‰и ‡ „‡м мы ‚з‡ и мо ‰ей ст ‚иfl з‡ ни м‡ ют се ‰и ‰у „их

‰и ‡ „‡мм UML? Н‡ этот ‚о пос мож но от ‚е тить ‰‚о fl ко. Мож но по сто
„о ‚о ить  о  по ст о е нии  ‰и ‡ „‡мм  ‚з‡ и мо ‰ей ст ‚иfl  к‡к  об  оп е ‰е лен ном
эт‡ пе ‚ по цес се мо ‰е ли о ‚‡ ниfl. А мож но ‚спом нить о ф‡ з‡х жиз нен но -
„о цик л‡ ‡з ‡ бот ки ПО и по смо т еть, „‰е же ‰и ‡ „‡м мы ‚з‡ и мо ‰ей ст ‚иfl
ок‡ жут сfl ‚ т‡ ком слу ч‡е. Д‡, кст‡ ти, кто по мнит, к‡ к‡fl ‰и ‡ „‡м м‡ UML
н‡ и луч шим  об ‡ зом  по‰ хо ‰ит  ‰лfl  опи с‡ ниfl  по цес со‚?  Хм,  что-то  не
‚и‰ но ле с‡ ук... Ах ‰‡, ‚и ‰им о‰ ну у ку — ‰е ‚уш к‡, си ‰fl щ‡fl ‚ ‰‡ль нем
у„ лу з‡ л‡, з‡ ко лон ной... П‡ ‚иль но! Ди ‡ „‡м м‡ ‡к ти‚ но с тей. Что ж, по -
по бу ем н‡ и со ‚‡ть ‰и ‡ „‡м му ‡к ти‚ но с тей, опи сы ‚‡ ю щую по цесс по -
ст о е ниfl мо ‰е ли си с те мы. Вот ‚‡ и ‡нт т‡ кой ‰и ‡ „‡м мы, пе‰ ло жен ный
о‰ ним из н‡ ших сту ‰ен то‚ (ис. 5.1):

89

Лекциfl 5

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

Рис. 5.1


background image

М-‰‡, не со‚ сем ‰и ‡ „‡м м‡ и не со‚ сем ‡к ти‚ но с тей. Но ‚се же он‡

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

Длfl то „о же, что бы по к‡ з‡ть ме с то ‰и ‡ „‡мм ‚з‡ и мо ‰ей ст ‚иfl ‚ жиз -

нен ном  цик ле  ‡з ‡ бот ки  ПО,  н‡ и су ем  еще  о‰ ну  «псе‚ ‰о ‰и ‡ „‡м му».
П‡ ‚иль нее бы ло бы ск‡ з‡ть, что т‡ ‰и ‡ „‡м м‡, ко то ую ‚ы сей ч‡с у‚и ‰и -
те  (ис.  5.2),  по к‡ зы ‚‡ ет,  к‡ кие  ‡ те ф‡к ты  ‡з ‡ бот ки  ‰о ку мен ти у ют сfl
к‡ ки ми ‰и ‡ „‡м м‡ ми.

И опflть ‚се ‚о ‰е бы ло „ич но — мы сто им ‰и ‡ „‡м мы ‚з‡ и мо ‰ей -

ст ‚иfl  ‚о  ‚е мfl 

‡н‡ ли з‡

по ‚е ‰е ниfl  си с те мы.  Кст‡ ти,  из  и сун к‡  (ск‡ з‡ть

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

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

Всту пи тель н‡fl  ч‡сть  этой  лек ции  н‡ ко нец-то  з‡ кон чи л‡сь,  и  мы  с

пол ным п‡ ‚ом мо жем пе ей ти к ‡с смо т е нию но т‡ ции ‰и ‡ „‡мм ‚з‡ и -
мо ‰ей ст ‚иfl. Н‡ч нем с ‰и ‡ „‡мм по сле ‰о ‚‡ тель но с тей. Ит‡к, мы уже „о -
‚о и ли,  что  ‰и ‡ „‡м м‡  по сле ‰о ‚‡ тель но с тей  по к‡ зы ‚‡ ет  по сле ‰о ‚‡ тель -
ность,  ‚  ко то ой  объ ек ты  ‚  по цес се  ‚з‡ и мо ‰ей ст ‚иfl  об ме ни ‚‡ ют сfl  со -
об ще ни fl ми. Но к‡к же с‡ ми объ ек ты изо б ‡ ж‡ ют сfl н‡ т‡ кой ‰и ‡ „‡м ме?
А  изо б ‡ ж‡ ют сfl  они  точ но  т‡ ким  же  спо со бом,  к‡ ким  мы  поль зо ‚‡ лись
‡ нее. Т. е. объ ект — это по сто пfl мо у„оль ник, ‚ну т и ко то о „о ук‡ з‡ ны
по‰ чек ну тые имfl объ ек т‡ и н‡ з‚‡ ние кл‡с с‡ (не обfl з‡ тель но), ‡з ‰е лен -
ные ‰‚о е то чи ем. Объ ек ты ‡с по л‡ „‡ ют сfl ‚ ‚ех ней ч‡ с ти ‰и ‡ „‡м мы ‰у„

Кус

90

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

Рис. 5.2