Форум Сообщества Аналитиков

Общий раздел => Примеры => Тема начата: helga от 04 Февраля 2009, 17:58:20

Название: EA/UML - вопросы от новичка
Отправлено: helga от 04 Февраля 2009, 17:58:20
Доброго времени суток!
Недавно начала изучать ЕА (а еще немногим раньше UML). Как обычно - в начале  - много вопросов. На этом форуме посоветовали завести отдельную ветку на проверку корректности UML-диаграмм. которые я создам в рамках выбранного проекта (структура диаграмм обсуждается в другой ветке (http://www.uml2.ru/forum/index.php?topic=1124.0)). Исходя из того. что мои собственные диаграммы пока не сложные и некоторых компонентов я пока (как выяснилось) не знаю, у меня  возникло такое предложение: сделать что-то вроде "путеводителя" по примеру, который поставляется вместе с ЕА. руководство новичка, который начинает разбирать этот самый пример. Получится должно что-то вроде:
"Открываем проект. На странице (диаграмме) Welcome перечислены основные разделы проекта.
Название каждого раздела - это "гиперссылка", по которой можно пройти в сам раздел...(каким образом можно настроить данную ссылку?)..."
В итоге можно сделать "методичку" по приемам создания проекта в ЕА и выложить ее вместе с примером на сайте. В качестве "брошюриста" могу выступить я, только тогда мне понадибится помощь участников форума. Если такая инициатива найдет отклик - предлагаю попробовать.
Название: Re: EA/UML - вопросы от новичка
Отправлено: bas от 04 Февраля 2009, 18:01:54
ИМХО хорошая идея. Задавайте вопросы - ответим.
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 04 Февраля 2009, 18:14:13
Ок. начинаю.
Вопросы буду формировать в общем и пояснять на конкретном примере.
По ходу буду комментировать - куда двигаюсь по проекту-примеру (эт для того, чтобы если я нарушу логику алгоритма - меня смогли вовремя выловить и направить на путь истинный), также будут общие вопросы. которые актуальны для проекта в общем. При сборке - посмотрю - куда лучше определить ответы на них.
Также по мере готовности буду выкладывать версии брошюры.
Есть ли предложения по регламенту задавания вопросов?

Собственно вопросы:
1. как связать элемент А на диаграмме 1 с диаграммой2? (В примере есть страница Welcome. С нее с помощью клика мышки можно переместиться на другие диаграммы.Из контекстной справки видно, что достигается это с помощью гиперссылки. Если это так, то каким образом можно задать эту гиперссылку?)
2.как "красиво" разместить элементы диаграммы? (команда конт.меню Appearance->Default не спасает Может есть «тайная» кнопка быстрой организации?)
Название: Re: EA/UML - вопросы от новичка
Отправлено: Galogen от 04 Февраля 2009, 18:31:07
1. как связать элемент А на диаграмме 1 с диаграммой2? (В примере есть страница Welcome. С нее с помощью клика мышки можно переместиться на другие диаграммы.Из контекстной справки видно, что достигается это с помощью гиперссылки. Если это так, то каким образом можно задать эту гиперссылку?)

ссылки на диаграммы
выберете требуемую диаграмму в браузере проекта и отбуксируйте ее с помощью мыши на активную страницу.
Появится окно вида
Diagram Frame – создается окно с вложенной в нее диаграммой
Diagram Reference – аналогичен Frame, но без демонстрации подробностей диаграммы
Hyperlink – создается ссылка на диаграмму, вид ссылки зависит от типа диаграммы на которой Вы размещаете ссылку.

ссылки на пакеты
пакеты переносятся как иконки с указанием вложенных в него других элементов

ссылки на внешние ресурсы
используется иконка New Hypelink. В появившемся диалоге в поле адрес гиперссылки либо вводим url ресурса, либо используем стандартное окно Windows для поиска нужного файла
Тут же можно сделать ссылку на некоторые внутренние ресурсы. Для этого используется предопределенная переменная и алиас ресурса в проекте ЕА. ($matrix//алиас ресурса, $help//алиас ресурса, $forum//алиас ресурса, $inet//url ресурса)

Впрочем все есть в хелпе
Цитировать
2.как "красиво" разместить элементы диаграммы? (команда конт.меню Appearance->Default не спасает Может есть «тайная» кнопка быстрой организации?)
Это просто отображение элемента - по умолчанию или какую картинку на место элемента прикрутите, или еще что сделаете.
Красивость достигается также как во многих графических редакторах с помощью кнопок Align. Т.е. выделяем диаграмму или нужные объекты и align их
Название: Re: EA/UML - вопросы от новичка
Отправлено: StUtk от 05 Февраля 2009, 09:53:00
А как в ЕА загрузить диаграмы из .xml файла?

Заранее спасибо.
Название: Re: EA/UML - вопросы от новичка
Отправлено: Irr от 05 Февраля 2009, 10:00:25
А как в ЕА загрузить диаграммы из .xml файла?
А там точно диаграммы? Может быть, там пакет?
StUtk, если Вы хотите загрузить xml, который выгрузила Helga, то для этого надо в ЕА создать новый пакет, на пакете нажать правую кнопку мыши, выбрать import/export - import package from XMI file, выбрать файл, нажать ОК.
Если это диаграммы, то там все сложнее, пришлите мне в личку xml-ку, я на ней поиграюсь и отвечу позже.
Название: Re: EA/UML - вопросы от новичка
Отправлено: StUtk от 05 Февраля 2009, 10:58:55
StUtk, если Вы хотите загрузить xml, который выгрузила Helga, то для этого надо в ЕА создать новый пакет, на пакете нажать правую кнопку мыши, выбрать import/export - import package from XMI file, выбрать файл, нажать ОК.
Именно это я и хотел, спасибо.
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 06 Февраля 2009, 20:06:53
Доброго вечера всем!
Спасибо за комментарии...кстати, вопрос импорта/экспорта я тоже включу в описание примера.
Есть очередной вопрос: в примере одна из основных моделей - Business Domain Model (в свою очередь нескольких моделей, одна из которых Domain Model). В описании примера поясняется, что DM - это описание словаря проекта. В качестве основного элемента модели используется класс. В связи с этим вопрос:
DM  - это аналог модели классов или какой-либо другой вид диаграммы 
и BDM - то своего рода просто "контейнер" для однотипных диаграмм?
Спасибо!
Название: Re: EA/UML - вопросы от новичка
Отправлено: Galogen от 06 Февраля 2009, 23:21:04
В связи с этим вопрос:
DM  - это аналог модели классов или какой-либо другой вид диаграммы 
и BDM - то своего рода просто "контейнер" для однотипных диаграмм?

Business Domain Model - это бизнес контекст рассматриваемой задачи, ее рамки и окружение. Модель включает в себя описание внешних и внутренних связей, объектов предметной области и процессов. Обычно содержит описание организационной структуры, характеристик ролей, высокоуровневые требования, потребности заинтересованных лиц.

Domain Model - концептаальная модель классов, модель бизнес объектов - действительно отражает словарь предметной области,т.е. понятия предметной области и их отношения, или реальные объекты и устойчивые связи между ними.
Такая модель предусматривает описание классов без операций, ассоциации или отношения не уточняются, кратность не уточняется, дается имя отношения. Точность такой модели обычно не высока, она и не требуется. Главное, чтобы она отражала реальные предметы и отношения между ними...
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 08 Февраля 2009, 13:30:45
Спасибо! Получается, что Domain model  - это Д, которую следут строить одной из первых, т.к. с т.з. построения ИС сначала (после получения требований пользователя) нужно их формализовать на верхнем уровне (бизнес-требования)...это верно?
На DM примера активно используются стереотипы. Д включает 2 группы элементов. Элементы одной группы  - классы(часть на рис. stereoT_1). Другой  - actor-ы, хотя по внешнему виду они не отличаются друг от друга(отличаются стереотипами: у гр1 они есть, у гр2 их нет, хотя на интерфейсе ст-пы отображаются в обоих случаях). Попытка создать класс и присвоить ему стереотип actor  к успеху не приводит(нет этого стреотипа в списке). Каким образом тогда можно создать с помощью элемента "класс" (или другого) аналог элемента, который представлен на рис. stereoT_2?
Название: Re: EA/UML - вопросы от новичка
Отправлено: Irr от 08 Февраля 2009, 22:28:05
Я не уверена в том, что actor это класс, но знаю хакерский метод простановки стереотипа элемента. Открываем элемент, смотрим на список возможных стереотипов для него и вписываем нужный нам стереотип ручками в соответсвующее поле. Это должно помочь.
Domain model - по-русски это модель предметной области. И она действительно строится одной из первых (если, конечно, в ней есть необходимость)
Название: Re: EA/UML - вопросы от новичка
Отправлено: bas от 09 Февраля 2009, 10:01:49
ИМХО для построения взаимоотношения Пользователей (а вернее их ролей) лучше использовать элемент - Actor. Так и понятнее и меньше проблем.

А насчет Domain model - модель БП можешь ты не строить, а Domain model построить ты обязан. Она очень пригодится на последующих этапах разработки (БД, Классы программы)
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 09 Февраля 2009, 18:40:17
Доброго вечера!
С DM все стало понятно...скоро появится первый раздел
А пока хотелось бы задать пару вопросов по следующим видам диаграмм
Opportunity Definition - в проекте это опять-таки похоже на "контейнер", в котором содержатся такие Д:
positioning - что-то вроде стратегических целей проекта (рис1)
stakeholders interests - цели каждого конкретного stakeholder'а (рис2)
Есть ли названия аналоги для трех этих диаграмм на русском?

Процессная модель. Заметила интересную вещь: входы в процесс оформлены с помощью элемента DEPENDENCY, а выходы - OBJECT FLOW, подскажите, плз - это требование нотации или свобода действий автора?
Название: Re: EA/UML - вопросы от новичка
Отправлено: Galogen от 09 Февраля 2009, 19:18:46
Процессная модель. Заметила интересную вещь: входы в процесс оформлены с помощью элемента DEPENDENCY, а выходы - OBJECT FLOW, подскажите, плз - это требование нотации или свобода действий автора?
А ничего удивительного нет. Поскольку это очень переклиается с IDEF3. Действительно Заказ - это же не просто информация о таковом, это и нечто материальное в данном случае книга, т.е. вполне себе объект. А все входы - это по сути информация. Ведь мы же описываем магазин, который только использует информацию. А заказ потом исполняет склад например. Хотя на самом деле я полагаю никакой большой ценности это не дает
Название: Re: EA/UML - вопросы от новичка
Отправлено: Денис Иванов от 10 Февраля 2009, 07:35:56
...Д включает 2 группы элементов. Элементы одной группы  - классы(часть на рис. stereoT_1). Другой  - actor-ы, хотя по внешнему виду они не отличаются друг от друга(отличаются стереотипами: у гр1 они есть, у гр2 их нет, хотя на интерфейсе ст-пы отображаются в обоих случаях). Попытка создать класс и присвоить ему стереотип actor  к успеху не приводит(нет этого стреотипа в списке). Каким образом тогда можно создать с помощью элемента "класс" (или другого) аналог элемента, который представлен на рис. stereoT_2?
1) по поводу рис. stereoT_1. <<enumeration>> никогда не соединяют никакими ассоциациями с другими классификаторами. Его обычно рисуют отдельно. А в классе Order надо написать status:OrderStatus
2) по поводу рис. stereoT_2. Тут либо надо использовать tagged value, либо вводить новый элемент через механизм стереотипов.
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 12 Февраля 2009, 19:26:51
Доброго вечера!
Первая версия описания примера из ЕА готова (рассмотрены две основные диаграммы+ вложенные в них)
Пожалуйста, посоветуйте, чем можно дополнить описание? что пропущено?
Основной акцент делала на моменты, непонятные начинающему пользователю программы...
Спасибо!
Название: Re: EA/UML - вопросы от новичка
Отправлено: Irr от 12 Февраля 2009, 19:46:42
Очень красиво получилось. Так что с первого прочтения я не могу сказать, чем дополнить и что пропущено, если что-то появится, напишу в эту ветку.
Только вот это не так:
"2-ой способ: создаем экземпляр перетаскиваемого объекта
3-ий способ: создаем экземпляр объекта, который связан с родителем с помощью типа связи «обобщение»"
2-ой способ - экземпляр элемента, а не объекта, а скорее даже класса. Т.е. создаем экземпляр класса - объект.
3-й способ - наследник элемента, т.е. класс - наследник от перетаскиваемого класса
И еще пара предложений:
- было бы удобно вставлять иногда скриншот диаграммы рядом с ее описанием,
- диаграммы, отображающие аналогичный контекст и содержащий одинаковый набор элементов, можно не описывать все, а привести списком после описания первой диаграммы.
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 13 Февраля 2009, 12:30:11
Irr, пасиб! замечания учтены
Название: Re: EA/UML - вопросы от новичка
Отправлено: Irr от 13 Февраля 2009, 13:32:23
Irr, пасиб! замечания учтены
На здоровье.
Хм-хм, замечания учтены, а где ответы на вопросы?! Я ж умру от любопытства ;)
Название: Re: EA/UML - вопросы от новичка
Отправлено: Galogen от 13 Февраля 2009, 14:06:18
а где ответы на вопросы?! Я ж умру от любопытства ;)
Не умрешь! Ты нам еще нужна :)
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 13 Февраля 2009, 17:01:12
Irr, это был вопрос про вопросы из соседней ветки? - если да. то они (ответы) в соседней ветке))так что все ок))))))))
Название: Re: EA/UML - вопросы от новичка
Отправлено: Irr от 13 Февраля 2009, 17:10:42
Irr, это был вопрос про вопросы из соседней ветки? - если да. то они (ответы) в соседней ветке))так что все ок))))))))
А! Да-да-да, это я все перепутала :-) Извините, больше не буду
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 17 Февраля 2009, 15:55:49
Доброго времени суток!
Подскажите плз ответы на пару вопросов:
как можно создать (если можно) в ЕА вложенный процесс (процесс в процессе) или создать ссылку из одного процесса на другой?

