Анализ предметной области и инфологическое проектирование. В разделе «Функциональная модель предметной области» должны быть приведены результаты функционального моделирования предметной области

 
 

В разделе «Функциональная модель предметной области» должны быть приведены результаты функционального моделирования предметной области учебной базы данных, выполненного в среде BPwin. Словесные описания особенностей функционирования предметной области должны сопровождаться изображениями контекстной диаграммы предметной области, диаграмм декомпозиции и иерархической схемы функций (Node Tree-диаграммы BPwin) (рис.4-6).

Рис. 4 Пример контекстной диаграммы предметной области "Библиотека"

 
 

Рис. 5 Пример диаграммы декомпозиции предметной области "Библиотека"


Рис. 6 Пример иерархической диаграммы функций предметной области "Библиотека"

Описание диаграмм декомпозиции рекомендуется сопроводить сводными таблицами (табл. 1 и табл. 2) описаний работ (функций) и стрелок (данных)

Таблица 1

Описание работ

Имя работы Номер работы Описание работы
Работа библиотеки А0 Под работой библиотеки имеются в виду технологические аспекты ее функционирования
Комплектование библиотеки и хранение новых книг A1 Комплектование библиотеки предполагает приобретение новых книг, их хранение и списание
Справочно-библиографическое обслуживание A2 Справочно-библиографическое обслуживание предполагает занесение сведений о книгах в каталог и поиск книг в каталоге
Абонементное обслуживание A3 Абонементное обслуживание в том числе: 1) запись на абонемент 2) поиск книг в каталоге 3) оформление заявки в хранилище 4) выдача книг 5) прием возвращенных книг
Комплектование библиотеки A11 Комплектование библиотеки предполагает приобретение новых книг и списание пришедших в негодность. При комплектовании каждому экземпляру книги присваивается инвентарный номер
Хранение книг A12 Экземпляры книг хранятся в хранилище и выдаются по заявкам абонентов во временное пользование
Занесение в каталог A21 Вновь приобретенные книги регистрируются в каталоге
Библиографический поиск A22 По запросу абонента осуществляется поиск информации о книге в каталоге
Запись на абонемент A31 Посетители библиотеки могут быть записаны в качестве ее абонентов
Поиск книг A32 Поиск сведений о книге выполняется по заявке абонента
Выдача книг A33 Затребованные книги при наличии их в хранилище могут быть выданы
Оформление заявки A34 При наличии свободного экземпляра книги в хранилище оформляется заявка на затребованную книгу
Возврат книг A35 Выданные книги подлежат возврату и размещению их в хранилище

Таблица 2

Описание стрелок

Имя стрелки Описание стрелки
Абоненты Абоненты - это зарегистрированные клиенты библиотеки. После регистрации они приобретают права законных пользователей
Бюджет Бюджет регламентирует все виды работ в библиотеке
Возвращенные книги Возвращенные на абонемент книги размещаются в хранилище
Выданные книги Выданные книги - это один из вариантов книг на выходе и один из вариантов поступления книг
Запрос Перед оформлением заявки выполняется запрос на поиск информации о книге в каталоге
Зарегистрированные книги Статус зарегистрированной приобретает книга после ее занесения в каталог. После регистрации в каталоге зарегистрированная книга поступает на хранение
Затребованные книги При наличии свободного экземпляра по заявке затребованная книга поступает на абонемент
Заявка При наличии свободного экземпляра книги оформляется заявка на ее получение во временное пользование
Книги на входе Источники книг на входе библиотеки: 1) новые поступления 2) возвращенные книги
Книги на выходе Книги на выходе - это: 1) зарегистрированные, но востребованные книги 2) выданные книги 3) списанные книги
Новые книги Новые книги - это один из вариантов поступления книг в библиотеку
Персонал Сотрудники библиотеки
Посетители Библиотеку могут посещать клиенты, не являющиеся ее абонентами
Правила пользования Правила пользования распространяются только на справочно-библиографическое и абонементное обслуживание
Списанные книги Книги, пришедшие в негодность, подлежат списанию. Это один из вариантов книг на выходе
Справка Справка - это результат справочно-библиографического поиска по запросу абонента
Учтенные книги После поступления новой книге присваивается инвентарный номер и она приобретает статус учтенной книги. Учтенная книга поступает на хранение
Хранимые книги Книги, поступившие на хранение либо после присваивания им инвентарного номера, либо после их регистрации в каталоге

В разделе «Информационная модель предметной области» должны быть приведены результаты разработки информационной модели предметной области в терминах модели сущность-связь, выполненной в среде ERwin (т.н. Logical Model) [10] (рис. 7).

В разделе «Спецификации сущностей» следует для каждой сущности указать:

· · имя;

· · описание

Результаты удобно свести в таблицу типа приведенной ниже (табл. 5). При построении таблицы следует воспользоваться возможностями ERwin для формирования отчетов (по команде Tasks/Generate Reports).

 
 

Рис. 7 Пример информационной модели предметной области "Библиотека"

Таблица 3

Спецификации сущностей

Имя сущности Описание сущности
Абонемент История выдач и возврата книг. Содержит сведения о том, кому, кем, что и когда было выдано или возвращено
Абонент Содержит информацию об абонентах библиотеки
Зарегистрированная книга Содержит информацию о книге, зарегистрированной в каталоге
Персонал Содержит информацию о сотрудниках библиотеки
Сотрудник Сотрудник, являющийся абонентом библиотеки
Студент Студент, являющийся абонентом библиотеки
Хранимая книга Содержит информацию о наличии экземпляров свободных книг

В разделе «Спецификации атрибутов» для каждого атрибута указать:

· · имя сущности;

· · имя атрибута;

· · описание;

· · первичный ключ;

· · внешний ключ;

· · имя домена (тип).

Результаты удобно свести в таблицу типа приведенной ниже (табл. 4). При построении таблицы следует воспользоваться возможностями ERwin для формирования отчетов (по команде Tasks/Generate Reports).

Таблица 4

Спецификации атрибутов сущностей

Имя сущности Имя атрибута Описание атрибута Первичный ключ Внешний ключ Домен (тип)
Абонемент что выдано Инвентарный номер книги на абонементе - компонент первичного ключа и ключ связи с сущностью "Хранимая книга". Да Да String
  дата1 Дата начала этапа истории книги, компонент первичного ключа Да Нет Datetime
  дата2 Дата конца этапа истории книги Нет Нет Datetime
  кому выдано Шифр абонента, которому выдана или кем возвращена книга - внешний ключ связи с сущностью "Абонент" Нет Да String
  кто выдал Код сотрудника, выдавшего или принявшего книгу - внешний ключ связи с сущностью "Персонал" Нет Да String
Абонент шифр Уникальный шифр абонента - ключ сущности Да Нет String
  фио Фамилия, имя, отчество абонента Нет Нет String
  телефон Телефон абонента Нет Нет String
  тип Категория абонента Нет Нет String
Зарегистрированная книга номер Учетный номер зарегистрированной в каталоге книги - ключ сущности Да Нет String
  автор Автор Нет Нет String
  название Название Нет Нет String
  год издания Год издания Нет Нет Number
Персонал код Учетный номер служащего - ключ сущности Да Нет String
  фио Фамилия, имя, отчество Нет Нет String
  должность Должность Нет Нет String
  руководитель Учетный номер служащего - руководитяля. Ключ рекурсивной связи сущности "Персонал" самой с собой Нет Да String
Сотрудник шифр Уникальный шифр абонента - первичный ключ сущности "Сотрудник" и внешний ключ связи с сущностью "Абонент" Да Да String
  должность Должность сотрудника Нет Нет String
  звание Ученое звание сотрудника Нет Нет String
  степень Ученая степень сотрудника Нет Нет String
Студент шифр Уникальный шифр абонента - первичный ключ сущности "Студент" и внешний ключ связи с сущностью "Абонент" Да Да String
  специальность Специальность по которой учится студент Нет Нет String
Хранимая книга инв_номер Уникальная характеристека экземпляра книги - ключ сущности Да Нет String
  какой книги экземпляр Учетный номер зарегистрированной в каталоге книги - внешний ключ связи с сущностью "Зарегистрированная книга" Нет Да String
  наличие Признак наличия экземпляра книги в книгохранилище (есть/нет) Нет Нет Number

В разделе «Спецификации связей» следует для каждой связи в иерархии агрегации указать:

· · имя;

· · имена связываемых сущностей;

· · описание;

· · тип (идентифицирующая/неидентифицирующая);

· · Null-значение внешнего ключа (разрешено/запрещено);

· · кардинальность (1:1 или 1:N или M:N);

Результаты удобно свести в таблицу типа приведенной ниже (табл. 5). При построении таблицы следует воспользоваться возможностями ERwin для формирования отчетов (по команде Tasks/Generate Reports).

Таблица 5

Спецификации связей в иерархии агрегации

Имя связи «отец-сын» Имя связи «сын-отец» Имя отцовской сущности Имя сыновьей сущности Описание связи Тип связи Null внешнего ключа Кардиналь-ность связи
Получил на   Абонент Абонемент Абонент получает или возвращает книгу на абонемент Неидентифи-цирующая Not Null 1: 0,1,N (один-ко-многим)
Представлена   Зарегистрированная книга Хранимая книга Зарегистрированная в каталоге книга представлена в книгохранилище. Неидентифи-цирующая Not Null 1: 0,1,N (один-ко-многим)
Руководит Подчиня-ется Персонал Персонал Один сотрудник руководит другим или подчиняется другому сотруднику Неидентифи-цирующая Null 0,1: 0,1,N (один-ко-многим)
Выдал на   Персонал Абонемент Сотрудник библиотеки выдает или принимает книгу на абонементе Неидентифи-цирующая Not Null 1: 0,1,N (один-ко-многим)
Выдана на   Хранимая книга Абонемент Хранимая книга выдается или возвращается на абонемент Идентифици-рующая Not Null 1: 0,1,N (один-ко-многим)

Для связей в иерархии обобщения указать:

· · тип связи (полная/неполная);

· · дискриминатор категорий-подтипов;

· · имя сущности-супертипа;

· · описание сущности-супертипа;

· · кардинальность (семантику) связи;

· · описание связи;

· · имя сущности-подтипа;

· · описание сущности-подтипа.

Результаты удобно свести в таблицу типа приведенной ниже (табл. 6). При построении таблицы следует воспользоваться возможностями ERwin для формирования отчетов (по команде Tasks/Generate Reports).

Таблица 6

Спецификации связей в иерархии обобщения

Тип связи Дискрими-натор категорий Сущность-супертип Описание сущности-супертипа Кардиналь-ность связи Описание связи Имя сущности-подтипа Описание сущности-подтипа
Неполная тип Абонент Содержит информацию об абонентах библиотеки Is a Студент как абонент библиотеки. Связь неполная, могут быть и другие категории абонентов Студент Студент, являющийся абонентом библиотеки
Неполная тип Абонент Содержит информацию об абонентах библиотеки Is a Сотрудник как абонент библиотеки. Связь неполная, могут быть и другие категории абонентов Сотрудник Сотрудник, являющийся абонентом библиотеки

В разделе «Ограничения ссылочной целостности» следует, с учетом семантических условий (бизнес-правил), действующих в предметной области, для каждой связи указать правила, которые управляют корректирующими запросами как со стороны отцовской сущности, так и со стороны сыновьей:

· · вставка в отцовской;

· · обновление в отцовской;

· · удаление в отцовской;

· · вставка в сыновьей;

· · обновление в сыновьей;

· · удаление в сыновьей.

Результаты удобно свести в таблицы типа приведенных ниже (табл. 7 и табл. 8). При построении таблиц следует воспользоваться возможностями ERwin для формирования отчетов (по команде Tasks/Generate Reports).

Таблица 7

Ограничения ссылочной целостности для бинарных связей

Имя связи «отец-сын» Имя связи «сын-отец» Тип связи Null внешнего ключа Ограничения ссылочной целостности
Вставка в отцовской Обновление в отцовской Удаление в отцовской Вставка в сыновьей Обновление в сыновьей Удаление в сыновьей
Получил на   Неиденти-фицирую-щая Not Null None Не влияет Restrict Запретить Restrict Запретить Restrict Запретить Restrict Запретить None Не влияет
Пред-ставлена   Неиденти-фицирую-щая Not Null None Не влияет Restrict Запретить Restrict Запретить Restrict Запретить Restrict Запретить None Не влияет
Руководит Подчи-няется Неиденти-фицирую-щая Null None Не влияет Set Null Установить Null Set Null Установить Null Set Null Установить Null Set Null Установить Null None Не влияет
Выдал на   Неиденти-фицирую-щая Not Null None Не влияет Restrict Запретить Restrict Запретить Restrict Запретить Restrict Запретить None Не влияет
Выдана на   Идентифи-цирующая Not Null None Не влияет Restrict Запретить Restrict Запретить Restrict Запретить Restrict Запретить None Не влияет

Таблица 8

Ограничения ссылочной целостности для категориальных связей

Тип связи Сущность-супертип Имя сущности-подтипа Ограничения ссылочной целостности
Вставка в отцовской Обновление в отцовской Удаление в отцовской Вставка в сыновьей Обновление в сыновьей Удаление в сыновьей
Неполная Абонент Студент None Не влияет Cascade Каскадировать Cascade Каскадировать Restrict Запретить Restrict Запретить None Не влияет
Неполная Абонент Сотрудник None Не влияет Cascade Каскадировать Cascade Каскадировать Restrict Запретить Restrict Запретить None Не влияет

В разделе «Запросы пользователей» должны быть сформулированы на русском языке содержательные запросы, которые могут представлять интерес для потенциальных пользователей учебной базы данных, например такие:

1. 1. Представить список абонентов данной категории.

2. 2. Представить все данные об абоненте, заданном его шифром.

3. 3. Представить список экземпляров книг, имеющихся в наличии в хранилище, по фамилии автора и названию.

4. 4. Представить список абонентов, имеющих на руках книги данного номинала (экземпляры одной и той же книги).

5. 5. Представить список книг, взятых и не возвращенных конкретным абонентом.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: