
- •Методические указания к индивидуальному заданию "Разработка информационной системы на основе реляционной базы данных" по дисциплине "Информационные системы и технологии в экономике"
- •1Цель и задачи курсовой работы
- •2Структура курсовой работы
- •3Содержание основной части курсовой работы.
- •4Постановка задачи и разработка бизнес-правил
- •4.1.1Системный анализ и словесное описание предметной области
- •5Проектирование информационной системы, основанной на использовании бд
- •5.1.Этапы проектирования
- •5.2.Концептуальное проектирование базы данных
- •5.2.1Определение и документирование объектов (сущностей).
- •5.2.2Определение и документирование типов связей (отношений)
- •5.2.3Определение и документирование атрибутов
- •5.2.4Определение доменов атрибутов.
- •5.2.5Определение атрибутов, являющихся потенциальными и первичными ключами.
- •5.3.Проектирование логической (реляционной) модели бд
- •5.3.1Преобразования концептуальной модели бд в логическую реляционную модель (сущности и связи)
- •5.3.2Преобразования концептуальной модели бд в логическую реляционную модель (атрибуты)
- •Первичные ключи таблиц
- •Преобразование составных атрибутов
- •6.2.Разработка форм для ввода и изменения данных.
- •6.3.Построение отчетов
- •6.4.Построение страниц доступа.
- •6.5.Разработка интерфейса пользователя.
- •6.6.Руководство пользователя
- •Приложение
- •1Системный анализ и словесное описание предметной области.
- •1.1.Описание предметной области
- •1.2.Описание бизнес-функций организации
- •Терминологический словарь
- •1.3.Постановка задачи и формализация бизнес-правил.
- •2Проектирование базы данных.
- •2.1.Концептуальное проектирование базы данных
- •2.2. Проектирование логической (реляционной) модели бд.
- •Інформаційно-методичне забезпечення
5.2.2Определение и документирование типов связей (отношений)
После выделения сущностей необходимо установить существующие между ними связи.
При определении существующих связей из спецификаций на проект выбираются все выражения, в которых содержатся глаголы, особенно те, в которых фигурируют выделенные ранее сущности. Например:
Фирма имеет персонал.
Персонал занимается продажами.
Продавец принимает заказ.
Особое внимание следует уделять проверке того, были ли выделены все связи, явно или неявно присутствующие в спецификациях на проект.
В большинстве случаев связи являются парными – другими словами, связи существуют только между двумя сущностями. Однако в некоторых случаях целесообразно использование многосторонних связей (например, СОТРУДНИК выполняет данный ВИД РАБОТ при создании данного ПРОЕКТА) объединяющих более двух сущностей различных типов. В некоторых ситуациях требуется использование рекурсивных связей (например, бригадир руководит рабочими и при этом бригадиром является один из рабочих), когда сущность связана с самой собой.
После определения связей им присваиваются осмысленные имена, которые должны быть понятны пользователям и формулируют развернутое описание каждой связи, включающее сведения о ее мощности.
Мощность описывает количество возможных связей для каждой из сущностей-участниц. Наиболее распространенными являются связи с показателями мощности «один к одному» (1:1), «один ко многим» (1:М) и «многие ко многим» (M:N). Значения мощности обязательно нужно зафиксировать в документации.
Кроме того, для каждой связи целесообразно установить обязательность участия сущности в связи, которая определяет, зависит ли существование некоторой конкретной сущности от участия в связи некоторой другой сущности. Существует 2 варианта участия сущности в связи:
обязательное (тотальное, полное) – для существования некоторой сущности требуется существование другой сущности, связанной с ней определенной связью (ЗАКАЗ предполагает обязательное существование КЛИЕНТА) ;
необязательное (частичное) – для существования некоторой сущности не требуется существование другой сущности, связанной с ней определенной связью (ПРОДАВЕЦ еще не осуществил ни одной ПРОДАЖИ, но тем не менее является продавцом).
Мощность связи и степень участия в ней сущностей представляют собой определенные ограничения, используемые для проверки и поддержания целостности и качества данных в базе.
5.2.3Определение и документирование атрибутов
С целью определения атрибутов сущностей, определенных в создаваемой модели базы данных, необходимо выявить все данные, описывающие эти сущности. Для этого нужно выбрать все существительные и содержащие их фразы, присутствующие в спецификациях на проект и описывающее свойство, качество или характеристику некоторой сущности.
Самый простой метод выделения атрибутов – после идентификации очередной сущности в спецификации задать себе следующий вопрос: «Какую информацию требуется хранить о…». Ответ на этот вопрос надо искать в тексте спецификации.
Атрибуты делятся на простые и составные, однозначные и многозначные, а также производные.
Простым является атрибут, состоящий из одного компонента с независимым существованием. Простые атрибуты не могут быть разделены на более мелкие компоненты (например, атрибут пола). Простые атрибуты иногда называют атомарными. Составным называется атрибут, если он состоит из нескольких компонентов, каждый из которых характеризуется независимым существованием. Например, атрибут «Адрес» может быть простым и представлять все элементы адреса как единое значение: «Артема, 29; Киевский район; Харьков, 62000». В другом варианте этот же атрибут может быть представлен как составной, т.е. состоящий из серии простых атрибутов, содержащих различные элементы адреса. В этом случае то же самое значение может быть разделено на такие атрибуты, как «Улица» (Артема, 29), «Район» (Киевский), «Город» (Харьков) и «Почтовый индекс» (62000). Выбор способа представления адреса в виде простого или составного атрибута определяется требованиями, предъявляемыми к приложению пользователем. Если пользователь не нуждается в доступе к отдельным элементам адреса, то его целесообразно представить как простой атрибут. Но если пользователю требуется независимый доступ к отдельным элементам адреса, то атрибут «Адрес» следует сделать составным, образованным из необходимого количества простых атрибутов.
Однозначный атрибут содержит одно значение для одной сущности (например, фамилия клиента). Большинство атрибутов типов сущностей являются однозначными для каждого отдельного экземпляра этой сущности. Многозначным является атрибут, который содержит несколько значений для одной сущности. Многозначный атрибут допускает присутствие определенного количества значений (возможно, в заданных пределах – максимальном и минимальном количестве). В качестве примера можно привести номер телефона клиента. Если клиентом является юридическое лицо (предприятие), то каждый его отдел имеет свой номер телефона. Предположим, что атрибут «Телефон» сущности КЛИЕНТ может иметь от 1 до 10 значений. Многозначный атрибут иногда целесообразно выделить в отдельную сущность.
Атрибуты, значения которых могут быть установлены с помощью значений других атрибутов, называются производными, или вычисляемыми. Например, производными атрибутами являются:
возраст работника;
общая сумма продаж фирмы на конкретную дату;
количество заказов, сделанных за определенный период времени.
Обычно подобные атрибуты вообще не отображаются в концептуальной модели данных. Однако если существует риск удаления или модификации атрибута или атрибутов, значения которых используются для вычисления значения производного атрибута, производный атрибут должен быть представлен в модели данных, что позволит предупредить нежелательную потерю информации. При этом следует непременно указать, что он является производным. Способ представления производных атрибутов устанавливается на этапе физического проектирования базы данных. В зависимости от его использования новое значение может вычисляться либо при каждом обращении к нему, либо только при изменении значений атрибутов, используемых для его расчета.
Каждому выявленному атрибуту следует присвоить осмысленное имя, понятное пользователям. О каждом атрибуте в документацию помещаются следующие сведения:
имя атрибута и его описание;
все синонимы, имеющиеся для данного атрибута;
является ли атрибут составным и, если это так, из каких простых атрибутов он состоит;
является ли данный атрибут производным и, если это так, какой метод следует использовать для вычисления его значения;
является ли данный атрибут множественным.
При определении используемых в некотором приложении атрибутов очень часто оказывается, что на предыдущих этапах одна или более сущностей были пропущены. В этом случае следует вернуться к уже выполненным этапам и документально оформить вновь обнаруженные сущности, после чего проанализировать связи, в которых они принимают участие.
Может оказаться полезным подготовить список всех атрибутов, используемых в спецификациях на проект. По мере связывания очередного атрибута с некоторой сущностью, он вычеркивается из списка. Подобный метод позволяет гарантировать, что каждый из атрибутов будет связан с сущностью только одного типа.