для чего нужна relationship matrix (RM)? в ней только отображаются связанные элементы или она сама предназначена для создания связей?
пример части RM прилагаю
спасибо!
Название: Re: EA/UML - вопросы от новичка
Отправлено: Irr от 26 Февраля 2009, 20:59:44
как можно создать (если можно) в ЕА вложенный процесс (процесс в процессе) или создать ссылку из одного процесса на другой?
А чем не подошла возможность делать composit element? и какой элемент для отображения процесса используется?
для чего нужна relationship matrix (RM)? в ней только отображаются связанные элементы или она сама предназначена для создания связей?
В ней можно просмотреть, добавить или удалить связанные элементы, а также экспортировать ее в CSV-файл, распечатать и сохранить как шаблон параметры фильтрации матрицы. Использовать матрицу удобно в случае, когда мы хотим увидеть наличие связей между несколькоими элементами. В случае, когда нам интересны все связи одного элемента, удобней использовать окно Hierarchy.
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 09 Марта 2009, 11:34:25
А чем не подошла возможность делать composit element? и какой элемент для отображения процесса используется?
Используется элемент process и похоже опция composit element - это то, что было нужно. Спасибо!
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 15 Марта 2009, 20:27:32
Доброго времени суток всем!
Основная часть брошюры завершена (можно посмотреть архиве из трех частей), рассмотрены все основные модели проекта из примера ЕА.
Пожалуйста, посмотрите - оч жду комментариев, замечаний
и подскажите плз:
каким образом можно задать тест-кейсы у элемента (пример диаграммы, на которой это сделано на рис.test)?

как в ЕА у элемента Transition расшифровываются совйста (на закладке Constraints)
effect  и specification? Подозреваю, что effect - это следствие выполнение сторожевого условия (guard), но насколько это верно?
Спасибо!
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 15 Марта 2009, 20:51:11
Брошюра, ч.1
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 15 Марта 2009, 21:00:04
Брошюра, ч.2
Название: Re: EA/UML - вопросы от новичка
Отправлено: helga от 15 Марта 2009, 21:07:00
Брошюра, ч.3
Название: Re: EA/UML - вопросы от новичка
Отправлено: Irr от 16 Марта 2009, 11:00:45
Helga - постараюсь все посмотреть в четверг, как обычно.
Сейчас сходу могу дать ответ только на этот вопрос:
каким образом можно задать тест-кейсы у элемента (пример диаграммы, на которой это сделано на рис.test)?
Меню View - Testing - появляется панель Testing, выбираем на диаграмме элемент, к которому хотим присоединить тесты, и добавляем их на панельке на нужной странице. В данном примере это страница Unit.