Проектирование базы данных

Содержание


ВВЕДЕНИЕ

ЦЕЛЬ РАБОТЫ

1 Теоретические положения

1.1 Основные понятия БД и СУБД

1.2 Инфологическая модель данных "Сущность-связь"

1.2.1 Основные понятия

1.2.2 Типы связей между сущностями

1.2.3 Классификация сущностей их обозначения (описания)

1.3 Реляционная модель данных

1.4 Нормальные формы отношений

2 Этапы проектирования БД

2.1 Советы и рекомендации

3 Задания к выполнению курсовой работы

3.1 Перечень заданий

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

4 Рекомендации по оформлению курсовой работы

ВВЕДЕНИЕ


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

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

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

ЦЕЛЬ РАБОТЫ


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


1 Теоретические положения


1.1 Основные понятия БД и СУБД


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

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

именем;

формой представления (алфавитная, алфавитно-цифровая, дата);

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

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

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

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

Упорядоченная совокупность элементов множества называется картежом.

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

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

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

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


1.2 Инфологическая модель данных "Сущность-связь"


1.2.1 Основные понятия

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

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

Атрибут – поименованная характеристика сущности. Его наименование должно быть уникальным для конкретного типа сущности, но может быть одинаковым для различного типа сущностей (например, ЦВЕТ может быть определен для многих сущностей: СОБАКА, АВТОМОБИЛЬ, ДЫМ и т.д.). Атрибуты используются для определения того, какая информация должна быть собрана о сущности. Примерами атрибутов для сущности АВТОМОБИЛЬ являются ТИП, МАРКА, НОМЕРНОЙ ЗНАК, ЦВЕТ и т.д. Здесь также существует различие между типом и экземпляром. Тип атрибута ЦВЕТ имеет много экземпляров или значений: Красный, Синий, Банановый, Белая ночь и т.д., однако каждому экземпляру сущности присваивается только одно значение атрибута.

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

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

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


1.2.2 Типы связей между сущностями

Между двумя сущностям, например, А и В возможны четыре вида связей.

Первый тип – связь ОДИН-К-ОДНОМУ (1:1): в каждый момент времени каждому представителю (экземпляру) сущности А соответствует 1 или 0 представителей сущности В:

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

Второй тип – связь ОДИН-КО-МНОГИМ (1:М): одному представителю сущности А соответствуют 0, 1 или несколько представителей сущности В.

Квартира может пустовать, в ней может жить один или несколько жильцов.

Так как между двумя сущностями возможны связи в обоих направлениях, то существует еще два типа связи МНОГИЕ-К-ОДНОМУ (М:1) и МНОГИЕ-КО-МНОГИМ (М:N).


1.2.3 Классификация сущностей их обозначения (описания)

Существует три основных класса сущностей: стержневые, ассоциативные и характеристические, а также подкласс ассоциативных сущностей – обозначения (рис.1).

Расширим также язык ER-диаграмм, введя для изображения характеристики трапецию (рис. 2.2).

Стержневая сущность (стержень) – это независимая сущность (несколько подробнее она будет определена ниже).

Ассоциативная сущность (ассоциация) – это связь вида "многие-ко-многим" ("-ко-многим" и т.д.) между двумя или более сущностями или экземплярами сущности. Ассоциации рассматриваются как полноправные сущности:

они могут участвовать в других ассоциациях и обозначениях точно так же, как стержневые сущности;

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

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

Существование характеристики полностью зависит от характеризуемой сущности.

Для описания характеристики используется новое предложение ЯИМ, имеющее в общем случае вид:


ХАРАКТЕРИСТИКА (атрибут 1, атрибут 2, ...) {СПИСОК ХАРАКТЕРИЗУЕМЫХ СУЩНОСТЕЙ}.


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

Рассмотрим пример, связанный с зачислением сотрудников в различные отделы организации.

При отсутствии жестких правил (сотрудник может одновременно зачисляться в несколько отделов или не зачисляться ни в один отдел) необходимо создать описание с ассоциацией Зачисление:

Отделы (Номер отдела, Название отдела, ...)

Служащие (Табельный номер, Фамилия, ...)

Зачисление [Отделы M, Служащие N]

(Номер отдела, Табельный номер, Дата зачисления).

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

Отделы (Номер отдела, Название отдела, ...)

Служащие (Табельный номер, Фамилия, ... , Номер отдела,

Дата зачисления)[Отделы]

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

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

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

ОБОЗНАЧЕНИЕ (атрибут 1, атрибут 2, ...)[СПИСОК ОБОЗНАЧАЕМЫХ СУЩНОСТЕЙ].

Как правило, обозначения не рассматриваются как полноправные сущности, хотя это не привело бы к какой-либо ошибке.

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

1.3 Реляционная модель данных


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

Пусть имеется некоторая совокупность множеств D1, D2, … DN. Отношением R на этих множествах называется подмножество их декартового произведения, где N - это степень отношения. Картеж - это совокупность элементов множеств, причем порядок имеет существенное значение, т.к. каждый элемент множества должен принадлежать только своему домену. Запись вида R(A,B,C) называется схемой отношения и наряду с названием отношения содержит имена атрибутов. Совокупность схем отношений составляет схему реляционной БД.

Количество картежей называется мощностью отношения.


1.4 Нормальные формы отношений


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

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

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

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

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


2 Этапы проектирования БД


Жизненный цикл БД представляет собой концепцию, в рамках которой рассматривается развитие БД во времени. Жизненный цикл БД делится на две фазы:

фаза анализа и проектирования,

фаза эксплуатации.

В течение 1-ой фазы происходит сбор требований пользователей и проектирование БД. В течение 2-ой фазы происходит машинная реализация (создание и отладка программ, проектирование входных и выходных форм и т.д.). Последовательность выполнения этапов и решения задач представлена на рис. 2:

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

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

Концептуальное проектирование имеет своей целью построение независимой от СУБД информационной структуры путем объединения информационных требований пользователя. Результатом этого этапа является представление информационных требований в виде диаграмм «сущность-связь». Основу этой диаграммы представляет набор сущностей, который моделирует определенную совокупность сведений, сведенных к требованиям.

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

Сущность является наиболее общим понятием по сравнению с объектом предметной области. При построении диаграмм «сущность-связь» возникают некоторые сложности, связанные с тем, что одни и те же пользователи БД имеют различные представления одних и тех же фактов.

Проектирование реализации также относится к 1-ой фазе жизненного цикла и состоит из двух компонент:

проектирование БД на уровне логической структуры,

проектирование программ.

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

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

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

Физическое проектирование относится к 1-ой фазе и делится на три категории:

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

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

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

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


2.1 Советы и рекомендации


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


ТОВАР МЕСЯЦ КОЛ-ВО
x ЯНВАРЬ 100
x ФЕВРАЛЬ 50
...
x ДЕКАБРЬ 360
y ЯНВАРЬ 75
x ДЕКАБРЬ 35

а не так, как показано ниже:


ТОВАР ЯНВАРЬ КОЛ-ВО ФЕВРАЛЬ КОЛ-ВО ДЕКАБРЬ КОЛ-ВО
x 100 50 360
y 75 144 35

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

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


3 Задания к выполнению курсовой работы


3.1 Перечень заданий


Описать предметную область:

определить источники информации, представить формы входных документов;

определить пользователей проектируемой БД и выполняемые ими функции;

определить формы выходных документов;

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

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

Построить инфологическую модель:

выявить необходимый набор сущностей, их свойства и связи между сущностями;

определить требуемый набор атрибутов для каждой сущности, выделив идентифицирующие атрибуты;

классифицировать сущности;

определить связи между объектами;

задать ограничения целостности;

описать полученную модель, используя заданную нотацию.

построить набор необходимых отношений базы данных;

выделить первичные и внешние ключи определенных отношений;

привести полученные отношения к третьей нормальной форме.

4 Создать базы данных в Microsoft Access

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

- построить запросы к базе данных

- создать необходимые формы и отчеты

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

5 Оформить отчет


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


Задание № 1

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

Работа с системой предполагает получение следующей информации:

о клиентах, проживающих в заданном номере,

о клиентах, прибывших из заданного города,

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

есть ли в гостинице свободные места и свободные номера и, если есть, то сколько.

Администратор должен иметь возможность выполнить следующие операции:

