- •Глава 1. Обзор и сравнительный анализ существующих арм. 7
- •Глава 2. Анализ исходных данных и выбор оптимального инструментария для разработки арм. 21
- •2.9. Реализация выбранных решений. 92
- •Глава 1. Обзор и сравнительный анализ существующих арм.
- •1.1 Библиотечные системы.
- •1.1.1 Национальная библиотека рс (я)
- •1.1.2 Библиотека Администрации Президента Российской Федерации (бапрф).
- •1.1.3 Российская национальная библиотека (рнб).
- •1.1.4 Гпнтб России.
- •Глава 2. Анализ исходных данных и выбор оптимального инструментария для разработки арм.
- •2.1 Назначение разрабатываемого арм.
- •2.2 Определение структурной схемы.
- •2.3 Выбор конкретного программного инструментария.
- •2.4. Разработка логической схемы.
- •2.5 Логическое проектирование
- •2.5.1 Определение цели создания арм.
- •2.5.2 Определение таблиц и необходимых полей.
- •2.5.3 Определение связей между таблицами.
- •2.6 Разработка таблиц.
- •2.6.1 Построение таблиц.
- •2.6.2 Назначение типов данных для полей таблиц.
- •2.6.3 Создание индексов и связей между таблицами
- •2.8 Разработка алгоритма.
- •2.9 Реализация алгоритма.
- •2.9.1 Функциональные модули.
- •2.9.2 Модуль идентификации и аутентификации.
- •2.9.3 Модуль картотеки фондов.
- •2.9.3.1 Главная форма
- •2.9.3.2 Просмотр
- •2.9.3.3 Поиск
- •2.9.3.4 Сортировка.
- •2.9.3.5 Фильтр
- •2.9.3.6 Новости
- •2.9.3.7 Настройка
- •2.9.3.8 Добавление
- •2.9.3.9 Изменение
- •2.9.3.10 Печать.
- •2.9.4 Модуль картотеки читателей.
- •2.9.4.1 Просмотр
- •2.9.4.2 Просмотр
- •2.9.4.3 Поиск
- •2.9.4.4 Сортировка
- •2.9.4.5 Фильтр
- •2.9.4.6 Настройка
- •2.9.4.7 Добавление
- •2.9.4.8 Изменение
- •Заключение.
- •Список использованной литературы.
2.4. Разработка логической схемы.
Полноценное проектирование любого АРМ должно осуществляться согласно некоторым правилам или этапам проектирования.
Ниже приведены основные этапы проектирования АРМ:
-
Логическое проектирование.
-
Определение цели создания АРМ
-
Определение таблиц и необходимых полей
-
Определение связей между таблицами
-
Разработка таблиц
2.1 Построение таблиц
-
Назначение типов данных для полей таблиц
-
Создание индексов и связей между таблицами
2.5 Логическое проектирование
Когда говорят о логическом проектировании, употребляют такие термины, как сущность, связь и атрибут.
Сущность – это множество однотипных объектов, называемых экземплярами, при этом каждый экземпляр индивидуален и отличается от всех остальных экземпляров.
Атрибут – это характеристика сущности. Атрибут выражает одно законченное и определённое свойство сущности. При проектировании рекомендуется создавать атомарные атрибуты.
Связь – это логическое отношение между сущностями, выражающее некоторое ограничение или бизнес-правило.
При создании связей между сущностями в дочернюю сущность передаются атрибуты, составляющие первичный ключ в родительской сущности. Эти атрибуты образуют в дочерней сущности внешний ключ.
2.5.1 Определение цели создания арм.
На первом этапе проектирования необходимо определить цель создания АРМ, основные функции и информацию, которую АРМ должен содержать, то есть нужно определить основные темы таблиц базы данных и содержащуюся в них информацию.
База данных должна отвечать требованиям тех, кто будет непосредственно с ней работать. Для этого нужно определить темы, которые должны покрываться данным АРМ, требуемые отчёты, проанализировать формы в которых в настоящий момент используются для хранения и записи данных.
2.5.2 Определение таблиц и необходимых полей.
Одним из наиболее сложных этапов проектирования, является разработка таблиц базы данных для хранения информации, так как результаты которые должна выдавать система не всегда дают полное представление о структуре таблиц.
При разработке, лучше руководствоваться следующими основными принципами:
-
Информация в таблицах не должна дублироваться. Когда определённая информация хранится только в одном месте, то нет необходимости в синхронизации этих данных, и обеспечит эффективность, и исключит возможность не совпадения.
-
Каждая таблица должна содержать информацию только на одну тему, в этом случае данные намного легче обрабатывать, если они содержаться в разных таблицах.
Проведём рассмотрение этих данных. Для ведения библиотечных каталогов. Организации поиска требуемых изданий и библиотечной статистики в базе данных должны хранится сведения, большая часть которых размещается в аннотированных каталожных карточках (рис. 3.1 ). Анализ запросов на литературу, как читателей, так и обслуживающего персонала библиотеки, показывает, что для поиска подходящих изданий (по тематике, автору, изданию и т.п.) и отбора нужного, следует выделять следующие атрибуты каталожной карточки:
Д27 |
Дейт К. Руководство по реляционной СУБД DB2 / пер. с англ. И предисловие М.Р.Когаловского. –М.: Финансы и статистика, 1988. – 320 с.: ил. |
ISBN 5-279-00063-9 |
|
Книга американского специалиста в области реляционных баз данных К.Дейта, автора популярной в СССР монографии «Введение в системы баз данных», представляет собой руководство по СУБД фирмы IBM DB2. Для специалистов по программному обеспечению информационных систем и студентов вузов. |
|
ББК 32.973 |
Рис. 3.1 Аннотированная каталожная карточка
-
Автор (фамилия и имена (инициалы) или псевдонимы каждого автора издания);
-
Название (заглавие) книги;
-
Номер тома (части, книги, выпуска);
-
Вид издания (сборник, монография, справочник,…);
-
Составитель (фамилия и имена (инициалы) каждого из составителей издания);
-
Под чей редакцией (фамилия и имена (инициалы) каждого из составителей издания);
-
Повторность издания;
-
Издательство;
-
Место издания (город);
-
Год выпуска;
-
Издательская аннотация или реферат;
-
Библиотечный шифр;
-
Авторский знак.
Библиотечный шифр и авторский знак используются при составлении каталогов и организации расстановки изданий на полках: по содержанию ( в соответствии с библиотечным шифром) и по алфавиту ( в соответствии с авторским знаком).
Библиотечно-библиографическая классификация (ББК) распределяет издания по отраслям знания в соответствии с их содержанием. В ней используется цифро-буквенные индексы ступенчатой структуры.
К
Техника.Технические
науки.
32 Радиоэлектроника.
32.97
Вычислительная техника.
32.973
Электронные вычислительные машины и
устройства.
32.973.2
Электронно-вычислительные машины и
устройства дискретного действия.
Шифр ББК используется при выделение хранимым изданиям определённых комнат, стеллажей и полок, а также для ведения и составления каталогов и статистических отчётов.
Авторский знак, состоящий из первой буква фамилии (псевдонима) автора или названия издания (для изданий без автора) и числа, соответствующего слогу, наиболее приближающегося по написанию к первым буквам фамилии (названия), упрощает расстановку книг на полках в алфавитном порядке.
К объектам и атрибутам, позволяющим охарактеризовать отдельные экземпляры изданий (переплёты), места их хранения и читателей, можно отнести:
-
Номер (инвентарный номер) переплёта;
-
Дата приобретения (поступления) конкретного переплёта;
-
Номер читательского билета;
-
Фамилия читателя;
-
Имя читателя;
-
Отчество читателя;
-
Адрес читателя;
-
Телефон читателя;
-
Дата выдачи читателю конкретного переплёта;
-
Дата возврата переплёта.
Анализ приведённых выше объектов и атрибутов позволяет выделить сущности проектируемой базы данных, приняв решение о создании реляционной базы данных, можно построить её модель.
Каждая таблица проектируемой базы данных должна содержать информацию на отдельную тему, а каждое поле таблицы – содержать сведения по теме таблицы. При разработке надо учитывать:
-
Каждое поле должно быть связано с темой таблицы;
-
Не рекомендуется включать в таблицу данные, которые являются результатом выражения;
-
В таблице должна присутствовать вся необходимая информация;
-
Информацию следует разбивать на наименьшие логические единицы.
Выделяем следующие таблицы и атрибуты:
-
Создатели (Код_создателя, Создатель) – здесь хранятся сведения об людях, принимавших участие в подготовке издания (авторах, составителях, редакторах). Такое объединение допустимо, так как данные о создателях выбираются из одного домена (фамилии и имена) и исключают дублирование данных. Так как фамилия и инициалы создателя могут быть достаточно большими и будут многократно встречается в разных изданиях, то их необходимо нумеровать и ссылаться на эти номера. Для этого вводим целочисленный атрибут Код_создателя, который будет автоматически наращиваться на единицу при добавлении нового создателя.
-
Издательства (Код_издательства, Название, Город) – здесь находятся данные о названии издательства и городе, где расположено издательство. Так же вводим целочисленный атрибут Код_издания, который будет автоматически наращиваться на единицу при добавлении нового издания.
-
Виды издания (Вид_издания, Название_вида) – здесь хранятся данные о названии вида издания. Так же вводим целочисленный атрибут Вид_издания, который будет автоматически наращиваться на единицу при добавлении нового названия вида издания.
-
Раздел (Название_раздела, Библиотечный_код, Код_раздела, Код_родителя) – здесь хранятся данные о названии разделов, их коды по библиотечно-библиографическому классификатору и их взаимосвязи (ерархия). Так же вводим целочисленный атрибут Код_раздела, который будет автоматически наращиваться на единицу при добавлении нового раздела.
-
Издание (Код_издания, Код_раздела, Заглавие, Вид_издания, Авторский_знак, Код_издательства, Год_издания, Аннотация) – здесь хранится общая информация об экземпляре и его принадлежности к разделу. Так же вводим целочисленный атрибут Код_издания, который будет автоматически наращиваться на единицу при добавлении нового издания.
-
Переплёты (Номер_переплёта, Код_издания, Дата_приобретения) – здесь хранится информация о конкретном экземпляре (переплёте), такая как инвентарный номер, дата проибретения.
-
Группа (Код_группы, Название_группы, Код_родителя) – здесь хранятся данные о названии групп читателей, и их взаимосвязи (ерархия). Так же вводим целочисленный атрибут Код_группы, который будет автоматически наращиваться на единицу при добавлении нового группы.
-
Читатели (Номер_читателя, Код_группы, Код_фамилии, Код_имени, Код_отчества, Код_города, Код_улицы, Дом_Квартира, Номер_телефона, Дата_рождения, Дата_регистрации, Комментарий) – здесь хранится информация о читателе и его принадлежности к группе. Так же вводим целочисленный атрибут Номер_читателя, который будет автоматически наращиваться на единицу при добавлении нового читателя и будет являться номером читательского билета.
-
Авторы (Код_создателя, Код_издания) – эта таблица является ассоциацией между таблицами Создатели и Издание.
-
Составители (Код_создателя, Код_издания) – эта таблица является ассоциацией между таблицами Создатели и Издание.
-
Редакторы (Код_создателя, Код_издания) – эта таблица является ассоциацией между таблицами Создатели и Издание.
-
Выдача (Номер_переплёта, Номер_читателя, Дата_выдачи, Дата_сдачи) - эта таблица хранит ассоциации между таблицами Переплёт и Читатель.
-
Фамилии (Код_фамилии, Фамилия) – здесь хранятся данные о фамилиях читателей. Так же вводим целочисленный атрибут Код_фамилии, который будет автоматически наращиваться на единицу при добавлении новой фамилии.
-
Имена (Код_имени, Имя) – здесь хранятся данные об именах читателей. Так же вводим целочисленный атрибут Код_имени, который будет автоматически наращиваться на единицу при добавлении нового имени.
-
Отчества (Код_отчества, Отчество) – здесь хранятся данные об отчествах читателей. Так же вводим целочисленный атрибут Код_отчества, который будет автоматически наращиваться на единицу при добавлении нового отчества.
-
Города (Код_города, Город) – здесь хранятся данные о названии городов, где проживают читатели. Так же вводим целочисленный атрибут Код_города, который будет автоматически наращиваться на единицу при добавлении нового города.
-
Улицы (Код_улицы, Улица) - здесь хранятся данные о названия улиц, где проживают читатели. Так же вводим целочисленный атрибут Код_улицы, который будет автоматически наращиваться на единицу при добавлении новой улицы.
Выделение этих таблиц позволяет избежать возникновения противоречий, снижает объём хранимых данных и позволяет исключить повторный ввод названий.