Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Разработка информационной модели

Постановка задачи

Пример для иллюстрации информационной модели в рамках сжатой статьи должен быть достаточно компактным и относиться к общеизвестной области. Рассмотрим модель хранения и упорядочивания книг в библиотеке, с помощью которой можно было бы легко находить издания, анализировать их состав и состояние.

Предположим, что книги, выдаваемые читателям, хранятся на пронумерованных стеллажах и полках в нескольких комнатах. Рассматриваемая модель должна давать возможности:

  1. быстро находить единицу хранения, находящуюся в библиотеке;
  2. быстро находить единицу хранения, выданную читателю;
  3. анализировать состав библиотечного фонда.

Для упрощения задачи абстрагируемся от таких особенностей, как хранение книг на абонементе и в читальном зале, межбиблиотечный обмен и т.п.

Исследование структуры предметной области

Информационная модель должна соответствовать исследуемым объектам, давать о них достаточное для практического анализа представление, поэтому при ее построении важно выбрать наиболее важные предметы, явления, их характеристики и взаимосвязи. Обычно такой отбор производится экспертным путем, например, в ходе интервью со специалистами в исследуемой предметной области. В данном примере очевидно, что в качестве основных отображаемых в модели компонентов должны быть выбраны:

  1. единицы хранения;
  2. пользователи.

В модели участвуют и другие объекты - стеллажи, полки, выходные данные, адреса и телефонные номера читателей (пользователей) и т.п., но от их детального изучения можно абстрагироваться. Например, нас не интересует изготовлены ли стеллажи из дерева или из металла, ведется ли нумерация полок сверху вниз или снизу вверх и т.п. Эти сведения можно не закладывать в модель, поскольку библиотекарь обладает достаточным опытом, чтобы без труда их самостоятельно идентифицировать (на стеллажи и полки принято наносить соответствующие визуально распознаваемые таблички, их достаточно пронумеровать).

«Разработка информационной модели» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

Стеллажи в библиотеке. Автор24 — интернет-биржа студенческих работ

Рисунок 1. Стеллажи в библиотеке. Автор24 — интернет-биржа студенческих работ

Можно описать исследуемую область в виде 3-х табличной модели:

  1. издания;
  2. читатели;
  3. выдачи.

В третьей из перечисленных таблиц будет храниться информация о том, какому читателю какие издания выданы.

Реализация модели компьютерными средствами

Информационную модель библиотеки лучше всего реализовать с помощью компьютерной реляционной базы данных.

Замечание 1

До появления компьютеров в библиотеках для учета читателей использовались т.н. формуляры, а для учета книг - каталоги, причем в рамках одной библиотеки могло сосуществовать несколько каталогов: алфавитный, тематический и т.п. Они представляют собой упорядоченные ящики с картонными карточками и до сих пор используются наряду с электронными средствами учета.

<a href=Библиотечный каталог. Автор24 — интернет-биржа студенческих работ" />

Рисунок 2. Библиотечный каталог. Автор24 — интернет-биржа студенческих работ

Спроектируем таблицу "Издания" со следующими колонками:

  1. автор;
  2. название;
  3. дата выпуска;
  4. комната хранения;
  5. стеллаж хранения;
  6. полка хранения;
  7. инвентарный номер.

Инвентарный номер однозначно характеризует любую единицу хранения. Например, можно себе представить, что в библиотеку поступило несколько экземпляров одной и той же книги и место их хранения совпадает (комната, стеллаж, полка), т.е. в описывающих их строках все поля идентичны и единственным способом отличить один экземпляр от другого является инвентарный номер. На самой книге его можно надписать вручную или пометить книгу с помощью наклейки с цифрами или даже штрих-кодом.

Замечание 2

Современные офисные базы данных, такие, как Microsoft Access, позволяют формировать отчеты для печати на стандартных наклейках.

Поле "Инвентарный номер" должно быть уникальным и не пустым в рамках своей колонки. В качестве типа данных для него лучше всего выбрать целое число, поскольку поиск по числам производится в реляционных базах данных быстрее всего. Его следует назначить ключевым, т.е. однозначно характеризующим строки данной таблицы и используемым как внешний ключ в зависимых таблицах.

Таблица "Читатели" будет иметь следующие колонки:

  1. номер читательского билета;
  2. номер удостоверения личности;
  3. адрес;
  4. телефон;
  5. email.

Читательский билет. Автор24 — интернет-биржа студенческих работ

Рисунок 3. Читательский билет. Автор24 — интернет-биржа студенческих работ

Следует подчеркнуть, что в качестве ключевого поля целесообразно выбрать номер читательского билета, а не удостоверения личности. Последний, казалось бы, также однозначно характеризует читателя библиотеки, но его использованию в качестве ключевого поля препятствуют следующие обстоятельства:

  1. удостоверения личности бывают разными (паспорт, заграничный паспорт, военный билет); каждый вид имеет уникальный номер со сложной структурой, что неудобно при учете; кроме того, существуют лица без гражданства, которым не запрещено быть читателями библиотеки;
  2. в качестве ключевого поля целесообразно выбирать целое число, поскольку компьютер обрабатывает таковые наиболее быстро, а значит поиск по базе данных будет наиболее эффективным; это следует иметь в виду, нумеруя читательские билеты; повлиять же на нумерацию, например, паспортов возможности нет.

Наконец, спроектируем третью таблицу - "Выдачи" со следующими полями:

  1. инвентарный номер издания;
  2. номер читательского билета абонента;
  3. дата выдачи издания;
  4. дата фактического возврата.

Первые два поля следует назначить вторичными ключами. Это значит, что в поле "Инвентарный номер издания" могут содержаться только значения из соответствующей колонки таблицы "Издания", а в поле "Номер читательского билета абонента" - из таблицы "Читатели". Современные СУБД самостоятельно следят за соблюдением подобных условий (целостностью данных).

Полям с датами следует назначить тип "дата/время", причем поле "Дата выдачи" должно быть обязательным для заполнения: без этого запись в таблице "Выдачи" не имеет смысла.

В таблице "Выдачи" можно было бы предусмотреть и поле "Дата планируемого возврата", но, поскольку срок, на который выдаются книги, известен, это значение можно вычислять динамически, прибавляя к дате выдачи, например, 30 дней.

В полученную информационную модель после формирования таблиц можно добавить дополнительные удобства: представления (views), триггеры, ограничения, функции, средства визуализации и т.п.

Дата написания статьи: 10.02.2019
Получи помощь с рефератом от ИИ-шки
ИИ ответит за 2 минуты
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot