42800

Анализ информационных потребностей пользователей предметной области «Народное образование области»

Курсовая

Информатика, кибернетика и программирование

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

Русский

2013-11-01

684.5 KB

1 чел.

Оглавление

[1] Оглавление

[2] Введение

[3] Задание

[4] Теоретическая часть

[5] I . АНАЛИЗ ИНФОРМАЦИОННЫХ ПОТРЕБНОСТЕЙ ПОЛЬЗОВАТЕЛЕЙ

[5.1] Описание документов и запросов

[5.2] Описание исходных отношений

[5.3] Описание словарей

[5.4] Сопоставимость атрибутов

[6] УТОЧНЕНИЕ МНОЖЕСТВА ИСХОДНЫХ ОТНОШЕНИЙ

[7] СВЯЗЫВАНИЕ ОТНОШЕНИЙ

[8] Приложение

[9] Расчет вторичных атрибутов

[10] Индексы

[11] Представления

[12] Код DDL

[13] Заключение

Введение

Для выполнения работы была предложена предметная область «Народное образование области».

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

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

Естественно предположить, что такое связывание будет корректным в том случае, если новую информационную потребность  представить в виде простой структуры. Известный аппарат  нормализации отношений как раз и направлен на получение простых отношений, как правило, на получение 2-х – 3-х отношений, связанных по типу 1 : М в простые структуры.

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

Учитывая вышеизложенное, интеграционную методику проектирования КИМПО можно представить в виде следующих трех обобщенных этапов:

  •  анализа информационных потребностей пользователей и представления их в виде множества исходных отношений;
  •  уточнения множества исходных отношений, представления их в виде нормализованных, простых структур данных;
  •  связывания простых структур, являющихся представлениями информационных потребностей пользователей с базовой (текущей) КИМПО.

Задание

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

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

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

Отчетность по предметной области содержит следующие документы:

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

Тип школы

Число учащихся на одного преподавателя

Число вакансий преподавателей всего

Число вакансий преподавателей русского языка

Число вакансий преподавателей

математики

средняя

Средняя специализированная

Лицей

  1.  Сведения  о преподавателях средней школы №______ на ___\___\___г.

№ п\п

ФИО преподавателя

Базовые предметы по образованию

Вуз

Дата окончания вуза

Стаж работы преподавателя

общий

Преподаватель может окончить более чем 1 вуз.

  1.  Сведения об оснащенности школ дополнительными специализированными кабинетами и сооружениями

Районы города

Общее количество учящихся

Общее число школ

Число стандартных школ

Число специализированных школ

Теоретическая часть

КИМПО (сокращение от «концептуальная информационная модель предметной области») – это модель данных, предназначенная для моделирования информационных представлений о ПрО с целью дальнейшей их реализации в реляционной БД. По существу, КИМПО представляет собой гибридную модель данных, основанную на идеях реляционной модели и модели «сущность-связь».

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

В предлагаемой модели данных КИМПО конструктивными элементами являются:

  •  сущности (типы сущностей), состоящие из атрибутов;
  •  атрибутивные отношения между типами сущностей;
  •  домены атрибутов;
  •  отношения между доменами атрибутов.

В КИМПО типам объектов в общем случае соответствуют типы сущностей, свойствам – атрибуты сущностей, а связям – атрибутивные отношения.

Термином «сущность» в КИМПО обозначается понятие, более широкое по сравнению с моделями «сущность-связь» и близкое по смыслу к реляционному отношению.

Сущность – нечто, что может быть идентифицировано. Сущность может представлять собой объект (реальный или воображаемый), свойство объекта, связь между объектами, т.е., все, что различимо и имеет уникальный идентификатор. Таким образом, в КИМПО единообразно, в виде сущности может представляться то, что в других моделях представляется различными элементами (например, в ER-модели – сущностью, атрибутом, связью). Эта особенность указывает на близость КИМПО реляционной модели данных, в которой всё в конечном итоге представляется в виде реляционных отношений, состоящих из атрибутов.

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

Для удобства изложения далее в главе будем использовать вместо термина «тип сущности» термин «сущность» (кроме случаев, где требуется акцентировать внимание на природе понятия «тип сущности»).

Каждая сущность в КИМПО имеет имя и представляется с помощью атрибутов, которые её описывают и идентифицируют. По аналогии с реляционным отношением множество определений атрибутов сущности составляет схему сущности.

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

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

Атрибуты могут быть:

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

Атрибутивное отношение – бинарное отношение между двумя типами сущностей, устанавливаемое на основе сопоставления значений атрибутов сущностей, которые называются атрибутами связи.

В КИМПО предлагаются два типа атрибутивных отношений:

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

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

Отношения между доменами

  1.     - домены  и  пересекаются.

Например, домен фамилий студентов пересекается с доменом фамилий сотрудников.

  1.     - домены  и  не пересекаются.

Например, домен идентификаторов кафедр не пересекается с доменом идентификаторов факультетов.

  1.   - домен  входит в домен(является подмножеством ).

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

  1.   - домен  не входит в домен(не является подмножеством ).

Например, домен номеров контактных телефонов сотрудников не входит в домен телефонных номеров вуза и наоборот.

  1.   = - домены  и  совпадают по значениям.
  2.     - домены  и  тождественны.  
  3.   - домены  и  совместимы.

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

Например, домен имён личностей и названий юридических лиц совместимы, т.к. их объединение имеет смысл в качестве домена имён арендаторов помещений вуза.

Если домены пересекаются, то они совместимы.

Говоря, что домены пересекаются, мы утверждаем возможность сравнения значений атрибутов, определённых на этих доменах, с точки зрения семантики. Значения атрибутов можно сравнивать, если эти атрибуты определены на одном домене. Если атрибуты определены на разных доменах, то эти домены должны входить в один общий домен. Атрибуты в этом случае сравниваются как определённые на этом обобщающем домене.

  1.   - домены  и  несовместимы

Домены  и  несовместимы, если их объединение не имеет смысла в исследуемой ПрО и для них нельзя найти такой домен , что .

Например, домен идентификаторов подразделений несовместим с доменом идентификаторов личностей.

Номер документа

Название документа

Тип объекта

Вид документа

О 1

Общие сведения об образовательных учреждениях области

Образовательное учреждение

виртуал.

О 2

Сведения о лицеях области

Лицей

виртуал.

З 3

Справка об успеваемости школ района в разрезе классов

Класс

запрос

О 4

Справка об отсеве учащихся по специализированным школам в разрезе классов

Учащиеся

запрос

О 5

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

Учащиеся

виртуал.

О 6

Годовой отчет о спонсорской помощи

Спонсорский взнос

виртуал.

О 7

Сведения о спонсоре

Спонсор

виртуал.

Д 8.1

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

Образовательное учреждение

реальн.

Д 8.2

Сведения  о преподавателях средней школы №______ на ___\___\___г.

Преподаватель

реальн.

Д 8.3

Сведения об оснащенности школ дополнительными специализированными кабинетами и сооружениями

Школа

реальн.

О9

Сведения об учащихся, принимающих участие в конкурсах

Учащиеся

виртуал.

I . АНАЛИЗ ИНФОРМАЦИОННЫХ ПОТРЕБНОСТЕЙ ПОЛЬЗОВАТЕЛЕЙ

Таблица 1

Описание документов и запросов

Таблица 2

Описание исходных отношений

Код отношения

Код атрибута

Название атрибута

Зависимость

Множественность

Домен

Вторичность

Атрибут для расчета

О1

О1-1

Номер учреждения

О1-9

-

1-5000

первич.

-

О1-2

Район

О1-9

-

1-20

первич.

-

О1-3

Номер телефона районного отдела народного образования

О1-2

-

словарь

первич.

-

О1-4

Тип учреждения

О1-9

-

словарь

первич.

-

О1-5

Адрес

учреждения

О1-9

-

словарь

первич.

-

О1-6

ФИО директора

О1-9

-

словарь

первич.

-

О1-7

Телефоны директора

О1-9

множествен.

словарь

первич.

-

О1-8

Число учащихся

О1-9

-

50-1000

вторич.

S(ВО1-1, ВО1-2)

О1-9

id_обр_учр

ключ

-

1-500

первич.

  1.  Я считаю нужным ввести суррогатный ключ «id_обр_учр», альтернативным ключом являются атрибуты «Номер учреждения» и «Район».
  2.  Нарушение 1НФ, т.к. атрибут «Телефоны директора» - множественный.
  3.  Нарушение 3НФ, т.к. «Номер телефона районного отдела народного образования» зависит от не ключевого атрибута «Район».

  1.  Я считаю нужным ввести кодификатор «Тип образовательного учреждения», т. к. к образовательным учреждениям относятся стандартные школы, лицеи, специализированные школы.

  1.  Я считаю нужным ввести кодификатор «Район».
  2.  Атрибут «Число учащихся» является вторичным и рассчитывается на основе данных отношения ВО1, поэтому в дальнейшем он будет удален.

ВО1

ВО1-1

id_обр_учр

ключ

-

1-500

первич.

-

ВО1-2

Личный номер учащегося

ключ

-

1-10000

первич.

-

ВО1-3

ФИО

учащегося

ВО1-1,

ВО1-2

-

словарь

первич.

-

ВО1-4

Дата рождения

ВО1-1,

ВО1-2

-

1994-2005

первич.

-

ВО1-5

Адрес проживания

ВО1-1, ВО1-2

-

словарь

первич.

-

  1.  Личный номер учащегося является уникальным только в пределах одного образовательного учреждения, в разных образовательных учреждениях могут быть учащиеся с одинаковыми номерами, чтобы этого избежать сделаем атрибуты «id_обр_учр» и «Личный номер учащегося» ключевыми.

О2

О2-1

id_обр_учр

ключ

-

1-500

первич.

-

О2-2

Тип  учреждения

О2-1

-

словарь

первич.

-

О2-3

Название лицея

О2-1

-

словарь

первич.

-

О2-4

Адрес лицея

О2-1

-

словарь

первич.

-

О2-5

Дата образования лицея

О2-1

-

словарь

первич.

-

О2-6

Специализация

О2-1

-

словарь

первич.

-

О2-7

Число учителей по специализации

О2-1,

О2-6

-

1-200

вторич.

  1.  Добавим атрибут «Тип учреждения» для более точного описания сведений.
  2.  Добавим суррогатный ключ «id_обр_учр».

  1.  Нарушение 3НФ, атрибут «Число учителей по специализации» зависит от не ключевого атрибута «Специализация».

  1.  Для расчета вторичного атрибута «Число учителей по специализации» необходимо воспользоваться данными отношения О9, для этого нужно сначала посчитать всех учителей, а потом выбрать только тех, у кого базовые предметы по образованию совпадают с предметами по специализации образовательного учреждения.

О3

О3-1

id_обр_учр

ключ

-

1-500

первич.

О3-2

Номер класса

ключ

-

1-11

первич.

О3-3

Число классов

данного номера

О3-1,

О3-2

-

1-5

вторич.

S (

ВО3.1-1,

ВО3.1-2)

О3-4

Общее число учащихся в классах данного номера

О3-1,

О3-2

-

1-150

вторич.

S (

ВО4-1,

ВО4-2,

ВО4-3,

ВО4-4,

ВО4-5)

О3-5

Число неуспевающих учащихся в классах данного номера по итогам предыдущей четверти

О3-1,

О3-2

-

1-35

вторич.

S(

ВО3.2-1,

ВО3.2-2,

ВО3.2-3,

ВО3.2-4,

ВО3.2-5,

ВО3.2-7)

если ВО3.2-6 <=3

  1.  Нарушений НФ нет, так как все атрибуты зависят от полного ключа.

  1.  Атрибут «Число классов данного номера» является вторичным и рассчитывается на основе данных виртуального отношения ВО3.1, в дальнейшем он будет удален.

  1.  Атрибут «Общее число учащихся в классах данного номера» является вторичным и рассчитывается на основе данных виртуального отношения ВО4, в дальнейшем он будет удален.

  1.  Атрибут «Число неуспевающих учащихся в классах данного номера по итогам предыдущей четверти» является вторичным и рассчитывается на основе виртуального отношения ВО3.2, в дальнейшем он будет удален.

ВО3.1

ВО3.1-1

id_обр_учр

ключ

-

1-500

первич.

ВО3.1-2

Номер класса

ключ

-

1-11

первич.

ВО3.1-3

Буква класса

ключ

-

словарь

первич.

  1.  «Номер класса» и «Буква класса» являются уникальными только в одном учреждении, поэтому в состав ключа входит еще атрибут «id_обр_учр».
  2.  Нарушений НФ нет, все атрибуты первичные

ВО3.2

ВО3.2-1

id_обр_учр

ключ

-

1-500

первич.

ВО3.2-2

Личный номер учащегося

ключ

-

1-10000

первич.

ВО3.2-3

Номер класса

ключ

-

1-11

первич.

ВО3.2-4

Номер четверти

ключ

-

1-4

первич.

ВО3.2-5

Предмет

ключ

-

1-35

первич.

ВО3.2-6

Оценка

ВО3.2-1,

ВО3.2-2,

ВО3.2-3,

ВО3.2-4,

ВО3.2-5

-

2-5

первич.

-

ВО3.2-7

Буква класса

ключ

-

словарь

первич.

-

ВО3.2-8

Год

ключ

-

словарь

первич

-

  1.  Личный номер ученика уникален только в пределах района.
  2.  Считаю нужным ввести кодификатор «Оценка», так как данный атрибут может принимать значения от 2 до 5.

О4

О4-1

id_обр_учр

ключ

-

1-500

первич.

О4-2

Тип учреждения

О4-1

-

словарь

первич.

-

О4-3

Номер класса

ключ

-

1-11

первич.

-

О4-4

Год

ключ

-

1990-2011

первич.

-

О4-5

Общее число отчисленных учеников

О4-1,

О4-3,

О4-4

-

1-30

вторич.

S (ВО4-1 ,

ВО4-2,

ВО4-3,

ВО4-4, ВО4-5 )

О4-6

Общее число учеников, оставленных на второй год

О4-1,

О4-3,

О4-4

-

1-30

вторич.

S (ВО4-1 , ВО4-2,

ВО4-3,

ВО4-4, ВО4-6 )

  1.  Нарушение 2НФ, т.к. атрибут «Тип учреждения» зависит от части ключа, т.е. от атрибута «id_обр_учр».

  1.  Так как необходимы сведения об отчисленных учениках в разрезе классов за год, то введем атрибут «Год», который будет ключевым, атрибут «Номер класса» также становится ключом.

  1.  Атрибут «Общее число отчисленных учеников» является вторичным и рассчитывается на основе данных виртуального отношения ВО4.

  1.  Атрибут «Общее число учеников, оставленных на второй год» является вторичным и рассчитывается на основе данных виртуального отношения ВО4.

ВО4

ВО4-1

id_обр_учр

ключ

-

1-500

первич.

ВО4-2

Личный номер учащегося

ключ

-

1-10000

первич.

ВО4-3

Год

ключ

-

словарь

первич.

ВО4-4

Номер класса

ключ

-

словарь

первич.

ВО4-5

Отчислен/Не отчислен

ВО4-1,

ВО4-2,

ВО4-3,

ВО4-4

-

словарь

первич.

-

ВО4-6

Переведен/Оставлен на второй год

ВО4-1,

ВО4-2,

ВО4-3,

ВО4-4

-

словарь

первич.

-

ВО4-7

Буква класса

ключ

-

словарь

первич.

-

  1.  Считаю нужным ввести кодификаторы для атрибутов  «Отчислен/ Не отчислен» и «Переведен/ Оставлен на второй год».

О5

О5-1

id_обр_учр

ключ

-

1-500

первич.

О5-2

Личный номер учащегося

ключ

-

1-10000

первич.

О5-3

Год проведения олимпиады

ключ

-

1990-2011

первич.

О5-4

Предмет

ключ

-

словарь

первич.

О5-5

Количество набранных баллов

О5-1, О5-2,

О5-3, О5-4

-

0-100

первич.

-

О5-6

Место

О5-1, О5-2,

О5-3,

О5-4

-

словарь

первич.

