Главная страница
Навигация по странице:

  • 2. Инфологическое проектирование. Определение системы атрибутов, типовых запросов, типовых процедур обработки.3. Даталогическое проектирование.

  • 4. Физическое проектирование.

  • Инфологическое проектирование и семантическая модель. Модель «сущность-связь»

  • Связь – ассоциация, объединяющая несколь­ко сущностей

  • Сущность, на основе которой определяются подтипы, называется супертипом

  • Нормальные формы ER-диаграмм. Даталогические модели. Физические модели

  • Рис. 22. Пример ЕR-диаграммы в 3-й нормальной форме

  • ИГА. Понятие базы данных


    Скачать 0.77 Mb.
    НазваниеПонятие базы данных
    Дата05.04.2022
    Размер0.77 Mb.
    Формат файлаdocx
    Имя файлаИГА.docx
    ТипДокументы
    #445246
    страница4 из 37
    1   2   3   4   5   6   7   8   9   ...   37

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


    одели и этапы проектирования БД. Системный анализ предметной области

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

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

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

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

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

    Модель пред­метной области ассоциируется с неформальным уровнем семантического моделирования, а модель базы данных – с форма­лизованным уровнем системы (и в частности, СУБД). Це­ль семантического моделирования – формирование основы для формализованного проектирования БД.

    Стадии процесса моделирования:

    1. Системный анализ.

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

    2. Инфологическое проектирование.

    Определение системы атрибутов, типовых запросов, типовых процедур обработки.

    3. Даталогическое проектирование.

    Разработка концептуальной схемы БД, внешних схем, правил семантической целостности.

    4. Физическое проектирование.

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

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

    Существуют два подхода к определению состава и структуры предметной области:

    • Функциональный.

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

    • Объектный(предметный).

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

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

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

    Инфологическое проектирование


    Инфологическое проектирование и семантическая модель. Модель «сущность-связь»

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

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

    • система атрибутов и средств описания предметной области (например, логические (алгоритмические) связи между показа­телями);

    • ограничения целостности, определяющие допустимость значе­ния отдельных полей и взаимосвязей как на уровне семантики содержимого БД, так и ее физической структуры (отдельных файлов данных и взаимосвязей между ними);

    • описание информационных потребностей пользователей (на­пример, в виде типовых запросов, отражающих процедурные особенности обращения к данным).

    Одно из наиболее популярных средств формализованного пред­ставления предметной области ИС – модель «сущность-связь» (ER-модель), лежащая в основе значительного числа коммерческих продуктов (САSЕ-средств), поддерживающих полный цикл разработки систем БД (от концептуальной модели предметной области до логического проектирования путем автомати­ческой генерации концептуальной схемы БД для выбранной СУБД).

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

    Семантическую основу ЕR-модели составляют следующие положения:

    • совокупность взаимосвязанных объектов предметной области представляет собой совокупность сущностей;

    • сущность обладает характеристическими свойствами (атрибутами), отличающими ее от других сущностей и позволяющими ее идентифицировать;

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

    • систематизация представления, основанная на классах, предполагает иерархическую зависимость типов: сущность типа А представляет собой подтипсущности В, если каждый экземпляр типа А является экземпляром сущности типа В;

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

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

    На уровне представления предметной области (т. е. ее инфологической модели) объекту, рассматриваемому как понятие (объект в сознании челове­ка), соответствует понятие «сущность»;объекту, как части материаль­ного мира (и существующему независимо от сознания человека), соответствует понятие «экземпляр сущности»классу объектов соответствует понятие «тип сущности». Далее будем предполагать тождественность понятий объект и сущность, свойство объекта и свойство сущности.

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

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

    Сущности подразделяются на  сильные и  слабые.

    Сущность является слабой, если ее существование зависит от другой сущности, сильной по отношению к ней. Например, сущность «Подчиненный» слабая по отношению к сущности «Сотрудник» (если будет удалена запись, соответствующая некоему сотруднику, имеюще­му подчиненных, то сведения о подчинении также должны быть удалены).

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

    Свойство может быть простым(не подлежащим дальнейшему делению с точки зрения прикладных задач) или составным(если его значение составляется из значений простых свойств). Например, свойство «Год рождения» простое, а свойство «Адрес» составное, т. к. включает значения простых свойств «Город», «Улица», «Дом».

    В некоторых случаях различают базовые и производныесвойства. Например, «Поставщик» может иметь свойство «Общее количество поставляемых деталей», которое вычисляется суммиро­ванием количества деталей, поставляемых им по проекту.

    Если наличие свойства для всех экземпляров сущно­сти не обязательно, то такое свойство называется условнымНапример, не все сотрудники могут обладать свойством «Ученая сте­пень».

    Значения свойств могут быть статическими (постоянными)или динамическими(меняться со временем). Например, свойство «Табельный номер» статическое, а «Адрес» – динамиче­ское. Ди­намическое свойство может быть неопределеннымесли его текущее значение еще не задано.

    Свойство может рассматриваться как ключевоеесли его значе­ние уникально и однозначно идентифицирует сущность.

    Кроме связей между объектом и его свойствами инфоло­гическая модель отражает связи между объектами разных классов. Связь – ассоциация, объединяющая несколь­ко сущностей. Эта ассоциация может существовать между разными сущностями или между сущностью и ею же самой (рекур­сивная связь).

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

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

    • один к одному (1:1),

    • один ко многим (l:M),

    • многие к одному (М:l),

    • многие ко многим (М:М).

    В большинстве САSЕ-систем (средств компьютерной автоматизированной разработки программных и организационно-управляющих систем) для простоты принято, что ассоциация всегда должна быть бинарной (т. е. между двумя элементами, происходит от bi - два) и может существовать между двумя разными сущностями или между сущностью и ею же самой (рекурсивная связь).

    Среди многих разновидностей взаимосвязей наиболее часты такие отношения иерархического типа, как «часть-целое», «род-вид».

    Отношение «часть-целое» используется для представления составных объектовнапример, МАШИНЫ состоят из УЗЛОВ, УЗЛЫ – из ДЕТАЛЕЙ. Возможны как типы связи «1:М», так и«М:М».

    Отношение «род-вид» используется для представления обобщенных объектов, например, СОТРУДНИКИ подразделяются по профессии на КОНСТРУКТОРОВ, ПРОГРАММИСТОВ, РАБОЧИХ, ПРОГРАММИСТЫ – на ПРИКЛАДНЫХ ПРОГРАММИСТОВ и СИСТЕМНЫХ ПРОГРАММИСТОВ. Иерархические отношения, в частности «родо-видовые», обычно используются как основа классификации объектов по наборам характеристических признаков, при этом «видовые» объекты наследуютсвойства «родовых».

    Широко используемая разновидность взаимосвязи – агрегирование – объединение простых объектов в сложные по принципу их принадлежности агрегатуили их совместного участия в некотором процессе. Агрегирование как более общий случай иерархических отношений объединяет объекты разной природы с единственным общим свойством «совместное участие». Агрегированные объекты именуются, как правило, отглагольными существительными, например, «Состав»(ПОДРАЗДЕЛЕНИЕ состоит изСОТРУДНИКОВ), «Поставки» (ПОСТАВЩИК по­ставляетДЕТАЛИ).

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

    Подтип наследует свойства и связи супертипа. Например, тип сущности ПРОГРАММИСТ может быть подтипом сущности СОТРУДНИК. Программисты обладают всеми свойствами сотрудников и участвуют во всех связях, однако обратные утверждения неверны. Тип сущности, ее подтипы, подтипы подтипов и т. д. образуют иерархию типов сущности. Разделение супертипа на подтипы обозначено стрелками (рис. 20). Свойства сущностей обозначены в эллипсах, соединенных линиями без стрелок, с прямоугольниками, в которые вписаны названия сущностей.
    Как было отмечено ранее, ЕR-моделирование предметной облас­ти базируется на использовании графических диаграмм.
    Одна из целей семантического моделирования состоит в том, чтобы результаты анализа предметной области были отражены в простом, но в тоже время формализованном и информативном виде. В этом смысле ЕR-диаграмма – решение, сочетающее функциональный и информационный подходы. Она позволяет представлять как совокупность выполняемых функций, так и отношения между элементами системы. Графическая форма отображает типологию и свойства сущностей и связей.

    Каждый тип сущности в ЕR-диаграммах представляется в виде прямоугольника, содержащего ее имя. В качестве имени, обычно, используется существительное в единственном числе. Для отражения сущностей слабых типов используются прямоугольники, стороны которых изображают двойными линиями. Например, ПОДЧИНЕННЫЙ – сущность слабого типа (рис. 21).

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

    Если свойство

    • многозначное, то контур эллипса изображают двойной линией, например, свойство «Иностранный язык» сущности СОТРУДНИК.

    • производное, например, свойство «Кол-во» сущности ДЕТАЛЬ, то контур эллипса изображают штриховой линией.

    • условное, например свойство «Иностранный язык» сущности СОТРУДНИК, то эллипс соединяется пунктирной линией.

    • составное, например свойство «Адрес» сущности СОТРУДНИК состоит из простых свойств «Город», «Улица», «Дом», то составляющие его свойства также отображаются эллипсами (рис. 21).

    Каждый тип связи между сущностями на ЕR-диаграмме отображается в виде ромба с именем связи внутри.

    В любой связи выделяют два конца (в соответствии с существующей парой связываемых сущностей), на каждом из которых указываются:

    • степень конца связи (сколько экземпляров данной сущности связывается),

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

    В качестве имени связи, обычно, используется отглагольное существительное. Стороны ромба изображают двойными линиями, если это связь сущности слабого типа с сущностью, от которой она зависит. Например, связь «Подчинение», связывающая сущность слабого типа ПОДЧИНЕННЫЙ с сущностью СОТРУДНИК, от которой она зависит, обозначена ромбом с двойными линиями.

    Участники связи соединены со связью линиями. Двойная линия обозначает полное участие сущности в связи с данной стороны, например, связь «Подчинение» со стороны сущности ПОДЧИНЕННЫЙ.

    Связь может быть модифицирована указанием роли. Напри­мер, для рекурсивной связи «Состав» указаны роли: «Деталь состо­ит из...» и «Деталь входит в состав...».

    Тип связи указывается индексами «1» или «М» над соответст­вующей линией. Например, связь «Рук-во» имеет тип «1:М» (один сотрудник может руководить многими проектами), связь «Участие» имеет тип «М:М» (один сотрудник мо­жет участвовать во многих проектах, и в проекте могут участвовать многие сотрудники) (рис. 21).

    Нормальные формы ER-диаграмм. Даталогические модели. Физические модели

    Как и в реляционных схемах БД, в ЕR-диаграммах вводится понятие нормальных форм.

    В 1-й нормальной формеЕR-диаграммы устранены повто­ряющиеся атрибуты или группы атрибутов, т. е. производится выяв­ление неявных сущностей, «замаскированных» под атрибуты.

    Во 2-й нормальной формеустранены атрибуты, зависящие только от части уникального идентификатора. Эта часть уникально­го идентификатора определяет отдельную сущность.

    В 3-й нормальной формеустранены атрибуты, зависящие от не входящих в уникальный идентификатор атрибутов. Эти атри­буты – основа отдельной сущности.
    Рис. 22. Пример ЕR-диаграммы в 3-й нормальной форме

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

    Построение реляцион­ной БД на основе инфологической модели, представлен­ной ЕR-диаграммой, включает следующие основные шаги:

    1. Каждая простая сущность превращается в таблицу (отношение). Имя сущности становится именем таблицы.

    2. Каждый атрибут становится возможным столбцом таблицы с тем же именем. Столбцы, соответствующие необязательным атрибутам, могут содержать неопределенные значения, столбцы, соответствующие обязательным атрибутам, – не могут. Если атрибут множе­ственный, то для него строится отдельное отношение.

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

    4. Связи «многие к одному» и «один к одному» становятся внешними ключами, т. е. создается копия уникального идентифика­тора с конца связи «один», и соответствующие столбцы составляют внешний ключ.

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


    1   2   3   4   5   6   7   8   9   ...   37


    написать администратору сайта