Старший архитектор программного обеспечения: пример базы данных — ER-диаграмма и диаграмма потоков данных
Старший архитектор программного обеспечения: пример базы данных — ER-диаграмма и диаграмма потоков данных
1. Объяснение
Преобразование диаграммы потока данных (DFD) в диаграмму отношений сущностей (диаграмма ER) — важный шаг, который может помочь преобразовать динамический процесс системы в статическую модель данных. Вот некоторые примеры и шаги, которые помогут вам в этом процессе:
1. Понимание диаграмм потоков данных
Определить процесс:Процесс представляет собой функцию или операцию в системе.。
Определить хранилище данных:хранение данные — это место, где сохраняются данные.
Определить внешние сущности:Внешние сущности — это внешние источники или получатели, которые взаимодействуют с системой.。
Определить потоки данных:поток данные обозначают внешние объекты, процессы и хранение. Данные перемещаются между данными.
2. Определите сущности
Определите сущности из хранилища данных:каждыйхранение данные обычно соответствуют сущности. Например, если поток данных На картинке есть «Информация о клиенте». данных, то на диаграмме ER может присутствовать сущность «Клиент».
рассмотреть внешние сущности:иногда,Внешние сущности также можно преобразовать в сущности на диаграмме ER. Например,Внешняя сущность «Поставщик» может быть представлена на диаграмме ER как сущность «Поставщик».
3. Определите атрибуты
Определите атрибуты каждой сущности:отпоток Найдите свойства каждого объекта в данных. Например, сущность клиента может иметь такие атрибуты, как имя, адрес и номер телефона.
Учитывайте содержимое вашего хранилища данных:хранение Поля данных обычно можно преобразовать в атрибуты сущностей.
4. Определите отношения
Определить отношения между сущностями:смотретьпоток данныхна картинкепоток данных, определить, какие сущности имеют между собой связи. Например, если поток заказов данные клиентам и продукту,тогда может быть“Клиент Заказ”а также“Заказ Включатьпродукт”отношение。
Определить тип отношений:Убедитесь, что отношения1верно1、1верно Более или болееверномного。Например,У клиента может быть несколько заказов (от одного до нескольких).,И один Заказ Может Включатьмного个продукт(многоверномного)。
5. Ключ метки
Определить первичный ключ:длякаждый实体定义一个唯一标识符作для主键。Например,Первичным ключом сущности клиента может быть идентификатор клиента.
Определить внешние ключи:Используйте внешние ключи в отношениях для соединения разных объектов.。Например,Сущность заказа может содержать идентификатор клиента в качестве внешнего ключа.,Указывает на сущность клиента.
6. Повторная проверка и оптимизация
Проверьте согласованность:убеждатьсяпоток Вся информация в диаграмме данных отражена в диаграмме ER.
Модель оптимизации:исследоватьERкартина,Посмотрите, есть ли какие-либо избыточные сущности или отношения.,Или можно ли модель абстрагировать и упростить дальше.
Пример
Рассмотрим простую диаграмму потока данных со следующими элементами:
Внешняя сущность: клиент
Процесс: Размещение заказа
хранение данные: информация о клиенте、Информация о заказе、продуктинформация
поток данные: информация о клиенте(клиент->Вниз Заказ),Информация о заказе(Вниз Заказ->Информация о заказе),продуктинформация(Информация о заказе->продуктинформация)
Из этих элементов можно построить следующую диаграмму ER:
Объект: Клиент、Заказ、продукт
Атрибут: Клиент (CustomerID、Имя、адрес),Заказ (идентификатор заказа, дата заказа, идентификатор клиента),продукт(продуктID、продуктимя、цена)
С помощью описанных выше шагов диаграмму потока данных можно эффективно преобразовать в диаграмму ER, заложив основу для последующего проектирования и реализации базы данных.
2. Название
Прямоугольник на диаграмме ER представляет сущность. Уже есть офицеры по безопасности, заместители менеджеров по безопасности, а также менеджеры проектов и администраторы проектов.
Поскольку руководитель проекта подтверждает информацию, (2) заполните имя руководителя проекта.
Поскольку администратор проекта заполняет информацию о проекте, (1) укажите администратора проекта.
Поскольку данные, которыми управляет сотрудник по безопасности, заместитель менеджера по безопасности и руководитель проекта, представляют собой «таблицу данных индикаторов проекта», (3) должны быть данными индикаторов проекта.
Поскольку (4), (5) и (6) являются конечным выходным показателем анализа раннего предупреждения, (4), (5) и (6) должны представлять собой информацию о проекте, параметры индикаторов, аварии и влияющие факторы.