-

  1.  Нарушений нормальных форм нет.
  2.  Все атрибуты являются первичными.

О6

О6-1

id_обр_учр

ключ

-

1-500

первич.

О6-2

Шифр

спонсора

ключ

-

словарь

первич.

О6-3

Плановый объем спонсорского взноса

О6-1,

О6-2

-

словарь

первич.

-

О6-4

Фактический объем спонсорского взноса

О6-1,

О6-2

-

словарь

вторич.

S(ВО6-1,

ВО6-2,

ВО6-3,

ВО6-4)

  1.  Атрибут «Фактический объем спонсорского взноса» является вторичным и рассчитывается на основе виртуального отношения ВО6, его данные можно не хранить.

ВО6

ВО6-1

id_обр_учр

ключ

-

1-500

первич.

ВО6-2

Шифр спонсора

ключ

-

словарь

первич.

ВО6-3

Дата оказания помощи

ключ

-

словарь

первич.

ВО6-4

Сумма спонсорской помощи

ВО6-1,

ВО6-2,

ВО6-3

-

50000-1000000

первич.

-

  1.  Нарушений нормальных форм нет, все атрибуты являются первичными.

О7

О7-1

Шифр

спонсора

ключ

-

словарь

первич.

О7-2

Наименование предприятия

О7-1

-

словарь

первич.

-

О7-3

Тип предприятия

О7-1

-

словарь

первич.

-

О7-4

ФИО начальника учреждения спонсора

О7-1

-

словарь

первич.

-

О7-5

Контактный телефон начальника предприятия

О7-1

-

словарь

первич.

-

  1.  Считаю нужным ввести кодификатор «Тип предприятия»
  2.  Все атрибуты являются первичными.

О8

О8-1

id_обр_учр

ключ

-

1-500

певрич.

О8-2

Тип учреждения

О8-1

-

словарь

первич.

-

О8-3

Число учащихся на одного преподавателя

О8-1

-

первич.

-

О8-4

Число вакансий преподавателей всего

О8-1

-

1-30

вторич.

О8-5 + О8-6

О8-5

Число вакансий преподавателей русского языка

О8-1

-

1-15

первич.

-

О8-6

Число вакансий преподавателей математики

О8-1

-

1-15

первич.

-

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

  1.  Атрибут «Число вакансий преподавателей всего» является вторичным и рассчитывается на основе отношения О8, в дальнейшем он будет удален.

О9

О9-1

id_обр_учр

ключ

-

1-500

первич.

О9-2

Тип учреждения

О9-1

-

словарь

первич.

-

О9-3

Номер преподавателя

ключ

-

словарь

первич.

О9-4

Базовые предметы по образованию

О9-1,

О9-3,

О9-6

множествен.

словарь

первич.

-

О9-5

Вуз

О9-1,

О9-3,

О9-6

-

словарь

первич.

-

О9-6

Номер диплома

ключ

-

словарь

первич.

-

О9-7

Дата окончания вуза

О9-1,

О9-3,

О9-6

-

1970-2006

первич.

-

О9-8

Общий стаж работы преподавателя

О9-1,

О9-3

-

1-40

вторич.

(SYSDATE- ВО9-4) + ВО9-5

  1.  Нарушение 2НФ, так как атрибут «Тип образовательного учреждения» зависит от атрибута «id_обр_учр», который является частью составного ключа.

  1.  Атрибут «Общий стаж работы преподавателя» зависит от части полного ключа - от атрибута «id_обр_учр», «Номер преподавателя» (Нарушение 2НФ).

  1.  Номер преподавателя уникален только в пределах одного образовательного учреждения, поэтому в состав ключа входят атрибуты: «id_обр_учр», «Номер преподавателя».

  1.  Подразумевается, что преподаватель ведет только те предметы, которые являются базовыми по образованию.

  1.  Атрибут «Общий стаж работы преподавателя» является вторичным и рассчитывается на основе виртуального отношения ВО9.

  1.  Добавим атрибут «Номер диплома», т.к. преподаватель может закончить один и тот же вуз несколько раз, а «Номер диплома» является уникальным.

ВО9

ВО9-1

id_обр_учр

ключ

-

1-500

первич.

ВО9-2

Номер преподавателя

ключ

-

словарь

первич.

ВО9-3

ФИО преподавателя

ВО9-1,

ВО9-2

-

словарь

первич.

-

ВО9-4

Дата занятия должности

ВО9-1,

ВО9-2

-

1970-2011

первич.

-

ВО9-5

Стаж работы до занятия должности

ВО9-1,

ВО9-2

-

5-40

первич.

  1.  Атрибут «Стаж работы» является первичным, так как во время прихода учителя на новую работу, в его трудовой книжке написан стаж работы до занятия данной должности.

О10

О10-1

Район

ключ

-

1-20

первич.

О10-2

Общее количество учащихся

О10-1

-

словарь

вторич.

S(ВО1-1,

ВО1-2)

О10-3

Общее число школ

О10-1

-

словарь

вторич.

S(О1-1,

О1-2)

О10-4

Число стандартных школ

О10-1

-

1-100

вторич.

S(О1-1,

О1-2,

О1-4)

О10-5

Число специализированных школ

О10-1

-

1-30

вторич.

S(О1-1,

О1-2,

О1-4)

О10-6

Число лицеев

О10-1

-

1-30

вторич.

S(О1-1,

О1-2,

О1-4)

  1.  Добавим атрибут «Число лицеев» для полного отражения сведений об образовательных учреждениях района.

  1.  Атрибут «Общее количество учащихся» является вторичным и рассчитывается на основе данных отношения ВО1, в дальнейшем он будет удален.

  1.  Атрибут «Число стандартных школ» является вторичным и рассчитывается на основе данных отношения О1, в дальнейшем он будет удален.

  1.  Атрибут «Общее число школ» является вторичным и рассчитывается на основе данных отношения О1, в дальнейшем он будет удален.

  1.  Атрибут «Число специализированных школ»  является вторичным и рассчитывается на основе данных отношения О1, в дальнейшем он будет удален.

  1.  Атрибут «Число лицеев»  является вторичным и рассчитывается на основе данных отношения О1, в дальнейшем он будет удален.

О11

О11-1

id_обр_учр

ключ

-

1-500

первич.

-

О11-2

Личный номер учащегося

ключ

-

1-10000

первич.

-

О11-3

Год проведения конкурса

ключ

-

первич.

-

О11-4

Название конкурса

ключ

-

словарь

первич.

-

О11-5

Место

О11-1,

О11-2,

О11-3,

О11-4

-

словарь

первич.

-

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

Таблица 3

Описание словарей

Код

Значение

С_1  С_Название_лицея для атрибута О2-3, Название лицея

1

Бригантина

2

Художественный лицей им. Шишкина

3

им. Пушкина

4

им. Ломоносова

им. Лермонтова

С_2  С_ФИО_директора для атрибута О1-6, ФИО директора

1

Иванов Аркадий Петрович

2

Землецов Петр Васильевич

3

Васильева Татьяна Захаровна

4

Полежайкин Илья Ильич

5

Сидорова Наталья Дмитриевна

6

Лукин Степан Ильич

С_3  С_Наименование_предприятия для атрибута  О7-2, Наименование предприятия

1

«Лилия»

2

«Домострой»

3

«Газпром»

4

«Мир книги»

К_1   К_Район для атрибута О1-2, Район

1

Залесовский

2

Заринский

3

Кытмановский

20

Барнаульский

К_2   К_Тип_учреждения для атрибута О1-4, Тип учреждения

1

стандартная школа

2

специализированная школа

3

лицей

К_3   К_Предмет для атрибута ВО3.2-5, Предмет

1

русский язык

2

математика

3

литература

4

природоведение

35

биология

К_4   К_Оценка для атрибута ВО3.2-6, Оценка

1

2

2

3

3

4

4

5

К_5   К_Отчислен/Не_отчислен для атрибута ВО4-5, Отчислен/Не отчислен

1

отчислен

2

не отчислен

К_6  К_Переведен/Оставлен_на_второй_год для атрибута ВО4-6, Переведен/Оставлен на второй год

1

переведен

2

оставлен на второй год

К_7   К_Тип_предприятия для атрибута О7-3, Тип предприятия

