Курсовой проект. Курсовой проект БД. Разработка базы данных Отдела кадров (института)
Скачать 4.9 Mb.
|
2.2. Концептуальная модель базы данныхКонцептуальное проектирование начинается с анализа предметной области, включает анализ концептуальных требований и информационных потребностей, выявление информационных объектов и связей между ними, построение концептуальной модели (схемы) данных. Главными элементами концептуальной модели данных являются объекты и отношения. Объекты представляют собой любой конкретный (реальный) объект в рассматриваемой области. Исходя из спецификации требования, определим основные типы сущностей. Сущностью называется некоторая принятая в конкретной постановке задачи абстракция реального мира, процесса или явления, о котором необходимо хранить информацию в системе. В качестве синонима термина «сущность» используется также термин «информационный объект». Объекты в каждый момент времени характеризуются определенным состоянием, которое описывается набором свойств и отношений (или связей) с другими объектами. Характеристика, описывающая какое-либо свойство сущности, которое можно сформулировать и записать, называется атрибутом. Атрибут, который однозначно определяет сущность, называется идентификатором. Сущность - объект любой природы данные, о котором хранятся в отношении (таблице, в которой содержатся данные). Каждый объект предметной области характеризуется некоторым наборов атрибутов, отображающим свойства объекта. Атрибуты используются для определения того, какая информация должна быть собрана об объекте. Примерами атрибутов для объекта «Сотрудники» служат Фамилия, Имя, Отчество, Дата рождения, пол и т.д. В рассматриваемой предметной области можно выделить следующие сущности: 1. Сотрудники - содержит информацию о дате рождения, месте проживания, семейном положении, составе семьи сотрудника, трудовой деятельности (стаже работы, дате начала трудовой деятельности) и т.д. 2. Должности – содержит информацию о должностях; 3. Отделы/кафедры содержит информацию об отделах/кафедрах института; 4. Вакансии содержит информацию о вакансиях в отделах/кафедрах; 5. Штатное расписание- содержит информацию о штатном расписании по отделам/кафедрам с указанием количества ставок по должностям. Между сущностями возможны четыре типа связей: один - к одному (1 ↔1), один – ко многим (1↔∞), многие к одному (∞↔1), многие ко многим (∞ ↔ ∞ ) . Связь 1 ↔ 1 означает, что в любой момент времени каждому экземпляру первого информационного объекта (ИО) соответствует 1 экземпляр другого ИО. Связь 1↔ ∞ означает: одному экземпляру ИО соответствует 1,2, … экземпляров другого и, наоборот, каждому экземпляру второго ИО соответствует 1 экземпляр первого ИО. Аналогично определяется тип связи ∞ ↔ 1. Связь ∞ ↔ ∞ означает, что одному экземпляру первого ИО соответствует 1,2,… экземпляров другого ИО и наоборот. Концептуальная модель применяется для структурирования предметной области с учетом информационных интересов пользователей БД, она не зависит ни от программных, ни от технических ошибок. Концептуальная модель, соответствующая БД в виде EAR- диаграмм «сущность»- «атрибут» - «связь», представлена в Приложении 1. В результата анализа предметной области выделено пять ИО (Сотрудники, Должности, Отделы/Кафедры, Вакансии, Штатное расписании), их свойства и связи. Определим связи между сущностями. Таблица 1. Связи между сущностями
2.3 Логическая модель базы данных. Нормализация.На этапе проектирования закладываются основы будущей базы данных, должна быть определена логическая структура базы данных для выбранной предметной области. Проект логической структуры базы данных устанавливает состав реляционных таблиц, их структуру и логические связи между таблицами. При формировании структуры каждой таблицы определяется совокупность полей (столбцов), для каждого из которых даются описание типа, размера данных и других свойств. Кроме того, должен быть указан уникальный ключ таблицы, который может состоять из одного или нескольких полей. Проектирование проводится на бумаге и требует очень тщательного подхода, так как именно здесь будет разработана база данных. Для этого необходимо собрать информацию о ее структуре и движении документов, определить объекты системы и связи между ними; выявить свойства и характеристики объектов, по которым создать поля, составляющие исходные таблицы; для каждого объекта определить первичные ключи (поля) и провести нормализацию (разбиение) исходных таблиц, установить связи. Затем необходимо провести этап создания базы данных на компьютере, а именно: составить структуры таблиц и ввести их в компьютер; разработать запросы для отбора данных, отчеты для печати, создать экранные формы работы с данными; спланировать порядок ведения и поддержание базы данных в рабочем состоянии. Этап эксплуатации начинается с внесения в базу данных реальной информации, после чего происходит ее использование. В целом, разработка базы данных включает следующие этапы: определить цель создания базы данных; определить какие исходные данные (таблицы) она будет содержать; определить наборов полей, включаемых в таблицы, ключевые поля; спроектировать связи между таблицами и анализ полученной структуры; создать таблицы и связи между ними; создать формы, отчеты и запросы, необходимые для получения и обработки информации, хранящейся в базе данных. Таблицы в базе данных определенным образом связаны между собой, благодаря чему их называют реляционными базами данных. Такая база данных состоит из взаимосвязанных реляционных таблиц. Таблицы баз данных состоят из столбцов – полей и строк – записей. Каждое поле таблицы содержит однородные данные, а каждая запись отражает совокупность данных, относящихся к одному конкретному объекту. (например, таблица Сотрудники). Реляционная таблица представляется двумерным массивом и обладает следующими свойствами: - каждая ячейка таблицы содержит один элемент данных; - все ячейки одного столбца содержат одинаковый тип данных определенной длины; - каждый столбец имеет уникальное имя; - каждая строка таблицы хранит сведения, относящиеся к одному объекту; - порядок следования строк и столбцов может быть произвольным; - одинаковые строки в таблице отсутствуют. Для идентификации записей в таблице должно быть хотя бы одно поле, которое называется ключевым. Это поле используется для связи разных таблиц. Поле, каждое значение которого однозначно определяет соответствующую запись, именуется простым ключом. Так, в таблице «Сотрудники» ключевым полем служит поле «Код сотрудника». Для связи реляционных таблиц ключ первой таблицы, ключ первой таблицы, называемый первичным, может вводиться в структуру второй таблицы, а ключ второй таблицы (внешний) может вводиться в первую таблицу. Группировка данных в таблице может быть выполнена различными способами, однако она должна отвечать требованиям нормализации. Нормализацией называют формальный аппарат ограничений, применяемый при создании таблиц, применяемый при создании таблиц, позволяющий устранить дублирование и противоречивость хранимых данных и обеспечивающий эффективность их обработки. Нормализация – разбиение таблицы на две или более, обладающие лучшими свойствами включения, изменения или удаления данных. Окончательная цель нормализации сводится к получению такого проекта БД, в котором каждый факт появляется лишь в одном месте, т.е. исключена избыточность информации. Приведем наши отношения к третьей нормальной форме. Первая НФ: Отношение называется нормализованным или приведенным к первой нормальной форме тогда и только тогда, когда все его атрибуты простые (неделимые). Таблица находится в первой нормальной форме тогда и только тогда, когда ни одна из ее строк не содержит в любом ее поле более одного значения, и не одно из ее ключевых полей не пусто. Для того чтобы привести наши отношения к первой нормальной форме надо сущность «ФИО» разбить на три отдельные (Фамилия, Имя, Отчество). Так же следует вынести в отдельную таблицу «Отделы/Кафедры», «Должности», чтобы не допустить избыточности данных. Таблицу «Сотрудники» разобьем на две таблицы: Сотрудники (личн_данные) и Сотрудники (труд_деят). Вторая НФ: Таблица находится во второй нормальной форме, если она удовлетворяет определению первой нормальной формы и все ее поля, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом. Третья НФ: Таблица находится в третьей нормальной форме, если она удовлетворяет определению второй нормальной формы и ни одно из ее не ключевых полей не зависит функционально от любого другого не ключевого поля. Отношения, представленные в данной БД приведены к третьей нормальной форме. Создаваемая база данных должна выполнять функции в интересах автоматизации выдачи данных об организации. Она должна иметь простой и наглядный пользовательский интерфейс, иметь минимальные системные требования. База данных, состоящая из нескольких таблиц, должна иметь межтабличные связи, обеспечивающие целостность всех данных базы и автоматизацию задач обслуживания. Существуют три типа связей между таблицами базы данных: Связь один к одному (1:1) между таблицами предполагает, что в каждый момент времени одной записи в первой таблице соответствует единственная запись во второй таблице, и наоборот. Например, каждая запись в таблице «Сотрудники» может соответствовать единственной записи во второй таблице, включающей поля «Код сотрудника»; Связь один ко многим (1:М) между таблицами предполагает, что в каждый момент времени одной записи в первой таблице соответствует несколько записей во второй таблице. Например, одна запись в таблице «Сотрудники(личн_данные)» может соответствовать несколько записей в таблице «Сотрудники(труд_деят)». Связь многие ко многим (М:М). Такая связь между таблицами предполагает, что в каждый момент времени одной записи в первой таблице соответствует несколько записей во второй таблице, и одной записи во второй таблице соответствует несколько записей в первой таблице. Связь реализуется посредством создания третьей таблицы, в которой одно поле совпадает с ключевым полем первой таблицы, а второе – с ключевым полем второй таблицы. Если записи однозначно определяются значениями нескольких полей, то такая база данных имеет составной ключ. Для связи реляционных таблиц ключ первой таблицы, ключ первой таблицы, называемый первичным, может вводиться в структуру второй таблицы, а ключ второй таблицы (внешний) может вводиться в первую таблицу. Для атрибута «Вакансии» ключом будет являться три сущности, «Код вакансии», «Код отдела/кафедры», «Код должности», то есть ключ будет составным. Для атрибута «Штатное расписание» ключом будет являться три сущности, «Код шт.ед.», «Код отдела/кафедры», «Код должности», то есть ключ будет составным. Информационно-логическая модель данных – то модель данных, отображающая предметную область в виде совокупности информационных объектов и структурных связей между ними. Таким образом, получим информационно-логическую схему данных, представленную в Приложении 2.: |