Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пример разработки и оформления проекта.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
423.94 Кб
Скачать

Анализ предметной области и инфологическое проектирование

В разделе «Функциональная модель предметной области» должны быть приведены результаты функционального моделирования предметной области учебной базы данных, выполненного в среде 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.            Представить список книг, взятых и не возвращенных конкретным абонентом.