1

ИП

2

ОАО

20

ЗАО

К_8 К_Специализация для атрибута О2-6, Специализация

1

химико-биологическая

2

физико-математическая

20

социально-экономическая

Таблица 4

Сопоставимость атрибутов

Код отношения 1

Код атрибута 1

Название

Код отношения 2

Код атрибута 2

Название

Вид

сопост-ти

ВО1

ВО1-1

id_обр_учр

О2

О2-1

id_обр_учр

Сопоставимы

  =

О3

О3-1

id_обр_учр

ВО3.1

ВО3.1-1

id_обр_учр

ВО3.2

ВО3.2-1

id_обр_учр

О4

О4-1

id_обр_учр

ВО4

ВО4-1

id_обр_учр

О5

О5-1

id_обр_учр

О6

О6-1

id_обр_учр

ВО6

ВО6-1

id_обр_учр

О8

О8-1

id_обр_учр

О9

О9-1

id_обр_учр

ВО9

ВО9-1

id_обр_учр

О11

О11-1

id_обр_учр

О1

О1-2

Район

О7

О7-2

Район

Сопоставимы

 =

О10

О10-1

Район

О1

О1-4

Тип учреждения

О2

О2-2

Тип учреждения

Сопоставимы

  =

О4

О4-2

Тип учреждения

О8

О8-2

Тип учреждения

О9

О9-2

Тип учреждения

О1

О1-6

ФИО директора

ВО9

ВО9-3

ФИО преподавателя

 <

ВО1

ВО1-2

Личный номер учащегося

ВО3.2

ВО3.2-2

Личный номер учащегося

Сопоставимы

  =

ВО4

ВО4-2

Личный номер учащегося

О5

О5-2

Личный номер учащегося

О11

О11-2

Личный номер учащегося

О1

О1-5

Адрес учреждения

О2

О2-4

Адрес лицея

>

О3

О3-2

Номер класса

ВО3.1

ВО3.1-2

Номер класса

Сопоставимы

 =

ВО3.2

ВО3.2-3

Номер класса

О4

О4-3

Номер класса

ВО4

ВО4-4

Номер класса

ВО3.2

ВО3.2-5

Предмет

О5

О5-4

Предмет

Сопоставимы

  =

О9

О9-4

Базовые предметы по образованию

О2

О2-6

Предмет по специализации

О6

О6-2

Шифр спонсора

ВО6

ВО6-2

Шифр спонсора

Сопоставимы

 =

О7

О7-1

Шифр спонсора

О9

О9-3

Номер преподавателя

ВО9

ВО9-2

Номер преподавателя

Сопоставимы

 =

  1.  УТОЧНЕНИЕ МНОЖЕСТВА ИСХОДНЫХ ОТНОШЕНИЙ
  2.  Свертка отношений

Свертка подмножества атрибутов некоторого отношения в дополнительное отношение осуществляется в том случае, если в именах атрибутов этого подмножества просматриваются значения одного классификатора.

В результате свертки – получаем следующие два отношения, связанные по типу иерархии:

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

 

  1.  Нормализация отношений

При нормализации отношения, не удовлетворяющего 1-ой, 2-ой или 3-ей нормальной формам, получаем два отношения, связанные по типу 1:M.

  •  Отношение удовлетворяет 1НФ, если не содержит составных атрибутов или атрибутов с множественным значением.
  •  Отношение удовлетворяет 2НФ, если оно удовлетворяет 1НФ и не содержит атрибутов зависящих от части ключа.
  •  Отношение удовлетворяет 3НФ, если оно удовлетворяет 2НФ и не содержит не ключевых атрибутов зависящих от других не ключевых.

Нормализация отношения О1:

1НФ

В отношении О1 атрибут «Телефоны директора» является множественным, поэтому данное отношение нужно нормализовать по 1НФ, в результате нормализации, получим два отношения:

- первое содержит полный ключ и все атрибуты без множественного значения;

- второе содержит ключевые атрибуты и атрибут с множественными значениями, т.е. атрибут «Телефоны директора», который становится ключевым.

3НФ

В отношении О1.1 атрибут «Телефон районного отдела народного образования» зависит от не ключевого атрибута «Район». Необходимо нормализовать отношение по 3НФ, в результате получим два отношения:

- первое содержит ключ, т.е. «id_обр_учр»и все атрибуты, которые зависят от него;

- второе содержит не ключевой атрибут «Район» и атрибут «Телефон районного отдела народного образования», зависящий от него, причем атрибут «Район» становится ключевым;

Нормализация отношения О4:

2НФ

В данном отношении атрибуы «Тип учреждения» и «Специализация» зависят от части полного ключа, только от атрибута «id_обр_учр». Необходимо нормализовать по 2НФ, в результате получим два отношения:

- первое отношение содержит полный ключ и все атрибуты от него зависящие;

- второе отношение содержит атрибуты «id_обр_учр» и «Тип учреждения» и «Специализация».

Нормализация отношения О9:

1НФ

Преподаватель может по одному образованию получить несколько базовых предметов, поэтому атрибут «Базовые предметы по образованию» является множественным. Необходимо нормализовать по 1НФ, в результате получим два отношения:

- первое содержит полный ключ и все зависящие от него атрибуты;

- второе содержит ключ и атрибут «Базовые предметы по образованию», который становится ключевым;

 

2НФ

Атрибут «Тип учреждения» зависит от части полного ключа – от атрибута «id_обр_учр», атрибут «Общий стаж работы преподавателя» зависит не от полного ключа, а только от атрибутов «id_обр_учр» и «Номер преподавателя». Необходимо нормализовать по 2НФ:

  1.  Интеграция отношений

Объединяем следующие отношения, т.к. их ключевые атрибуты

совпадают:

Остальные отношения оставляем без изменения. Также вводим кодификаторы:

  1.  СВЯЗЫВАНИЕ ОТНОШЕНИЙ
  2.  Логическая схема

  1.  Физическая схема

Приложение

  1.  Расчет вторичных атрибутов

Код отношения

Код атрибута

Название атрибута

Запрос SQL

О1

О1-8

Число учащихся

SELECT  

O1.1.1.1.id_obr_uch, Count(BO1.Lichniy_nomer_uchashegosya)

FROM

O1.1.1.1_Svedenya_ob_obr_uchr O1.1.1.1, BO1_Obshie_svedenya_ob_uchenik BO1

WHERE

O1.1.1.1.id_obr_uch = BO1. id_obr_uch

GROUP BY O1.1.1.1.id_obr_uch;

O2

O2-7

Число учителей по специализации

SELECT

O1.1.1.1.id_obr_uch, K_8.id_specializacii, Count(O9.2.Nomer_prepodavatelya)

FROM

O1.1.1.1_Svedenya _ob_uspevaemosty O1.1.1.1,

K_8_Specializaciy K_8,

O9.2_Bazovue_predmetu_po_obr O9.2,

O2.2_Predmety_v_specializacii O2.2

WHERE

O1.1.1.1.id_specializacii = K_8. id_specializacii AND K_8. id_specializacii = O2.2. id_specializacii

AND O1.1.1.1.id_obr_uch = O9.2.id_obr_uch AND

O2.2.id_predmeta = O9.2.id_predmeta

GROUP BY

O1.1.1.1.id_obr_uch, K_8.id_specializacii,

О3

О3-3

Число классов данного номера

SELECT

O1.1.1.1.id_obr_uch, ВО3.2.nomer_klassa, Count(ВО3.2.nomer_klassa)

FROM

O1.1.1.1_Svedenya_ob_obr_uchr O1.1.1.1, ВО3.2_Svedenya_ob_uspevaemosty ВО3.2

WHERE

O1.1.1.1.id_obr_uch = ВО3.2.id_obr_uch

GROUP BY

O1.1.1.1.id_obr_uch, ВО3.2.nomer_klassa

ORDER BY O1.1.1.1.id_obr_uch;

О3

О3-4

Общее число учащихся в классах данного номера

SELECT

BO4.id_obr_uch, BO4.Nomer_klassa, Count(BO4.Lichniy_nomer_uchashegosya)

FROM

ВО4_Svedenya _ob_otchislenyi  BO4

GROUP BY

ВО4.id_obr_uch, ВО4.Nomer_klassa;

ORDER BY ВО4.id_obr_uch

О3

О3-5

Число неуспевающих учащихся в классах данного номера по итогам предыдущей четверти

SELECT

ВО3.2.id_obr_uch, Count (ВО3.2.Licniy_nomer_uch), ВО3.2.Nomer_klassa, ВО3.2.God

FROM

ВО3.2_Svedenya _ob_uspevaemosty  BO3.2

WHERE

(ВО3.2.Ocenka<=3)

GROUP BY

ВО3.2.id_obr_uch, ВО3.2.Nomer_klassa, ВО3.2.God;

О4

О4-5

Общее число отчисленных учеников

SELECT

O1.1.1.1.id_obr_uch,

Count(BO4.id_otchislen_ne_otchislen)

FROM

O1.1.1.1_Svedenya _ob_uspevaemosty O1.1.1.1,

BO4_Svedenya_ob_otchislenyi BO4

WHERE

O1.1.1.1.id_obr_uch = BO4.id_obr_uch

GROUP BY

O1.1.1.1.id_obr_uch;

О4

О4-6

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

SELECT

O1.1.1.1.id_obr_uch,

Count(BO4.id_pereveden_ne_pereveden)

FROM

O1.1.1.1_Svedenya _ob_uspevaemosty O1.1.1.1,

BO4_Svedenya_ob_otchislenyi BO4

WHERE

O1.1.1.1.id_obr_uch = BO4.id_obr_uch

GROUP BY

O1.1.1.1.id_obr_uch;

О6

O6-4

Фактический объем спонсорского взноса

SELECT

O6.id_obr_uch, O6.Shifr_sponsora,

Sum (BO6.Summa_sponsorskoy_pomoshi)

FROM

BO6_Svedenya_o_spon_vznosah BO6,

O6_Fakt_i_planovue_pokazateli O6

WHERE

O6.id_obr_uch = BO6.id_obr_uch AND

O6.Shifr_sponsora = BO6.Shifr_sponsora

GROUP BY

O6.id_obr_uch, O6.Shifr_sponsora;

O9

O9-8

Общий стаж работы преподавателя

SELECT

O9.1.1.id_obr_uch, O9.1.1.Nomer_prepodavatelya,

(SYSDATE – BO9.Data_zanytiya_dolzhnosty) – BO9.Stazh_raboty_do_zanytiya_dolzh

FROM 

BO9_Svedinya_o_prepodavatelych BO9,

O9.1.1_Svedenya_ob_obr_prepod O9.1.1

WHERE

BO9.id_obr_uch = O9.1.1.id_obr_uch AND

BO9. Nomer_prepodavatelya = O9.1.1.Nomer_prepodavatelya

GROUP BY

O9.1.1.id_obr_uch, O9.1.1.Nomer_prepodavatelya;

О10

О10-2

Общее количество учащихся

SELECT

uv.Nazvanie,Count(uv.Lichniy_nomer_uchashegosya)

FROM Ukomplektovannost_view uv

GROUP BY uv.Nazvanie;

О10

О10-3

Общее число школ

SELECT

uv. Nazvanie,Count(uv.Nomer_uchrezhdeniy)

FROM Ukomplektovannost_view

GROUP BY uv.Nazvanie;

О10

О10-4

Общее число стандартных школ

SELECT

uv. Nazvanie,Count(uv.Nomer_uchrezhdeniy)

FROM Ukomplektovannost_view uv

WHERE uv.id_tipa_uchrezhdeniy =1

GROUP BY uv.Nazvanie;

О10

О10-5

Число специализированных школ

SELECT

uv. Nazvanie,Count(uv.Nomer_uchrezhdeniy)

FROM Ukomplektovannost_view uv

WHERE uv.id_tipa_uchrezhdeniy =2

GROUP BY uv.Nazvanie;

О10

О10-6

Число лицеев

SELECT

uv. Nazvanie, Count(uv.Nomer_uchrezhdeniy)

FROM Ukomplektovannost_view uv

WHERE uv.id_tipa_uchrezhdeniy =3

GROUP BY uv.Nazvanie;

  1.  Индексы

Название таблицы

Атрибуты в индексе

Уникальный или нет

Код DDL

ВО1_Obshie_svedenya_

ob_uchenik

FIO_

uchashegosya   

      -

CREATE  INDEX BO1_Obshie_svedenya_ob_uch_FIO ON BO1_Obshie_svedenya_ob_uchenik

(FIO_uchashegosya   ASC);

BO1_Obshie_svedenya_

ob_uchenik

Data_

rozhdenya   

      -

CREATE  INDEX BO1_Obshie_svedenya_ob_uch_Dat ON BO1_Obshie_svedenya_ob_uchenik

(Data_rozhdenya   ASC);

BO9_Svedinya_o

_prepodavatelych

FIO_

prepodavatelya   

      -

CREATE  INDEX ВО9_Svedinya_o_prepodavate_FIO ON BO9_Svedinya_o_prepodavatelych

(FIO_prepodavatelya   ASC);

O1.1.1.1_Svedenya_ob_

obr_uchr

Nomer_uchrezhdeniy, id_rayona

  •  

CREATE UNIQUE INDEX Svedenya_ob_obr_u_Rayon_Nomer_ ON O1.1.1.1_Svedenya_ob_obr_uchr

(Nomer_uchrezhdeniy   ASC,id_rayona   ASC);

O1.1.1.1_Svedenya_ob_

obr_uch

Nazvanie_

liceya   

       -

CREATE  INDEX О1.1.1.1_Svedenya_ob_obr_u_IDX ON O1.1.1.1_Svedenya_ob_obr_uchr

(Nazvanie_liceya   ASC);

O1.1.1.1_Svedenya_ob_obr_uch

id_specializacii   , Nomer_uchrezhdeniy   

    -

CREATE  INDEX O1.1.1.1_Svedenya_ob_obr_u_Spec_IDX ON O1.1.1.1_Svedenya_ob_obr_uchr

(id_specializacii   ASC,Nomer_uchrezhdeniy   ASC);

O7_Svedenya_o_sponsore

Naimenovanie_predpriyatiya   

      -

CREATE  INDEX О7_Svedenya_o_sponsore_Naimeno ON O7_Svedenya_o_sponsore

(Naimenovanie_predpriyatiya   ASC);

O7_Svedenya_o_sponsore

FIO_

nachalnika_

uchrezhdenya   

-

CREATE  INDEX О7_Svedenya_o_sponsore_FIO_nac ON O7_Svedenya_o_sponsore

(FIO_nachalnika_uchrezhdenya   ASC);

  1.  Представления

  1.  Представление для документа Д8.1 из таблицы 1 - Obr_uch_view

CREATE OR REPLACE  VIEW Obr_uch_view

(id_obr_uch,id_tipa_uchrezhdeniy,Chislo_ychashihsya_na_odnogo_p,id_predmeta,Chislo_vakansii )

AS  SELECT O1.1.1.1_Svedenya_ob_obr_uchr.id_obr_uch,O1.1.1.1_Svedenya_ob_obr_uchr.id_tipa_uchrezhdeniy,O1.1.1.1_Svedenya_ob_obr_uchr.Chislo_ychashihsya_na_odnogo_p,O8.2_Vakansii_po_predmetam.id_predmeta,O8.2_Vakansii_po_predmetam.Chislo_vakansii

FROM O1.1.1.1_Svedenya_ob_obr_uchr,O8.2_Vakansii_po_predmetam

WHERE O1.1.1.1_Svedenya_ob_obr_uchr.id_obr_uch = O8.2_Vakansii_po_predmetam.id_obr_uch;

  1.  Представление для документа Д8.2 из таблицы 1 – Prepodavatel_view

CREATE OR REPLACE  VIEW Prepodavatel_view

(id_obr_uch,Nomer_prepodavatelya,Nomer_diploma,id_predmeta,Vuz,Data_okonchanya_vuza )

