Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

ЛАБОРАТОРНАЯ РАБОТА 2 Моделирование данных в нотации IDEF1x

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 6.11.2024

PAGE  1

ЛАБОРАТОРНАЯ РАБОТА №2 «Моделирование данных в нотации IDEF1x. Язык SQL»

Цель работы

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

Содержание отчета

  •  титульный лист;
  •  задание на разработку;
  •  информационная модель предметной области в нотации IDEF1X, словарь сущностей;
  •  концептуальная схема реляционной базы данных в нотации IDEF1X;
  •  логическая схема реляционной базы данных в нотации IDEF1X;
  •  физическая схема реляционной базы данных в нотации IDEF1X;
  •  3 запроса на языке SQL (выдаются индивидуально во время защиты);
  •  выводы;

Варианты заданий

[0.0.1] 1. Информационная система вуза

[0.0.2] 2. Информационная система торговой организации

[0.0.3] 3. Информационная система медицинских организаций города

[0.0.4] 4. Информационная система автопредприятия города

[0.0.5] 5. Информационная система проектной организации

[0.0.6] 6. Информационная система авиастроительного предприятия

[0.0.7] 7. Информационная система военного округа

[0.0.8] 8. Информационная система строительной организации

[0.0.9] 9. Информационная система библиотечного фонда города

[0.0.10] 10. Информационная система спортивных организаций города

[0.0.11] 11. Информационная система автомобилестроительного предприятия

[0.0.12] 12. Информационная система гостиничного комплекса

[0.0.13] 13. Информационная система магазина автозапчастей

[0.0.14] 14. Информационная система представительства туристической фирмы в зарубежной стране

[0.0.15] 15. Информационная система аптеки

[0.0.16] 16. Информационная система библиотеки вуза

[0.0.17] 17. Информационная система туристического клуба

[0.0.18] 18. Информационная система городской телефонной сети

[0.0.19] 19. Информационная система театра

[0.0.20] 20. Информационная система аэропорта

[0.0.21] 21. Информационная система зоопарка

[0.0.22] 22. Информационная система ГИБДД

[0.1] IDEF1X

[0.1.1] Сущность

[0.1.2] Атрибут

[0.1.3] Связь (отношение)

[0.1.3.1] Типы зависимых сущностей

[0.1.3.2] Связь типа "наследование"

[0.1.3.3] Неопределенная связь (non-specific)

[0.2] Нормализация данных

[0.2.1] Первая НФ

[0.2.2] Вторая НФ

[0.2.3] Третья НФ

[0.2.4] Краткое описание нормальных форм

[0.2.5] Замечание о денормализации

[0.3] Этапы построения модели (по IDEF1X)

1. Информационная система вуза

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

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

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

Виды запросов в информационной системе:

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

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

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

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

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

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

Получить список и общее число студентов указанных групп или указанного курса указанного факультета, сдавших указанную сессию на отлично, без троек, без двоек.

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

Получить список студентов указанных групп или которым заданный преподаватель поставил некоторую оценку за экзамен по определенным дисциплинам в указанных семестрах за некоторый период.

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

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

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

2. Информационная система торговой организации

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

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

Поступившие товары распределяются по торговым точкам и в любой момент можно получить такое распределение.

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

Виды запросов в информационной системе:

  1.  Получить перечень и общее число поставщиков, поставляющих либо указанный вид товара, либо некоторый товар в объеме, не менее заданного за весь период сотрудничества или за указанный период.
  2.  Получить перечень и общее число покупателей, купивших указанный вид товара за некоторый период или сделавших покупку товара в объеме, не менее заданного.
  3.  Получить номенклатуру и объем товаров в указанной торговой точке.
  4.  Получить сведения об объеме и ценах на указанный товар по всем торговым точкам, по торговым точкам заданного типа, по конкретной торговой точке.
  5.  Получить данные о выработке на одного продавца за указанный период по всем торговым точкам, по торговым точкам заданного типа.
  6.  Получить данные о выработке отдельно взятого продавца отдельно взятой торговой точки за указанный период.
  7.  Получить данные об объеме продаж указанного товара за некоторый период по всем торговым точкам, по торговым точкам заданного типа, по конкретной торговой точке.
  8.  Получить данные о заработной плате продавцов по всем торговым точкам, по торговым точкам заданного типа, по конкретной торговой точке.
  9.  Получить сведения о поставках определенного товара указанным поставщиком за все время поставок или за некоторый период.
  10.  Получить данные об отношении объема продаж либо к объему торговых площадей, либо к числу торговых залов, либо к числу прилавков по торговым точкам указанного типа.
  11.  Получить сведения о поставках товаров по указанному номеру заказа.
  12.  Получить сведения о покупателях указанного товара либо за обозначенный, либо за весь период, по всем торговым точкам, по торговым точкам указанного типа, по данной торговой точке.
  13.  Получить сведения о наиболее активных покупателях по всем торговым точкам, по торговым точкам указанного типа, по данной торговой точке.
  14.  Получить данные о товарообороте торговой точки или всех торговых определенной группы за указанный период.

3. Информационная система медицинских организаций города

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

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

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

Виды запросов в информационной системе:

  1.  Получить перечень и общее число врачей указанного профиля либо для конкретного медицинского учреждения, больницы, либо поликлиники, либо всех медицинских учреждений города.
  2.  Получить перечень и общее число обслуживающего персонала указанной специальности для конкретного медицинского учреждения, больницы, поликлиники, всех медицинских учреждений города.
  3.  Получить перечень и общее число врачей указанного профиля, сделавших число операций не менее заданного для конкретного медицинского учреждения, больницы, поликлиники, всех медицинских учреждений города.
  4.  Получить перечень и общее число врачей указанного профиля, стаж работы которых не менее заданного для конкретного медицинского учреждения, больницы, поликлиники, либо медицинских учреждений города.
  5.  Получить перечень и общее число врачей указанного профиля со степенью кандидата или доктора медицинских наук, со званием доцента или профессора для конкретного медицинского учреждения, больницы, поликлиники, всех медицинских учреждений города.
  6.  Получить перечень пациентов указанной больницы, отделения или конкретной палаты указанного отделения с указанием даты поступления, состояния, температуры, лечащего врача.
  7.  Получить перечень пациентов, прошедших стационарное лечение в указанной больнице или у конкретного врача за некоторый промежуток времени.
  8.  Получить перечень пациентов, наблюдающихся у врача указанного профиля в конкретной поликлинике.
  9.  Получить общее число палат, коек указанной больницы в общем и по каждому отделению, а также число свободных коек по каждому отделению и число полностью свободных палат.
  10.  Получить общее число кабинетов указанной поликлиники, число посещений каждого кабинета за определенный период.
  11.  Получить данные о выработке (среднее число принятых пациентов в день) за указанный период либо для конкретного врача, либо всех врачей поликлиники, либо для всех врачей названного профиля.
  12.  Получить данные о загрузке (число пациентов, у которых врач в настоящее время является лечащим врачом) либо для указанного врача, либо всех врачей больницы, либо для всех врачей названного профиля.
  13.  Получить перечень пациентов, перенесших операции либо в указанной больнице, либо поликлинике, либо у конкретного врача за некоторый промежуток времени.
  14.  Получить данные о выработке лаборатории (среднее число проведенных обследований в день) за указанный период либо для данного медицинского учреждения, либо всех медицинских учреждений города.

4. Информационная система автопредприятия города

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

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

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

Виды запросов в информационной системе:

  1.  Получить данные об автопарке предприятия.
  2.  Получить перечень и общее число водителей по предприятию, по указанной автомашине.
  3.  Получить распределение водителей по автомобилям.
  4.  Получить данные о распределении пассажирского автотранспорта по маршрутам.
  5.  Получить сведения о пробеге автотранспорта определенной категории или конкретной автомашины за указанный день, месяц, год.
  6.  Получить данные о числе ремонтов и их стоимости для автотранспорта определенной категории, отдельной марки автотранспорта или указанной автомашины за указанный период.
  7.  Получить данные о подчиненности персонала: рабочие - бригадиры - мастера - начальники участков и цехов.
  8.  Получить сведения о наличии гаражного хозяйства в целом и по каждой категории транспорта.
  9.  Получить данные о распределении автотранспорта на предприятии.
  10.  Получить сведения о грузоперевозках, выполненных указанной автомашиной за обозначенный период.
  11.  Получить данные о числе использованных для ремонта указанных узлов и агрегатов для транспорта определенной категории, отдельной марки автотранспорта или конкретной автомашины за указанный период.
  12.  Получить сведения о полученной и списанной автотехники за указанный период.
  13.  Получить состав подчиненных указанного бригадира, мастера и пр.
  14.  Получить данные о работах, выполненных указанным специалистом (сварщиком, слесарем и т.д.) за обозначенный период в целом и по конкретной автомашине.

5. Информационная система проектной организации

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

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

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

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

