Автоматизация учета студентов в ВУЗе
К «Общежитию» относятся 3 свойства: адрес, ФИО коменданта, номер телефона общежития.
Отношение «Проживает в…» обладает свойствами дата заселения и дата выселения.
В данной схеме используются 2 связи: один ко многим () и многие ко многим (). Между объектами «Сту
дент» и «Группа» выбрана связь , потому что каждый студент учится только в одной на данный момент группе, а группа содержит много студентов.
Между «Группой» и «Специальностью» выбрано отношение : одна группа принадлежит к одной специальности, в свою очередь к одной специальности может принадлежать несколько групп. Аналогичная связь связывает объекты «Специальность» и «Факультет»- к одному факультету может относиться много различных специальностей; одна специальность относится к одному факультету. Рассмотрим связь между объектами «Комната» и «Общежитие»: т.к. каждая комната принадлежит одному общежитию, а общежитие содержит множество комнат. В итоге получаем отношение . Между объектом «Студент» и «Комната» получаем отношение , т.к. один студент может проживать в разное время в разных комнатах, а в одной комнате может проживать несколько студентов. На рис.3.1 показана схема «Объект отношения».
3.2 Обоснование выбора модели данных
3.2.1 Типы моделей данных
БД может быть основана на одной модели или на совокупности нескольких моделей. Любую модель данных можно рассматривать как объект, который характеризуется своими свойствами (параметрами), и над ней, как над объектом, можно производить какие-либо действия.
Любая модель должна обеспечивать такие операции над БД:
- поиск указанного элемента базы;
- переход от одних данных к другим;
- движение по записям;
Существуют три основных типа моделей данных – реляционная, иерархическая и сетевая.
3.2.2 Иерархическая модель данных
Иерархическая модель БД представляет собой совокупность элементов, расположенных в порядке их подчинения от общего к частному и образующих перевернутое дерево. Данная модель характеризуется такими параметрами, как уровни, узлы, связи. Принцип работы модели таков, что несколько узлов более низкого уровня соединяются при помощи связи с одним узлом более высокого уровня.
Узел – информационная модель элемента, находящегося на данном уровне иерархии.
Свойства иерархической модели данных:
- несколько узлов низшего уровня связано только с одним узлом высшего уровня;
- иерархическое дерево имеет только одну вершину (корень), не подчиненную никакой другой вершине;
- каждый узел имеет свое имя (идентификатор);
- существует только один путь от корневой записи к более частной записи данных.
Пример реализации иерархической модели данных для разрабатываемой БД представлен на рисунке 3.2.
Достоинством ИМД в общем является эффективное использование памяти, малое время обращения к данным. Но для данной БД малое время обращения к информации можно наблюдать только для верхних уровней, а не для нижних из-за глубины дерева. Недостатком этой модели является высокая избыточность. Одна запись БД – это совокупность деревьев. Через эту структуру нельзя построить отношение многие ко многим. Очевидна громоздкость обрабатываемой информации, сложность в понимании для конечного пользователя. ИМД не имеет механизма поддержки целостности данных.
Изображенная на рисунке схема отображает вырожденное дерево, у которого каждый объект имеет не более одного ребенка. Основным недостатком иерархической модели для данного программного продукта являются громоздкая форма записи реляционной модели, что, в свою очередь, приводит к осложнению понимания пользователем базы.
3.2.3 Сетевая модель данных
Сетевая модель позволяет отображать разнообразные взаимосвязи элементов данных в виде произвольного графа, обобщая тем самым иерархическую модель данных.
Основной структурой в сетевых моделях данных является «сеть». При таком представлении существует несколько входов в сеть – неоднозначность доступа к данным.
Особенности такого представления: один или несколько узлов могут иметь больше одного родителя; время доступа изменяется в зависимости от исходного входа. Время доступа в сетевой структуре может быть больше, чем в иерархической структуре.
Схема сетевой модели данных для данной БД показана на рисунке 3.3.
Рис. 3.3 - Схема сетевой модели данных
К достоинствам СМД относят:
- возможность создания произвольных связей (например, растения произрастают на закрепительном участке, и закрепительный участок имеет растения);
- эффективную реализацию с точки зрения затрат времени и памяти.
Недостатки такие:
- сложность и жесткость схемы;
- сложность в установлении и проверке целостности данных.
Недостатком обеих этих структур является то, что при добавлении новых вершин или установлении новых связей возникают проблемы выгрузки данных из базы, перегенерации полностью структуры, загрузка данных обратно в базу. При этом возникает вероятность потерять данные при обратной загрузке.
3.2.4 Реляционная модель данных
Предпочтение было отдано реляционной модели по следующим причинам:
- реляционная модель является более простой моделью, чем сетевая;
- схема данных позволяет представить структуру в виде таблиц (после некоторых преобразований);
- в настоящее время реляционные базы данных являются более
распространенными, чем сетевые;
- использование реляционных баз данных удобнее, чем сетевых;
- сетевая модель данных сложна для изучения пользователем, проще разобраться с реляционной МД;
- реляционная МД нагляднее представляет структуру данных.
В отличие от ИМД и СМД, РМД обеспечивает логический доступ к данным, не зависящий от физической реализации. Недостатками реляционных моделей являются сложность в описании иерархических, сетевых связей и отсутствие стандартных средств идентификации отдельных записей.
Для проектируемой БД реляционная модель представлена на рисунке 3.4.
3.3 Нормализация таблиц
3.3.1 Выделение функциональных зависимостей
Функциональная связь – связь вида один ко многим в одной таблице.
Пусть R – отношение, в котором существуют подмножества множества атрибутов х и у. Тогда х→у (у функционально зависит от х) тогда и только тогда, когда для каждого допустимого значения R каждое значение х связано только с одним у. Если совпадение по х, то и по у.Если х – потенциальный ключ, то все атрибуты этого отношения всегда функционально от него зависят. На рисунке 3.5 изображена схема функциональных зависимостей.
Другие рефераты на тему «Программирование, компьютеры и кибернетика»:
Поиск рефератов
Последние рефераты раздела
- Основные этапы объектно-ориентированного проектирования
- Основные структуры языка Java
- Основные принципы разработки графического пользовательского интерфейса
- Основы дискретной математики
- Программное обеспечение системы принятия решений адаптивного робота
- Программное обеспечение
- Проблемы сохранности информации в процессе предпринимательской деятельности