AS  SELECT BO9_Svedinya_o_prepodavatelych.id_obr_uch,BO9_Svedinya_o_prepodavatelych.Nomer_prepodavatelya,O9.2_Bazovue_predmetu_po_obr.Nomer_diploma,O9.2_Bazovue_predmetu_po_obr.id_predmeta,O9.1.1_Svedenya_ob_obr_prepod.Vuz,O9.1.1_Svedenya_ob_obr_prepod.Data_okonchanya_vuza

FROM BO9_Svedinya_o_prepodavatelych,

O9.2_Bazovue_predmetu_po_obr, O9.1.1_Svedenya_ob_obr_prepod

WHERE (BO9_Svedinya_o_prepodavatelych.id_obr_uch = O9.1.1_Svedinya_ob_obr_prepod.id_obr_uch AND BO9_Svedinya_o_prepodavatelych.id_obr_uch = O9.2_Bazovue_predmetu_po_obr.id_obr_uch)   AND (BO9_Svedinya_o_prepodavatelych.Nomer_prepodavatelya = O9.1.1_Svedinya_ob_obr_prepod. Nomer_prepodavatelya AND BO9_Svedinya_o_prepodavatelych.Nomer_prepodavatelya = O9.2_Bazovue_predmetu_po_obr. Nomer_prepodavatelya) AND (O9.1.1_Svedinya_ob_obr_prepod.Nomer_diploma = O9.2_Bazovue_predmetu_po_obr.Nomer_diploma)

  1.  Представление для документа Д8.3 из таблицы 1 - Ukomplektovannost_view

CREATE OR REPLACE  VIEW Ukomplektovannost_view

(Nazvanie,Lichniy_nomer_uchashegosya,FIO_uchashegosya,id_tipa_uchrezhdeniy,Nomer_uchrezhdeniy )

AS  SELECT K_1_Rayon.Nazvanie,BO1_Obshie_svedenya_ob_uchenik.Lichniy_nomer_uchashegosya,BO1_Obshie_svedenya_ob_uchenik.FIO_uchashegosya,O1.1.1.1_Svedenya_ob_obr_uchr.id_tipa_uchrezhdeniy,O1.1.1.1_Svedenya_ob_obr_uchr.Nomer_uchrezhdeniy

FROM K_1_Rayon,BO1_Obshie_svedenya_ob_uchenik,O1.1.1.1_Svedenya_ob_obr_uchr

WHERE K_1_Rayon.id_rayona = O1.1.1.1_Svedenya_ob_obr_uchr.id_rayona AND O1.1.1.1_Svedenya_ob_obr_uchr.id_obr_uch = BO1_Obshie_svedenya_ob_uchenik.id_obr_uch;

  1.  Код DDL

Таблица Предмет

CREATE TABLE K_3_Predmet

(

id_predmeta      NUMBER NOT NULL ,

Nazvanie           VARCHAR2(20) NOT NULL ,

PRIMARY KEY (id_predmeta)

);

Таблица Район

CREATE TABLE K_1_Rayon  

(

id_rayona     NUMBER NOT NULL ,

Nazvanie       VARCHAR2(20) NOT NULL ,

PRIMARY KEY (id_rayona)

);

Таблица Телефоны районного отдела народного образования

CREATE TABLE O1.1.2_Telefony_rayonnogo_otde

(

id_rayona                              NUMBER NOT NULL ,

Telefon_rayonnogo_otdela   NUMBER(10) NOT NULL ,

PRIMARY KEY (id_rayona),

FOREIGN KEY (id_rayona) REFERENCES K_1_Rayon (id_rayona)

);

Таблица Тип учреждения 

CREATE TABLE K_2_Tip_uchrezhdeniy

(

id_tipa_uchrezhdeniy   NUMBER NOT NULL ,

Nazvanie                       VARCHAR2(50) NOT NULL ,

PRIMARY KEY (id_tipa_uchrezhdeniy)

);

Таблица Образовательные учреждения

CREATE TABLE O1.1.1.1_Svedenya_ob_obr_uchr

(

id_obr_uch                                     NUMBER NOT NULL ,

id_rayona                                        NUMBER NOT NULL ,

id_tipa_uchrezhdeniy                     NUMBER NOT NULL,

Nomer_uchrezhdeniy                      NUMBER(5) NOT NULL ,

Adres_uchrezhdenya                       VARCHAR2(30) NULL ,

Nazvanie_liceya                              VARCHAR2(30) NULL ,

Data_obrazovaniya_liceya              DATE NULL ,

FIO_direktora                                   CHAR(18) NULL ,

Chislo_ychashihsya_na_odnogo_p   NUMBER(3) NULL ,

PRIMARY KEY (id_obr_uch),

FOREIGN KEY (id_tipa_uchrezhdeniy) REFERENCES K_2_Tip_uchrezhdeniy (id_tipa_uchrezhdeniy),

FOREIGN KEY (id_rayona) REFERENCES O1.1.2_Telefony_rayonnogo_otde (id_rayona)

);

Таблица Вакансии по предметам

CREATE TABLE O8.2_Vakansii_po_predmetam

(

id_obr_uch            NUMBER NOT NULL ,

id_predmeta           NUMBER NOT NULL ,

Chislo_vakansii     NUMBER(2) NOT NULL ,

PRIMARY KEY (id_obr_uch,id_predmeta),

FOREIGN KEY (id_predmeta) REFERENCES K_3_Predmet (id_predmeta),

FOREIGN KEY (id_obr_uch) REFERENCES O1.1.1.1_Svedenya_ob_obr_uchr (id_obr_uch)

);

Таблица Специализация

CREATE TABLE O2.2_Specializaciya

(

id_obr_uch    NUMBER NOT NULL ,

id_predmeta     NUMBER NOT NULL ,

PRIMARY KEY (id_obr_uch,id_predmeta),

FOREIGN KEY (id_obr_uch) REFERENCES O1.1.1.1_Svedenya_ob_obr_uchr (id_obr_uch),

FOREIGN KEY (id_predmeta) REFERENCES K_3_Predmet (id_predmeta)

);

Таблица  Общие сведения об учениках

CREATE TABLE BO1_Obshie_svedenya_ob_uchenik

(

id_obr_uch                                NUMBER NOT NULL ,

Lichniy_nomer_uchashegosya NUMBER NOT NULL ,

FIO_uchashegosya                   VARCHAR2(40) NOT NULL ,

Data_rozhdenya                        DATE NOT NULL ,

Adres_prozhivanya                   VARCHAR2(30) NULL ,

PRIMARY KEY (id_obr_uch,Lichniy_nomer_uchashegosya),

FOREIGN KEY (id_obr_uch) REFERENCES O1.1.1.1_Svedenya_ob_obr_uchr (id_obr_uch)

);

Таблица Сведения о конкурсах

CREATE TABLE O11_Svedenya_o_konkursah

(

id_obr_uch                                NUMBER NOT NULL ,

Lichniy_nomer_uchashegosya  NUMBER NOT NULL ,

God_provedenya_konkursa       NUMBER(4) NOT NULL ,

Nazvanie_konkursa                   VARCHAR2(30) NOT NULL ,

Mesto                                         NUMBER(3) NULL ,

PRIMARY KEY (id_obr_uch,Lichniy_nomer_uchashegosya,God_provedenya_konkursa,Nazvanie_konkursa),

FOREIGN KEY (id_obr_uch, Lichniy_nomer_uchashegosya) REFERENCES BO1_Obshie_svedenya_ob_uchenik (id_obr_uch, Lichniy_nomer_uchashegosya)

);

Таблица Сведения о преподавателях

CREATE TABLE BO9_Svedinya_o_prepodavatelych

(

id_obr_uch                                      NUMBER NOT NULL ,

Nomer_prepodavatelya                   NUMBER NOT NULL ,

FIO_prepodavatelya                       VARCHAR2(40) NOT NULL ,

Data_zanytiya_dolzhnosty              DATE NOT NULL ,

Stazh_raboty_do_zanytiya_dolzh   NUMBER(4) NOT NULL ,

PRIMARY KEY (id_obr_uch,Nomer_prepodavatelya),

FOREIGN KEY (id_obr_uch) REFERENCES O1.1.1.1_Svedenya_ob_obr_uchr (id_obr_uch)

);

Таблица Сведения об образовании преподавателей

CREATE TABLE O9.1.1_Svedenya_ob_obr_prepod