Виды запросов в информационной системе:

  1.  Получить данные о составе указанного отдела или всей организации полностью, по указанной категории сотрудников, по возрастному составу.
  2.  Получить перечень руководителей отделов.
  3.  Получить перечень договоров или проектов, выполняемых в данный момент или в период указанного интервала времени.
  4.  Получить информацию о том, какие проекты выполняются (выполнялись) в рамках указанного договора и какие договора поддерживаются указанными проектами.
  5.  Получить данные о стоимости выполненных договоров (проектов) в течение указанного периода времени.
  6.  Получить данные о распределении оборудования на данный момент или на некоторую указанную дату.
  7.  Получить сведения об использовании оборудования указанными проектами (договорами).
  8.  Получить сведения об участии указанного сотрудника или категории сотрудников в проектах (договорах) за определенный период времени.
  9.  Получить перечень и стоимость работ, выполненных субподрядными организациями.
  10.  Получить данные о численности и составе сотрудников в целом и по отдельным категориям, участвующих в указанном проекте.
  11.  Получить данные об эффективности использования оборудования (объемы проектных работ, выполненных с использованием того или иного оборудования).
  12.  Получить сведения об эффективности договоров (стоимость договоров, соотнесенная с затраченным временем, или стоимость с учетом привлеченных людских ресурсов).
  13.  Получить данные о численности и составе сотрудников в целом и по отдельным категориям, участвующих в проектах за указанный период времени.
  14.  Получить сведения об эффективности проектов (стоимость договоров, соотнесенная с затраченным временем, или стоимость с учетом привлеченных людских ресурсов).

6. Информационная система авиастроительного предприятия

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

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

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

Ведется учет движения кадров и учет выпускаемой продукции.

Виды запросов в информационной системе:

  1.  Получить перечень видов изделий отдельной категории и в целом, собираемых указанным цехом, предприятием.
  2.  Получить число и перечень изделий отдельной категории и в целом, собранных указанным цехом, участком, предприятием в целом за определенный отрезок времени.
  3.  Получить данные о кадровом составе цеха, предприятия в целом и по указанным категориям инженерно-технического персонала и рабочих.
  4.  Получить число и перечень участков указанного цеха, предприятия в целом и их начальников.
  5.  Получить перечень работ, которые проходит указанное изделие.
  6.  Получить состав бригад указанного участка, цеха.
  7.  Получить список мастеров указанного участка, цеха.
  8.  Получить перечень изделий отдельной категории и в целом, собираемых в настоящий момент указанным участком, цехом, предприятием.
  9.  Получить состав бригад, участвующих в сборке указанного изделия.
  10.  Получить перечень испытательных лабораторий, участвующих в испытаниях некоторого конкретного изделия.
  11.  Получить перечень изделий отдельной категории и в целом, проходивших испытание в указанной лаборатории за определенный период.
  12.  Получить список испытателей, участвующих в испытаниях указанного изделия, изделий отдельной категории и в целом в некоторой лаборатории за определенный период.
  13.  Получить состав оборудования, использовавшегося при испытании указанного изделия, изделий отдельной категории и в целом в некоторой лаборатории за определенный период.
  14.  Получить число и перечень изделий отдельной категории и в целом, собираемых указанным цехом, участком, предприятием в целом в настоящее время.

7. Информационная система военного округа

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

Каждой воинской части придана боевая и транспортная техника: БМП, тягачи, автотранспорт и пр. и вооружение: карабины, автоматическое оружие, артиллерия, ракетное вооружение и т.д. Каждая из перечисленных категорий боевой техники и вооружения также имеет специфические, присущие только ей атрибуты и по каждой категории может быть несколько видов техники и вооружения. Инфраструктура военной части представлена набором сооружений (сооружение N1, сооружение N2 ...), некоторые из которых предназначены для дислокации подразделений части.

Виды запросов в информационной системе:

  1.  Получить перечень всех частей военного округа, указанной армии, дивизии, корпуса и их командиров.
  2.  Получить данные по офицерскому составу в целом и по офицерскому составу указанного звания всех частей военного округа, отдельной армии, дивизии, корпуса, военной части.
  3.  Получить данные по рядовому и сержантскому составу в целом и с учетом указанного звания всех частей военного округа, отдельной армии, дивизии, корпуса, военной части.
  4.  Получить цепочку подчиненности снизу доверху для указанного военнослужащего.
  5.  Получить перечень мест дислокации всех частей военного округа, отдельной армии, дивизии, корпуса, военной части.
  6.  Получить данные о наличии боевой технике в целом и с учетом указанной категории или вида во всех частях военного округа, в отдельной армии, дивизии, корпусе, военной части.
  7.  Получить перечень сооружений указанной военной части, перечень сооружений, где дислоцировано более одного подразделения, где нет ни одного подразделения.
  8.  Получить перечень военных частей, в которых число единиц указанного вида боевой техники больше 5.
  9.  Получить данные о наличии вооружения в целом и с учетом указанной категории или вида во всех частях военного округа, в отдельной армии, дивизии, корпусе, военной части.
  10.  Получить перечень военных специальностей, по которым в округе, в отдельной армии, дивизии, корпусе, военной части более пяти специалистов или нет специалистов.
  11.  Получить перечень военнослужащих указанной специальности в округе, в отдельной армии, дивизии, корпусе, военной части, в указанном подразделении некоторой военной части.
  12.  Получить перечень военных частей, в которых число единиц указанного вида вооружения больше 10.
  13.  Получить данные об армии, дивизии, корпусе, в которые входит больше всего военных частей.

8. Информационная система строительной организации

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

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

На каждом участке возводится один или несколько объектов, на каждом объекте работу ведут одна или несколько бригад. Закончив работу, бригада переходит к другому объекту на этом или другом участке. Строительному управлению придается строительная техника (подъемные краны, экскаваторы, бульдозеры и т.д.), которая распределяется по объектам.

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

Виды запросов в информационной системе:

  1.  Получить перечень строительных управлений и/или участков и их руководителей.
  2.  Получить список специалистов инженерно-технического состава обозначенного участка или строительного управления с указанием их должностей.
  3.  Получить перечень объектов, возводимых указанным строительным управлением и/или участком, и графики их возведения.
  4.  Получить состав бригад, работавших (работающих) на строительстве указанного объекта.
  5.  Получить перечень строительной техники, приданной указанному строительному управлению.
  6.  Получить перечень строительной техники, выделенной на указанный объект или работавшей на нем в течение указанного периода времени.
  7.  Получить график и смету на строительство указанного объекта.
  8.  Получить отчет о сооружении указанного объекта.
  9.  Получить перечень объектов, возводимых в некотором строительном управлении или в целом по организации, на которых в обозначенный период времени выполнялся указанный вид строительных работ.
  10.  Получить перечень видов строительных работ, по которым имело место превышение сроков выполнения на указанном участке, строительном управлении или в целом по организации.
  11.  Получить перечень строительных материалов, по которым имело место превышение по смете на указанном участке, строительном управлении или в целом по организации.
  12.  Получить перечень видов строительных работ, выполненных указанной бригадой в течение обозначенного периода времени с указанием объектов, где эти работы выполнялись.
  13.  Получить перечень бригад, выполненных указанный вид строительных работ в течение обозначенного периода времени с указанием объектов, где эти работы выполнялись.

9. Информационная система библиотечного фонда города

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

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

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

Сотрудники библиотеки, работающие в различных залах различных библиотек, ведут учет читателей, а также учет размещения и выдачи литературы

Виды запросов в информационной системе:

  1.  Получить список читателей с заданными характеристиками: студентов указанного учебного заведения, факультета, научных работников по определенной тематике и т.д.
  2.  Выдать перечень читателей, на руках у которых находится указанное произведение.
  3.  Получить список читателей, на руках у которых находится указанное издание (книга, журнал и т.д.).
  4.  Получить перечень читателей, которые в течение указанного промежутка времени получали издание с некоторым произведением, и название этого издания.
  5.  Выдать список изданий, которые в течение некоторого времени получал указанный читатель из фонда библиотеки, где он зарегистрирован.
  6.  Получить перечень изданий, которыми в течение некоторого времени пользовался указанный читатель из фонда библиотеки, где он не зарегистрирован.
  7.  Получить список литературы, которая в настоящий момент выдана с определенной полки некоторой библиотеки.
  8.  Выдать список читателей, которые в течение обозначенного периода были обслужены указанным библиотекарем.
  9.  Получить данные о выработке библиотекарей (число обслуженных читателей в указанный период времени).
  10.  Получить список читателей с просроченным сроком литературы.
  11.  Получить перечень указанной литературы, которая поступила или  была списана в течение некоторого периода.
  12.  Выдать список библиотекарей, работающих в указанном читальном зале некоторой библиотеки.
  13.  Получить список читателей, не посещавших библиотеку в течение указанного времени.
  14.  Получить список инвентарных номеров и названий из библиотечного фонда, в которых содержится указанное произведение.
  15.  Выдать список инвентарных номеров и названий из библиотечного фонда, в которых содержатся произведения указанного автора.
  16.  Получить список самых популярных произведений.

10. Информационная система спортивных организаций города

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

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

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

Виды запросов в информационной системе:

  1.  Получить перечень спортивных сооружений указанного типа в целом или удовлетворяющих заданным характеристикам (например, стадионы, вмещающие не менее указанного числа зрителей).
  2.  Получить список спортсменов, занимающихся указанным видом спорта, в целом или имеющих разряд не ниже заданного.
  3.  Получить список спортсменов, тренирующихся у некого тренера, в целом или имеющих разряд не ниже заданного.
  4.  Получить список спортсменов, занимающихся более чем одним видом спорта, с указанием этих видов спорта.
  5.  Получить список тренеров указанного спортсмена.
  6.  Получить перечень соревнований, проведенных в течение заданного периода времени, в целом или для указанного организатора.
  7.  Получить список призеров указанного соревнования.
  8.  Получить перечень соревнований, проведенных в указанном спортивном сооружении, в целом или для определенного вида спорта.
  9.  Получить перечень спортивных клубов и число спортсменов этих клубов, участвовавших в спортивных соревнованиях в течение заданного интервала времени.
  10.  Получить список тренеров по определенному виду спорта.
  11.  Получить список спортсменов, не участвовавших в соревнованиях в течение определенного периода времени.
  12.  Получить список организаторов соревнований и число проведенных ими соревнований в течение определенного периода времени.
  13.  Получить перечень спортивных сооружений и даты проведения в них соревнований в течение определенного периода времени.

11. Информационная система автомобилестроительного предприятия

Структурно предприятие состоит из цехов, которые в свою очередь подразделяются на участки. Выпускаемые изделия предприятия: грузовые, легковые автомобили, автобусы, сельскохозяйственные, дорожно-строительные машины, мотоциклы и прочие изделия. Каждая категория изделий имеет специфические, присущие только ей атрибуты. Например, для автобусов это вместимость, для сельскохозяйственных и дорожно-строительных машин - производительность и т.д. По каждой категории изделий может собираться несколько видов изделий. Для каждой категории инженерно-технического персонала (инженеры, технологи, техники) и рабочих (сборщики, токари, слесари, сварщики и пр.) также характерны атрибуты, свойственные только этой группе. Рабочие объединяются в бригады, которыми руководят бригадиры. Бригадиры выбираются из числа рабочих; мастера, начальники участков и цехов назначаются из числа инженерно-технического персонала.

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

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

Ведется учет движения кадров и учет выпускаемой продукции.

Виды запросов в информационной системе:

  1.  Получить перечень видов изделий отдельной категории и в целом, собираемых указанным цехом, предприятием.
  2.  Получить число и перечень изделий отдельной категории и в целом, собранных указанным цехом, участком, предприятием в целом за определенный отрезок времени.
  3.  Получить данные о кадровом составе цеха, предприятия в целом и по указанным категориям инженерно-технического персонала и рабочих.
  4.  Получить число и перечень участков указанного цеха, предприятия в целом и их начальников.
  5.  Получить перечень работ, которые проходит указанное изделие.
  6.  Получить состав бригад указанного участка, цеха.
  7.  Получить перечень мастеров указанного участка, цеха.
  8.  Получить перечень изделий отдельной категории и в целом, собираемых в настоящий момент указанным участком, цехом, предприятием.
  9.  Получить состав бригад, участвующих в сборке указанного изделия.
  10.  Получить перечень испытательных лабораторий, участвующих в испытаниях некоторого конкретного изделия.
  11.  Получить перечень изделий отдельной категории и в целом, проходивших испытание в указанной лаборатории за определенный период.
  12.  Получить перечень испытателей, участвующих в испытаниях указанного изделия, изделий отдельной категории и в целом в указанной лаборатории за определенный период.
  13.  Получить состав оборудования, использовавшегося при испытании указанного изделия, изделий отдельной категории и в целом в указанной лаборатории за определенный период.
  14.  Получить число и перечень изделий отдельной категории и в целом, собираемых указанным цехом, участком, предприятием в настоящее время.

12. Информационная система гостиничного комплекса

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

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

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

Виды запросов в информационной системе:

  1.  Получить перечень и общее число фирм, забронировавших места в объеме, не менее указанного, за весь период сотрудничества или за некоторый период.
  2.  Получить перечень и общее число постояльцев, заселявшихся в номера с указанными характеристиками за некоторый период.
  3.  Получить количество свободных номеров на данный момент.
  4.  Получить сведения о количестве свободных номеров с указанными характеристиками.
  5.  Получить сведения о конкретном свободном номере: в течение какого времени он будет пустовать, характеристики номера.
  6.  Получить список занятых сейчас номеров, которые освобождаются к указанному сроку.
  7.  Получить данные об объеме бронирования номеров данной фирмой за указанный период и каким номерам отдавались предпочтения.
  8.  Получить список недовольных клиентов и их жалобы.
  9.  Получить данные о рентабельности номеров с определенными характеристиками: соотношение об объеме продаж номеров к накладным расходам за указанный период.
  10.  Получить сведения о постояльце из заданного номера: его счет гостинице за дополнительные услуги, поступавшие от него жалобы, виды дополнительных услуг, которыми он пользовался.
  11.  Получить сведения о фирмах, с которыми заключены договора о брони на указанный период.
  12.  Получить сведения о наиболее часто посещающих гостиницу постояльцах по всем корпусам гостиниц, по определенному зданию.
  13.  Получить сведения о новых клиентах за указанный период.
  14.  Получить сведения о конкретном человеке, сколько раз он посещал гостиницу, в каких номерах и в какой период останавливался, какие счета оплачивал.
  15.  Получить сведения о конкретном номере: кем он был занят в определенный период.
  16.  Получить процентное отношение всех номеров к номерам, бронируемым партнерами.

13. Информационная система магазина автозапчастей

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

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

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

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

Виды запросов в информационной системе:

  1.  Получить перечень и общее число поставщиков определенной категории, поставляющих указанный вид товара или поставивших указанный товар в объеме, не менее заданного за определенный период.
  2.  Получить сведения о конкретном виде деталей: какими поставщиками поставляется, их расценки, время поставки.
  3.  Получить перечень и общее число покупателей, купивших указанный вид товара за некоторый период или сделавших покупку товара в объеме, не менее указанного.
  4.  Получить перечень, объем и номер ячейки для всех деталей, хранящихся на складе.
  5.  Вывести в порядке возрастания десять самых продаваемых деталей и десять самых "дешевых" поставщиков.
  6.  Получить среднее число продаж на месяц по любому виду деталей.
  7.  Получить долю товара конкретного поставщика в процентах, деньгах, единицах от всего оборота магазина прибыль магазина за указанный период.
  8.  Получить накладные расходы в процентах от объема продаж.
  9.  Получить перечень и общее количество непроданного товара на складе за определенный период (залежалого) и его объем от общего товара в процентах.
  10.  Получить перечень и общее количество бракованного товара, пришедшего за определенный период и список поставщиков, поставивших товар.
  11.  Получить перечень, общее количество и стоимость товара, реализованного за конкретный день.
  12.  Получить кассовый отчет за определенный период.
  13.  Получить инвентаризационную ведомость.
  14.  Получить скорость оборота денежных средств, вложенных в товар (как товар быстро продается).
  15.  Подсчитать сколько пустых ячеек на складе и сколько он сможет вместить товара.
  16.  Получить перечень и общее количество заявок от покупателей на ожидаемый товар, подсчитать, на какую сумму даны заявки.

14. Информационная система представительства туристической фирмы в зарубежной стране

Туристическая фирма в России формирует группу туристов и данные на каждого туриста (ФИО, паспортные данные, пол, возраст, дети, в какой гостинице хотят жить) отправляет в представительство. Представительство на основе этих данных заполняет на каждого пакет документов для получения визы, готовит списки расселения по разным гостиницам и бронирует номера в этих гостиницах.

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

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

В функциональные обязанности представительства входит также:

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

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

Виды запросов в информационной системе:

  1.  Сформировать список туристов для таможни в целом и по указанной категории туристов.
  2.  Сформировать списки на расселение по указанным гостиницам в целом и для указанной категории.
  3.  Получить количество туристов, побывавших в стране за определенный период в целом и по определенной категории.
  4.  Получить сведения о конкретном туристе: сколько раз был в стране, даты прилета/отлета, в каких гостиницах останавливался, какие экскурсии и в каких агентствах заказывал, какой груз сдавал.
  5.  Получить список гостиниц, в которых производится расселение туристов, с указанием количества занимаемых номеров и проживавших в них человек за определенный период.
  6.  Получить общее количество туристов, заказавших экскурсии за определенный период.
  7.  Выбрать самые популярные экскурсии и самые качественные экскурсионные агентства.
  8.  Получить данные о загрузке указанного рейса самолета на определенную дату: количество мест, вес груза, объемный вес.
  9.  Получить статистику о грузообороте склада: количество мест и вес груза, сданного за определенный период, количество самолетов, вывозивших этот груз, сколько из них грузовых, а сколько грузо-пассажирских.
  10.  Получить полный финансовый отчет по указанной группе в целом и для определенной категории туристов.
  11.  Получить данные о расходах и доходах за определенный период: обслуживание самолета, гостиница, экскурсии, визы, расходы представительства и т.п.
  12.  Получить статистику по видам отправляемого груза и удельную долю каждого вида в общем грузопотоке.
  13.  Вычислить рентабельность представительства (соотношение доходов и расходов).
  14.  Получить сведения о туристах указанного рейса: список группы, гостиницы, груз, бирки, маркировка.

15. Информационная система аптеки

Аптека продает медикаменты и изготавливает их по рецептам. Лекарства могут быть разных типов:

  •  готовые лекарства: таблетки, мази, настойки;
  •  изготовляемые аптекой: микстуры, мази, растворы, настойки, порошки.

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

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

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

Ведется статистика по объемам используемых медикаментов. Через определенный промежуток времени производится инвентаризация склада. Это делается для того, чтобы определить, есть ли лекарства с критической нормой, или вышел срок хранения или недостача.

Виды запросов в информационной системе:

  1.  Получить сведения о покупателях, которые не пришли забрать свой заказ в назначенное им время, и общее их число.
  2.  Получить перечень и общее число покупателей, которые ждут прибытия на склад нужных им медикаментов, в целом и по указанной категории медикаментов.
  3.  Получить перечень десяти наиболее часто используемых медикаментов в целом и указанной категории медикаментов.
  4.  Получить какой объем указанных веществ использован за указанный период.
  5.  Получить перечень и общее число покупателей, заказывавших определенное лекарство или определенные типы лекарств за данный период.
  6.  Получить перечень и типы лекарств, достигших своей критической нормы или закончившихся.
  7.  Получить перечень лекарств с минимальным запасом на складе в целом и по указанной категории медикаментов.
  8.  Получить полный перечень и общее число заказов, находящихся в производстве.
  9.  Получить полный перечень и общее число препаратов, требующихся для находящихся в производстве заказов.
  10.  Получить все технологии приготовления лекарств указанных типов, конкретных лекарств, лекарств, находящихся в производстве по текущим заказам.
  11.  Получить сведения о ценах на указанное лекарство в готовом виде, об объеме и ценах на все компоненты, требующиеся для этого лекарства.
  12.  Получить сведения о клиентах, наиболее часто делающих заказы на медикаменты определенного типа, на конкретные медикаменты.
  13.  Получить сведения о конкретном лекарстве (его тип, способ приготовления, названия всех компонент, цены, его количество на складе).

16. Информационная система библиотеки вуза

Библиотека включает в себя абонементы, читальные залы и справочную систему каталогов и картотек. Читателями библиотеки вуза имеют право быть: студенты всех форм обучения, профессорско-преподавательский состав университета, аспиранты, ассистенты и другие сотрудники подразделений вуза, слушатели подготовительного отделения (ПО), факультета повышения квалификации (ФПК), стажеры, абитуриенты. Различные категории читателей среди прочих обладают характеристиками, специфическими для своей категории: для студентов это название факультета, номер группы, для преподавателя - название кафедры, степень, звание и т.д. Слушатели ФПК, абитуриенты, стажеры - разовые читатели - имеют право пользоваться только читальными залами.

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

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

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

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

Виды запросов в информационной системе:

  1.  Получить перечень и общее число читателей для данного читального зала или по всей библиотеке, по признаку принадлежности к кафедре, факультету, курсу, группе.
  2.  Получить список и общее число всех читателей-задолжников, задолжников со сроком более 10 дней на данном абоненте или по всей библиотеке, по признаку принадлежности к кафедре, факультету, курсу, группе, по категориям читателей.
  3.  Получить перечень двадцати наиболее часто заказываемых книг в данном читальном зале для данного факультета, для всего вуза.
  4.  Получить перечень и общее число книг, поступивших и утерянных за последний год, для данного читального зала, абонента или по всей библиотеке, по указанному автору, году выпуска, году поступления в библиотеку.
  5.  Определить пункт выдачи, на которой самое большое (маленькое) число читателей, читателей-задолжников, самая большая сумма задолженности.
  6.  Получить перечень и общее число книг, заказанных на межбиблиотечном абонементе за последний месяц, семестр, год.
  7.  Получить количество экземпляров книги для данного читального зала или абонента, во всей библиотеке, всех изданий.
  8.  Получить перечень и общее число читателей, лишенных права пользования библиотекой, сроком более двух месяцев, во всей библиотеке, по признаку принадлежности к кафедре, факультету, курсу, группе, по категориям читателей.
  9.  Получить перечень и общее число новых читателей, выбывших читателей для данного читального зала или абонента за последний месяц, семестр, год, во всей библиотеке, по признаку принадлежности к кафедре, факультету, курсу, группе, по категориям читателей.
  10.  Получить перечень и общее число книг, заказанных данным читателем за последний месяц, семестр, год, список книг, которые у него на руках.
  11.  Определить, есть ли данная книга в наличии на абонементах и в каком количестве.
  12.  Получить перечень читателей, у которых на руках некоторая книга и читателя, который раньше всех ее должен сдать.
  13.  Выдать полную информацию о читателе по его фамилии - группу, курс, факультет или кафедру, нарушения порядка, их количество, штрафы, утерянные книги и т.п.

17. Информационная система туристического клуба

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

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

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

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

Походы могут быть плановыми и неплановыми. Для каждого планового похода существует точный план в котором указывается маршрут, расписание привалов и стоянок на каждый день. Во вpемя планового похода ведется дневник. Неплановые походы имеют только маршрут и полное время его прохождения. Hеплановый поход может быть пеpеведен в категоpию плановых. Каждому туpисту пpисваивается категоpия максимально сложного из пpойденных им плановых походов.

Виды запросов в информационной системе:

  1.  Получить список и общее число туpистов, занимающихся в клубе, в указанной секции, гpуппе, по половому пpизнаку, году pождения, возpасту.
  2.  Получить список и общее число тpенеpов указанной секции, по всем секциям, по половому пpизнаку, по возpасту, по pазмеpу заpаботной платы, специализации.
  3.  Получить перечень и общее число соpевнований, в котоpых участвовали споpтсмены из указанной секции, по всем секциям.
  4.  Получить список тpенеpов, пpоводивших тpениpовки в указанной гpуппе, за указанный пеpиод вpемени.
  5.  Получить список и общее число туpистов из некоторой секции, гpуппы, котоpые ходили в заданное количество походов, ходили в указанный поход, ходили в поход в обозначенное вpемя, ходили по определенному маpшpуту, были в некоторой точке, имеют соответствующую категоpию.
  6.  Получить перечень pуководителей секций полностью, по pазмеpу заpаботной платы, по году pождения, возpасту, году поступления на pаботу.
  7.  Получить нагpузку тpенеpов (вид занятий, количество часов), ее объем по опpеделенным видам занятий и общую нагpузку за указанный пеpиод вpемени для данного тpенеpа или указанной секции.
  8.  Получить перечень и общее число маpшpутов, по котоpым ходили туpисты из указанной секции, в обозначенный пеpиод вpемени, по котоpым водил свои гpуппы данный инстpуктоp, по котоpым пpошло указанное количество гpупп.
  9.  Получить перечень и общее число маpшpутов, котоpые пpоходят чеpез некоторую точку, имеют длину больше указанной, могут удовлетвоpять заданной категоpии сложности.
  10.  Получить перечень и общее число туpистов из указанной секции, гpуппы, котоpые могут ходить в указанные типы походов.
  11.  Получить перечень и общее число инстpуктоpов, инстpуктоpов-споpтсменов, инстpуктоpов-тpенеpов, котоpые имеют определенную категоpию, котоpые ходили в указанное количество походов, ходили в определенный поход, ходили по некоторому маpшpуту, были в указанной точке.
  12.  Получить список туpистов из указанной секции, гpуппы, котоpые ходили в походы со своим тpенеpом в качестве инстpуктоpа.
  13.  Получить список туpистов из некоторой секции, гpуппы, котоpые ходили по всем маpшpутам, по указанным маpшpутам.

18. Информационная система городской телефонной сети

ГТС представляет собой разветвленную сеть локальных АТС. АТС подразделяются на городские, ведомственные и учрежденческие и, возможно, обладают характерным только для этой группы набором атрибутов. У каждой АТС есть свои абоненты. У абонента может стоять телефон одного из трех типов: основной, параллельный или спаренный. За каждым абонентом (у него есть фамилия, имя, отчество, пол, возраст и т.д.) закреплен свой номер телефона, причем у нескольких абонентов может быть один и тот же номер (при параллельном или спаренном телефоне). Каждому номеру телефона соответствует адрес (индекс, район, улица, дом, квартира), причем параллельные или спаренные телефоны обязательно должны находиться в одном доме.

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

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

Абонентов любой АТС можно подразделить на простых и льготных. К категории льготников относятся пенсионеры, инвалиды и т.д. Льготники платят только 50% абонентской платы. В соответствии со всем этим (тип телефона, льготник или нет, есть ли выход на межгород) рассчитывается размер абонентской платы.

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

В городе также существуют общественные телефоны и таксофоны, расположенные по определенным адресам.