принять на работу или уволить служащего гостиницы.

изменить расписание работы служащего.

поселить или выселить клиента.

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

Задание №2

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

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

Библиотекарю могут потребоваться следующие сведения о текущем состоянии библиотеки:

Какие книги закреплены за определенным читателем?

Как называется книга с заданным шифром?

Какой шифр у книги с заданным названием?

Когда книга была закреплена за читателем?

Кто из читателей взял книгу более месяца тому назад?

За кем из читателей закреплены книги, количество экземпляров которых в библиотеке не превышает 2?

Какое число читателей пользуется библиотекой?

Сколько в библиотеке читателей младше 20 лет?

Сколько читателей в процентном отношении имеют начальное образование, среднее, высшее, ученую степень?

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

Записать в библиотеку нового читателя.

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

Списать старую или потерянную книгу.

Принять книгу в фонд библиотеки.

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

Задание №3

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

Какой предмет будет в заданном классе, в заданный день недели на заданном уроке?

Кто из учителей преподает в заданном классе?

В каком кабинете будет 5-й урок в среду у некоторого класса?

В каких классах преподает заданный предмет заданный учитель?

Расписание на заданный день недели для указанного класса?

Сколько учеников в указанном классе?

Необходимо предусмотреть возможность получения документа, представляющего собой отчет о работе школы. В этот отчет следует включить сведения об успеваемости за четверть по каждому предмету для каждого класса. Порядок следования классов в отчете – от младших к старшим. Необходимо подсчитать средний балл по каждому предмету, по каждому классу и по школе в целом, указать общее количество учеников в классе и школе, количество учеников, имеющих в четверти только оценки «5», только «4» и «5», имеющих хотя бы одну оценку «3», хотя бы одну оценку «2». Для каждого класса указать классного руководителя. Кроме того, в отчете должно быть указано количество учителей по каждому предмету и общее количество кабинетов в школе.

Задание №4

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

На каком ринге выступает заданный хозяин со своей собакой?

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

Какие медали и сколько заслужены клубом?

Какие эксперты обслуживают породу?

Количество участников по каждой породе?.

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

Задание №5

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

Секретарь приемной комиссии регистрирует абитуриентов. Для каждого абитуриента в базу данных заносятся следующие сведения: фамилия, имя, отчество, паспортные данные, какое учебное заведение, где и когда окончил, наличие золотой или серебряной медали, название кафедры и факультета, на которые поступает абитуриент. При регистрации абитуриенту выдают экзаменационный лист, имеющий уникальный номер, и сообщают номер группы и потока. Группы формируются на период вступительных экзаменов и объединяются в потоки по 3-4 группы. Для каждой группы по каждому предмету в базу данных заносится экзаменационная ведомость. Оценка, полученная абитуриентом, может быть изменена на апелляции. Абитуриент может не только подать, но и забрать документы, а также перевести их на другую кафедру. Для каждого потока формируется расписание консультаций и экзаменов по предметам. Медалисты сдают только один экзамен. Известно количество мест на каждый факультет. Приемная комиссия по результатам экзаменов должна сформировать списки абитуриентов, зачисленных в институт. Секретарю приемной комиссии могут потребоваться следующие сведения:

Список абитуриентов на заданный факультет?

Оценки, полученные указанным абитуриентом?

Когда и в какой аудитории будет консультация и экзамен у заданного абитуриента по указанному предмету?

Где, когда и по каким предметам будут проходить экзамены у заданной группы?

Конкурс на каждый факультет?

Средний балл по каждому предмету на каждом факультете?

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

Задание №6

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

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

По каким адресам печатаются газеты данного наименования?

Фамилия редактора газеты, которая печатается в указанной типографии самым большим тиражом?

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

Какие газеты и куда (номер почты) поступают в количестве меньшем, чем заданное?

Куда поступает данная газета, печатающаяся по данному адресу.

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

Задание №7

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

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

Какое количество яиц получают от каждой курицы данного веса, породы, возраста?

В каком цехе наибольшее количество кур определенной породы?

В каких клетках находятся куры указанного возраста с заданным номером диеты?

Сколько яиц в день приносят куры указанного работника?

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

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

Сколько кур каждой породы

Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

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

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

Похожие рефераты: