
- •Базы данных: основные понятия и определения. Требования, предъявляемые к базам данных
- •Выбор хранимых данных
- •Реляционная модель данных
- •Реляционная алгебра
- •Операция выборка
- •Операция проекция
- •Операция естественное соединение
- •Операция соединение по условию (θ – соединение)
- •Операция деления
- •Методология проектирования баз данных. Основные задачи проектирования баз данных
- •Основные этапы проектирования баз данных
- •Концептуальное (инфологическое) проектирование бд
- •Логическое (даталогическое) проектирование бд
- •Принципы и средства структурного подхода к разработке по
- •Методология структурного анализа и проектирования sadt
- •Диаграммы потоков данных: внешние сущности, системы и подсистемы, процессы, хранилища данных, потоки данных. Нотация Гейна – Сарсона
- •Сравнительный анализ sadt-моделей и диаграмм потоков данных
- •Функциональные модели, используемые на стадии проектирования
- •14. Методология моделирования idef3: составные элементы, объекты ссылок, перекрестки.
- •15. Подходы к моделированию в базах данных
- •16. Анализ предметной области. Описание объектов и их свойств. Связи между элементами моделей данных. Описание сложных объектов
- •17. Проблема целостности базы данных
- •18. Даталогическое проектирование. Нотация Питера Чена. Нотация idef 1х
- •Нотация Питера Чена.
- •Нотация idef 1x
- •19. Проектирование реляционных баз данных на основе принципов нормализации. Правила технической нормализации
- •20. Алгоритм процесса нормализации схем отношений
- •21. Нормализация. Функциональная зависимость. Первая, вторая, нормальные формы
- •22. Нормализация. Функциональная зависимость. Третья нормальная форма
- •23. Нормализация. Функциональная зависимость. Нормальная форма Бойса – Кодда
- •24. Разработка реляционных баз данных на основе принципов нормализации
- •25. Основные аксиомы Армстронга. Замыкание
- •26. Нормальные формы высших порядков
- •27. Методологии проектирования
- •28. Инфологическое моделирование данных: модель «сущность-связь»
- •29. Принципы поддержки целостности в реляционной модели данных
- •30. Моделирование данных. Метод Баркера
- •31. Моделирование данных. Метод idef1x
- •32. Case-средство для концептуального моделирования данных на стадии формирования требований к ис – Silverrun
- •33. Нормализация. Функциональная зависимость. Первая, вторая, третья нормальные формы. Нормальная форма Бойса – Кодда
- •34. Инструментальные средства моделирования. Проектирование баз данных с использованием са erWin Data Modeler (erWin)
- •35. Алгоритм перехода от er – модели к реляционной схеме данных
- •36. Основные принципы объектно-ориентированного моделирования
- •37. Сущность методологии объектно-ориентированного анализа и проектирования
- •38. Язык объектного моделирования uml. Виды диаграмм uml. Последовательность построения диаграмм
- •Диаграмма состояний
- •Диаграмма последовательностей
- •Диаграмма активности
- •39. Модель прецедентов (вариантов использования, use-cases)
- •40. Моделирование статической структуры системы с помощью диаграммы классов: стереотипы классов
- •41. Моделирование статической структуры системы с помощью диаграммы классов: механизм пакетов
- •42. Моделирование статической структуры системы с помощью диаграммы классов: атрибуты
- •43. Моделирование статической структуры системы с помощью диаграммы классов: основные и вспомогательные операции
- •44. Моделирование статической структуры системы с помощью диаграммы классов: типы связей
- •45. Инкапсуляция, наследование, полиморфизм
- •46. Моделирование поведения системы
- •47. Использование диаграммы последовательностей для упорядочивания сообщений во времени
- •48. Использование диаграммы кооперации для описания структурной организации объектов
- •49. Моделирование физических аспектов функционирования системы с помощью диаграмм развертывания
- •50. Особенности построения физической модели базы данных
- •51. Ограничения ссылочной целостности
- •52. Моделирование процессов обработки данных
- •53. Индексирование
- •54. Методы совместного доступа к базам данных
- •55. Транзакции и блокировки
- •56. Типы параллелизма
- •57. Свойства транзакций. Способы завершения транзакций
- •58. Проблемы параллельного выполнения транзакций
- •59. Методы сериализации транзакций. Механизм блокировок. Типы конфликтов
- •60. Правила совместимости захватов. Проблема тупиковых ситуаций и ее решение
- •61. Уровни изолированности пользователей
- •62. Гранулированные синхронизационные захваты
- •63. Метод временных меток
- •64. Предикатные синхронизационные захваты
Нотация Питера Чена.
Независимая сущность отображается на диаграммах прямоугольником с одинарной рамкой, зависимая – с двойной.
|
|
|
а) независимая |
|
б) зависимая |
Рис.7.22. Отображение сущностей в нотации П. Чена
Атрибуты, в отличие от IDEF1X, отображаются за пределами графического обозначения сущности в виде эллипсов, связанных одинарной линией с ним.
Рис.7.23. Отображение атрибутов в нотации П. Чена
Атрибуты, входящие в первичный ключ сущности, выделяются подчеркиванием имени. Эллипс многозначных атрибутов изображается с двойным контуром, производных – пунктирным. Если атрибут является составным, то атрибуты-компоненты отображаются в виде присоединенных к нему эллипсов.
Связь между сущностями показывается в виде ромба с указанием имени связи внутри него. При этом, если ромб имеет двойную рамку, то связь – идентифицирующая, одинарную – неидентифицирующая. Обязательность связи отображается двойной линией. В частности (рис.7.24б) отдел обязательно должен состоять из сотрудников, а сотрудник (например, руководитель) необязательно входить в штат отдела. Т.е. понятие обязательности в данной нотации, в отличие от IDEF1X, носит двухсторонний характер.
а) идентифицирующая связь
б) неидентифицирующая связь
Рис.7.24. Отображение связей в нотации П. Чена
Связь, как и сущность, может иметь собственные атрибуты, отображаемые в виде присоединенных к ней эллипсов.
Рис.7.25. Связь с атрибутами
Мощность (кардинальность) связи обозначается числами или буквами:
- 1 – один;
- N или M – многие;
- <число> – конкретное количество экземпляров;
- (<Min>, <Max>) – диапазон экземпляров, где в качестве <Min> и <Max> могут использоваться предыдущие обозначения мощности. В этом случае интерпретация мощности выполняется в «обратную сторону», т.е. со стороны родительской сущности указывается: сколько экземпляров дочерней сущности связано с экземпляром родительской сущности, а со стороны дочерней сущности – сколько экземпляров родительской сущности связано с экземпляром дочерней сущности.
Примеры указания мощности связи показаны на следующем рисунке.
а) односимвольное обозначение
б) диапазонное обозначение
Рис.7.26. Отображение мощности связей в нотации П. Чена
В первом случае мощность связи (один-ко-многим) указывается традиционно, как в большинстве нотаций. Т.е. экземпляр родительской сущности (конкретный отдел) связан с 0, 1 или более экземплярами дочерней сущности (конкретными сотрудниками). Во втором случае ее следует понимать следующим образом: экземпляр родительской сущности должен быть связан с 5 или более экземплярами дочерней сущности (отдел состоит из 5 или более сотрудников), а экземпляр дочерней сущности связан с 0 или 1 экземпляром родительской сущности (сотрудник либо не входит, либо входит в отдел).
Расширением ER-модели Чена является EER-модель (Enhanced ER, улучшенная ER), которая позволяет моделировать отношения наследования между суперклассами и подклассами. Основу расширения составляют концепции специализации, генерализации и категоризации.
Специализация – процесс увеличения различий между отдельными сущностями за счет выделения их отличительных характеристик.
Генерализация – процесс сведения различий между сущностями к минимуму путем выделения их общих характеристик. Процесс обратный специализации.
Категоризация – моделирование сущности путем включения в нее характеристик других сущностей (множественное наследование).
Графически наследование отображается кругом, соединенным линиями с суперклассами и подклассами. Внутри круга указывается символ, характеризующий тип наследования:
- d – непересекающаяся специализация/генерализация. Отдельная сущность может быть членом только одного из подклассов;
- o – пересекающаяся специализация/генерализация. Отдельная сущность может быть членом нескольких подклассов;
- U – категоризация.
Примеры наследования показаны на следующем рисунке.
а) непересекающаяся специализация
б) пересекающаяся специализация
в) категоризация
Рис.7.27. Отображение суперклассов и подклассов
В первом случае используется непересекающаяся специализация (d), т.к. локомотив (экземпляр сущности), может быть, только одной из разновидностей тяговых средств. Во втором случае используется пересекающаяся специализация (o), т.к. сотрудник может занимать сразу несколько должностей (выполнять несколько обязанностей).
Если характеристики (набора атрибутов) суперкласса достаточно для описания экземпляра сущности, то суперкласс и круг соединяются одинарной линией (например, для рис.7.27б – сотрудниками могут быть уборщица или охранник). Такая специализация называется частичной. Если экземпляр сущности обязательно должен быть одной из разновидностей подкласса, т.е. описывается набором атрибутов как суперкласса, так подкласса, то суперкласс и круг соединяются двойной линией. Такая специализация называется полной. Аналогичная ситуация возникает и при моделировании категоризации. Если экземпляр сущности при множественном наследовании обязательно должен характеризоваться (включать) атрибутами суперкласса и всех подклассов, то категоризация – полная, иначе – частичная.
В заключение следует отметить, что вынесение атрибутов за пределы графического изображения сущности делает нотацию Чена похожей на семантические сети.