Виды запросов в информационной системе:

  1.  Получить перечень и общее число абонентов указанной АТС полностью, только льготников, по возрастному признаку, по группе фамилий.
  2.  Получить перечень и общее число свободных телефонных номеров на указанной АТС, по всей ГТС, по признаку возможности установки телефона в данном районе.
  3.  Получить перечень и общее число должников на указанной АТС, по всей ГТС, по данному району, абонентов, которые имеют задолженность уже больше недели (месяца), по признаку задолженности за межгород и (или) по абонентской плате, по размеру долга.
  4.  Определить АТС (любого или конкретного типа), на которой самое большое (маленькое) число должников, самая большая сумма задолженности.
  5.  Получить перечень и общее число общественных телефонов и таксофонов во всем городе, принадлежащих указанной АТС, по признаку нахождения в данном районе.
  6.  Найти процентное соотношение обычных и льготных абонентов на указанной АТС, по всей ГТС, по данному району, по типам АТС.
  7.  Получить перечень и общее число абонентов указанной АТС, по всей ГТС, по данному району, по типам АТС имеющих параллельные телефоны, только льготников имеющих параллельные телефоны.
  8.  Определить, есть ли по данному адресу телефон, общее количество телефонов и (или) количество телефонов с выходом на межгород, с открытым выходом на межгород в данном доме, на конкретной улице.
  9.  Определить город, с которым происходит большее количество междугородных переговоров.
  10.  Получить полную информацию об абонентах с заданным телефонным номером.
  11.  Получить перечень спаренных телефонов, для которых есть техническая возможность заменить их на обычные (выделить дополнительный номер).
  12.  Получить перечень и общее число внутренних на определенной ведомственной или учрежденческой АТС, с которых за некоторый период времени было произведено менее определенного числа внешних звонков.
  13.  Получить перечень и общее число должников на указанной АТС, по всей ГТС, по данному району, которым следует послать письменное уведомление, отключить телефон и(или) выход на межгород.

19. Информационная система театра

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

Для постановки любого спектакля необходимо подобpать актеpов на pоли и дублеpов на каждую главную pоль. Естественно, что один и тот же актеp не может игpать более одной pоли в спектакле, но может игpать несколько pолей в pазличных спектаклях. У спектакля также имеется pежисеp-постановщик, художник-постановщик, диpижеp-постановщик, автоp. Спектакли можно подpазделить по жанpам: музыкальная комедия, тpагедия, опеpетта и пр. С другой стороны, спектакли можно подразделить на детские, молодежные и пр. В pепеpтуаpе театpа указывается какие спектакли, в какие дни и в какое вpемя будут пpоходить, а также даты пpемьеp. В кассах театpа можно заpанее пpиобpести билеты или абонемент на любые спектакли. Абонемент обычно включает в себя билеты на спектакли либо конкpетного автоpа, либо конкpетного жанpа. Цена билетов зависит от места, и спектакля. Hа пpемьеpы билете доpоже. Администpацией театpа фиксиpуется количество пpоданных билетов на каждый спектакль.

Виды запросов в информационной системе:

  1.  Получить список и общее число все pаботников театpа, актеpов, музыкантов, по стажу pаботы в театpе, по полу, году pождения, возpасту, пpизнаку наличия и количества детей, pазмеpу заpаботной платы.
  2.  Получить перечень и общее число спектаклей, указанных в pепеpтуаpе на данный сезон, уже сыгpанных спектаклей, спектаклей указанного жанpа, когда-либо сыгpанных в этом театpе, за указанный пеpиод.
  3.  Получить перечень и общее число всех поставленных спектаклей, спектаклей указанного жанpа, когда-либо поставленных в этом театpе, поставленных за указанный пеpиод.
  4.  Получить список автоpов поставленных спектаклей, автоpов, живших в указанном веке, автоpов указанной стpаны, автоpов спектаклей указанного жанpа когда-либо поставленных в этом театpе, поставленных за указанный пеpиод вpемени.
  5.  Получить перечень спектаклей указанного жанpа, некоторого автоpа, автоpов обозначенной стpаны, спектаклей, написанных в определенном веке, впеpвые поставленных на сцене указанного театpа в обозначенный пеpиод вpемени.
  6.  Получить список актеpов, подходящих по своим данным на указанную pоль.
  7.  Получить общее число и список актеpов театpа, имеющих звания, получивших их за некоторый пеpиод, на указанных конкуpсах, по половому пpизнаку, по возpасту.
  8.  Получить список актеpов и постановщиков, пpиезжавших когда-либо на гастpоли в театp за указанный пеpиод, пеpечень уезжавших на гастpоли в определенное вpемя с данным спектаклем.
  9.  Получить список для указанного спектакля: актеpов, их дублеpов, имена pежисеpа-постановщика, художника-постановщика, диpижеpа-постановщика, автоpов, дату пpемъеpы.
  10.  Получить перечень и общее число pолей, сыгpанных указанным актеpом всего, за некоторый пеpиод вpемени, в спектаклях определенного жанpа, в спектаклях указанного pежисеpа-постановщика, в детских спектаклях.
  11.  Получить сведения о числе пpоданных билетов на все спектакли, на конкpетный спектакль, на пpемьеpы, за указанный пеpиод, в том числе пpоданных пpедваpительно.
  12.  Получить общую сумму выpученных денег за указанный спектакль, за некоторый пеpиод вpемени.
  13.  Получить перечень и общее число свободных мест на все спектакли, на конкpетный спектакль, на пpемьеpы.

20. Информационная система аэропорта

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

В pасписании указывается тип самолета, pейс, дни вылета, вpемя вылета и пpилета, маpшpут (начальный и конечный пункты назначения, пункт пеpесадки), стоимость билета. Билеты на авиаpейсы можно пpиобpести заpанее или забpониpовать в авиакассах. Цена билета зависит не только от маpшpута, но и от вpемени вылета (в неудобное вpемя - ночь, pаннее утpо - цена билета ниже). До отпpавления pейса, если в этом есть необходимость, билет можно веpнуть. Авиаpейсы могут быть задеpжаны из-за погодных условий, технических неполадок, а также могут быть отменены, если не пpодано меньше установленного минимума билетов.

Авиаpейсы можно pазделить на следующие категоpии: внутpенние, междунаpодные, чаpтеpные, гpузопеpевозки, специальные pейсы. Пассажиp пpи посадке в самолет должен пpедъявить билет, паспоpт, а для междунаpодного pейса обязан также пpедъявить загpаничный паспоpт и пpойти таможенный досмотp. Пассажиpы могут сдавать свои вещи в багажное отделение. Hа pейсы гpузопеpевозок и специальные рейсы билеты не пpодаются. Для спец. pейсов не существует pасписания. Билеты на чаpтеpные pейсы pаспpостpаняет то агенство, котоpое его оpганизовало.

Виды запросов в информационной системе:

  1.  Получить список и общее число всех pаботников аэpопоpта, начальников отделов, pаботников указанного отдела, по стажу pаботы в аэpопоpту, половому пpизнаку, возpасту, пpизнаку наличия и количеству детей, по pазмеpу заpаботной платы.
  2.  Получить перечень и общее число pаботников в бpигаде, по всем отделам, в указанном отделе, обслуживающих конкретный pейс, по возpасту, суммаpной (сpедней) заpплате в бpигаде.
  3.  Получить перечень и общее число пилотов, пpошедших медосмотp или не пpошедших его в указанный год, по половому пpизнаку, возpасту, pазмеpу заpаботной платы.
  4.  Получить перечень и общее число самолетов приписанных к аэpопоpту, находящихся в нем в указанное вpемя, по вpемени поступления в аэpопоpт, по количеству совеpшенных pейсов.
  5.  Получить перечень и общее число самолетов, пpошедших техосмотp за определенный пеpиод вpемени, отпpавленных в pемонт в указанное вpемя, pемонтиpованных заданное число pаз, по количеству совеpшенных pейсов до pемонта, по возpасту самолета.
  6.  Получить перечень и общее число pейсов по указанному маpшpуту, по длительности пеpелета, по цене билета и по всем этим кpитеpиям сpазу.
  7.  Получить перечень и общее число отмененных pейсов полностью, в указанном напpавлении, по указанному маpшpуту, по количеству невостpебованных мест, по пpоцентному соотношению невостpебованных мест.
  8.  Получить перечень и общее число задеpжанных pейсов полностью, по указанной пpичине, по указанному маpшpуту, и количество сданных билетов за вpемя задеpжки.
  9.  Получить перечень и общее число pейсов, по котоpым летают самолеты заданного типа и сpеднее количество пpоданных билетов на опpеделенные маpшpуты, по длительности пеpелета, по цене билета, вpемени вылета.
  10.  Получить перечень и общее число авиаpейсов указанной категоpии, в определенном напpавлении, с указанным типом самолета.
  11.  Получить перечень и общее число пассажиpов на данном pейсе, улетевших в указанный день, улетевших за гpаницу в указанный день, по пpизнаку сдачи вещей в багажное отделение, по половому пpизнаку, по возpасту.
  12.  Получить перечень и общее число свободных и забpониpованных мест на указанном pейсе, на опреденный день, по указанному маpшpуту, по цене, по вpемени вылета.
  13.  Получить общее число сданных билетов на некоторый pейс, в указанный день, по определенному маpшpуту, по цене билета, по возpасту, полу.

21. Информационная система зоопарка

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

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

