
- •Т.Е.Ильиных л.И.Шустова проектирование реляционных баз данных в нотациях idef1x
- •Содержание
- •Этапы проектирования базы данных
- •Инфологическое проектирование базы данных
- •Общие сведения
- •Описание бизнес компонентов и бизнес процессов
- •Сущность
- •Атрибут
- •Другие компоненты инфологической модели
- •Уровни представления данных
- •Этапы инфологического проектирования Инициирование проекта (фаза 0)
- •Определение сущностей (фаза 1)
- •Построение модели уровня сущностей (фаза 2)
- •Построение модели уровня ключей (фаза 3)
- •Построение полноатрибутной модели (фаза 4)
- •Нормализация данных
- •Даталогическое проектирование базы данных
- •Создание даталогической модели Общие сведения
- •Получение спецификаций внутренней схемы базы данных
- •Ограничения целостности
- •Результаты этапа даталогического проектирования
- •Имя таблицы
- •Основы нормализации отношений Общие сведения
- •Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •Нормальная форма Бойса – Кодда
- •Четвертая нормальная форма
- •Пятая нормальная форма
- •Денормализация
- •Примеры проектирования баз данных различных бизнес приложений
- •Общие замечания
- •Проектирование базы данных "Школа" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Построение модели уровня сущностей (фаза 2)
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Определение связей
- •Определение ключевых атрибутов и доменов
- •Изучаемый предмет/e5
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Проектирование базы данных "Обмен валюты" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Фаза 2. Построение модели уровня сущностей Матрица связей
- •Матрица связей
- •Описание связей
- •Описание связей
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Определение связей
- •Определение ключевых атрибутов и доменов
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Проектирование базы данных "Торговля" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Построение модели уровня сущностей (фаза 2)
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Описание связей
- •Определение ключевых атрибутов и доменов
- •Товар в списке цен/e5
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Список литературы
- •115409, Москва, Каширское ш., 31
Проектирование базы данных "Торговля" Постановка задачи
Предположим, необходимо разработать систему для учета продаж товаров некоторой торговой фирмой в соответствии со следующим описанием.
Некоторая торговая фирма специализируется на продаже товаров аудио, видео и бытовой техники. Торговля товарами осуществляется по следующей схеме.
Все товары распределены по отдельным категориям (группам товаров). Образцы товаров выставлены на продажу в различных торговых залах фирмы. Технические характеристики товаров содержатся в справочниках торгового зала. Стоимость имеющихся в наличии товаров может меняться, поэтому на каждый рабочий день формируются списки цен товаров.
Продажа товара осуществляется следующим образом. Покупателя встречает продавец, обслуживающий данный торговый зал. В соответствии с запросами покупателя выписывается товарный чек, в котором отмечаются выбранный товар, его стоимость, возможные скидки и время оформления покупки.
По торговому чеку осуществляется оплата товара в кассе, и покупатель получает кассовый чек. Оплата товара может выполняться не сразу, но не позднее некоторого установленного в товарном чеке времени (например, не позднее 1 часа со времени выписки товарного чека). В случае если товарный чек предоставляется к оплате позднее указанного времени, он не принимается (необходимо выписать новый товарный чек). Если товар не оплачен в течение оговоренного срока, продажа товара аннулируется.
По товарному и кассовому чекам осуществляется выдача товара в отделе контроля.
Инициирование проекта (фаза 0)
Допустим, что на этой фазе были определены все участники проекта, определены их функции. Уточним цели проектирования.
В результате предварительного изучения поставленной задачи определены требования к разрабатываемой системе:
Необходимо отобразить в системе состояние торговой фирмы, отражающее ее деятельность. Необходимо хранить историю продаж, чтобы можно было получить любую справку о состоянии дел фирмы за любой интересующий руководство период времени.
Все товары делятся на группы. Группы товара построены по иерархическому принципу, т.е. каждая группа может определить другую группу товара (например, группа – аудио техника; в ее состав входят группы: музыкальные центры, магнитофоны, магнитолы и т.п.). Количество вложений определяется товарами.
Так как стоимость товаров может меняться, на каждый торговый день утверждается список цен товаров, в котором для каждого товара указывается его цена.
Каждый покупатель может за одну операцию покупки у конкретного продавца купить несколько товаров.
Факты продажи товара продавцом, получения оплаты кассиром и выдачи товара сотрудником отдела контроля должны фиксироваться в системе.
Сформулированные требования определяют исходные данные для всех остальных фаз проектирования системы.
Определение множеств сущностей (фаза 1) Выделение множеств сущностей
В соответствии с описанием предметной области можно выделить следующие кандидаты в множества сущностей:
Группа товара
Товар
Продажа
Список цен
Описание множеств сущностей
Описание выделенных множеств сущностей приведено в табл. 4.29.
Таблица 4.29
Пул сущностей
Номер множества сущностей |
Имя множества сущностей |
Определение множества сущностей |
Описание множества сущностей |
E1 |
Группа товара |
Совокупность товаров, объединенных по некоторому признаку в одно множество – группу товара |
Используется для классификации товаров и разбиения большого числа наименований товаров по группам. Как только по некоторому признаку создается новая группа товара, формируется новый экземпляр данного множества сущностей |
E2 |
Товар |
Любое изделие промышленного производства, продаваемое торговой фирмой |
Как только какой-либо конкретный товар начинает продаваться торговой фирмой, информация о нем регистрируется как новый экземпляр данного множества сущностей |
Продолжение табл. 4.29
Номер множества сущностей |
Имя множества сущностей |
Определение множества сущностей |
Описание множества сущностей |
E3 |
Продажа |
Операция, фиксирующая факт продажи товара покупателю. В данной операции фиксируются факты выписки товарного чека, оплаты товара и его получения. |
Как только покупатель обращается к продавцу с целью приобрести некоторый товар (товары), создается новый экземпляр данного множества сущностей. При оплате и получении товара в соответствующем экземпляре данного множества сущностей ставятся необходимые отметки |
E4 |
Список цен |
Список цен на продаваемые товары, установленных на конкретную дату торговой фирмой. |
Как только цена на какой-либо товар изменяется или появляется новый товар для продажи, формируется новый список цен как новый экземпляр данного множества сущностей |