48336 (Проектирование базы данных), страница 2
Описание файла
Документ из архива "Проектирование базы данных", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "48336"
Текст 2 страницы из документа "48336"
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
Пусть требуется создать программную систему, ориентированную на администрацию птицефабрики и позволяющую работать с информацией о работниках фабрики и об имеющихся на ней курах.