Автор: Пользователь скрыл имя, 10 Марта 2012 в 17:56, дипломная работа
Для современных условий характерно применение на предприятиях, в учреждениях и организациях высокоэффективной информационной системы, основанной на использовании новейших технических средств автоматизированной обработки цифровой и текстовой информации на базе компьютеров, объединенных в единую локальную вычислительную сеть.
Особое значение имеет развитие автоматизированных систем разного уровня. Одним из глобальных вопросов в автоматизации является связка между собой звеньев автоматизированной системы учреждения и дальнейшая интеграция различных автоматизированных систем в единый комплекс.
1 Описание предметной области
2 Постановка задачи
3 Обзор возможных средств решения поставленной задачи
3.1 Концепция баз данных
3.2 Архитектура субд
3.3 Инфологическая модель данных "сущность-связь"
3.4 Построение инфологической модели предметной области методом ER–диаграммы
3.5 Описание диаграммы «сущность-связь»
3.6 Реляционная структура данных
4 Разработка схемы базы данных и ее нормализация
4.1 О нормализации, функциональных и многозначных зависимостях
4.2 Потенциальные ключи
4.3 Ссылочная целостность
4.4 Первичные и внешние ключи
4.5 Потенциальные ключи и null – значения
4.6 Ограничение целостности
4.7 Описание логической схемы базы данных
5 Инструментальные средства и алгоритм реализации ИС
5.1 Обоснование выбора средств реализации
5.2 Разработка интерфейса пользователя
5.3 Описание данных БД «тестер»
5.4 Заполнение базы данных
5.5 Назначение ис «тестер»
5.6 Руководство пользователя для работы с программой «Тестер»
5.6.1 Создание тестовых заданий
5.6.2 Поиск и редактирование данных.
5.6.3 Процесс тестирования.
5.7 Описание характеристик программного продукта
Выводы
Агрегация – это вид абстракции, посредством которой объект конструируется из других, базовых объектов. Агрегация может использоваться как на уровне знаков, так и на уровне типов.
Агрегация, проведенная на уровне типов, индуцирует соответствующую агрегацию знаков объектов.
Согласно определению, данному Ченом, объектом называется «предмет, который может быть четко идентифицирован». При этом объекты подразделяются на правильные и слабые объекты. Слабым объектом называется объект, который находится в зависимости от некоторого другого объекта, т. е. он не может существовать, если не существует этот другой объект. Правильным называется объект, который не является слабым. Вместо термина «правильный объект» иногда используют термин «сильный объект».
В диаграмме каждый тип объекта показан в виде отдельного прямоугольника с его именем внутри, причем слабые типы объектов изображают в двойной рамке.
Объекты (и отношения) обладают некоторыми свойствами. Все объекты одного типа обладают некоторыми общими свойствами. Опишем некоторые виды свойств и их особенности:
простое или составное свойство;
ключевое свойство (уникальное в некотором контексте);
однозначное или многозначное свойство;
отсутствующее свойство («неизвестное» или «неприменимое»);
базовое или производное свойство.
Свойства показываются в виде эллипсов с названием свойства, записанного внутри него. Эллипсы соединены сплошной линией с соответствующим объектом. Эллипс обведен штриховой линией, если свойство производное и двойной линией, если свойство многозначное. Если свойство составное, то составляющие его свойства показаны в виде других эллипсов, соединенных с эллипсом составного свойства с помощью дополнительных линий. Ключевые свойства, как правило, подчеркиваются, а множества их значений не показываются вовсе. В диаграмме сущность-связь отношение определяется как «ассоциация объектов».
Существует принципиальная разница между типами и экземплярами отношений, однако при неформальном описании такими тонкостями можно пренебречь. Объекты, включенные в данное отношение, называются участниками данного отношения, а количество участников этого отношения называется степенью данного отношения.
Отношения в модели сущность-связь могут иметь тип один-к-одному, один-ко-многим, многие-к-одному, многие-ко-многим.
Каждый тип отношения показан в виде ромба с названием отношения внутри. Ромб окружен двойной линией, если отношение задано между слабым типом объекта и типом объекта, от существования которого находится в зависимости слабый тип объекта.
Участники каждого отношения присоединены к соответствующему отношению сплошными линиями. Каждая такая линия содержит надпись «1» или «N» для обозначения типа отношения. Двойная линия обозначает полное участие.
Свойствами объекта Stud являются: FIO_stud, Gruppa, Parol.
Свойствами объекта Gruppa являются Gruppa, Kurator.
Свойствами объекта Prepod являются FIO_Prep, Dostup, Dolgnost, Parol.
Свойствами объекта Dolgnost является Dolgnost.
Свойствами объекта Dostup являются Dostup, Opisanie.
Свойствами объекта Result являются FIO_stud, Test, Gruppa, Total_Ball.
Объекты Stud и Gruppa – связанны отношением Gruppa.
Объекты Gruppa и Prepod – связанны отношением FIO_Prep.
Объекты Prepod и Dolgnost – связанны отношением Dolgnost.
Объекты Prepod и Dostup – связанны отношением Dostup.
Объекты Stud и Result – связанны отношением FIO_stud.
Объекты Gruppa и Result – связанны отношением Gruppa.
На рисунке 3.3 приведена инфологическая схема (ER-диаграмма) предметной области.
Рисунок 3.3 – Инфологическая схема предметной области
В конце 60-х годов появились работы, в которых обсуждались возможности применения различных табличных даталогических моделей данных, т.е. возможности использования привычных и естественных способов представления данных. Наиболее значительной из них была статья сотрудника фирмы IBM д-ра Э.Кодда (Codd E.F., A Relational Model of Data for Large Shared Data Banks. CACM 13: 6, June 1970), где, вероятно, впервые был применен термин "реляционная модель данных".
Будучи математиком, по образованию Э.Кодд предложил использовать для обработки данных аппарат теории множеств (объединение, пересечение, разность, декартово произведение). Он показал, что любое представление данных сводится к совокупности двумерных таблиц особого вида, известного в математике как отношение – relation.
Наименьшая единица данных реляционной модели – это отдельное атомарное (неразложимое) для данной модели значение данных. Так, в одной предметной области фамилия, имя и отчество могут рассматриваться как единое значение, а в другой – как три различных значения.
Доменом называется множество атомарных значений одного и того же типа. Смысл доменов состоит в следующем. Если значения двух атрибутов берутся из одного и того же домена, то, вероятно, имеют смысл сравнения, использующие эти два атрибута (например, для организации транзитного рейса можно дать запрос "Выдать рейсы, в которых время вылета из Москвы в Сочи больше времени прибытия из Архангельска в Москву"). Если же значения двух атрибутов берутся из различных доменов, то их сравнение, вероятно, лишено смысла: не стоит сравнивать номер рейса со стоимостью билета.
Заголовок состоит из такого фиксированного множества атрибутов A1, A2, ..., An, что существует взаимно однозначное соответствие между этими атрибутами Ai и определяющими их доменами Di (i=1,2,...,n).
Тело состоит из меняющегося во времени множества кортежей, где каждый кортеж состоит в свою очередь из множества пар атрибут-значение (Ai:Vi), (i=1,2,...,n), по одной такой паре для каждого атрибута Ai в заголовке. Для любой заданной пары атрибут-значение (Ai:Vi) Vi является значением из единственного домена Di, который связан с атрибутом Ai.
Степень отношения – это число его атрибутов. Отношение степени один называют унарным, степени два – бинарным, степени три – тернарным, а степени n – n-арным.
Кардинальное число или мощность отношения – это число его кортежей. Кардинальное число отношения изменяется во времени в отличие от его степени.
Поскольку отношение – это множество, а множества по определению не содержат совпадающих элементов, то никакие два кортежа отношения не могут быть дубликатами друг друга в любой произвольно-заданный момент времени. Пусть R – отношение с атрибутами A1, A2, ..., An. Говорят, что множество атрибутов K=(Ai, Aj, ..., Ak) отношения R является возможным ключом R тогда и только тогда, когда удовлетворяются два независимых от времени условия:
Уникальность: в произвольный заданный момент времени никакие два различных кортежа R не имеют одного и того же значения для Ai, Aj, ..., Ak.
Минимальность: ни один из атрибутов Ai, Aj, ..., Ak не может быть исключен из K без нарушения уникальности.
Каждое отношение обладает хотя бы одним возможным ключом, поскольку по меньшей мере комбинация всех его атрибутов удовлетворяет условию уникальности. Один из возможных ключей (выбранный произвольным образом) принимается за его первичный ключ. Остальные возможные ключи, если они есть, называются альтернативными ключами.
Вышеупомянутые и некоторые другие математические понятия явились теоретической базой для создания реляционных СУБД, разработки соответствующих языковых средств и программных систем, обеспечивающих их высокую производительность, и создания основ теории проектирования баз данных. Однако для массового пользователя реляционных СУБД можно с успехом использовать неформальные эквиваленты этих понятий:
Отношение–Таблица (иногда Файл), Кортеж – Строка (иногда Запись), Атрибут – Столбец, Поле. При этом принимается, что "запись" означает "экземпляр записи", а "поле" означает "имя и тип поля".
Реляционная база данных – это совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Однако пользователи могут воспринимать такую базу данных как совокупность таблиц.
В реляционной модели допускаются только нормализованные отношения. Нормализованным отношением называется отношение, каждый домен которого содержит только атомарные (неделимые) значения, и поэтому каждое значение в отношении в свою очередь является атомарным.
Кодд в первоначально определил три уровня нормализации, которые он назвал первой, второй и третьей нормальными формами соответственно. Все нормализованные отношения находятся в первой нормальной форме (1НФ), некоторые отношения 1НФ находятся также во второй нормальной форме (2НФ) и некоторые отношения 2НФ находятся в третьей нормальной форме. Впоследствии Фейгин определил четвертую нормальную форму (4НФ) в которой находятся некоторые отношения ЗНФ.
Нормализация – это разбиение таблицы на две или более, обладающих лучшими свойствами при включении, изменении и удалении данных. Окончательная цель нормализации сводится к получению такого проекта базы данных, в котором каждый факт появляется лишь в одном месте, т.е. исключена избыточность информации. Это делается не столько с целью экономии памяти, сколько для исключения возможной противоречивости хранимых данных.
Как указывалось ранее, каждая таблица в реляционной БД удовлетворяет условию, в соответствии с которым в позиции на пересечении каждой строки и столбца таблицы всегда находится единственное атомарное значение, и никогда не может быть множества таких значений. Любая таблица, удовлетворяющая этому условию, называется нормализованной. Фактически, ненормализованные таблицы, т.е. таблицы, содержащие повторяющиеся группы, даже не допускаются в реляционной БД.
Всякая нормализованная таблица автоматически считается таблицей в первой нормальной форме, сокращенно 1НФ. Таким образом, строго говоря, "нормализованная" и "находящаяся в 1НФ" означают одно и то же. Однако на практике термин "нормализованная" часто используется в более узком смысле – "полностью нормализованная", который означает, что в проекте не нарушаются никакие принципы нормализации. Дадим точные определения наиболее распространенных форм нормализации.
Теория нормализации основывается на наличии той или иной зависимости между полями таблицы. Определены два вида таких зависимостей: функциональные и многозначные.
Нормализация БД – это процесс уменьшения избыточности информации в БД. Метод нормализации основан на достаточно сложной теории реляционных моделей данных.
Выделяют следующие последовательности нормальных форм:
первая нормальная форма;
вторая нормальная форма;
третья нормальная форма;
нормальная форма Бойса-Кодда;
четвертая нормальная форма;
пятая нормальная форма.
Основными операциями, изменяющими состояние базы данных, являются операции вставки, обновления и удаления записей. В базах данных, требующих постоянных изменений (складской учет, системы продаж билетов и т.п.) производительность определяется скоростью выполнения большого количества небольших операций вставки, обновления и удаления.
Исторически эти проблемы получили название аномалии обновления. Попытки дать строгое понятие аномалии в базе данных не являются вполне удовлетворительными. В данных работах аномалии определены как противоречие между моделью предметной области и физической моделью данных, поддерживаемых средствами конкретной СУБД. "Аномалии возникают в том случае, когда наши знания о предметной области оказываются, по каким-то причинам, невыразимыми в схеме БД или входящими в противоречие с ней". Т.к. аномалии проявляют себя при выполнении операций, изменяющих состояние базы данных, то различают следующие виды аномалий:
аномалии вставки (INSERT);
аномалии обновления (UPDATE);
аномалии удаления (DELETE).
Отношение находится в первой нормальной форме, если значения атрибута атомарные (неделимые) значения. Согласно определению отношений, любое отношение автоматически уже находится в 1НФ. Свойства отношений (это и будут свойства 1НФ):
в отношении нет одинаковых кортежей;
кортежи не упорядочены;
атрибуты не упорядочены и различаются по наименованию;
все значения атрибутов атомарные.
Ко второй нормальной форме (2НФ) представляются следующие требования:
− таблица должна удовлетворять требованиям первой нормальной форме;
− любое не ключевое поле должно однозначно идентифицироваться ключевыми полями.
Третья нормальная форма (3НФ):
− таблица должна удовлетворять требованиям второй нормальной форме;
− ни одно из ключевых полей не должно однозначно идентифицироваться значением другого не ключевого поля.