Для коpмления животных необходимы pазличные типы коpмов: pастительный, живой, мясо и pазличные комбикоpма. Растительный коpм это фpукты и овощи, зеpно и сено. Живой коpм - мыши, птицы, коpм для pыб. Для каждого вида животных pассчитывается свой pацион, котоpый в свою очеpедь ваpьиpуется в зависимости от возpаста, физического состояния животного и сезона. Таким обpазом у каждого животного в зоопаpке имеется меню на каждый день, в котоpом указывается количество и вpемя коpмлений в день, количество и вид пищи (обезьянам необходимы фpукты и овощи, мелким хищникам - хоpькам, ласкам, совам, некотоpым кошачьим, змеям - надо давать мышей). У зоопаpка имеются поставщики коpмов для животных. Каждый поставщик специализиpуются на каких-то конкpетных видах коpмов. Часть коpмов зоопаpк может пpоизводить сам: запасать сено, pазводить мышей и т.д.

Ветеpинаpы должны пpоводить медосмотpы, следить за весом, pостом, pазвитием животного, ставить своевpеменно пpививки и заносить все эти данные в каpточку, котоpая заводится на каждую особь пpи ее появлении в зоопаpке. Больным животным назначается лечение и пpи неоходимости их можно изолиpовать в стационаpе.

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

Виды запросов в информационной системе:

  1.  Получить список и общее число служащих зоопаpка, либо служащих данной категоpии полностью, по продолжительсти pаботы в зоопаpке, по полу, возpасту, pазмеpу заpаботной платы.
  2.  Получить перечень и общее число служащих зоопаpка, ответственных за указанный вид животных либо за конкpетную особь за все вpемя пpебывания животного в зоопаpке, за указанный пеpиод вpемени.
  3.  Получить список и общее число служащих зоопаpкав, имеющих доступ к указанному виду животных либо к конкpетной особи.
  4.  Получить перечень и общее число всех животных в зоопаpке либо животных указанного вида, живших в указанной клетке все вpемя пpебывания в зоопаpке, по половому пpизнаку, возpасту, весу, pосту.
  5.  Получить перечень и общее число нуждающихся в теплом помещении на зиму, полностью животных только указанного вида или указанного возpаста.
  6.  Получить перечень и общее число животных, котоpым поставлена указанная пpививка, либо пеpеболевших некоторой болезнью, по длительности пpебывания в зоопаpке, половому пpизнаку, возpасту, пpизнаку наличия и количеству потомства.
  7.  Получить перечень всех животных, совместимых с указанным видом, либо только тех животных, котоpых необходимо пеpеселить, или тех, котоpые нуждаются в теплом помещении.
  8.  Получить перечень и общее число поставщиков коpмов полностью, либо поставляющих только опpеделенный коpм, поставлявших в указанный пеpиод, по количеству поставляемого коpма, цене, датам поставок.
  9.  Получить перечень и объем коpмов, пpоизводимых зоопаpком полностью, либо только тех коpмов, в поставках котоpых зоопаpк не нуждается (обеспечивает себя сам).
  10.  Получить перечень и общее число животных полностью, либо указанного вида, котоpым необходим определенный тип коpмов, в указанном сезоне, возpасте или кpуглый год.
  11.  Получить полную инфоpмацию (pост, вес, пpививки, болезни, дата поступления в зоопаpк или дата pождения, возpаст, количество потомства) обо всех животных, или о животных только данного вида, о конкретном животном, об особи, живущей в указанной клетке.
  12.  Получить пеpечень животных, от котоpых можно ожидать потомство в пpеспективе, в указанный пеpиод.
  13.  Получить перечень и общее число зоопаpков, с котоpыми был пpоизведен обмен животными в целом или животными только указанного вида.

22. Информационная система ГИБДД

У ГИБДД есть три наиболее важные функциональные задачи:

регистрация автотранспортных средств при совершении сделки купли-продажи;

разработка мер, повышающих безопасность дорожного движения и выполнение всех мер при совершении ДТП (дорожно-транспортное происшествие) на улицах города (регистрация, разбор, выявление виновных, автоэкспертиза и т.п.);

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

ГИБДД занимается выделением и учетом номерных знаков на автотранспорт. К автотранспортным средствам относятся легковые, грузовые автомобили, прицепы, полуприцепы, мотоциклы, тракторы, автобусы, микроавтобусы. На разные виды транспорта выдаются разные виды номеров и в базу данных заносятся разные характеристики. Номера могут выделяться как частным владельцам, так и организациям. В справочнике номеров, выданных частным владельцам, фиксируется: номер, ФИО владельца, его адрес, марка автомобиля, дата выпуска, объем двигателя, номера двигателя, шасси и кузова, цвет и т.п. В справочнике номеров, выданных организации, дополнительно фиксируется: название организации, район, адрес, руководитель. Существует справочник свободных номеров (серия, диапазон номеров). ГИБДД периодически проводит технический осмотр (ТО) машин. Для прохождения техосмотра необходима квитанция об оплате налогов, сумма оплаты зависит от объема двигателя. Периодичность прохождения зависит от года выпуска и вида транспортного средства. Технические характеристики, проверяемые на ТО и допуски также зависят от вида транспортного средства.

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

Угон либо исчезновение виновника ДТП с места происшествия требует оперативного вмешательства всех постов ГИБДД и патрульных машин. Для информирования о разыскиваемой машине ее данные (включая номера двигателя и кузова) извлекаются из базы зарегистрированных номеров и передаются по рации всем постам. Ведение статистики угонов, ее анализ и опубликование результатов в СМИ поможет снизить количество угонов, а хозяевам машин принять необходимые меры (самые угоняемые марки, самый популярный способ вскрытия, самые надежные сигнализации и т.п.).

Виды запросов в информационной системе:

  1.  Получить перечень и общее число организаций, которым выделены номера либо с указанной серией, либо за указанный период.
  2.  Получить сведения о владельце автотранспортного средства по государственному номеру автомашины.
  3.  Получить сведения об автомобиле по государственному номеру - номера двигателя, кузова и шасси, участвовал ли в ДТП, прошел ли техосмотр.
  4.  Получить перечень и общее число владельцев машин не прошедших вовремя техосмотр.
  5.  Получить статистику по любому типу ДТП за указанный период.
  6.  Получить результаты анализа ДТП: самые опасные места в городе, самая частая причина ДТП.
  7.  Получить данные о количестве ДТП, совершаемых водителями в нетрезвом виде и доля таких происшествий в общем количестве ДТП.
  8.  Получить список машин, отданных в розыск, будь то скрывшиеся с места ДТП или угнанные.
  9.  Получить данные об эффективности розыскной работы: количество найденных машин в процентном отношении.
  10.  Получить перечень и общее число угонов за указанный период.
  11.  Получить статистику по угонам: самые угоняемые марки машин, самые надежные сигнализации и т.п.

Методические указания к выполнению работы

Цель моделирования данных состоит в обеспечении разработчика ИС схемой базы данных (БД). Схема может состоять из одной или нескольких моделей данных.

Наиболее распространенным способом моделирования данных является подход с использованием диаграмм «сущность-связь» (Entity Relationship Diagrams, ERD), ориентированных на разработку реляционных БД.

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

IDEF1X

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

Основными элементами диаграмм сущность-связь являются:

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

В общем случае разработка модели по IDEF1X включает следующие шаги:

  1.  определяются и детализируются цели проекта, составляется план сбора информации, необходимой для модели;
  2.  выявляются и описываются основные сущности; в дальнейшем сущности будут представлены как таблицы РБД, хранящие значимые для системы данные;
  3.  выявляются и описываются основные отношения; основные сущности и отношения отображаются на так называемой концептуальном – наименее детальном – уровне модели;
  4.  раскрываются нестандартные отношения (типа «многие ко многим»), определяются ключевые и наиболее важные с функциональной точки зрения атрибуты сущностей; данная информация отображается на логическом уровне модели (или, в терминах IDEF1X, "key-based view");
  5.  полностью определяются все атрибуты сущностей, все элементы модели получают непротиворечивые физические имена; получаемый в результате физический уровень модели (в терминах IDEF1X "fully attributed view") может быть отображен в РБД с точно соответствующей ему структурой.

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

Сущность

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

Отдельное свойство объекта выражает атрибут. Сущность включает определение одного и более атрибутов.

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

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

Если рассматривать эти элементы с точки зрения конечной РБД, то сущности соответствует таблица, экземпляру сущности – строка, атрибуту – колонка таблицы.

Основные свойства сущности:

  1.  наличие уникального имени и одинаковой семантики (смысла) во всей модели, т.е., например, сущность «Чек» должна иметь одинаковый смысл на всех диаграммах модели – описание информационного объекта, хранящего параметры кассового чека;
  2.  наличие одного или нескольких атрибутов;
  3.  наличие одного или нескольких атрибутов, однозначно идентифицирующих любой экземпляр сущности; эти атрибуты составляют уникальный идентификатор, или первичный ключ (primary key);
  4.  сущность может иметь любое количество отношений с другими сущностями.

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

Пример отображения сущности "Сотрудник" на разных уровнях модели:

  1.  концептуальный:

  1.  логический:

  1.  физический:

Более детальное рассмотрение свойств сущности требует определения понятия «связь» и дается ниже.

Атрибут

Атрибут (attribute) — любая характеристика сущности, значимая для рассматриваемой проблемной области и предназначенная для квалификации, идентификации, классификации количественной оценки характеристики или выражения состояния сущности.

Экземпляр атрибута — это значение атрибута. С позиции конечного представления в РБД атрибуту соответствует колонка таблицы.

Атрибуты бывают обязательными и необязательными. Если атрибут необязателен, то он может принимать неопределенное значение (NULL).

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

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

Необязательные атрибуты помечаются буквой “O” (optional). Например, пусть атрибут "Телефон" не является обязательным, тогда:

Если, кроме первичного ключа, для сущности можно указать еще несколько атрибутов (групп атрибутов), уникально определяющих экземпляр сущности, то такие атрибуты называются альтернативными ключами. Альтернативные ключи помечаются аббревиатурой AK (от alternate key):

Основные свойства атрибута:

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

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

Связь (отношение)

Связь (отношение, relationship) — поименованная ассоциация между двумя сущностями, определяющая некоторое логическое соотношение между сущностями.

Каждая связь может именоваться глаголом или глагольной конструкцией. Связь определяет логическое ограничение или бизнес-правило.

На уровне конечной БД связи соответствует ограничение целостности.

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

В зависимости от характера связи, соединяющей сущности, в  IDEF1X выделяются зависимые и независимые сущности. С этой точки зрения связи делятся на идентифицирующие и неидентифицирующие.

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

Можно указать следующее правило определения типа связи и зависимости сущности: если внешний ключ полностью входит в состав первичного ключа, то сущность зависимая; если только часть внешнего ключа состоит из внешних атрибутов или такие атрибуты отсутствуют, то сущность независимая. Ниже это рассматривается подробнее.

В случае связи «один ко многим» экземпляру родительской сущности соответствует произвольное, в том числе нулевое, количество экземпляров потомков, а экземпляр сущности-потомка ассоциирован с одним экземпляром родительской сущности:

При использовании отношения «один ко многим» может устанавливаться идентифицирующая (identifying) связь между одной независимой (родительской) и одной зависимой (дочерней) сущностью. Это означает, что экземпляр дочерней сущности не может существовать, если нет соответствующего ему экземпляра родительской сущности. Это достигается путем так называемой миграции атрибутов первичного ключа родительской сущности в состав первичного ключа дочерней сущности. Первичный ключ родительской сущности становится так называемым внешним ключом (foreign key) для дочерней сущности. При этом атрибуты первичного ключа родительской сущности становятся связанными с соответствующими им атрибутами первичного ключа дочерней сущности: удалением экземпляра родительской сущности приводит к принятию атрибутами внешнего ключа неопределенных значений и, соответственно, фактическому удалению тех экземпляров дочерней сущности, которые были связаны с удаленным экземпляром родительской. Действительно, внешний ключ входит в состав первичного ключа дочерней сущности и его атрибуты не могут принимать неопределенные значения без потери свойства однозначной идентифицируемости сущности.

Таким образом, идентифицирующая связь обязательно делает дочернюю сущность зависимой. Пример идентифицирующей связи:

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

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

Все мигрировавшие атрибуты помечаются аббревиатурой FK (foreign key). Например, из отображения сущности "Игрок" видно, что атрибут "Наименование" является внешним ключом.

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

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

Ролевое имя логически обратно наименованию связи, которое формируется с точки зрения родителя.

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

Например:

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

Значение необязательной (optional) неидентифицирующей связи принципиально отличается о значения обязательной: экземпляр дочерней сущности должен соответствовать одному экземпляру родительской только тогда, когда соответствующие внешние ключи имеют определенное значение (не NULL).

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

Пример:

Такая диаграмма означает, что экземпляр сущности "Игрок" может существовать вне зависимости от наличия какого-либо экземпляра "Команда". Иначе говоря, игрок может не числиться в составе ни одной команды.

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

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

В IDEF1X определено 4 типа мощности:

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

  1.  одному экземпляру родительской сущности соответствует более нуля экземпляров дочерней; помечается символом P (positive — положительное количество);

  1.  одному экземпляру родительской сущности соответствует ноль или один экземпляр дочерней; помечается символом Z (zero — возможен ноль);

  1.  одному экземпляру родительской сущности всегда соответствует заданное количество экземпляров дочерней; помечается соответствующим числом, равным количеству экземпляров дочерней сущности;

  1.  одному экземпляру родительской сущности всегда соответствует от min до max экземпляров дочерней; помечается через диапазон minmax;

Типы зависимых сущностей

В зависимости от вида отношений зависимая сущность может быть следующих типов:

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

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

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

  1.  категориальная — дочерняя сущность в иерархии наследования; понятие категориальной сущности связано с отношением типа "наследование", принципиально отличающимся от отношений "один ко многим" и "многие ко многим"; идея наследования описана ниже.

Связь типа "наследование"

Оригинальное наименование данного типа связи — categorization relationship, поэтому точный перевод — "категориальное отношение", или "классифицирующее отношение". Тем не менее, чаще используется термин "наследование", причиной чему, видимо, является схожесть смысла этой связи с идеей механизма наследования в языках программирования. В дальнейшем будет использоваться понятие "наследование".

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

Таким образом, с точки зрения наследования сущности делятся на родовые сущности и сущности-потомки (категориальные сущности).

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

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

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

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

Категориальные сущности образуют иерархию категорий (наследования). В оригинале используется термин "cluster" — "группа", "гроздь".

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

Тип иерархии указывается через вид знака иерархии:

неполная

полная

Свойства наследования:

  1.  категориальная сущность может иметь только одну родовую сущность;
  2.  категориальная сущность может быть родовой в другом категориальном отношении;
  3.  категориальная сущность может быть родовой в нескольких иерархиях (гроздях) категориальных отношений;
  4.  первичный ключ категориальной сущности должен совпадать с первичным ключом родовой сущности (хотя допускается присваивание ролей);
  5.  все экземпляры категориальной сущности имеют одинаковое значение дискриминатора; все экземпляры разных категориальных сущностей должны иметь различные значения дискриминатора (если родовая сущность у них одна);
  6.  в иерархиях наследования не может быть циклов;
  7.  дискриминатор в полной иерархии не может принимать неопределенное значение;
  8.  категориальная сущность всегда является зависимой.

Пример вложенных иерархий:

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

Неопределенная связь (non-specific)

IDEF1X поддерживает неопределенные связи (non-specific) между сущностями, или, в соответствии с более распространенной терминологией, связи типа "многие ко многим". Под определенной связью понимаются отношения типа "один ко многим" и наследование, рассмотренные выше.

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

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

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

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

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

На логическом уровне связь "многие ко многим" может быть разрешена следующим образом:

Нормализация данных

В данном пункте даются самые общие понятия о нормализации данных.

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

Положительные эффекты от нормализации:

  1.  сокращение размера конечной БД;
  2.  уменьшение возможностей возникновения аномалий в процессе эксплуатации БД или их устранение.

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

Отрицательные эффекты:

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

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

  1.  первая НФ (1NF);
  2.  вторая НФ (2NF);
  3.  третья НФ (3NF);
  4.  НФ Бойса-Кодда (BCNF);
  5.  четвертая НФ (4NF);
  6.  пятая НФ (5NF).

Наиболее слабые требования к структуре предъявляются в первой НФ, наиболее жесткие — в пятой. Следует заметить, что далеко не любую модель в принципе можно представить в пятой НФ.

На практике чаще всего выполняется приведение модели к третьей НФ. Множество средств разработки и СУБД ориентированы именно на такую структуру. Далее будут рассмотрены вопросы приведения модели к первой, второй и третьей нормальным формам как самые типичные.

В таблицы дана краткая характеристика рассматриваемых нормальных форм.

Наименование формы

Описание

Первая (1NF)

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

Вторая (2NF)

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

Третья (3NF)

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

Необходимые определения.

Функциональная зависимость: атрибут A сущности E находится в функциональной зависимости от атрибута B сущности E, если значение B однозначно определяет A. Иначе говоря, существует некоторая функция f, так что A = f(B). Можно назвать A атрибутом-функцией, B — атрибутом-аргументом. Замечание. Из существования A = f(B) в общем случае не следует существование B = g(A).

Полная функциональная зависимость: атрибут A сущности E находится в полной функциональной зависимости от набора атрибутов B1, B2, …, Bn сущности E, если A функционально зависит от B1, B2, …, Bn, но не зависит функционально ни от какого подмножества из B1, B2, …, Bn.

Первая НФ

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

Например:

Здесь пара атрибутов "Телефон 1" и "Телефон 2" являются явным нарушением первой НФ, поскольку описывают, фактически, одну и ту же характеристику. С другой стороны, продемонстрированный "экстенсивный" подход к описанию характеристик сущности не решает проблему, или решает на короткий срок и в рамках узкой предметной области. Действительно, если у какого-то студента наберется десяток любимых занятий, то придется либо добавлять еще 7 атрибутов в сущность, либо вводе данных в систему принудительно отсекать все списки хобби размером более 3 элементов. Очевидно, что такой подход в общем случае не правилен.

Для приведения сущности к первой НФ необходимо:

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

Для приведенного примера:

Вторая НФ

Требования второй НФ имеют смысл только в том случае, если первичный ключ сущности составной. Если первичный ключ является только одним атрибутом, то выполнение условий первой НФ автоматически означает выполнение требований второй НФ.

Пример:

