- •Базы данных: основные понятия и определения. Требования, предъявляемые к базам данных
- •Выбор хранимых данных
- •Реляционная модель данных
- •Реляционная алгебра
- •Операция выборка
- •Операция проекция
- •Операция естественное соединение
- •Операция соединение по условию (θ – соединение)
- •Операция деления
- •Методология проектирования баз данных. Основные задачи проектирования баз данных
- •Основные этапы проектирования баз данных
- •Концептуальное (инфологическое) проектирование бд
- •Логическое (даталогическое) проектирование бд
- •Принципы и средства структурного подхода к разработке по
- •Методология структурного анализа и проектирования 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. Предикатные синхронизационные захваты
35. Алгоритм перехода от er – модели к реляционной схеме данных
Шаг 1. Каждая простая сущность превращается в таблицу. Имя сущности становится именем таблицы.
Шаг 2. Каждый атрибут становится возможным столбцом с тем же именем. Столбцы, соответствующие необязательным атрибутам, могут содержать неопределенные значения; столбцы, соответствующие обязательным атрибутам, - не могут.
Шаг 3. Компоненты уникального идентификатора сущности превращаются в первичный ключ таблицы. Если в состав уникального идентификатора входят связи, к числу столбцов первичного ключа добавляется копия уникального идентификатора сущности, находящейся на дальнем конце связи.
Шаг 4. Связи многие-к-одному и один-к-одному становятся внешними ключами. Необязательные связи соответствуют столбцам, допускающим неопределенные значения; обязательные связи - столбцам, не допускающим неопределенные значения.
Шаг 5. Индексы создаются для первичного ключа (уникальный индекс), внешних ключей и тех атрибутов, на которых предполагается базировать запросы.
Шаг 6. Если в концептуальной схеме присутствовали подтипы, то возможны два способа:
• все подтипы в одной таблице (а);
• для каждого подтипа - отдельная таблица (б).
Шаг 7. Имеется два способа работы при наличии исключающих связей:
• общий домен (а)
• явные внешние ключи (б)
Если остающиеся внешние ключи все в одном домене (способ (а)) - создаются два столбца:
• идентификатор связи
• и идентификатор сущности.
Если результирующие внешние ключи не относятся к одному домену - для каждой связи создаются явные столбцы внешних ключей.
36. Основные принципы объектно-ориентированного моделирования
Наследование (inheritance) – принцип, в соответствии с которым знание о более общей категории разрешается применять для более частной категории. Класс потомка наследует свойства и поведение класса предка.
Инкапсуляция (encapsulation) характеризует сокрытие отдельных деталей внутреннего устройства классов или компонентов от внешних по отношению к нему объектов или пользователей. Деление программного модуля на интерфейс и реализацию один из примеров использование инкапсуляции.
Полиморфизм (от греч. poly – много, morfos – форма) – свойства некоторых объектов принимать различные внешние формы в зависимости от обстоятельств. Применительно к ООАП (объектно-ориентированный анализ и проектирование) полиморфизм означает – свойство одноименных методов выполнять различные действия в зависимости от того к какому из классов они относятся. Одно названия метода в разных классах будет выполнять разные задачи. Пример: Команда включить для автомобиля, настольной лампы и ПК приводят к разным результатам.
37. Сущность методологии объектно-ориентированного анализа и проектирования
Объектно-ориентированный подход использует объектную декомпозицию, при этом статическая структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами. Каждый объект системы обладает своим собственным поведением, моделирующим поведение объекта реального мира.
Концептуальная основа объектно-ориентированного подхода - объектная модель.
Основные элементы объектной модели:
A. абстрагирование (abstraction);
B. инкапсуляция (encapsulation);
C. модульность (modularitу);
D. иерархия (hierarchy).
Дополнительные элементы (не являются строго обязательными):
a. типизация (typing);
b. параллелизм (concurrency);
c. устойчивость (persistence).
Основные понятия объектно-ориентированного подхода
Объект - осязаемая реальность (tangible entity) = предмет или явление, имеющие определяемое поведение.
Состояние объекта характеризуется перечнем возможных (статических) свойств данного объекта и текущими значениями (динамическими) каждого из этих свойств.
Поведение характеризует воздействие объекта на другие объекты и наоборот относительно изменения состояния этих объектов и передачи сообщений.
Индивидуальность - свойства объекта, отличающие его от всех других объектов.
Операция - воздействие одного объекта на другой с целью вызвать соответствующую реакцию.
Метод - операции, выполняемые над данным объектом.
Класс - множество объектов, связанных общностью структуры и поведения.
Полиморфизм - способность класса принадлежать более чем одному типу.
Наследование - построение новых классов, на основе существующих с возможностью добавления или переопределения данных и методов.
