М. Фаулер, К. Скотт - UML Основы (1114905), страница 34
Текст из файла (страница 34)
Большинство разработчиков применяют стереотип «использует» в ситуациях, когда версия 1.3 рекомендует указывать стереотип «включает», поскольку для многих из них стереотип «включает» может быть заменен стереотипом «использует». И большинство разработчиков применяют стереотип «расширяет» из версии 1.1 в более широком смысле, предполагая не только отношение «расширяет» из версии 1.3, но также и важнейшую составляющую отношения обобщения в версии 1.3. Поэтому можно считать, что отношение со стереотипом «расширяет» расщепляется в версии 1.3 на два отношения: со стереотипом «расширяет» и обобщение. Хотя это объяснение охватывает большую часть известных мне приложений языка 1)М)., в настоящее время мне неизвестен строгий и правильный способ использования в них старых отношений.
Однако боль- 176 Приложение В шинство разработчиков вовсе не пользуются этим строгим определением отношений, поэтому мне не хотелось бы развивать эту тему дальше. Диаграммы деятельности С появлением версии 1.2 языка ()М1. осталось всего лишь несколько открытых вопросов относительно семантики диаграмм деятельности. В версии 1.3 на большинство из этих вопросов были даны ответы, которые были закреплены в семантике языка ()М1,. В отношении условного поведения теперь стало возможным использовать деятельность в форме ромба как для соединения, так и для ветвления.
Хотя для описания условного поведения ни ветвления, ни разделения не являются необходимыми, все более общепринятым становится способ изображения, заключающий условное поведение в скобки. Символ синхронизации в форме черты теперь относится как к разделению (когда управление расщепляется), так и к слиянию (когда синхронизируемое управление объедиыяется снова). Однако теперь никаких дополыительных условий ыа слияние не накладывается.
Необходимо лишь придерживаться правил, гарантирующих соответствие разделений и слияний. По существу это означает, что каждое разделение должно иметь соответствующее слияние, которое соединяет все параллельные нити процесса, берущие начало в исходном разделении. Хотя разделения и слияния могут быть вложенными, их можно удалить с диаграммы, если нити соединяют ветвления (или слияния) напрямую.
Слияния могут произойти только тогда, когда все входящие в него нити завершены. Однако можно определить некоторое условие для выходящей из разделения нити. Коли это условие ые выполняется, то соответствующая нить считается завершенной и может участвовать в слиянии остальных нитей. Свойство множественной инициализации больше не поддерживается. Вместо него можно определить динамическую параллельыость в некоторой деятельности (указывается с помощью символа «*» внутри прямоугольника деятельности).
Такая деятельность может выполняться параллельно несколько раз; все ее вызовы должны быть завершены, прежде чем сможет быть выполнен какой-либо выходящий из нее переход. Это в некоторой степени эквивалентно множественной инициалызации и подходящему условию синхронизации, хотя и является менее гибким способом. Хотя эти правила в какой-то степени уменьшают гибкость диаграмм деятельности, однако они гарантируют, что диаграммы деятельности являются поистине частными случаями автоматов. Отношеыие между диаграммами деятельности и автоматами стало предметом дискуссии инициативной группы ВТР. Последующие версии языка 1)М1 (после 1.4) вполне могут определить диаграммы деятельыости как диаграммы совершенно другой формы. Библиография 1. Кепг ВесЫ БтаШагЬ Вевг Ргасггсе Раггегпз.
Ргепг1се На11, 1996. 2. Кепг Весуп Ехггете Рюугаттгпя Еггр1агпейг ЕтЬгасе СЬапуе. Айй1 воп-Жев1еу, 2000. 3. Кепг ВесЬ и Ъ'агй Сиппгп3Ьапп «А ЬаЬогагогу гог ТеасМп3 ОЬ1есг-Ог1 еп»ей ТИпИп3» Ргосеейгпуз о/ ООРБ1 А 89. 81ОР1 АХ Ьго$1сев, «'о1. 24, Хо. 10, рр. 1-6. См. Ьггрг//с2.сот/йос/оорзга89/рарег.ЬгтЕ 4. Огайу ВоосЬ: ОЬ/есг-Оггепгей АпагувЬз апй Везгуп шггЬ АррВсаггопз, Бе сопй Ейгггол. Айй1воп-Жев1еу, 1994. Буч Г.
«Объектно-ориентированный анализ и проектирование с примерами приложений на С++». — Пер. с англ. — М.: «Бином»; СПб: «Невский диалект», 1999. — 560 с. 5. Огайу ВоосЬ: ОЬ/есг Богиггопзг Мапаугпу гЬе ОЬ/есг-Оггепгей Ргогесг Айй1воп-Юев1еу, 1996. 6. Огайу ВоосЬ, дагаев БигпЬаиЕЬ и очаг ЮасоЬвоп 11Ьгее ат1дов]: ТЬе Упг /гей МойейпуЕапуиауе Пзег ОиЫе.
Айй1воп-Жев1еу, 1999. Буч Г., Рамбо Дж., Джекобсон А. «Язык ПМЬ. Руководство пользователя». — Пер. с англ. — М.: ДМК, 2000. — 432 с. 7. Ргапу ВивсЬтапп, Ве31пе Меип1ег, Напв ВоЬпегг, Регег Зопипег1ай и М1сЬае1 Бга1: Раггегл-Опепгей Бо/гшаге АгсЬггесгигег А Бузгет о/ Раб гегпз. ЮоЬп %11еу8» Бопв, 1996. 8. Решает Соай апй Л11 Жсо1а: ОЬгесг.Оггепгей Ргоцгаттгпц. Уоигйоп, 1993. 9. Регег Соай апй Ей»»агй Уоигйоп: ОЬ/есг-Оггелгей Апа1узрп Уоигйоп, 1991. 10. Регег Соай апй Ей«»агй г'оигйоп ОЬ/есг-Оггепгей Эезгуп.
Уоигйоп, 1991. 11. Регег Соай, РауЫ ХогФЬ и МагЬ Мауйе1й: ОЬ/есг Мойегз: Бггагеугез Раггегпз апйАррггсагшпз. Ргеп11се На11, 1996. Коуд П., Норт Д., Мейфилд М. «Объектные модели. Стратегии, шаблоны и приложения«. — Пер. с англ. — М.: «Лори», 1999. — 434 с. 178 Библиография 12. АНвФа1г СосЬЬпгп: Биплсйпу ОЬ|есбОг1епзей Рго1есзз. Айй1воп-Ч»'ея1еу, 1998. 13.
8$ече СооЬ и ЮоЬп Вап1е1в: 1)ез1ул1пу ОЬ|есг Бузгетк ОЬ~еспОг1епгей Мойе11лу ш11Ь Буп1юру. Ргеп$1се На11, 1994. 14. дашев О. Сор11еп: «А Оепега11че Пече1оршеп$ Ргосеяв Ра11егп Ьапбпабе» 1п Сор11еп апй ЯсЬш1сИ, 1995, рр. 183 — 237. 15.
затея О. Сор11еп и Поп31ая С. ЯсЬш1й1, ейял Рамегп Еапуиауез ог Ргоугат 11ез1дп 1Р1лРП1]. Айй1яоп-ЧЧев1еу, 1995. 16. Чуагй Сппп1пбЬанн «ЕР1ЯОПЕЯ: А РаИегп Ьапдпабе о1 СошреШ1че Пече1оршепФ. » 1п Ч11яяЫея, Сор11еп, апй Кета, 1996, рр. 371 — 388. 17. Вгпсе Ро»че1 Поп31авя: Веа1-Т1те УМЕ. Айй1воп-'й~ев1еу, 1998. 18. Магй1п Рош1ег: Апа1уз1з Ра11еглз«Ееизад1е ОЬ!есе Майе!з. Айй1яоп-Ъ~ев- 1еу, 1997.
19. Маг$1п Ро»»1ег: Ве1ас~ог1пц: 1тргоо1пу Ие.Оез1дл о1'ЕхшМлд Ргоугатв. Айй1воп-УКея1еу, 1999 . 20. Ег1сЬ Оашша, В1сЬагй Не1ш, Ва1рЬ ЮоЬпяоп и ЮоЬп Ч11ввЫея 10апб о1 Роиг1: Регул Раггегпзз Е1етепгз о1 ЕеизаЫе 01уесбОпел1ей Боггшаге. Айй1воп-ЧУея1еу, 1995. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. «Приемы объектноориентированного проектирования. Паттерны проектирования». СПб: «Питер», 2001. — 368 с. 21. Айе1е Оо1йЬегб и Кеппен Я. ВпЫп: Биссеей1пц ш11Ь ОЬуесгз: Вес1зшп Ргатешогуз 1огРго1есг Мапауетепп Айй1яоп-Ч7ев1еу, 1995. 22.
ПачЫ Наге1: «8$а1есЬагСв: А Ч1впа1 Рогша11яш аког Сошр1ех Яув1ешя.» 1п Ясяепсе ог Сотри«ег Ргоугатт1лд, Чо1. 8,1987. 23. 1чаг оасоЬяоп, Стайу ВоосЬ и затея ВшпЬацбЬ 1$Ьгее аш19ов1: ТЬе Уп1 ~1ей Бо11шаге Реое1ортелг Ргосезз. Айй1воп-Жея1еу, 1999. 24. 1чаг ЮасоЬвоп, Маяппв СЬг1я$егяоп, Ра$грк Юопвяоп и Опппаг Очегяаагй ОЬ!ес1-Ог1епзей Бо11шаге Епд1пеег1пд: А Базе Саве Зг1оел АрргоасЬ. Айй1яоп-ууея1еу, 1992. 25. 1чаг ЮасоЬвоп, Магш Ег1сввоп и Адпе1а дасоЬяош ТЬе ОЬ(есз Айоапзауе: Виз1лезз Ргосезз Ееепу1пеег1пу ш11Ь ОЬ|есг ТесЬпо1оуу.
Айй1яоп-%'ея1еу, 1995. 26. Апйге»ч Коеп13 и ВагЬага Моо: Кит 1лаг!опз ол С++; А Весайе о1' Ргоу гаттвпу1пз!уЬ1 апйЕхрег1епсе. Айй1воп-1Чея1еу, 1997. 27. РЫ11рре КгпсЫеп: ТЬе Еаз1опа111пЦ1ей Ргосезв: Ап 1пзгойис11оп. АсЫ1- яоп-%1ея1еу, 1999. 28. Сга13 Ьагшап: Арр1 у1лу УМЕ алй Раггегпз. Ргеп11се На11, 1998. Ларман К. «Применение ПМЬ и шаблонов проектирования». — М.: Вильямс, 2001. — 496 с. Библиография 179 29. Лагпев Магйп и Л»ппев Ю.
Ойе11: ОЬ/ест-Ог1епгей Месйойв: А Гоипйа-йоп (7/МЕ Ейй1оп). Ргеп11се На11, 1998. 30. ВоЬег1 Сес11 Маг11п: Рев/уп!пу ОЬ/ес1-От1епгей С++ Аррйсайопги 7/в1пц гйе ВоосЬ Мегйой. Ргеп11се На11, 1995. 31. ЯЪече МсСоппе11: ВарЫ Реое1ортепг: Тат1пд ЫЧЫ Яо/гшате ЯсЬейи1ез М1сгозой Ргевв, 1996. 32. Иече МсСоппе11: Бо/Гшате Рте/есГ Яито1оа1 ОиЫе. М1сговог1 Ргевв, 1998.
ЗЗ. Вег1гапй Меуег: ОЬ/есЬОт1епГей Бо/Гшате Сопзгтисйол. Ргеп11се На11, 1997. 34. ЧЧ111ат Р. ОрйуЬе: «Вегас1ог1п3 ОЬ1ес1-Ог1еп1ей Ргате»»огЬв.» РЬ.1) ФЬез1з. Уп1чегв11у о1 П11по1в аФ 11гЬапа-СЬатра13п, 1992. См. /Гр:// засз.и1ис.ей11/риЬ/раре те/те/ассот1пу/орйууе-сйез1зрз.Е. 35. Тгуаче ВеепвЬац3: Ъ»/отЬ1пу шйй ОЬ/есгв. РгепЪ1се На11, 1996. 36. Латев ВптЬапаЬ: ОМТ 1лз/уЬгв. 810$ ВооЬв, 1996. 37.
Загаев ВшпЬап3Ь, 1~аг ЛасоЬ воп и Огайу ВоосЬ [1Ьгее ат13ов1: ТЬе Упр /1ед Мойейлу Еапциауе Ве/етепсе Мал иа1. Айй1воп-ууев1еу, 1999. 38. Лагпев ВшпЬапЗЬ, М1сЬае1 В1аЬа, ЪЧ1111ат Ргетег1ап1, Ргейег1с1с Еййу и ЪЧ1111ат 1огепгеп: ОЬ/есг-Ог1еп1ей Мойейпу апй Вез/цп. Ргеп11се На11, 1991. 39. Оег1 ЯсЬпе1йег апй давал Р. Ъ»1пФегв: Арр1утц Рве Савва А Ргасйса1 ОиЫе. Айй1воп-ЪУез1еу, 1998. 40. Яа11у ЯМаег и ЯЪерЬеп Л. Ме11ог: ОЬ/есЬОт1еп1ей Бузгетз Апа1уз1 и: Мойейлу 1Ье утотЫ 1п Оа1а. Уопгйоп, 1989.