ВВЕДЕНИЕ
В настоящее время всвязи с развитием компьютерной техники появилась возможность автоматизироватьмногие процессы, также увеличился объем обрабатываемой информации. И возниклаобъективная необходимость автоматизировать большую часть сферы человеческойдеятельности.
Для автоматизации обработки данных в начале 70-х годовбыли предложены программы, специально предназначенные для управления данными –системы управления базами данных (СУБД).
В самом общемсмысле база данных – совокупность специальным образом организованных данных,хранимых в памяти вычислительной системы и отображающих состояние объекта и ихвзаимосвязей в рассматриваемой предметной области. В базе данных можетхраниться множество таблиц с однотипными записями. Один из типов баз данных — это документы, набранные с помощью текстовых редакторов и сгруппированные потемам. Другой тип — файлы электронных таблиц, объединяемые в группы похарактеру их использования.
С ростомпопулярности СУБД в 70-80-х годах появилось множество различных моделей данных.У каждой из них имелись свои достоинства и недостатки, которые сыграли ключевуюроль в развитии реляционной модели данных, появившейся во многом благодарястремлению упростить и упорядочить первые модели данных.
В зависимости от способа установления связей междуданными с компьютерно–ориентированным описанием на языке конкретной СУБД, разрабатывалисьразличные модели логической организации данных: иерархическая, сетевая и реляционная.
Использование баз данных и информационных системстановится неотъемлемой составляющей деловой деятельности современного человекаи функционирования преуспевающих организаций. В связи с этим большую актуальностьприобретает освоение принципов построения и эффективного применениясоответствующих технологий и программных продуктов: систем управления базамиданных, CASE-систем автоматизации проектирования, средств администрирования изащиты баз данных и других.
От правильного набора инструментальных средств создания информационныхсистем, определения подходящей модели данных, обоснования рациональной схемыпостроения баз данных, организация запросов к хранимым данным и ряда другихмоментов во многом зависят эффективность функционирования разрабатываемыхсистем. Все это требует осознанного применения теоретических положений иинструментальных средств разработки баз данных и информационных систем.
1. АНАЛИЗПРЕДМЕТНОЙ ОБЛАСТИ
Сфера деятельностипочтовых отделений характеризуется большими массивами информации и объёмомвыполняемых работ.
Задачапочтовых отделений заключается в своевременной доставке газет, журналов, писем,телеграмм, бандеролей жителям своих районов. Для этого им необходима единаяинформационная система, в которой будет отслеживаться поступление и последующаядоставка всех писем, телеграмм и бандеролей населению и различным организациям,а также доставка газет и журналов по подписке на потовых отделениях населению иорганизациям. Качество и своевременность доставки писем, телеграмм и бандеролейбудет зависеть от того, насколько продуманы каналы обмена ими между почтовымиотделениями и непосредственная их доставка получателям. А доставка газет ижурналов жителям и организациям, которые подписались на их получение, зависитот своевременного заказа необходимых газет и журналов на типографиях, оплаты идоставки их на почтовые отделения, а также от своевременной их доставки получателям.
2.ТЕХНИЧЕСКОЕ ЗАДАНИЕ
2.1 Объект иназначение разработки
Объектом разработкиявляется база данных для почтовых служащих, работающих в единой системепочтовых отделений. Она должна отображать весь перечень газет и журналов,которые имеются на подписку, данные подписчиков на эти газеты и журналы, атакже прием и отправку писем, посылок и бандеролей.
В базе данных должны хранитьсясведения о газетах и журналах, поступающих в почтовое отделение, и подписка наопределенные издания. Учет приема и отправки писем и бандеролей.
Цель моей работызаключается в проектировании и разработке системы управления базой данных«Почтовые отделения». Разрабатываемая мною база данных может быть использованадля создания единой информационной системы почтовых отделений. В ней можнобудет отслеживать пересылку писем, бандеролей, подписки на газеты и журналы.
Достижение целиосуществляется посредством комплекса задач:
- проектирование и создание таблиц для хранения данных;
- ввод данных;
- разработка других элементов базы, предназначенных для просмотра, редактированияи вывода информации.
Сведения о газетах ижурналах должны включать в себя следующую информацию:
- уникальный шифр издания;
- название газеты или журнала;
- Ф.И.О. редактора газеты или журнала.
Сведения о подписке,должны содержать:
— Код подписки;
— Шифр издания;
- Название газеты или журнала;
- Личные данные подписчика;
- Срок подписки, с учетом стоимости.
Также в этой базе данныхдолжны храниться сведения о принятых и отосланных письмах и бандеролях. Онидолжны включать:
- Код операции;
- Вид операции:
1. Прием;
2. Отправка.
- Вид приема или отправки:
1. Посылка;
2. Письмо;
3. Бандероль.
- Данные отправителя;
- Данные получателя;
- Ценность;
- Вес с учетом стоимости;
- Отчет о получении и выдаче.
Основными задачамиСУБД будет являться:
1. Учетприема и отправки писем, посылок и т.д.;
2. Получениеинформации по коду операции;
3. Получениеинформации о газетах и журналах для подписки;
4. Учетподписчиков и срока подписки;
5. Получениесведений о подписке по коду подписки.
2.2 Требованияк СУБД
1. Базаданных должна обеспечивают возможность получения:
а) информацииоб оказанных услугах почтовой связи;
б) информациио пользователях (отправителях и адресатах) услугами почтовой связи;
в) информациио почтовых отправлениях.
2.Создаваемая базы данных о пользователях услугами почтовой связи и базы данныхоб оказанных услугах почтовой связи должны соответствовать оборудованию почтовогоотделения, в том числе и программному обеспечению, обеспечивающему выполнениеустановленных действий.
3. Из базыданных о пользователях услугами почтовой связи обеспечивается возможностьполучения информации о пользователе услугами почтовой связи и о почтовом адресепользователя услугами почтовой связи по персональным данным и (или) почтовомуадресу.
4. Из базыданных об оказанных пользователям услугах почтовой связи обеспечиваетсявозможность получения информации об оказанных услугах почтовой связи по персональнымданным и (или) почтовому адресу пользователя услугами почтовой связи.
5. Контрольпочтовых отправлений осуществляется в процессе их обработки в сетях операторапочтовой связи. При передаче почтовых отправлений в упаковочной таре (мешках,ящиках и другой упаковочной таре), должна учитываться плата за вес и упаковкуотправления.
6. В сетяхпочтовой связи, включая объекты почтовой связи, обеспечивается защита отнесанкционированного доступа персонала, обслуживающего сети почтовой связи.
7. Исключение избыточности в данных.
2.3 Выборсреды разработки
Всоответствии с поставленными задачами и требованиями, одной из СУБД позволяющейразработать БД почтового отделения, является Microsoft Visual FoxPro. Удобствоиспользования и мощность встроенных средств делает диапазон информационныхсистем, построенных с применением FoxPro, весьма широким – от локальныхразработок для домашнего применения до серьезных профессиональных проектов,распределенных по сети баз данных, включающих сотни тысяч записей и сложнейшиеправила обработки данных.
СУБД VFPподдерживает реляционную модель представления данных. Она функционирует подуправлением операционных систем Windows 98, Windows XP и выше. СУБД VFP имеетстандартизованный интерфейс приложений Windows. В ней реализованы возможностипрограммирования с использованием структурированного языка запросов StructuredQuery Language (SQL).
VFPподдерживает традиционные для офисных приложений механизмы связывания ивстраивания объектов Object Linking and Embedding (OLE) и динамического обменаданными Dynamic Data Exchange (DDE).
Большинстводействий по работе с элементами баз данных можно выполнить с помощью следующихсредств: команд основного меню, кнопок панелей инструментов, командконтекстного меню и комбинаций клавиш, диалогового окна Command.
База данныхявляется основным компонентом проекта приложения. К основным элементам базыданных можно отнести таблицы, запросы, отчеты, макросы и модули.
Для работы сБД имеется стандартное окно, из которого можно вызвать любой ее объект дляпросмотра, выполнения, разработки или модификации. Пользователь может дляработы с БД разработать свой интерфейс, основу которого обычно составляютформы.
2.4Требования к аппаратному обеспечению
Так какразработка базы данных производится на Microsoft Visual FoxPro, котораяявляется высокопроизводительной СУБД, для функционирования её необходимыминимальные требования системы:
— Операционная система не ниже Windows 98;
— Процессор счастотой обновления не менее 2 Гц;
— 512 Мбфизической памяти;
— Не менее300 Мб доступного пространства на локальном диске.
2.5 Основные этапы проектирования базы данных«Почтовое отделение»:
1. Общее проектирование системы;
2. Проектирование структуры данных:выбор полей для включения в таблицы;
3. Проектирование и связываниетаблиц;
4. Проектирование полей: правилаввода данных и проверки допустимости их значения;
5. Проектирование запросов;
6. Проектирование форм и отчетов;
7. Проектирование средств автоматизации: создание меню./>/>/>/>/>2.6 Инфологическая модель данных
Информационно-логическаямодель отображает данные предметной области в виде совокупности информационныхобъектов и связей между ними. Эта модель представляет данные, подлежащие хранениюв базе данных. При разработке модели данных могут использоваться два подхода. Впервом подходе сначала определяются основные задачи, для решения которых строитсябаза, и выявляются потребности задач в данных. При втором подходе сразуустанавливаются типовые объекты предметной области. Наиболее рациональносочетание обоих подходов. Это связано с тем, что на начальном этапе, как правило,нет исчерпывающих сведений обо всех задачах.
База данных«Почтовое отделение» содержит следующие сущности:
1. Сущность «Операция» — содержит информацию о проведенных операциях: кодоперации и вид: прием, отправку почты, или подписку на прессу;
2. Сущность «Получение» — содержит информацию о полученной почте: кодоперации, вид получения, данные отправителя и получателя, вес и ценность;
3. Сущность «Отправка» — содержит информацию об отправленной почте: кодоперации, вид отправки, данные отправителя и получателя, вес и ценность;
4. Сущность «Подписка» — содержит информацию о произведенных подписках нагазету или журнал: код операции, код подписчика, шифр издания, срок и стоимостьподписки.
5. Сущность «Подписчик» — содержит информацию о подписчике, а именно: кодподписчика, Ф.И.О и адрес.
6. Сущность «Издание»- содержит информации о газетах и журналах доступныхдля подписки: шифр издания, название газеты или журнала, цена.
/>
Рис.1. Инфологическая модель БД «Почтовое отделение»./>/>/>/>/>/>
Связь «получает» — М:1-несколько получений, являютсялишь одной операцией получения.
Связь «отправляет» — М:1-несколько отправлений,являются лишь одной операцией отправления.
Связь «подписывает» — М:1-несколько подписок, являютсялишь одной операцией подписка.
Связь «подписывается» — 1: М — один подписчик можетоформить несколько подписок.
Связь «заказывает» — 1: М – на одно издание можнооформить несколько подписок.2.7 Даталогическая модель данных
Для созданияэффективной базы данных важно правильно определить структуру таблиц, то естьсостав полей. На этом этапе нужно руководствоваться следующими соображениями:
- Информация в таблицах не должна дублироваться;
- Желательно, чтобы каждая таблица содержала информацию только на однутему;
- Не рекомендуется включать в таблицу данные, которые получаются врезультате вычислений;
- Информацию об объекте желательно разбивать на минимальные единицы.
Рассмотримболее подробно каждую из сущностей и атрибуты, которые они должны содержать.Так же опишем непосредственно типы данных, которые должны браться для каждогоиз атрибутов в практической реализации базы данных. Причём типы данных могутиметь несколько иные названия в определённых, отдельно взятых СУБД.
Таблица 1. «Операция»Название атрибута Тип атрибута Размер поля Индекс Код операции Numeric 10 Primary Вид операции Character 10
Таблица 2. «Получение»Название атрибута Тип атрибута Размер поля Код операции Numeric 10 Regular Код получения Numeric 10 Primary Вид получения Character 10 Данные отправителя Character 40 Данные получателя Character 40 Вес Integer 4 Ценность Currency 8
Таблица 3. «Отправка»Название атрибута Тип атрибута Размер поля
Код операции Numeric 10 Regular
Код отправки Numeric 10 Primary
Вид отправки Character 10
Данные отправителя Character 40
Данные получателя Character 40
Вес Integer 4
Ценность Currency 8
/> /> /> /> /> />
Таблица 4. «Подписка»Название атрибута Тип атрибута Размер поля Код операции Numeric 10 Regular Код подписки Numeric 10 Primary Код подписчика Numeric 10 Regular Шифр издания Numeric 10 Regular Дата подписки Date 8 Срок подписки Date 8
Таблица 5. «Подписчик»Название атрибута Тип атрибута Размер поля Код подписчика Numeric 10 Primary Ф.И.О Character 20 Адрес Character 20
Таблица 6. «Издание»Название атрибута Тип атрибута Размер поля Шифр издания Numeric 10 Primary Название Character 10 Цена Currency 8
Всоответствии с данными инфологической и даталогической моделями уже можноприступать к непосредственному созданию реальной базы данных в оболочкеMicrosoft VFP.
3. Реализация базы данных «Почтовоеотделение».
Для удобства хранения данных в VFPиспользуются проекты, которые можно создать таким образом: File-NEW-Project.Приэтом открывается менеджер проектов, в котором можно создать любые, связанныемежду собой, элементы для работы с данными. Для хранения таблиц создаем базуданных DATABASE – NEW, соответственно выбрав мастер или конструктор.3.1 Создание таблиц
Создание таблицы БД состоит из двух этапов. На первом этапеопределяется ее структура, состав полей, их имена, последовательностьразмещения полей в таблице, тип данных каждого поля, размер поля, ключи,индексы таблицы и другие свойства полей. На втором этапе производится созданиезаписейтаблицы и заполнение их данными.
Для создания новой таблицы в окне базы данных выберитеобъект Таблицы (Tables) и нажмите кнопку Создать (New). В открывшемся окнеНовая таблица (New Table) выберите один из режимов создания таблицы. Привыборе режима конструктора таблиц выводится окно Таблица1: таблица. Дляопределения поля в окне Таблица заполняются поля Имя поля, Тип данных,Описание, Свойства поля.
/>
Рис.2. Таблица «Отправление»
3.2 СозданиеЗапросов
Одним изосновных назначений разработанного приложения является быстрый поиск информациив базе данных и получение ответов на разнообразные вопросы. Для этих целейиспользуются средства, называемые запросами.
Для созданиязапросов вы можете использовать мастер запросов, который последовательнозапрашивает наименования таблиц, используемых в запросе, перечень полей таблиц,критерий упорядочения и условия фильтрации данных.
Для тогочтобы создать запрос, необходимо выбрать запросы в менеджере проектов и выбратьна панели создать. После чего откроется окно «Новый запрос» в которомнеобходимо выбрать, с помощью чего вы хотите создать запрос. Запросы можносоздавать с помощью: конструктора, мастера. При выборе конструктора запросов,мы видим, что окно разделено на две панели. Верхняя панель содержит выбранныедля данного запроса таблицы. Таблицы представлены списками полей. Нижняя панельявляется бланком запроса, который нужно заполнить.
Приформировании столбца бланка запроса необходимо знать следующее:
· Во вкладке Полевключается имя поля, используемое в запросе
· Во вкладкеОбъединение задается объединение таблиц
· Во вкладкеУсловие отбора задаются условия отбора записей
· В строкеСортировка выбирается порядок сортировки записей результата
· В строке Группировкавыбирается порядок группировки записей результата
База данных содержит 8 запросов:
3 Запроса по получениям и 3 запроса по отправлениям,на вывод информации о письмах, посылках, бандеролях в отдельности,соответственно установив в качестве фильтров «письма», «посылки», «бандероли».
Запрос о возможной подписке стоимостью не более 50грн, соответственно в поле фильтра цены установить
Запрос на получение информации о подписке, которая ещедействительна. В поле фильтра установив Срок подписки
Пример запроса используемого в базе данных:
Запрос на получение информации о действующих подписках:
/>
Рис. 3. Запрос на выборку3.3 Создание форм
Fox Pro – этопрежде всего система управления базами данных. Она предназначена для хранения иполучения данных, представления их в удобном виде и автоматизации частовыполняемых операций, а также разрабатывать удобные формы ввода данных исоставлять сложные отчёты.
Формыпозволяют создавать пользовательский интерфейс для таблиц базы данных. Формыпредоставляют преимущества для представления данных в упорядоченном ипривлекательном виде. Правильно разработанная форма ускоряет процесс вводаданных и минимизирует ошибки.
Формы создаютиз набора отдельных элементов управления: текстовые поля для ввода иредактирования данных, кнопки, флажки, переключатели, списки, метки полей, а такжерамки объектов для отображения графики и объектов OLE. Простейший путь созданияосновной и подчинённой форм – использование «Мастера форм», который позволяетсоздавать формы, содержащие поля из одной или более таблиц или запросов.«Мастер форм» создает базовый внешний вид формы и добавляет текстовые поля дляотображения и редактирования значений полей таблиц. Независимо от уровнявладения компьютером использование «Мастера форм» заметно упрощает и ускоряетпроцесс создания простых форм, которые затем можно усовершенствовать в режимеконструктора. Создание форм базы данных происходит несколькими способами: автоформой, мастером и конструктором. Выбираем пункт «Создание формы с помощьюмастера». Следуя указаниям «Мастера» выбираем поля для формы, которые могутбраться из разных таблиц, которые имеются в создаваемом проекте. После выбораполей формы выбираем внешний вид и стиль оформления создаваемой формы, послечего задаётся имя формы.
После создания формы можно перейти в режимконструктора и откорректировать содержащиеся в форме поля, кнопки и т.д.
Формы,используемые в базе данных: операции, подписка, получения, отправка.
Пример формы«Отправления»
/>
Рис.4. Форма «Отправления»
отправка подписка сведения опеации сведения письма отправка получение подписка дешевая посылки действующая бандероли получение отчет отчет сведения письма посылки бандероли отчет Схема 2: схема связи форм3.4 Создание отчетов
Отчёт представляет собой специальный тип непрерывныхформ, предназначенных для печати. Для создания отчёта, который можнораспечатать и распределить между потребителями, комбинируются данные втаблицах, запросах и даже формах. Распечатанная версия формы может служитьотчётом. Можно создавать отчёты как из одной таблицы, так и из нескольких пользуясьсвязями.
В основном отчёты проще всего построить при помощи«Мастера отчётов». Он старается создать оптимальный вариант окончательного отчётас первой попытки. Обычно мастер в достаточной степени приближается кзаконченному варианту, так что тратиться намного меньше времени на редактированиебазового отчёта мастера.
В базе данных используется 3 отчета: отправления,получения, подписка
Пример отчета, используемого в базе данных:
/>
Рис.5 Отчет «Подписка»
4. Инструкция пользователя
СУБД «Почтовое отделение» создана для удобногохранения, просмотра и исправления информации на аптечном складе. Главная формаявляется первым шагом в работе с этой СУБД. Описание главной формы:
Кнопка «Отправления» открывает форму, которая содержитполную информацию об отправлениях.
Кнопка «Получения» открывает форму, которая содержитполную информацию о получениях.
Кнопка «Подписка» открывает форму, которая содержитполную информацию о подписках.
Форма «Получения» содержит:
Кнопка «письма» открывает форму содержащую информациюо полученных письмах.
Кнопка «посылки» открывает форму содержащую информациюо полученных посылках.
Кнопка «бандероли» открывает форму содержащуюинформацию о полученных бандеролях.
Кнопка «Отчет» открывает отчет по получениям.
Форма «Отправка» содержит:
Кнопка «письма» открывает форму содержащую информациюоб отправленных письмах.
Кнопка «посылки» открывает форму содержащую информациюоб отправленных посылках.
Кнопка «бандероли» открывает форму содержащуюинформацию об отправленных бандеролях.
Кнопка «Отчет» открывает отчет по отправке.
Форма «Подписка» содержит:
Кнопка «Действующая» открывает форму, котораяотображает информацию о действующих подписках.
Кнопка «Дешевая » открывает форму, которая содержитинформацию о недорогой подписке.
Кнопка «Отчет» открывает отчет по подписке.
ЗАКЛЮЧЕНИЕ
Проектирование базыданных представляет собой длительный и трудоемкий процесс. Качество созданнойбазы данных зависит от анализа предметной области и выбранной методологиипроектирования. При неполном анализе предметной области в процессе эксплуатациисозданной базы данных может возникать избыточное дублирование данных, а так жеразличные аномалии, что, скорее всего, приведет к потере необходимых данных и повторномупроектированию базы данных. Процесс последующего проектирования базы данных неменее ответственный, так как необходимо четко выявить необходимые сущности исогласно связям между ними сформировать отношения. Процесс реализации базыданных средствами СУБД является преобразованием выполненного проектирования наЭВМ.
Целью являлосьпроектирование базы данных «Почтовые отделения» средствами СУБД FOXPRO.
Первый этаппроектирования заключается в тщательном анализе предметной области работыпочтовых отделений. Задача почтовых отделений заключается в закупке печатныхизданий. Эти печатные издания составляет редактор, типографии их печатают ипоставляют согласно заказам почтовых отделений. В ходе анализа предметнойобласти были выявлены группы параметров для каждого из объектов, информация окоторых будет храниться в проектируемой базе данных. Были также выявлены:
– ограничения, накладываемые на информацию, которая будет храниться в базеданных;
– перечень запросов на предоставление справочной информации;
– возможные изменения информации, которая будет храниться в базе данных, атакже добавление новой и удаление ненужной информации;
– перечень отчетов, которые будут необходимы работникам, которые будутобслуживать проектируемую базу данных.
Результаты проведенногоанализа должны быть сгруппированы должным образом и представлены в виде отчетана бумажном носителе.
Второй этаппроектирования делится на две фазы, первая из них это выбор методологиипроектирования, а вторая – проектирование базы данных «Почтовые отделения». Дляпроектирования моей базы данных я выбрал метод «сущность-связь» и методнормальных форм.
Третий этаппроектирования заключается в реализации базы данных «Почтовые отделения» спомощью СУБД Microsoft Visual FOXPRO.
Полученную базу данныхможно использовать в экспериментальных или показательных целях дляпроектирования полнофункциональной информационной системы с единой базой данныхдля работы почтовых отделений.
СПИСОК ЛИТЕРАТУРЫ
1. КарповаТ.С. Базы данных: модели, разработка, реализация. – СПб.: Питер, 2001. – 304с.
2. ХомоненкоА.Д., Гридин В.В. Microsoft Access. Быстрый старт. – СПб.: БХВ-Петербург, 2003.– 304с.
3. ЗолотоваС.И. Практикум по Access. – М.: Финансы и статистика, 2004. – 144с.
4. ТиориТ., Фрай Дж. Проектирование структур баз данных: В 2-х кн. Кн. 1. Пер. с англ.– М.: Мир, 1985. – 287с.
5. ЧамберлинД.Д., Астрахан М.М., Эсваран К.П., Грифитс П.П., Лори Р.А., Мел Д.В., РайшерП., Вейд Б.В. SEQUEL 2: унифицированный подход к определению, манипулированию иконтролю данных //СУБД. — 1996. — №1. — С.144-159.
6. ЧаудхариС. Методы оптимизации запросов в реляционных системах //СУБД. — 1998. — №3. — С.22-36.
7. ЧенП. Модель «сущность-связь» — шаг к единому представлению о данных //СУБД.- 1995. — №3. — С.137-158.