Разработка системы учёта и проверки курсовых проектов по дисциплине "Базы данных"

Якимов Н.М.

[email protected]

Введение

Дисциплина “Базы данных”

  • Базовая часть образовательной программы на специальностях связанных с ИВТ
  • Связана практически с любыми информационными системами
  • Учебная программа подразумевает выполнение курсовой работы

Курсовая работа

Включает:

  1. Выбор предметной области (темы)
  2. Построение инфологической модели
  3. Анализ инфологической модели
  4. Построение даталогической (реляционной) модели
  5. Построение физической схемы (на языке SQL)

3-5 допускают частичную автоматизацию

Выбор темы

Основные требования

  • Возможность выбора темы из списка
  • Возможность предложения собственной темы
  • Автоматическое ограничение выбора одинаковых тем
Выбор темы из списка
Предложение собственной темы

Построение инфологической модели

Основные требования

  • Диаграммы “сущность-связь”
  • Текстовый интерфейс описания
  • Визуализация
Ввод описания модели “сущность-связь”
Визуализация модели “сущность-связь”

Анализ инфологической модели

Основные требования

  • Текстовый интерфейс, максимально приближенный к математической нотации
  • Визуализация
  • Автоматизированная проверка
Ввод функциональных зависимостей
Визуализация функциональных зависимостей

Автоматическая проверка

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

Построение реляционной модели

Основные требования

  • Текстовый интерфейс
  • Язык, максимально близкий к формализму реляционной модели
  • Автоматизированная проверка

Допустимые домены

  • строка
  • текст
  • дата
  • время
  • дата/время
  • целое
  • натуральное
  • дробное
  • перечисление

Автоматическая проверка

  1. В результате декомпозиции теряются функциональные зависимости
  2. В реляционной схеме возникли новые функциональные зависимости
  3. В отношении отсутствует первичный ключ
  4. Несколько отношений имеют одинаковый первичный ключ
  1. Отношения в реляционной схеме не находятся в нормальной форме элементарного ключа (или более высокой)
  2. Декомпозиция не является декомпозицией без потерь по соединению (lossless-join)
  3. Атрибут, встречающийся в нескольких отношениях имеет в них различный домен
Примеры ошибок 1, 2 типа
Примеры ошибок 3, 4 типа
Примеры ошибок 3, 5, 6, 7 типа

Построение физической схемы

Основные требования

  • Подмножество языка SQL DDL (конкретно, команда create table)
  • (Частичная) автоматизированная проверка соответствия реляционной схеме

Автоматическая проверка

  1. Таблицы с одинаковыми названиями
  2. Столбцы с одинаковыми названиями
  3. Ссылки на несуществующие атрибуты в определениях внешних ключей
  4. Несовместимые типы данных у столбцов, участвующих в ограничениях внешних ключей
  5. Отсутствие отношений, присутствовавших в реляционной модели, в физической схеме
  6. Присутствие в физической схеме отношений, отсутствовавших в реляционной модели
  7. Множественные объявления первичных ключей
Примеры ошибок типа 1, 4, 5, 6
Примеры ошибок типа 2, 3, 7

Интерфейс преподавателя

Список пользователей
Страница с данными пользователя

СПАСИБО ЗА ВНИМАНИЕ

С уважением, Якимов Н.М.

[email protected]