МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Томский государственный университет УТВЕРЖДАЮ Декан факультета информатики Сущенко С.П. "" декабря 2010 г. Рабочая программа дисциплины БАЗЫ ДАННЫХ Направление подготовки 230700 Прикладная информатика Квалификация выпускника Бакалавр Форма обучения Очная Томск 2010 1. Цели освоения дисциплины Целями освоения дисциплины «Базы данных» являются получение теоретических знаний по моделированию данных и приобретение практических навыков проектирования и использования баз данных. 2. Место дисциплины в структуре ООП бакалавриата Раздел образовательной программы: Б.3. Профессиональный цикл. Базовая часть. Для изучения курса необходимо знание следующих дисциплин: - дискретная математика; - математическая логика и теория алгоритмов; - теория графов; - программирование. Для того чтобы приступить к изучению курса «Базы данных», студент должен обладать следующими знаниями и умениями: - знать теорию множеств, теорию отношений, теорию графов, логику высказываний и логику предикатов первого порядка; - знать основы компьютерных технологий и языков программирования; - иметь твердые знания основных структур данных в программировании; - уметь строить алгоритмы решения поставленной задачи; - уметь разрабатывать программы для ЭВМ. Знания и умения, полученные в ходе освоения данной дисциплины (модуля), понадобятся при изучении таких последующих дисциплин ООП, как: - структурное проектирование; - объектно-ориентированный анализ и проектирование; - программная инженерия. 3. Компетенции обучающегося, формируемые в результате освоения дисциплины (модуля) «Базы данных» Курс «Базы данных» способствует выработке у студента следующих компетенций: - способен проводить обследование организаций, выявлять информационные потребности пользователей, формировать требования к информационной системе, участвовать в реинжиниринге прикладных и информационных процессов (ГЖ-8); - способен моделировать и проектировать структуры данных и знаний, прикладные и информационные процессы (ПК-9); - способен применять методы анализа прикладной области на концептуальном, логическом, математическом и алгоритмическом уровнях (ПК-17). В результате освоения дисциплины обучающийся должен: - знать основы моделирования данных; - уметь применять их при создании информационных систем по технологии баз данных; - владеть методикой проектирования баз данных и языками систем управления базами данных. Успешно освоившим дисциплину считается студент, обладающий знанием современных методов моделирования данных и продемонстрировавший в ходе выполнения лабораторных заданий практические навыки в использовании инструментов технологии баз данных. 4. Структура и содержание дисциплины (модуля) «Базы данных» № Дисциплины п/п Семестр Раздел Неделя семестра Общая трудоемкость дисциплины составляет 6 зачетных единиц, 216 часов. Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) Формы теку щего контрол успеваемост (по неделям с местра) Форма пром жуточной атт стации (по се местрам) всего лекции лаборатории самостоятельная работа 1 2 3 4 5 6 7 8 9 10 ИТОГО Введение в технологию баз данных. Обзор курса, литературы. Данные и модели данных. Структуры. 3 1 3 1 3 2 Ограничения целостности. Операции. 3 2 3 3 Модель данных "сущностьсвязь". Модель данных "сущностьсвязьотображение". Реляционная модель. 3 3-4 3 8-11 Теория реляционных БД и классическая методика проектирования реляционных схем БД. Семантическая методика проектирования реляционных схем БД. 3 1213 Лекционный курс 3 2 2 7 2 9 2 2 5 9 2 2 5 9 2 2 5 Тест Тест Тест Тест 32 6 6 20 34 12 2 20 Тест Сдача лабораторной работы Тест Сдача лабор торной работы 42 16 6 20 Контрольная работа 5-7 Тест Сдача лабор торной работы 34 3 5 8 6 20 38 12 6 20 Тест Сдача лабор торной работы 216 64 32 120 Экзамен 1416 Тема 1. Введение в технологию баз данных. Обзор курса, литературы. Тема 2. Данные и модели данных. Данные. Информация. Процесс получения информации из данных. Семиотика: синтактика, семантика, прагматика. Модель данных. Атомарная единица информации. База данных (БД). Схема БД. Конструктивное определение модели данных: множество правил порождения структур, множество правил порождения ограничений целостности, множество операций. Система управления БД (СУБД). Язык определения данных (ЯОД). Язык манипулирования данными (ЯМД). Тема 3. Структуры. Знак. Тип. Основные способы структуризации данных: абстракция, обобщение, агрегация. Формы представления данных: комплекс, множество, кортеж, домен, атрибут, отношение. Интерпретация данных. Представление информации: таблицы, графы. Тема 4. Ограничения целостности. Ограничение целостности. Виды ограничений: внутренние и явные. Верификация ограничений целостности. Типы ограничений: ограничения на значения атрибутов, ограничения на отображения. Отображение. Кардинальное число (КЧ). Минимальное КЧ. Максимальное КЧ. Типы отображений: ничем неограниченное, полностью определенное, функциональное (частичное, полное). Типы бинарных отношений: "многие-ко-многим", "один-ко-многим", "один-к-одному". Ограничения на отображения между атрибутами одного отношения. Ключевой атрибут. Недопустимость неопределенных значений атрибута. Ограничения на отображения между отношениями. Тема 5. Операции. Состояние БД. Операции над данными: селекция, действие. Виды действий. Способы селекции. Навигационные операции. Спецификационные операции. Процедуры БД. Тема 6. Модель данных "сущность-связь". Уровни представления предметной области в моделях данных. Структуры: множество сущностей, множество связей, роль, множество значений, атрибут. Представление интенсионала БД: ER-диаграмма. Представление экстенсионала БД: графы, таблицы. Ограничения целостности: ключ сущности, ключ связи, зависимость существования. Множество слабых сущностей. Множество слабых связей. Навигационный язык. Спецификационный язык CABLE. Назначение модели. Модификации ER-модели Чена: расширенная ER-модель (специализация и категоризация), нотация Баркера, нотация IDEF1X. Тема 7. Модель данных "сущность-связь-отображение". Общий подход к проблеме семантического моделирования. Логические основы и семантические концепции модели. Структуры: объект, отображение, класс объектов, сущность, множество сущностей, значение, множество значений, роль, связь, множество связей, атрибут. Простые и сложные отображения. Специализация отображений: атрибутивные и реляционные отображения. Формальная система теории семантически значимых отображений. Алгебра отображений. Кардинальное число (КЧ). Минимальное КЧ. Максимальное КЧ. Типы отображений: ничем неограниченное, полностью определенное, функциональное (частичное, полное). Следствия и эквивалентности отображений. Представление интенсионала БД: символическая нотация, граф классов, ERM-диаграмма. Методика семантического моделирования в ERM-модели. Тема 8. Реляционная модель. Структуры: отношение, кортеж, домен, степень отношения, мощность отношения, атрибут. Ограничения целостности: ключ, триггер. Навигационные операции: курсоры. Спецификационные операции: РЕЛЯЦИОННАЯ АЛГЕБРА - основные и дополнительные операции; РЕЛЯЦИОННОЕ ИСЧИСЛЕНИЕ С ПЕРЕМЕННЫМИ-КОРТЕЖАМИ – синтаксис атомов и формул, ЯМД ALPHA; РЕЛЯЦИОННОЕ ИСЧИСЛЕНИЕ С ПЕРЕМЕННЫМИ НА ДОМЕНАХ - синтаксис атомов и формул, ЯМД QBE; РЕЛЯЦИОННЫЙ ЯЗЫК, ОСНОВАННЫЙ НА ОТОБРАЖЕНИЯХ: ЯМД SQL. Тема 9. Теория реляционных БД и классическая методика проектирования реляционных схем БД. Универсальное отношение. Аномалии вставки, модификации, удаления. Функциональные зависимости, аксиомы функциональных зависимостей, избыточные функциональные зависимости, минимальные покрытия множеств зависимостей, декомпозиция схем отношений, нормальные формы схем отношений (первая, вторая, третья, форма Бойса-Кодда). Декомпозиционный алгоритм проектирования реляционных схем БД. Тема 10. Семантическая методика проектирования реляционных схем БД. Функциональное моделирование предметной области (ПрО) на примере деловой модели. Семантическое моделирование данных на примере ER-модели. Логическое проектирование на примере реляционной модели. Правила преобразования схемы БД из семантических моделей в реляционную модель. Физическое проектирование данных. Лабораторный практикум Лабораторная работа №1. Учебное приложение в MS Access. Создание новой базы данных. Создание таблиц. Связывание таблиц. Задание ограничений целостности. Ввод данных в базу данных. Создание запросов. Создание экранных форм. Создание отчетов. Лабораторная работа №2. Приложение в MS Access для индивидуальной предметной области. Подготовка технического задания на разработку. Проектирование ER-схемы в нотации Чена. Преобразование ER-схемы в реляционную схему. В точном соответствии с утвержденными техническим заданием и проектными решениями создание в среде СУБД MS Access рабочего места пользователя, обеспечивающего информационную поддержку сформулированных в техническом задании бизнес-процессов. Лабораторная работа №3. Построение БД в Oracle средствами Oracle Designer для индивидуальной предметной области. Создание новой прикладной системы. Импорт схемы данных из MS Access. Обратное проектирование ER-схемы из импортированной реляционной схемы. Проектирование ER-схемы ПрО в нотации Баркера. Генерация реляционной схемы ПрО. Создание БД в СУБД Oracle. Разработка триггеров для генерации значений суррогатных ключей, процедурной проверки ограничений целостности, обеспечения работоспособности денормализованных структур данных. Лабораторная работа №4. Приложение (клиент - MS Access, сервер – Oracle) для индивидуальной предметной области. Организация связи таблиц MS Access c таблицами СУБД Oracle. В точном соответствии с утвержденными техническим заданием и проектными решениями создание в среде СУБД MS Access рабочего места пользователя, обеспечивающего информационную поддержку сформулированных в техническом задании бизнес-процессов. 5. Образовательные технологии В ходе преподавания дисциплины используются следующие образовательные технологии: - разбор конкретных ситуаций; - решение профессиональных задач из реальной предметной области; - самостоятельное проектирование; - мастер-классы экспертов. 6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины. Самостоятельная работа студентов по дисциплине организуется в следующих формах: 1) самостоятельное изучение основного теоретического материала, ознакомление с дополнительной литературой, Интернет-ресурсами; 2) индивидуальное выполнение проектов, решение профессиональных задач из реальной предметной области. В качестве учебно-методического обеспечения самостоятельной работы используется основная и дополнительная литература по предмету, Интернет-ресурсы, материал лекций, указания, выданные преподавателем при проведении лабораторных работ. Темы индивидуальных лабораторных заданий имеют общий шаблон: «Разработать систему баз данных для конкретной предметной области». Вопросы и задания для текущего контроля: 1. Объясните, почему человека интересуют не данные, а информация. 2. Что кроме данных необходимо для получения информации? 3. Перечислите и охарактеризуйте три этапа процесса образования информации из данных. 4. Какие разделы семиотики изучают эти этапы? 5. К какому классу информационных систем относятся системы БД? 6. Опишите, как протекает процесс распространения информации о ПрО с использованием систем БД. 7. В чем заключается основное назначение модели данных? 8. Из каких компонентов состоит атомарная единица информации (АЕИ)? 9. Объясните, почему первые три компонента АЕИ являются обязательными. 10. С чем ассоциируются понятия «схема БД» и «база данных» при табличном представлении данных? 11. Дайте структурное определение модели данных. 12. Проиллюстрируйте компоненты модели данных на примере категориальной модели. 13. Что представляет собой СУБД? 14. Для чего в технологии БД используются знаки и типы? 15. В каких частях системы БД представлены знаки и типы? 16. Какие мыслительные процедуры используются при структуризации данных? Уточните, когда применяется каждая из них. 17. Поясните, как абстракции используются для интерпретации данных (знаков). 18. Перечислите традиционно используемые в моделях данных формы данных. 19. Укажите свойства множеств. 20. Чем отличается комплекс от множества? 21. Покажите, что понятия «множество» и «кортеж» являются специализациями понятия «комплекс». 22. Дайте определения интенсионала и экстенсионала множества. 23. Почему в моделировании данных уместно говорить о нескольких реализациях множества? 24. В чем принципиальное отличие элементов, принадлежащих домену и атрибуту? 25. Уточните различия определений понятия «отношение» в математике, логике и моделировании данных. 26. В каком виде задаются в БД интерпретации данных? 27. Каким формам данных приписываются интерпретации? 28. Как они используются для интерпретации знаков (данных)? 29. Установите соответствие между формами данных и их представлениями в виде таблиц и графов. 30. Что такое ограничение целостности (ОЦ) и для чего они предназначены? 31. Охарактеризуйте способы задания ОЦ с точки зрения их предпочтительности. 32. Какие типы ОЦ выделяются в моделировании данных? Каковы их области действия? 33. Перечислите виды ОЦ на значения атрибутов. 34. В чем особенность традиционного определения понятия «отображение» в математике? 35. Укажите основные отличия «математического отображения» от «семантически значимого отображения». 36. Почему в моделировании данных приходится рассматривать реальные и «потенциальные» ООО и ОЗО? 37. Поясните фразу «бинарное отношение множеств определяет два отображения между ними». 38. Дайте определения КЧ, МинКЧ и МаксКЧ. К каким элементам относятся эти характеристики? 39. Перечислите и укажите характеристики введенных типов отображений. 40. Какими символическими нотациями можно описать бинарные отношения? Сравните их информативность. 41. Укажите отличие сложного отображения от простого отображения. 42. Дайте три определения возможного ключа. 43. Что означает «определенность значения атрибута»? 44. Какие особенности каких отображений скрываются в определении возможного ключа и обязательности значений атрибута? 45. Что ассоциируется с понятиями «интенсионал БД» и «экстенсионал БД»? 46. Дайте определение «расширенного» состояния БД. 47. Что такое операция над данными? 48. Какие два компонента можно выделить в любой операции над данными? 49. Какие действия над данными предусмотрены в технологии БД? 50. Какими способами можно селектировать данные для выполнения тех или иных действий с ними? 51. Какие два класса операций и языков манипулирования данными выделяются в технологии БД? Каковы их особенности? 52. Что такое процедура БД? 53. Какие виды процедур БД вам известны? 54. В чем отличие сущностей и связей ER-модели от предметов ПрО и отношений между ними? 55. Какого типа отношение существует между предметами и их сущностями? 56. Как соотносится определение атрибута, данное Ченом, с определением этого же термина во второй главе настоящего пособия? 57. Чем отличается представление связей в БД ER-модели и реляционной модели? 58. По каким правилам строится ER-диаграмма? 59. В каких различных формах может быть представлено в ER-модели некоторое явление ПрО? 60. Как осуществлять выбор подходящей формы? 61. Приведите свои примеры рекурсивных связей, связей степени большей 2. 62. Как вы думаете, почему на ER-диаграммах обычно не показывают атрибуты и множества значений? 63. Какие формы предложил Чен для представления БД в своей модели? Опишите их. 64. Что является данными, когда рассматривается метасхема? 65. В чем особенности синтаксиса ограничений целостности на значения атрибутов в ER-модели? 66. Поясните особенности понятия «ключ» в ER-модели. 67. Почему в ER-модели неуместно использование первичных ключей? 68. Объясните и приведите примеры всех способов идентификации связей. 69. Что представляют собой E-зависимость и ID-зависимость? 70. Чем отличаются множество слабых сущностей и множество регулярных сущностей? 71. Поясните, как расставлять пометки на ребрах ролей ER-диаграммы в случае множества связей степени больше 2-х. 72. Укажите особенности навигационного манипулирования данными в ERмодели. 73. Какие формы может принимать подграф запроса на языке CABLE? 74. В каких случаях можно явно задавать в запросе теоретико-множественные операции? 75. Поясните критерии качества семантических моделей. 76. Нарисуйте общую схему модификаций ER-модели Чена. Какие концепции добавлялись или удалялись на каждом из этапов этих модификаций? 77. Чем чревато использование невыразительных семантических моделей? 78. В каких случаях используются специализации и категоризации? 79. Какие ограничения целостности касаются специализаций и категоризаций? 80. Опишите графическую нотацию, применяемую для представления специализаций и категоризаций на EER-диаграммах. 81. Докажите, что понятия «специализация» и «категоризация» не тождественны. 82. Какие изменения произошли в метасхеме EER-модели по сравнению с метасхемой ER-модели? 83. Каких структурных понятий мы лишаемся при переходе от EER-модели к ERмодели Баркера? 84. Какими структурными понятиями ER-модели Баркера мы вынуждены их заменять? 85. Опишите графическую нотацию Баркера. 86. Укажите правила трансформации схемы БД из ER-модели Баркера в реляционную модель. 87. Охарактеризуйте ER-модель в нотации IDEF1X. 88. Что новое внесено в семантическое моделирование ERM-моделью? 89. Назовите и охарактеризуйте две ступени познания. 90. Для чего предназначен язык? 91. Что такое знак, значение знака и смысл знака? 92. Каковы основные аспекты изучения языка? 93. Какие виды объектов выделяют в логике? Охарактеризуйте их. 94. Какие виды признаков выделяют в логике? Приведите примеры признаков каждого вида. 95. Определите основные формы знаний. В каком виде они представляются в естественном языке? 96. Дайте определение понятия. 97. Почему «понятие» и «термин» – это разные объекты? 98. Какой конструкцией выражаются понятия в логике? 99. Что такое содержание и объем понятия? 100. Какие виды понятий выделяют в зависимости от мощности объемов этих понятий? 101. Какие виды понятий выделяют в зависимости от типов предметов, обобщаемых в этих понятиях? 102. Что такое конкретные и абстрактные, собирательные и несобирательные понятия? 103. Какие виды понятий выделяют в зависимости от структур логических выражений содержаний этих понятий? 104. Что такое относительные и безотносительные понятия? 105. Что такое определенная дескрипция и неопределенная дескрипция? 106. Какие операции можно выполнять над понятиями? 107. Дайте определение суждения. 108. Почему «суждение» и «высказывание» – это разные объекты? 109. Что утверждается в простом суждении? Чем оно отличается от сложного суждения? 110. Каковы основные части любого простого суждения? 111. Что такое атрибутивное суждение, экзистенциальное суждение, суждение об отношении? 112. В чем отличие единичного суждения от множественного суждения? 113. Что такое теория? 114. Что понимают под термином «семантическая категория»? 115. Какие семантические категории знаков естественного языка выделяют в логике? 116. Укажите синтаксические функции знаков всех семантических категорий. 117. В чем заключается функциональная трактовка выражений языка? 118. Какие разновидности предметных функций выделяют в логике? 119. Что такое определение термина? 120. Какие виды определений выделяют в зависимости от категории определяемой части? 121. Какие из видов определений относятся к родовидовым? 122. Какие мыслительные процедуры включает в себя определение через гипостазирование? 123. На примере конкретного суждения продемонстрируйте атрибутивную и понятийную форму высказываний. 124. Какие семантические концепции используются для представления ПрО при ERM-моделировании? 125. Дайте определения базовых структурных понятий ERM-модели – семантически значимого объекта и семантически значимого отображения. 126. Определите термины «экземпляр отображения», «образ», «прообраз», «область образов объекта». 127. В чем отличие РООО и РОЗО от ООО и ОЗО? 128. Дайте определения: a. функциональной формы высказывания о соответствии объекта a конкретному понятию об индивидах xA(x); b. функциональной формы высказывания о присущности объекту a класса WxA(x) свойства P; c. функциональной формы высказывания о том, что объект a класса WxA(x) находится в отношении S1-S2 с объектом b класса WxB(x); d. функциональной формы высказывания о том, что объект a класса WxA(x) обладает значением характеристики f, равным b; e. функциональной формы высказывания о том, что объект a класса WxA(x) обладает в совокупности с объектом b класса WxB(x) значением характеристики f, равным c. 129. Какие объекты представляют собой сущности, значения? 130. Что такое отображение-свойство? 131. Поясните различия в употреблении термина «Родитель» как имени роли и как имени отображения. 132. Какие объекты представляют собой связи? 133. В чем отличие сложных отображений от простых отображений? 134. Что такое отображение, определяемое ролью, и отображение, определяющее роль? 135. Что такое отображение-характеристика? 136. Какие частные виды отображений выделяются с точки зрения классов, составляющих их ООО и ОЗО? 137. Докажите, что приведенная специализация отображений неполна. 138. Перечислите формальные понятия ERM-модели. 139. Чем отличаются понятия специализации и категоризации в ERM-модели от их аналогов в EER-модели? 140. Дайте определение формальной системы ТСЗО. 141. Что собой представляют операции алгебры отображений? 142. Смысл каждой операции абсолютно точно передает соответствующая общезначимая формула формальной системы ТСЗО. Сопоставьте каждой операции над отображениями свою формулу. 143. Какие классы ограничений целостности выделяются в ERM-модели? 144. Дайте определения КЧ, МинКЧ, МаксКЧ. К каким элементам относятся эти характеристики? 145. Перечислите и укажите характеристики типов отображений. 146. Приведите формулы формальной системы ТСЗО, определяющие ограниченные отображения. 147. Как на языке отображений выглядят ограничения целостности на специализации и категоризации? 148. Что такое следствие и эквивалентность отображений? 149. Какие формулы соответствуют этим отношениям между отображениями? 150. Как выглядит символическая нотация для записи характеристик отображений? 151. Какие элементы ERM-схемы представлены в графе классов? 152. Какие элементы ER-диаграммы Чена нашли свое отражение в расширенной графической нотации ERM-схем? Какие в них произошли изменения? 153. Какие элементы ER-диаграммы Баркера нашли свое отражение в расширенной графической нотации ERM-схем? 154. Какие изменения произошли с элементами EER-диаграммы в расширенной графической нотации ERM-схем? 155. Как представляются в ERM-диаграмме отображения, реляционные отображения, атрибутивные отображения? 156. Как представляются в ERM-диаграмме операции над отображениями и отношения между отображениями? 157. Укажите принципы, по которым ERM-схема разбивается на несколько диаграмм. 158. Какие виды диаграмм можно использовать для графического представления ERM-схемы? Какие элементы схемы отображаются на диаграммах каждого вида? 159. Укажите основные отличия метасхемы ERM-модели от метасхемы EERмодели. 160. Какие сведения о ПрО являются исходными данными для методики ERMмоделирования? 161. Как выглядит проблема триализма в ERM-моделировании? 162. Как правильно определять степень множества связей? 163. Каких правил именования следует придерживаться при формулировании исходных высказываний о ПрО? 164. Опишите шаги структурной фазы методики ERM-моделирования. 165. Какие классы ограничений целостности определяются в ходе применения методики ERM-моделирования? 166. В каких формах представляются основные элементы ERM-схемы? 167. Какие поколения СУБД традиционно выделяют в технологии БД? Какие модели данных относятся к каждому из этих поколений СУБД? 168. Охарактеризуйте каждую из СУБД-ориентированных моделей данных. Укажите их достоинства и недостатки. 169. Попытайтесь опровергнуть позицию автора, который отдает на сегодняшний момент пальму первенства в классе СУБД-ориентированных моделей данных реляционной модели. 170. Каковы основные структурные понятия реляционной модели данных? 171. Перечислите простейшие правила перехода от ER-схемы к реляционной схеме БД. 172. Что такое представление (view)? 173. Перечислите конструкции языка SQL, связанные с ограничениями целостности. 174. Что такое неопределенное значение? 175. Охарактеризуйте требование целостности сущностей и требование целостности по ссылкам. 176. Дайте определения всем вариантам реляционных ключей. 177. Назовите основные компоненты команды SQL CREATE TABLE. 178. Что такое триггеры и для чего они предназначены? 179. Назовите основные компоненты команды SQL CREATE TRIGGER. 180. Каковы основные особенности навигационного стиля манипулирования реляционными данными? 181. Назовите команды аппарата курсоров языка PL/SQL. Опишите схему использования курсоров. 182. Перечислите классы спецификационных языков реляционной модели данных. 183. Дайте определения основных и дополнительных операций реляционной алгебры Кодда. Поясните на примерах их работу. 184. Что представляет собой запрос в реляционном исчислении с переменнымикортежами? 185. Какие атомарные выражения используются в реляционном исчислении с переменными-кортежами? 186. По каким правилам строятся формулы в реляционном исчислении с переменными-кортежами? 187. Что представляет собой запрос в реляционном исчислении с переменными на доменах? 188. Какие атомарные выражения используются в реляционном исчислении с переменными на доменах? 189. По каким правилам строятся формулы в реляционном исчислении с переменными на доменах? 190. Назовите особенности языка QBE. 191. Охарактеризуйте три типа синтаксических конструкций языка SQL, начинающихся с ключевого слова SELECT. Для чего они предназначены? В чем особенности каждой конструкции? 192. Какова грамматика и семантика табличного выражения команды SELECT? 193. Как формулируется задача проектирования реляционной базы данных? Какие цели при этом преследуются? 194. Что такое универсальное отношение? 195. Какие аномалии могут обнаруживаться в неудачно спроектированной базе данных? 196. Что такое первая нормальная форма отношения? 197. Что такое функциональная зависимость? 198. Что такое детерминант атрибута? 199. Что такое нормальная форма Бойса-Кодда? 200. Что такое декомпозиция? 201. Объясните декомпозиционный алгоритм проектирования реляционной схемы. 202. Какими качествами должна обладать декомпозиция? 203. Расскажите о правилах выбора функциональной зависимости на очередном шаге декомпозиции. 204. Что такое метод синтеза отношений? 205. Что такое избыточная функциональная зависимость? 206. Назовите правила вывода функциональных зависимостей. 207. Что такое минимальное покрытие функциональных зависимостей отношения? Как его построить с использованием правил вывода функциональных зависимостей? 208. Как окончательно выглядит декомпозиционный алгоритм проектирования реляционных схем баз данных? 209. Какие проверки отношений следует провести на завершающей фазе проектирования? 210. Каковы основные недостатки классической методики проектирования реляционных БД? 211. Как выглядит основная схема любой семантической методики проектирования БД? 212. Укажите этапы семантической методики проектирования БД? 213. Какие доводы можно привести в пользу необходимости внесения изменений синхронно в артефакты всех этапов проектирования, включая самые ранние? 214. Каковы цели этапа анализа потребностей задач ПрО? Каким образом они достигаются? 215. Для чего предназначены функциональные модели ПрО? 216. В каких понятиях описывается функционирование организации в деловой модели? Что стоит за этими понятиями? 217. Каковы основные принципы построения деловой модели? 218. Как в дальнейшем будет использоваться деловая модель ПрО на последующих этапах семантической методики? 219. Какова главная стратегия процесса семантического моделирования с использованием деловой модели, как исходного артефакта, и ER-модели, как целевого формализма для представления схемы БД? 220. Какие этапы выделяются в этом процессе? Какие задачи решаются в ходе этих этапов? 221. На какие вопросы необходимо дать ответ при определении множеств сущностей? 222. На какие вопросы необходимо дать ответ при определении множеств связей? 223. На какие вопросы необходимо дать ответ при определении ограничений целостности? 224. По каким правилам осуществляется интеграция подсхем в общую ER-схему ПрО? 225. Что представляет собой генерализация множеств связей? 226. Каковы основные этапы логического проектирования данных для реляционной модели? 227. Какие факторы в основном влияют на успех семантической методики? 228. Приведите усовершенствованные правила перехода от ER-схемы к реляционной схеме БД. В чем их основные отличия от простейших правил? 229. Какими методами могут быть представлены в реляционной модели специализации и категоризации? 230. Какие критерии могут преследоваться при выборе метода? 231. Какие факторы необходимо учесть при выборе метода? 232. Какие критерии качества проекта БД удовлетворяются в методике преобразования ERM-схемы в реляционную схему? 233. Опишите шаги этой методики. 234. Какой принцип используется для денормализации отношений на завершающем этапе логического проектирования? 235. Опишите типичные случаи денормализации. 236. Какие действия осуществляются на этапе физического проектирования данных? 237. Какие виды сегментов предоставляет СУБД Oracle для хранения таблиц? 238. Каких правил следует придерживаться при построении индексов? 239. Какими параметрами команды CREATE TABLE определяются требования к дисковой памяти? 7. Учебно-методическое и информационное обеспечение дисциплины (модуля) «Базы данных» а) основная литература: 1. Цикритзис Д., Лоховски Ф. Модели данных: Пер. с англ. - М.: Финансы и статистика, 1985. – 344 с. 2. Дейт К. Введение в системы баз данных. 7-е издание: Пер. с англ. – М.: Вильямс, 2001. – 1072 с. 3. Чен П. Модель «сущность – связь» - шаг к единому представлению о данных // СУБД. – 1995. – № 3. – С. 137-158. 4. Коннолли Т., Бегг., Страчан А. Базы данных: проектирование, реализация и сопровождение. Теория и практика: Пер. с англ. – М.: Вильямс, 2000. – 1120 с. 5. Джексон Г. Проектирование реляционных баз данных для использования с микроЭВМ: Пер. с англ. – М.: Мир, 1991. – 252 с. 6. Луни К. Oracle Database 10g. Полный справочник: Пер. с англ. – М.: Лори, 2006. – 1 кн. – 701 с., 2 кн. – 717 с. б) дополнительная литература: 1. Калянов Г.Н. CASE: структурный системный анализ (автоматизация и применение). – М.: Лори, 1996. – 242 с. 2. Кренке Д. Теория и практика построения баз данных: Пер. с англ. – СПб.: Питер, 2003. – 800 с. 3. Хансен Г., Хансен Д. Базы данных: разработка и управление: Пер. с англ. – М.: БИНОМ, 1999. – 699 с. 4. Гарсиа-Молина Г., Ульман Д., Уидом Д. Системы баз данных. Полный курс: Пер. с англ. – М.: Вильямс, 2003. – 1088 с. 5. Тиори Т., Фрай Д. Проектирование структур баз данных: В 2-х кн. Пер. с англ. – М.: Мир, 1985. 6. Ульман Д., Уидом Д. Введение в системы баз данных: Пер. с англ. – М.: Лори, 2000. – 319 с. 7. Мейер Д. Теория реляционных баз данных: Пер. с англ. - М.: Мир, 1987. – 608 с. 8. Ульман Д. Основы систем баз данных: Пер. с англ. – М.: Финансы и статистика, 1983. – 334 с. 9. Грабер М. SQL: Пер. с англ. – М.: Лори, 2000. – 371 с. 10. Энсор Д, Стивенсон Й. Oracle8: рекомендации разработчикам. – К.: Изд. Группа BHV, 1998. – 128 с. 11. Колетски П., Дорси П. Oracle Designer. Настольная книга пользователя: Пер. с англ. – М.:, Лори, 1999. – 592 с. 12. Бэлсон Д. и др. Внутренний мир Oracle8. Проектирование и настройка. – К.: Изд-во «ДиаСофт», 2000. – 800 с. в) программное обеспечение: Системы управления базами данных – MS Access и Oracle. CASE-система – Oracle Designer. 8. Материально-техническое обеспечение дисциплины (модуля) Для материально-технического обеспечения дисциплины требуется наличие компьютерной техники с установленным соответствующим программным обеспечением и другого оборудования, поддерживающего проведение презентаций, построение проектной документации, выход в сеть Интернет. Также требуется обеспечение литературой, которую в достаточном объеме может предложить книжный фонд Научной библиотеки Томского госуниверситета и факультета информатики. Программа составлена в соответствии с требованиями ФГОС ВПО с учетом рекомендаций и ООП ВПО по направлению подготовки 230700 Прикладная информатика. Автор: к.техн.н., доцент А. М. Бабанов. Рецензент: д.физ-мат.н., профессор О. А. Змеев. Программа одобрена на заседании Ученого Совета Факультета информатики от «___»_________201__г., протокол № ___.