Вопрос

В чем разница между доменной моделью и моделью данных?

Это было полезно?

Решение

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

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

Кстати, отличный и очень короткое введение в UML:

UML Distilded: краткое руководство по стандартному языку моделирования объекта

Другие советы

А. данные Модель ориентирована на определение схемы БД, включая таблицы, столбцы и отношения.

А. домен Модель ориентирована на бизнес-домен, включая концепции (классы объектов), поведение (методы / логику) и отношения.

В обоих случаях кардинальность используется для отношений (например, 1: 1, 1: многие, 0: много, ...).

Тем не менее, вы в идеале будут в идеале, как модель данных и модель домена, чтобы быть тесно связаны, то есть человек с именем, ... и MailingAddress, ... относится к таблице «лица» с столбцом имени и FK к таблице Mailing_Addr Вход. Вы должны решить, где проводится логика - в объектах в программной системе против в БД через процедуры, триггеры и такие.

Я думаю, что модель домена и модель данных теперь в значительной степени то же самое с новыми технологиями моделирования сверху вниз. Я имею в виду, что вы можете моделировать в диаграмме класса и добавлять только стереотипы базы данных на своей диаграмме. Если вы используете инструмент, который я использую, то ваша аннотация EJB3 будет немедленно синхронизирована с вашим кодом. Следующим шагом является только для использования Mapper для создания вашей базы данных. Эта технология работает только с Java

Я думаю, что важно предоставить некоторую ясность здесь для потомства.

А. модель данных это дизайн для того, чтобы структурировать и представлять информацию. По структуре я имею в виду проблемы, такие как «пятая нормальная форма». По представлению я имею в виду выбор компьютерной сериализации, такой как целочисленные, плавающие точка или строка.

Период, термин Доменная модель на самом деле имеет два смежных значения.

  • Модель Основные характеристики реальных или воображаемых вещей в мире. Отказ В таком виде модели классы представляют человеческие концептуализации и экземпляры - это вещи в мире. Например, класс «лица» будет иметь экземпляры, включая вас, а также существенную характеристику, возможно, у каждого человека есть мать. Этот вид модели часто называют Концептуальная онтология или модель концепции и предназначен для обеспечения значения.
  • Модель Необходимая информация о вещах в мире, обычно с учетом какой-то системы. Отказ В такой модели классы представляют информацию, которая должна быть сохранена о вещи в мире. Например, класс «лица» будет иметь экземпляры, представляющие необходимую информацию о Вы и мне, такие как имя, фамилия, дата рождения, текущая высота и текущий вес. Эта информация часто делает нет Включите все необходимые характеристики, такие как наши матери, потому что для целей конкретной системы эта информация не требуется. Этот вид модели часто называют Информационная модель, концептуальный данные модель, или Оперативная онтология.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top