Разница между моделью предметной области и диаграммой деятельности

Итак, в настоящее время я изучаю UML, и у меня есть вопрос относительно разницы между моделью предметной области и ее сравнением с диаграммой активности. Меня немного запутали следующие термины:

  • Диаграмма деятельности (AD)
  • Модель домена (DM)
  • Модель предметной области OO (OO DM)
  • Диаграмма классов (как термин)
  • Диаграмма классов домена (CD)
  • Схема классов проектирования (DCD)

В Visual Paradigm у вас есть два варианта между диаграммами действий и классами для рисования ваших дизайнов. До сих пор я использовал диаграммы классов для своей модели предметной области, но мой друг сказал мне, что вам не следует использовать диаграммы классов для своей модели предметной области. Итак, мой вопрос: в чем разница и как программа, подобная Visual Paradigm, отличается от стандартов предмета, который я пытаюсь изучить.


person Jens Ingels    schedule 29.05.2020    source источник
comment
См. Также stackoverflow.com/a/3509105/1527 и stackoverflow.com/a/18730680/1527 вы как бы спрашиваете, в чем разница между портретом и акварелью.   -  person Pete Kirkham    schedule 29.05.2020
comment
Это дает некоторое представление о различных вариантах поведения, но если контекст модели предметной области зависит от того, используется ли диаграмма действий или нет. Как определяется этот контекст модели предметной области? В этой теории у него должно быть имя. Это то, что я пытаюсь понять, поскольку модель предметной области - это термин, формирование которого зависит от контекста.   -  person Jens Ingels    schedule 29.05.2020
comment
en.wikipedia.org/wiki/Domain_model   -  person qwerty_so    schedule 30.05.2020


Ответы (2)


Модель предметной области и диаграмма предметной области не существуют в UML, поэтому все зависит от используемого определения.

Если я посмотрю на литературу, мне покажется, что «стандартная» диаграмма, показывающая, что модель предметной области - это диаграмма классов, может быть связана с диаграммой объектов, чтобы показать примеры экземпляров.

Деятельность - это поведение, если использовать обычное слово «алгоритм». Действие можно использовать для моделирования тела операции. Цель занятия и занятия совершенно разные, одно не может заменить другого.

Даже определение в Википедии: модель предметной области - это концептуальная модель предметной области, которая включает в себя как поведение, так и данные, связанная диаграмма в статье представляет собой диаграмму классов. В статье слово поведение явно относится к правилам, которые бизнес использует в отношении этих данных.

В любом случае, как бы то ни было, все зависит от того, что вы должны моделировать, нет определенных правил, говорящих, что в случае 1 используется только диаграмма классов, в случае 2 используется только диаграмма активности и так далее. Вы используете все диаграммы, которые хотите, пока они адаптированы для того, чтобы сказать что-то полезное

person bruno    schedule 29.05.2020
comment
Хм, как диаграмма действий взаимодействует с вариантами использования, если ее основная цель - алгоритм. В моих классах диаграммы активности использовались для поддержки варианта использования, но как представление объектной модели. Значит ли это, что учитель, его взгляд на его использование был ошибочным, или визуальная парадигма предусматривает эти ограничения для возникновения ошибок? - person Jens Ingels; 29.05.2020
comment
@JensIngels Каждый вид элементов в UML позволяет моделировать данное «представление». Когда вы говорите о структуре (данных), вы используете класс, объект, компонент и т. Д. Когда вы говорите о поведении, вы используете активность, конечный автомат, вариант использования, взаимодействие и т. Д. Но UML - это язык, а не метод / процесс, то, как вы используете UML, не является частью UML. Сказать, что диаграмма действий взаимодействует с вариантами использования может быть истинным и ложным одновременно, я имею в виду, что активность не только предназначена для этого. Элементы могут использоваться на любом уровне для моделирования что делать, вплоть до как реализовать и развернуть на машине / сети / ... - person bruno; 29.05.2020
comment
Диаграмма никогда ни с чем не взаимодействует. Классы сотрудничают, и их взаимодействие изображено в AD (или SD). UC реализуются путем сотрудничества, а последние документируются с помощью AD (или SD). - person qwerty_so; 29.05.2020
comment
@JensIngels вы не приняли мой ответ, он вам пригодится или я его удалю? - person bruno; 02.06.2020

Диаграммы действий используются для представления поведения, которое показывает поток управления или поток объектов с акцентом на последовательность и условия потока.

Пример: диаграмма активности

Диаграмма классов используется для определения отношений, которые существуют между классами из вашей модели, также вы можете представлять их атрибуты и методы.

Пример: диаграмма классов

Возвращаясь к вашему вопросу, если вы хотите представить поведение своей модели, я должен порекомендовать использовать диаграмму активности, но если вы хотите указать только классы, которые вы хотите использовать, и их связь, тогда вы можете использовать диаграмму классов.

person Ivan M    schedule 12.06.2020