(

id_obr_uch                       NUMBER NOT NULL ,

Nomer_prepodavatelya    NUMBER NOT NULL ,

Nomer_diploma               NUMBER(10) NOT NULL ,

Vuz                                  VARCHAR2(30) NOT NULL ,

Data_okonchanya_vuza   DATE NOT NULL ,

PRIMARY KEY (id_obr_uch,Nomer_prepodavatelya,Nomer_diploma),

FOREIGN KEY (id_obr_uch, Nomer_prepodavatelya) REFERENCES BO9_Svedinya_o_prepodavatelych (id_obr_uch, Nomer_prepodavatelya)

);

Таблица Базовые предметы по образованию

CREATE TABLE O9.2_Bazovue_predmetu_po_obr

(

Nomer_diploma              NUMBER NOT NULL ,

Nomer_prepodavatelya   NUMBER NOT NULL ,

id_obr_uch                      NUMBER NOT NULL ,

id_predmeta                    NUMBER NOT NULL ,

PRIMARY KEY (Nomer_diploma,Nomer_prepodavatelya,id_obr_uch,id_predmeta),

FOREIGN KEY (id_obr_uch, Nomer_prepodavatelya, Nomer_diploma)

REFERENCES O9.1.1_Svedenya_ob_obr_prepod (id_obr_uch, Nomer_prepodavatelya, Nomer_diploma),

FOREIGN KEY (id_predmeta) REFERENCES K_3_Predmet (id_predmeta)

);

Таблица Тип предприятия

CREATE TABLE K_7_Tip_predpriyatiya

(

id_tipa_predpriyatiya     NUMBER NOT NULL ,

Nazvanie                        VARCHAR2(20) NOT NULL ,

PRIMARY KEY (id_tipa_predpriyatiya)

);

Таблица Сведения о спонсоре

CREATE TABLE O7_Svedenya_o_sponsore

(

Shifr_sponsora                             NUMBER NOT NULL ,

id_tipa_predpriyatiya                   NUMBER NOT NULL ,

Naimenovanie_predpriyatiya       VARCHAR2(20) NULL ,

FIO_nachalnika_uchrezhdenya    VARCHAR2(40) NULL ,

Kontaktnuy_telefon_nachalnika   NUMBER(10) NULL ,

PRIMARY KEY (Shifr_sponsora),

FOREIGN KEY (id_tipa_predpriyatiya) REFERENCES K_7_Tip_predpriyatiya (id_tipa_predpriyatiya)

);

Таблица Фактические и плановые показатели

CREATE TABLE O6_Fakt_i_planovue_pokazateli

(

id_obr_uch                                        NUMBER NOT NULL ,

Shifr_sponsora                                   NUMBER NOT NULL ,

Planoviy_obem_sponsorskogo_vzn   NUMBER(12) NULL ,

PRIMARY KEY (id_obr_uch,Shifr_sponsora),

FOREIGN KEY (id_obr_uch) REFERENCES O1.1.1.1_Svedenya_ob_obr_uchr (id_obr_uch),

FOREIGN KEY (Shifr_sponsora) REFERENCES O7_Svedenya_o_sponsore (Shifr_sponsora)

);

Таблица Сведения о спонсорских взносах

CREATE TABLE BO6_Svedenya_o_spon_vznosah

(

id_obr_uch                                 NUMBER NOT NULL ,

Shifr_sponsora                            NUMBER NOT NULL ,

Data_okazanya_pomoshi             DATE NOT NULL ,

Summa_sponsorskoy_pomoshy  NUMBER(12) NOT NULL ,

PRIMARY KEY (id_obr_uch,Shifr_sponsora,Data_okazanya_pomoshi),

FOREIGN KEY (id_obr_uch, Shifr_sponsora) REFERENCES O6_Fakt_i_planovue_pokazateli

(id_obr_uch, Shifr_sponsora)

);

Таблица Сведения об олимпиадах

CREATE TABLE O5_Svedenya_ob_olimpiadah

(

Lichniy_nomer_uchashegosya   NUMBER NOT NULL ,

God_provedenya                          NUMBER(4) NOT NULL ,

id_predmeta                                 NUMBER NOT NULL ,

id_obr_uch                                    NUMBER NOT NULL ,

Kolichestvo_nabrannuch_ballov   NUMBER(3) NOT NULL ,

Mesto                                             NUMBER(3) NULL ,

PRIMARY KEY (Lichniy_nomer_uchashegosya,God_provedenya,id_predmeta,id_obr_uch),

FOREIGN KEY (id_obr_uch, Lichniy_nomer_uchashegosya)

REFERENCES BO1_Obshie_svedenya_ob_uchenik (id_obr_uch, Lichniy_nomer_uchashegosya),

FOREIGN KEY (id_predmeta) REFERENCES K_3_Predmet (id_predmeta)

);

Таблица Оценки

CREATE TABLE K_4_Ocenka

(

id_ocenki   NUMBER NOT NULL ,

Ocenka    NUMBER(2) NOT NULL ,

PRIMARY KEY (id_ocenki)

);

Таблица Отчислен/Не отчислен

CREATE TABLE K_5_Otchislen_Ne_otchislen

(

id_otchislen_ne_otchislen   NUMBER NOT NULL ,

polozhenie                           VARCHAR2(20) NOT NULL ,

PRIMARY KEY (id_otchislen_ne_otchislen)

);

Таблица Переведен/Не переведен

CREATE TABLE K_6_Pereveden_Ostavlen

(

id_pereveden_ostavlen   NUMBER NOT NULL ,

pozhenie                         VARCHAR2(20) NULL ,

PRIMARY KEY (id_pereveden_ostavlen)

)

Таблица Класс

CREATE TABLE BO3.1_Klass

(

id_obr_uch                     NUMBER NOT NULL ,

Nomer_klassa                 NUMBER(2) NOT NULL ,

Bykva_klassa                  CHAR NOT NULL ,

PRIMARY KEY (id_obr_uch,Nomer_klassa,Bykva_klassa),

FOREIGN KEY (id_obr_uch) REFERENCES O1.1.1.1_Svedenya_ob_obr_uchr (id_obr_uch)

);

Таблица Сведения об отчислении

CREATE TABLE BO4_Svedenya_ob_otchislenyi

(

id_obr_uch                                  NUMBER NOT NULL ,

Lichniy_nomer_uchashegosya    NUMBER NOT NULL ,

God                                              NUMBER(4) NOT NULL ,

Nomer_klassa                              NUMBER(2) NOT NULL ,

Bykva_klassa                               CHAR NOT NULL ,

id_pereveden_ostavlen                NUMBER NOT NULL ,

id_otchislen_ne_otchislen           NUMBER NOT NULL ,

PRIMARY KEY (id_obr_uch,Lichniy_nomer_uchashegosya,God,Nomer_klassa,Bykva_klassa),

FOREIGN KEY (id_obr_uch, Lichniy_nomer_uchashegosya)

REFERENCES BO1_Obshie_svedenya_ob_uchenik (id_obr_uch, Lichniy_nomer_uchashegosya),

FOREIGN KEY (id_otchislen_ne_otchislen) REFERENCES K_5_Otchislen_Ne_otchislen (id_otchislen_ne_otchislen),

FOREIGN KEY (id_pereveden_ostavlen) REFERENCES K_6_Pereveden_Ostavlen (id_pereveden_ostavlen),

FOREIGN KEY (id_obr_uch, Nomer_klassa, Bykva_klassa) REFERENCES BO3.1_Klass (id_obr_uch,

Nomer_klassa, Bykva_klassa)

);

Таблица Сведения об успеваемости

CREATE TABLE BO3.2_Svedenya_ob_uspevaemosty

(

Nomer_klassa                           NUMBER(2) NOT NULL ,

Bykva_klassa                            CHAR NOT NULL ,

Nomer_chetverty                       INTEGER NOT NULL ,

God                                            NUMBER(4) NOT NULL ,

id_predmeta                               NUMBER NOT NULL ,

id_obr_uch                                 NUMBER NOT NULL ,

Lichniy_nomer_uchashegosya  NUMBER NOT NULL ,

id_ocenki                                    NUMBER NOT NULL ,

PRIMARY KEY (Nomer_klassa,Bykva_klassa,Nomer_chetverty,God,id_predmeta,id_obr_uch,

Lichniy_nomer_uchashegosya),

FOREIGN KEY (id_predmeta) REFERENCES K_3_Predmet (id_predmeta),

FOREIGN KEY (id_ocenki) REFERENCES K_4_Ocenka (id_ocenki),

FOREIGN KEY (id_obr_uch, Lichniy_nomer_uchashegosya, God, Nomer_klassa,

Bykva_klassa) REFERENCES BO4_Svedenya_ob_otchislenyi (id_obr_uch, Lichniy_nomer_uchashegosya, God, Nomer_klassa, Bykva_klassa)

);

Таблица Телефоны директора образовательного учреждения

CREATE TABLE O1.2_Telephon_directora_obr_uc

(

id_obr_uch               NUMBER NOT NULL ,

Telephon_directora   NUMBER(8) NOT NULL ,

PRIMARY KEY (id_obr_uch,Telephon_directora),

FOREIGN KEY (id_obr_uch) REFERENCES O1.1.1.1_Svedenya_ob_obr_uchr (id_obr_uch)

);

Триггеры:

CREATE  OR REPLACE  TRIGGER Predmet_trg

BEFORE ON K_3_Predmet

/* ERwin Builtin Trigger */

/* default body for Predmet_trg */

DECLARE NUMROWS INTEGER;

tmpVar Number;

BEGIN

tmpVar:= 0;

SELECT Predmet_seq.NEXTVAL INTO tmpVar FROM dual;

:new.id_predmeta = tmpVar;

END;

/

CREATE  OR REPLACE  TRIGGER Specializaciy_trg

BEFORE ON K_8_Specializaciy

/* ERwin Builtin Trigger */

/* default body for Specializaciy_trg */

DECLARE NUMROWS INTEGER;

tmpVar NUMBER;

BEGIN

tmpVar := 0;

SELECT Specializaciy_seq.NEXTVAL INTO tmpVar FROM dual;

:new.id_specializacii:=tmpVar;

END;

/

CREATE  OR REPLACE  TRIGGER Rayon_trg

BEFORE  ON K_1_Rayon

/* ERwin Builtin Trigger */

/* default body for Rayon_trg */

DECLARE NUMROWS INTEGER;

tmpVar Number;

BEGIN

tmpVar:= 0;

SELECT Rayon_seq.NEXTVAL INTO tmpVar FROM dual;

:new.id_rayona = tmpVar;

END;

/

CREATE  OR REPLACE  TRIGGER Obr_uch_trg

BEFORE INSERT ON O1.1.1.1_Svedenya_ob_obr_uchr

for each row

/* ERwin Builtin Trigger */

/* default body for Obr_uch_trg */

DECLARE NUMROWS INTEGER;

tmpVar Number;

BEGIN

tmpVar:= 0;

SELECT Obr_uch_seq.NEXTVAL INTO tmpVar FROM dual;

:new.id_obr_uch = tmpVar;

END;

/

CREATE  OR REPLACE  TRIGGER Prepodavatel_trg

BEFORE INSERT ON BO9_Svedinya_o_prepodavatelych

for each row

/* ERwin Builtin Trigger */

/* default body for Prepodavatel_trg */

DECLARE NUMROWS INTEGER;

BEGIN

DECLARE NUMROWS INTEGER;

tmpVar Number;

BEGIN

tmpVar:= 0;

SELECT Prepodavatel_seq.NEXTVAL INTO tmpVar FROM dual;

:new.Nomer_prepodavatelya = tmpVar;

END;

/

Заключение

В данной курсовой работе мною был проведен анализ информационных потребностей пользователей предметной области «Народное образование области» и представление их в виде множества исходных отношений. После чего проводилось уточнение множества исходных отношений, представление их в виде нормализованных, простых структур данных, что выражалось в выявлении отношений типа кодификатор, свертке атрибутов, нормализации и интеграции отношений. На конечной стадии полученные отношения связывались в концептуальную информационную модель предметной области с использованием инструментального средства моделирования данных Erwin Data Modeler7.

PAGE   \* MERGEFORMAT 2


 

А также другие работы, которые могут Вас заинтересовать

32385. Развитие психики в филогенезе. Основные этапы развития поведения и психики животных 13.93 KB
  Основные этапы развития поведения и психики животных. Развитие психики в филогенезе качественное изменения психики происходящее в рамках эволюционного развития живых существ обусловлены осложнением их взаимодействия с окружающей средой. Происхождение психики: Раздражимость – избирательная реакция на воздействие внешней среды.
32386. Восприятие 14.1 KB
  Различие процессов восприятия и ощущения заканчиваются в том что ощущение – это отражение отдельных свойств предметов и явлений а восприятие – целостное отражение предметов в единстве и во взаимосвязи их свойств. Свойства восприятия Предметность – это способность отражать предметы и явления реального мира в соответствии с их функциональным значением. Она тесно связана с целостностью восприятия. В результате их взаимодействия и достраивания посредством памяти и мышления приобретает структурную целостность это не сумма ощущений это...
32387. Естественн-научные основы психологии. Физиологические механизмы психики 14.55 KB
  Физиологические механизмы психики. Изучая отдельные факты психической жизни человека выявляется закономерности их развития раскрываются механизмы лежащие в основе. 4 этап психологии наука изучает факты закономерности механизмы психики. Физиологические механизмы психики.
32388. Внимание 15.34 KB
  Успешность освоения систематизированных знаний и выполнение той или иной деятельности зависит в значительной степени от уровня развития и индивидуальных особенностей внимания человека. Наличие внимания является обязательным условием обеспечивающим успешность протекания каждого психического процесса. В качестве обоснования этой точки зрения указывается на то что в мозге человека можно обнаружить и выделить особого рода нервные структуры связанные именно с процессом внимания. Функции внимания: Отбор значимых воздействий которые...
32389. Содержание, задачи, функции, методы, основные направления и этические принципы работы практического психолога в системе образования 13.8 KB
  Осуществление работы по направлениям личности. Методы работы: Индивидуальная форма работы для детей – игра и рисунок. Групповая форма работы для детей – ролевые игры и психодрама.
32390. Общие представления о мышлении 16.24 KB
  Физиологические основы мышления выявить и исследовать достаточно трудно это объяснятся той специфической ролью которую мышление играет в психологической деятельности человека. Следовательно для функционирования мышления необходимы отделы коры головного мозга отвечающие за познавательные процессы. Установлено также что особую значимую роль для процессов мышления играет лобная доля и речевые центры коры головного мозга. Функции мышления: Понимание решение проблемы и задачи целеобразование рефлексия – деятельность человеческого...
32391. Особенности развития личности ребенка на различных возрастных этапах 14.83 KB
  Внутри этого вида деятельности формируется новая ведущая деятельность характерная для следующего этапа возрастного развития. ведущая деятельность способствует появлению характерных только для этого возраста качественных особенностей. Ведущая деятельность: непосредственно эмоциональное общение внутри и на фоне которой формируются ориентировочные и сенсомоторные манипулятивные действия т. Ведущая деятельность: предметноманипулятивная в процессе которой ребенок овладевает общественными выработанными способами действий с предметами в...
32392. Метод эксперимента 15.17 KB
  Отличительные признаки эксперимента: Исследователь не дожидается проявлений интересующих его психических свойств а сам создает условия чтобы вызвать их у испытуемых. В эксперименте обязателен строгий учет и регистрация условий протекания исследования. Эксперимент может быть повторен другими исследователями и в другое время что позволяет проверить результаты исследования.
32393. Психодиагностика как наука. История, предмет и методы психодиагностики. Классификация методов психодиагностического исследования 16.22 KB
  Задачи психодиагностики: Разработка теоретических принципов оценки и измерения индивидуальных психологических свойств человека. Этапы становления психодиагностики: Донаучный до начала 19 века Стихийное использование некоторых заданий для определения индивидуальных особенностей человека. Пифагор допускал в свою школу лишь тех кто проходил череду испытаний смех и походка считались отражением характера человека. Экспериментальная психология накопила огромное количество методик для исследования психических функций человека многие из...