Курсовая работа (построение диаграмм UML)(критика)(Прочитано 49453 раз)
Добрый вечер!
Т.к. Эдуард взял на себя труд "критики" структуры, я продолжу "критику" (если можно так назвать) описания функциональности (в данном случае - диаграммы деятельности и идентификации прецедентов).

В справочнике UML, 2-е издание, авторов Буч и Ко, это "диаграмма, на которой показано разложение некоторой деятельности на ее составные части".

Наверное, основное назначение диаграммы - это описание выполнения прецедента (есть и другие приложения).

При описании прецедента деятельность (activity) принадлежит прецеденту, а диаграмма, естественно, деятельности. Т.е. нужно соблюдать правило: один прецедент -> одна деятельность -> одна диаграмма деятельности.
Примечание: составная часть деятельности сама может быть деятельностью; т.о. может образовываться иерархия диаграмм, ужасно подробно описывающих выполнение прецедента.
Вам это, м.б., и не нужно!

Прецедент - это описание последовательности взаимодействий субъекта (или субъектов, один из которых является первичным) с системой. На Вашей диаграмме никаких взаимодействий не видно. М.б. Вы указали, кто выполняет каждое действие в их описаниях? (Честно говоря, я сомневаюсь, что вы выполняли описания действий!)

Для явного указания на диаграмме, кто выполняет действие, имеется элемент "дорожка" (в UML 2 - Partition). У Вас д.б. две дорожки: субъект и система. Каждый узел диаграммы помещается в тот раздел, который представляет исполнителя.

"Мячик" перекидывается между субъектом и системой. Словами это можно выразит примерно так:
- субъект выбирает тип отчета
- система, если субъект выбрал "Инвентарная книга", отображает окно настройки отчета Инвентарная книга
                если субъект выбрал "КСУБФ", отображает окно ...
Все это, конечно, графически. Ну, и названия действий должны кратко, но понятно, отображать их содержание (действия - это не названия окошек, а действия, выполняемые системой или субъектом).

Думаю, с объяснением нового материала, на сегодня, достаточно.

Есть явная ляпа, которую многие, особенно начинавшие на UML 1x, не замечают: в самое верхнее действие входят два потока управления. В UML 1х такой прием даже рекомендовался для лаконичности. UML 2 много формальнее (жесткий формализм объясняется тем, что UML 2 разрабатывался для поддержки концепции MDA). В данном случае получается клинч: если в действие входят два потока управления, то действие начинается только тогда, когда управление "прибежит" по обоим потокам. Здесь этого не может быть в принципе, значит действие никогда не будет выполнено. Т.е. такая нотация применима только, если это параллельные потоки.
Для объединения потоков нужно использовать элемент Mtrge Node (это ромбик, похожий на Decision Node, но это другой элемент с другими свойствами). Если Ваш инструмент такого элемента не имеет, используйте ромбик Decision. На вид все будет корректно, а код генерировать из диаграммы деятельности Вы, как я понимаю, не собираетесь.
Проверьте, нет ли еще таких ситуаций.

Кстати, название этого действия - это явно название окошка. Это весь прецедент - формирование отчета. На самом деле это "Отображение окна ...", после которого следует действие субъекта типа "Выбор продолжения", и снова, на стороне системы - ромбик и альтернативные потоки.
Л. Новиков
http://lnew.ucoz.ru
lnew@yandex.ru



Не смог подойти к компьютеру за последние три дня- я буду дома только на выходных. Попытаюсь перестроить диаграммы по Вашему совету.



Спасибо за помощь




У меня к lnew и Galogen есть просьба.Помогите пожалуйста мне сделать все диаграммы на примитивном уровне не усложняя, а используя те элементы, возможно, которые минимально необходимы и
присутствовали на курсовой, которую я выложил в первый раз. Просто у меня
осталось немного времени - эти выходные и следующие. 
1.диаграмма использования(прецедентов)- критика;
 У нас в университете такие требования, что изображение диаграммы использования возможно в таком виде какой был в первом варианте.
Я пытался изобразить все что делает пользователь с системой.  Если делать примитивно - возможно ли оставить диаграмму использования как у меня была в первом варианте. Или есть что-то что обязательно надо в ней добавить.(мне не нравится в ней то,что много элементарных действий расширения(добавить, удалить...) при формировании справочников).Или мне как-то сделать по Вашему совету - попытаться  варианты использования сгруппировать по пакетам.



Заранее спасибо



1.диаграмма использования(прецедентов)- критика;
 У нас в университете такие требования, что изображение диаграммы использования возможно в таком виде какой был в первом варианте.
Я пытался изобразить все что делает пользователь с системой.  Если делать примитивно - возможно ли оставить диаграмму использования как у меня была в первом варианте. Или есть что-то что обязательно надо в ней добавить.(мне не нравится в ней то,что много элементарных действий расширения(добавить, удалить...) при формировании справочников).Или мне как-то сделать по Вашему совету - попытаться  варианты использования сгруппировать по пакетам.

Дорогой друг Vokist!
Боюсь, мечты уважаемого Эдуарда не оправдаются! (Это насчет пяти шаров). Понимаю, откуда у студента время!

Совет: когда читаешь технический текст, читай внимательно. Если текст описывает картинку или отзыв на картинку, читай и просматривай те части картинки, о которых идет речь в тексте.

Не нравятся прецеденты "ввести", "удалить"?
Я уже писал, это не прецеденты! Это действия в прецеденте! Они должны быть или описаны текстом в описании прецедента, или представлены в соответствующей диаграмме деятельности!

Ты говоришь, что в диаграмме прецедентов нужно нарисовать все, что делает субъект.
Это бред сивой кобылы! Или у вас преподаватель не обладает соответствующей квалификацией (во что я не верю), или ты слушал его с той же продуктивностью, с которой читаешь мои рецензии.

Если уж так тебя прижало, рисуй все на одной диаграмме прецедентов, но там должны быть только прецеденты (модельные элементы, соответствующие определению этого термина).

Диаграмм деятельности должно быть столько, сколько прецедентов! Все иное - грубейшая ошибка!

Про классы пусть Эдуард пишет, если у него есть время.

Извини, если слишком грубо. Зато справедливо.
Л. Новиков
http://lnew.ucoz.ru
lnew@yandex.ru



1.диаграмма использования(прецедентов)- критика;...
 
То есть Ваша критика.
Извини, если слишком грубо
Ничего.Пытаюсь читать литературу  - надеюсь получится.



Попытаюсь быстро и качественно все сделать.



Цитата: Vokist от Января 15, 2011, 09:02:11 pm
1.диаграмма использования(прецедентов)- критика;...
 То есть Ваша критика.

Если можете критикуйте мои диаграммы.Попытаюсь их сделать правильно.(и быстрее их выложить)



Не смотря на критику мне курсовая нравится. Но я в ней искал пример описания сценария в ВИ для обобщения.
сам вопрос тут
« Последнее редактирование: 27 Февраля 2011, 14:21:56 от RuZzz »




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19