Пусть в соответствии с состоянием предметной области табельный номер преподавателя курса однозначно задает ФИО преподавателя и кафедру, к которой приписан курс. Тогда эта сущность не удовлетворяет требованиям второй НФ.

Для приведения сущности, удовлетворяющей первой НФ, ко второй НФ необходимо:

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

В случае сущности "Курс" модификация будет такой:

Третья НФ

Смысл требований третьей НФ состоит в том, что не должно быть детерминированных зависимостей между неключевыми атрибутами. Естественно, при этом должны выполняться и условия для "младшей" НФ — второй.

Пусть в уже использовавшейся для иллюстрации сущности "Курс" имеется также атрибут "Факультет":

Если считать, что каждая кафедра приписана только к одному факультету, то в данной сущности имеется аномалия не только с точки зрения второй НФ, но и третьей НФ.

Последовательность шагов для приведения сущности от второй НФ к третьей:

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

В соответствии с таким алгоритмов получается следующая структура:

Краткое описание нормальных форм

1NF  устранены все повторяющиеся атрибуты и все атрибуты имеют атомарное значение.

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

3NF — нет неключевых атрибутов, зависящих от неключевых атрибутов.

Замечание о денормализации

Не следует ставить нормализацию структуры хранения данных самоцелью. В реальных системах активно используются денормализованные структуры. Это диктуется требованиями к скорости обработки запросов и удобством работы с базой на программном уровне. Часто целесообразно денормализовать БД и, соответственно, усложнить специализированное ПО, поддерживающие БД в непротиворечивом состоянии, но тем самым одновременно облегчить формирование SQL-запросов, упростить их и увеличить скорость обработки. Например, сама концепция баз данных типа «хранилище данных» (data warehouse), ориентированных на накопление и анализ информации, предполагается использование простых избыточных структур.

Этапы построения модели (по IDEF1X)

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

Весь процесс построения условно делится на пять фаз:

  1.  подготовка;
  2.  определение сущностей;
  3.  определение отношений;
  4.  определение ключей;
  5.  определение атрибутов.

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

Фаза

Шаг

Описание

1.

1.1. Определение целей моделирования

Должны быть определены назначение модели и границы моделирования (очерчена область моделирования). Например, необходимо определиться, будет ли это модель типа «как есть» на самом деле (as is), или типа «как должно быть» (should be).

1.2. Разработка плана моделирования

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

1.3. Организация команды

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

1.4. Сбор информации

Сбор материала для моделирования на основе сформулированных целей.

1.5. Утверждение условных соглашений

Согласование условных соглашений, форм представления информации. Например, правил формирования наименований сущностей.

2.

2.1. Выявление сущностей

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

  •  имеет ли объект различимые характеристики?
  •  существует ли несколько экземпляров объекта?
  •  отличим ли один экземпляр от другого?
  •  ссылается ли он на что-то или характеризует что-то?

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

2.2. Определение сущностей

Составление словаря сущностей, включающего: наименование сущности, пояснение смысла сущности (собственно определение), синонимы наименования сущности.

3.

3.1. Выявление взаимосвязанных сущностей

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

3.2. Определение отношений

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

3.3. Построение концептуального уровня модели

Изображается концептуальный уровень модели, содержащий определенные ранее сущности и отношения, при этом допустимо использовать связи «многие ко многим».

4.

4.1. Устранение неопределенных отношений

Все неопределенные отношения заменяются на совокупность связей «один ко многим» и/или связей типа «наследование», при этом обычно формируются новые сущности. Как правило, новые сущности абстрактны, имеют вспомогательный характер и отражают взаимодействие исходных сущностей. Наименования новых сущностей часто сложные, например: сущность «Поставщик-склад» описывает некоторое отношение между сущностью «Поставщик» и сущностью «Склад».

4.2. Формирование функциональных представлений.

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

4.3. Выявление первичных ключей

Выявляются все кандидаты на роль первичного ключа, из них выбирается первичный ключ. Оставшиеся ключи помечаются как альтернативные первичные ключи (alternate key)

4.4. Миграция первичных ключей

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

4.5. Проверка ключей и отношений

Модель должна удовлетворять следующим основным требованиям:

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

4.6. Определение ключей

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

4.7. Формирование логического уровня модели

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

5.

5.1. Выявление неключевых атрибутов

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

5.2. Привязка атрибутов к сущностям

Каждый атрибут должен быть помещен в состав одной из сущностей.

5.3. Определение атрибутов

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

5.4. Усовершенствование модели

Анализ и улучшение структуры модели, нормализация.

5.5. Формирование физического уровня модели

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

Рекомендуемая литература

  1.  [658.012.011.56 - Ч-46] Черемных, С. В. Структурный анализ систем: IDEF-технологии: монография/ С. В. Черемных, И. О. Семенов, В. С. Ручкин. - М.: Финансы и статистика, 2003. - 208 с. Имеются экземпляры в отделах: ФО(2)
  2.  [004 - А 65] Андон, Ф.. Язык запросов SQL: учебный курс/ Ф. Андон, В. Резниченко. - СПб.: ПИТЕР; Киев: BHV, 2006. - 416 с. Имеются экземпляры в отделах: ФО(1)
  3.  [004.65 - Д44] Диго, С. М. Базы данных: проектирование и использование: учебник/ С. М. Диго. - М.: Финансы и статистика, 2005. - 592 с. Имеются экземпляры в отделах: ФО(9), ЧЗ(1)
  4.   [004.652.4 - М64] Мирошниченко, Г.. Реляционные базы данных: практические приемы оптимальных решений [Электронный ресурс]: монография/ Г. Мирошниченко; О. Калашников. - Электрон. текстовые дан.. - СПб.: БХВ - Петербург, 2005. - 400 с. Имеются экземпляры в отделах: ДП(10), ФО(10)
  5.   [004.4 - Р 83] Рудаков, А. В.. Технология разработки программных продуктов: учебное пособие/ А. В. Рудаков. - 2-е изд., стер.. - М.: Академия, 2006. - 208 с. Имеются экземпляры в отделах: КЛЧЗ(2), КЛ(8)
  6.   [004.65 - Б42] Бекаревич, Ю. Б. Microsoft Access за 21 занятие для студента: монография/ Ю. Бекаревич, Н. Пушкина. - СПб.: БХВ - Петербург, 2005. - 591 с. Имеются экземпляры в отделах: ФО(3)
  7.   [004.65 - В 68] Волоха, А. В.. Microsoft SQL Server 2005. Новые возможности/ А. В. Волоха. - СПб.: ПИТЕР, 2006. - 304 с. Имеются экземпляры в отделах: ФО(14), ЧЗ(1)
  8.   [004.451 - Г 95] Гурвиц, Г. А. Microsoft Access 2007. Разработка приложений на реальном примере/ Г. А. Гурвиц. - СПб.: БХВ - Петербург, 2007. - 672 с. Имеются экземпляры в отделах: ФО(2) 
  9.   [004.655.3(083) - К 47] Клайн, К.. SQL. Включает SQL Server, DB2, MySQL, Oracle и PostgreSQL: справочник/ К. Клайн, при участии : Д. Клайн, Б. Хант ; пер. С. М. Лунин. - 2-е изд.. - М.: Кудиц-Образ, 2006. - 832 с. Имеются экземпляры в отделах: ФО(2)
  10.  [004.6(075) - Г 60] Голицына, О. Л. Базы данных: учебное пособие для спо/ О. Л. Голицына, Н. В. Максимов, И. И. Попов. - 2-е изд., испр. и доп.. - М.: ФОРУМ: Инфра-М, 2009. - 400 с. Имеются экземпляры в отделах: КЛ(5)
  11.  [004.6 - К 43] Кириллов, В. В.. Введение в реляционные базы данных [Электронный ресурс]/ В. В. Кириллов, Г. Ю. Громов. - СПб.: БХВ - Петербург, 2009. - 454 с. Имеются экземпляры в отделах: ФО(2)




1. Учебный практикум «По налоговому учету и планированию»
2. Учёт и аудит нематериальных активо
3. АМЕРИКАНСКАЯ ИДЕЯ.html
4. Вий В черном черном лесу стоит черный черный дом В черном черном дому стоит черный черный стол На
5. Славянская мифология
6. Усеймин да простит АЛЛАh ему и всем мусульманам ~ ~
7. ВОПРОСЫ К ЭКЗАМЕНУ
8. Моделирование, как необходимый научный метод познания и его связь с детерминированными и стохастическими методами ИЗУЧЕНИЯ ЛЮБОГО явления или процесса
9. Становление системы Российского законодательства
10. 45 Тимошкина Е.А
11. Модуль 01. ldquo;Точка прямая плоскостьrdquo; Выполнить три задачи в ортоганальных поекциях на формате А3 297х420
12. Происхождение человека от обезьяны факт, гипотеза или миф
13. Сметное планирование бюджетирование
14. 3 EMBED Eqution3 EMBED Eqution
15.  один из этапов планирования маркетинговой деятельности
16. Supply Infinitives nd ingformes for the following text
17. педагогічний романтрактат про виховання людини
18. Контрольная работа по Основам сурдо
19. реферату- СвідомістьРозділ- Психологія Свідомість Вищим рівнем психічного відображення властивого тіль
20. экономические проблемы интеллектуальной собственности