1. Описание предметной области
2. Анализ документов предметной области
3. Построение логической модели данных
4. Генерация физической модели данных
· проектирование БД;
· создание БД (формирование и связывание таблиц, ввод данных);
· создание экранных форм, запросов и отчетов;
· создание меню приложения;
· генерация приложения как исполняемой программы.
Из приведенного перечня видно, что центральной задачей является проектирование и создание БД. Для работы с БД в большинстве случаев достаточно средств СУБД. Приложения разрабатывают, если требуется обеспечить удобство работы с БД неквалифицированным пользователям или не устраивает интерфейс СУБД. Приложения могут создаваться как в среде СУБД (например, с помощью VBA в MicrosoftAccess), так и вне ее – с помощью системы программирования, использующей средства доступа к БД (например, Delphi или C++ Builder).
В данной курсовой работе рассматривается пример использования CASE-средства ER/Studio и СУБД MSAccess для проектирования и создания БД в предметной области «Учет деятельности промоутеров в компании «Чистая вода»». В результате работы в MSAccess будет сгенерирована база данных готовая для использования в заданной предметной области.
1. Описание предметной области
Моделирование данных осуществляется на основе описания предметной области. Это описание может включать совокупность документов с данными, необходимыми для загрузки БД, и другие сведения об объектах и процессах, характеризующих предметную область. В данной работе я использовал предметную область «Учет деятельности промоутеров в компании «Чистая вода»».
При устройстве на работу промоутера, с ним заключается договор подряда, в котором указаны все данные будущего работника, а также № промоутера, который является уникальным и присваивается каждому новому работнику. В процессе своей работы промоутер должен рекламировать продукцию компании а также заключать договора на оказание услуг по доставке чистой питьевой воды и покупку оборудования. При заключении договора в нем указывается ФИО клиента, его адрес, контактные телефоны, сроки доставки, время для перезвона оператора, а также делается пометка о выбранном оборудовании и воде. Воду и оборудование заказчик выбирает из соответствующих прайс-листов. У одного промоутера может быть множество клиентов. Договора заключаются на промоточках, на каждой промоточки имеется учетный лист, в котором записан адрес промоточки, ее номер. Приходя на работу промоутер отмечает в учетном листе даду, свой номер а также смену, в которую он работает.
Из общего описания предметной области известен ряд ограничений, существенных для процессов, относящихся к рассматриваемой задаче:
· каждому промоутеру и промоточке присваиваются свои уникальные номера;
· у одного промоутера может быть сколько угодно клиентов;
· клиент может заключать договор только с одним промоутером;
· в одном заказе может быть указан только один вид продукции(воды) и один вид оборудования; если необходимо заказать два разных вида оборудования или несколько различных видов продукции нужно будит заключить новый договор;
· количество продукции измеряется целым числом единиц измерения;
· на промоточки может работать множество промоутеров.
Для эффективного контроля работы промоутеров а также доставки новым клиентам продукции и оборудования необходимо вести автоматизированный учет договоров.
Автоматизированный учет договоров должен осуществляться на основе данных представленных в заказе. По мере поступления новых заказов на обработку эти данные должны вводиться, накапливаться и храниться в БД в течение регламентированного периода.
Входная информация данной задачи разделяется на условно-постоянную и оперативно-учетную.
Условно-постоянная информация включает справочные данные о продукции и оборудовании, поставляемой компанией, а также данные о промоутере и промоточках.
Оперативно-учетная информация включает данные о заказе.
В договоре подряда содержится вся информация о будущем работнике, а именно ФИО работника, его паспортные данные, ИНН, номер пенсионного удостоверения, также в договоре указывается номер промоутера. Этот номер уникален для каждого промоутера.
Форма 1.Заказ на доставку чистой питьевой воды
Информация о продукции и оборудовании содержится в прайс-листе продукции и оборудования, поставляемом предприятием (Форма 2, 3). Прайс-листы является первичным носителем этих сведений, поэтому они должны загружаться в БД с него.
Форма 2. Прайс-лист продукции
Форма 3. Прайс-лист оборудования
Форма 4. Учетный лист
Промоточка:______________№_______ | |||||||||||||||||||||
Промоутер | |||||||||||||||||||||
Дата | |||||||||||||||||||||
Начало смены | |||||||||||||||||||||
конец смены | |||||||||||||||||||||
Начало смены | |||||||||||||||||||||
Полных бутылей | |||||||||||||||||||||
Пустых бутылей | |||||||||||||||||||||
Рекламные буклеты | |||||||||||||||||||||
Прайсов | |||||||||||||||||||||
Бланков заказа | |||||||||||||||||||||
Конец смены | |||||||||||||||||||||
Мешочки | |||||||||||||||||||||
Полных бутылей | |||||||||||||||||||||
Пустых бутылей | |||||||||||||||||||||
Рекламные буклеты | |||||||||||||||||||||
Прайсов | |||||||||||||||||||||
Бланков заказа | |||||||||||||||||||||
Мешочки |
Информацию о количестве полных и пустых бутылей, о кол-ве прайсов и т.д, содержащейся в данной форме мы учитывать не будем, т.к. она не относится к выбранной предметной области.
Результатом моделирования должна стать полная атрибутивная модель – наиболее глубокое представление информации о данных и их взаимосвязи. Построение логической модели сводится к следующим этапам.
1. Идентификация всех сущностей, их атрибутов и первичных ключей.
2. Идентификация всех связей между сущностями и указание их мощности.
3. Преобразование выявленных отношений N:N в отношения 1:N с помощью добавления новых (ассоциированных) сущностей.
Выделение сущностей предметной области, отвечающих требованиям нормализации, может производиться на основе различных подходов.
Интуитивный подход предполагает непосредственное выявление реальных объектов и других сущностей предметной области и определение их характеристик. При таком подходе возможны существенные ошибки, если отсутствует достаточный опыт. Последующая проверка выполнения требований нормализации обычно показывает необходимость уточнения атрибутного состава сущностей. Получаемая при этом модель, как правило, требует дальнейших преобразований - преобразования транзитивных зависимостей реквизитов и много–многозначных связей.
При наличии сложившегося документооборота можно применить другой подход, основанный на анализе функциональных зависимостей реквизитов документов предметной области. Реквизиты подразделяются на ключевые и описательные, которые являются функционально зависимыми от ключа. Функциональная зависимость реквизитов имеет место только в том случае, если одному значению ключа соответствует только одно значение зависимого (описательного) реквизита.
Функциональную зависимость реквизитов можно изобразить графически в виде линий со стрелками, идущими от ключевого реквизита к описательному (зависимому). Ключевой реквизит выделяется (подчеркивается). Эти связи удобно отображать в таблице, где представлен состав реквизитов каждого документа (табл. 1).
Таблица 1
Документ | Названиереквизита | Функциональнаязависимость | Сущность |
Прайс-листпродукции | Код изделияНаименование изделияЕдиница измеренияЦена за единицу | Вода |
При выявлении функциональных зависимостей реквизитов не рассматриваются арифметические зависимости (например, стоимость от количества).
Алгоритм выявления сущностей включает следующие действия.
1. Представить список реквизитов каждого документа предметной области в виде таблицы.
2. Установить функциональные зависимости между реквизитами на основе описания предметной области и анализа форм документов. При наличии функциональной зависимости проводится линия связи со стрелкой от ключевого реквизита к зависимому.
3. Разделить все реквизиты на описательные (зависимые) и ключевые. В случае транзитивной зависимости некоторые реквизиты являются одновременно зависимыми и ключевыми и соответственно войдут в разные группы.
4. Сгруппировать описательные реквизиты, одинаково зависимые от одного (или нескольких) реквизитов. В каждую группу включить общие для группы ключевые реквизиты. Каждая такая группа из описательных реквизитов (атрибутов) с общим для них ключом образует одну выделяемую сущность.
Эти правила позволяют на основе несложного анализа функциональных зависимостей реквизитов (атрибутов) группировать их в отдельные сущности, отвечающие требованиям нормализации. При использовании этих правил не требуется отдельно преобразовывать транзитивные зависимости реквизитов. Сразу оказываются выделенными ассоциированные сущности, выполняющие роль связки между сущностями, находящимися в отношении N:N. Ассоциированная сущность становится зависимой в одно–многозначных связях по отношению к каждой из исходных. Функциональные зависимости реквизитов документа «Договор подряда» отображены в табл. 2, функциональные зависимости реквизитов документа «прайс-лист оборудования» – в табл. 3, функциональные зависимости реквизитов документа«Учетный лист» - в таб.4.