Бази даних
Анотація навчальної дисципліни
Мета дисципліни:
забезпечення теоретико-практичної підготовки студентів, яка буде основою для подальшого вивчення дисциплін, пов’язаних з технологіями розробки інформаційних систем, надбання студентами знань з теоретичних основ проектування моделі даних, основних прийомів проведення аналізу предметної області, побудови структури бази даних, витягнення інформації з реляційних таблиць за допомогою запитів.
Завдання дисципліни:
ознайомлення з особливостями технології баз даних як однієї з основних інформаційних технологій, з тим, щоб розуміти тенденції розвитку сучасних інформаційних технологій, бачити їхні переваги й недоліки, особливості роботи в умовах конкретних технологій;
ознайомлення з теоретичними й організаційними питаннями побудови й функціонування систем, заснованих на концепції баз даних, у тому числі різні методології моделювання й проектування баз даних;
навчання практичній роботі (проектування, ведення й використання баз даних) у середовищі обраних цільових СУБД;
навчання кваліфіковано використовувати можливості баз даних;
уявлення про роль і місце баз даних в автоматизованих системах, про призначення й основні характеристики різних систем керування базами даних, їхніх функціональні можливості.
підготовка до виконання професійних обов’язків розробника та адміністратора баз даних.
Основні результати навчання
Знати кодекс професійної етики, розуміти соціальну значимість та культурні аспекти інженерії програмного забезпечення і дотримуватись їх в професійній діяльності.
Знати і застосовувати професійні стандарти і інші нормативно-правові документи в галузі інженерії програмного забезпечення.
Форми організації освітнього процесу та види навчальних занять
Л – лекційні заняття; ЛЗ – лабораторні заняття; ПР – практичне заняття; СРС – самостійна робота здобувача вищої освіти; КР – курсова робота; МКР – модульна контрольна робота; К – консультації.
Тематика та види навчальних занять
1 тиждень
Л1. Причини швидкого розвитку технології баз даних. Поняття інформаційної системи, її компоненти. Основні функції інформаційної системи Поняття предметної області, бази даних, системи управління базами даних. Ключові та не ключові атрибути. Групи користувачів баз даних.
ЛЗ1. Дослідження предметної області.
СРС. К.
2 тиждень
Л2. Основні поняття, зв’язані с моделлю «сутність-зв’язок» ( ER). Взаємозв’язки в моделях даних: один до одного, один до багатьох, багато до багатьох. Діаграмний метод відображення ER-моделі. Моделювання обмежень. Виявлення проблем, що можуть виникнути при створенні ER-моделі.
ПР1. Опис вимог для предметної області.
СРС. К.
3 тиждень
Л3. Методологія концептуального проектування БД. Моделювання концептуальних і фізичних об’єктів. Об’єднання представлень даних. Приклад проектування концептуальної моделі даних.
ЛЗ2. Побудова концептуальної моделі даних.
СРС. К.
4 тиждень
Л4. Походження реляційної моделі. Термінологія реляційної моделі. Правила Кодда. Властивості відношень у БД. Перехід від ER-діаграм до реляційної схеми.
ПР2. Побудова концептуальної моделі даних.
СРС. К.
5 тиждень
Л5. Класи реляційних мов. Операції реляцiйної алгебри. Приклади реалізації запитів за допомогою реляційної алгебри.
ЛЗ3. Визначення запитів до інформаційної системи та розробка структури реляційної БД.
СРС. К.
6 тиждень
Л6. Мета нормалізації. Надмірність даних та аномалії. Поняття, використовувані при визначенні нормальних форм. Перша, друга та третя нормальні форми.
ПР3. Проектування реляційної моделі даних та реляційна алгебра.
СРС. К.
7 тиждень
Л7. Аномалії, які властиві кожній нормальній формі. Інші нормальні форми. Приклад проведення нормалізації відношень.
ЛЗ4. Реалізація запитів за допомогою реляційної алгебри.
СРС. К.
8 тиждень
Л8. Уявлення про стандарт SQL. Типи даних. Оператори INSERT, UPDATE та DELETE. Оператор CREATE TABLE. Обмеження цілісності даних, унікальності та інші. Оператор SELECT. Речення оператору SELECT. Предикати, що застосовуються в реченні WHERE.
ПР4. Проектування реляційної моделі даних з застосуванням нормалізації відношень.
МКР1. СРС. К.
9 тиждень
Л9.Агрегатні функції. Групування та сортування даних. Вкладені запити. Корельовані запити. Операція з’єднання та її різновиди. Операція UNION та інші операції над множинами. Оператор CREATE VIEW. Представлення, що модифікуються. Застосування представлень. Механізм привілеїв. Оператори GRANT та REVOKE.
ЛЗ5. Створення таблиць та модифікація даних за допомогою SQL.
СРС. К.
10 тиждень
Л10.Створення збережених процедур і функцій. Прості форми виражень. Розвилка і цикли. Поняття тригера й особливості його оголошення. Таблиці new та old. Переваги та недоліки використання тригерів.
ПР5. Створення структури БД за допомогою SQL
СРС. К.
11 тиждень
Л6. Види індексів. Проблеми, які виникають при використанні індексів. Правила вибору індексів для таблиць БД.
ЛЗ6. Групування даних в запитах SQL.
СРС. К.
12 тиждень
Л12. Методи денормалізації. Випадки використання. Аналіз поведінки системи для виявлення варіантів денормалізації.
ПР6. Групування даних в запитах SQL.
СРС. К.
13 тиждень
Л13. Функції програми БД. Реалізація обмежень; безпека і контроль. Логіка програми.
ЛЗ7. Створення тригерів та збережених процедур.
СРС. К.
14 тиждень
Л14. Рекомендації з проектування користувальницького інтерфейсу. Проектування форм і звітів.
ПР7. Приклади використання тригерів та збережених процедур.
МКР2.СРС. К.
15 тиждень
Л15. Властивості і модель транзакції. Транзакції та робота в багатокористувачевому режимі. Рівні ізоляції.
ЛЗ8. Програма обробки запитів до БД.
СРС. К.
Індивідуальна робота
Виконується КР. Метою виконання курсової роботи є розвиток навичок роботи із проектування інформаційних систем і закріплення знань, отриманих за час вивчення дисципліни «Бази даних». Курсова робота передбачає створення багатотабличної бази даних (БД) і набору функцій і процедур, що забезпечують інтерфейс користувача.
1–2 тижні
Одержання й уточнення завдання.
3 тиждень
Опис вимог до предметної області.
4 тиждень
Визначення груп користувачів й їхніх прав.
5 тиждень
Розробка концептуальної моделі.
6 тиждень
Розробка реляційної моделі.
7 тиждень
Складання запитів.
8–9 тижні
Реалізація інтерфейсу.
10–11 тижні
Реалізація запитів.
12 тиждень
Реалізація звітів.
13 тиждень
Оформлення пояснювальної записки.
14 тиждень
Захист курсової роботи.
Процедура оцінювання
Система оцінювання рівня навчальних досягнень ґрунтується на принципах ЄКТС та є накопичувальною. Здобувачі протягом семестру готуються до лекційних, практичних та лабораторних занять, виконують 2 модульні контрольні роботи, КР.
Для забезпечення оперативного контролю за успішністю та якістю рівня навчальних досягнень здобувачів вищої освіти дисципліна поділяється на два семестрові модулі
Кожний модуль оцінюється у максимально можливі 50 балів:
Модульна робота складається з теоретичної частини та практичної частини - задач.
Максимальна оцінка за правильне виконання теоретичної частини модульної роботи №1 становить 15 балів, за виконання практичної частини – 15 балів. Максимальна оцінка за правильне виконання теоретичної частини модульної роботи №2 становить 10 балів, за виконання практичної частини – 20 балів.
Кількість запитань теоретичної частини модульної роботи №1 – 11. Кожна правильна відповідь першої частини оцінюється в 1 бал, другої частини – в 2 бали, третьої частини – в 3 бали. Кількість запитань теоретичної частини модульної роботи №2 – 10. Кожна правильна відповідь оцінюється в 1 бал.
Кількість задач модульної роботи №1 – 3. Правильне розв’язання кожної задачі оцінюється в 5 балів. Задача вважається розв’язаною, якщо при її розв’язанні коректно записано структуру даних, враховано принципи нормалізації відношень, коректно записано запит. Кількість задач модульної роботи №2 – 4. Правильне розв’язання першої задачі оцінюється в 3 бали. Правильне розв’язання другої задачі оцінюється в 9 балів. Правильне розв’язання третьої та четвертої задачі оцінюється по 4 бали. Кожна задача вважається розв’язаною, якщо при її розв’язанні коректно записано запити.
Оцінювання курсової роботи виконується виходячи з наступних вимог.
Опис вимог до предметної області – 5 балів
Визначення груп користувачів й їхніх прав – 5 балів
Розробка концептуальної моделі – 10 балів
Розробка реляційної моделі – 5 балів
Складання запитів – 5 балів
Реалізація інтерфейсу – 10 балів
Реалізація запитів – 10 балів
Реалізація звітів – 5 балів
Оформлення пояснювальної записки – 5 балів
Захист курсової роботи – 40 балів
Максимальна оцінка, яку може отримати здобувач за всі виконані види робіт – 100 балів.
Підсумковим контролем з дисципліни є усний екзамен, білет до якого складається з теоретичної частини (2 запитання) та практичної частини (6 задач). За бездоганну відповідь на кожне теоретичне питання студент отримує – 20 балів. За бездоганне виконання кожного завдання практичної частини студент отримує – 10 балів.
Максимальна оцінка за правильні відповіді на всі питання екзаменаційного білету становить 100 балів.
Семестровий модуль № 1
ЛЗ1- ЛЗ4. Оцінка за виконання – 10 балів. Термін виконання – 1-8 тиждень.
ПР1- ПР3. Оцінка за виконання – 10 балів. Термін виконання – 1-8 тиждень.
КР (ч.1). Оцінка за виконання – 30 балів. Термін надання – 8 тиждень.
МК1. Модульна контрольна робота – 30 балів (8 тиждень). Перескладання можливе протягом 9–11 тижнів за розкладом консультацій.
Семестровий модуль № 2
ЛЗ5- ЛЗ8. Оцінка за виконання – 10 балів. Термін виконання – 9-15 тиждень.
ПР1- ПР3. Оцінка за виконання – 10 балів. Термін виконання – 9-15 тиждень.
КР(ч.2). Оцінка за виконання – 70 балів. Термін надання 14 тиждень.
МК2. Модульна контрольна робота – 30 балів (14 тиждень).
Умови допуску до підсумкового контролю
До екзамену допускаються здобувачі вищої освіти, які виконали всі види навчальних елементів навчальної дисципліни на не менш, ніж на 60 %.
Екзамен відбувається за всіма тематичними (змістовними) модулями дисципліни.
Політика освітнього процесу
Здобувач зобов’язаний своєчасно та якісно виконувати всі отримані завдання; за необхідністю з метою з’ясування всіх не зрозумілих під час самостійної та індивідуальної роботи питань, відвідувати консультації викладача. Дотримуватись принципів академічної доброчесності.
Виконаний не свій варіант завдання здобувачем не оцінюється.
Робота, яка виконана після встановлених викладачем термінів, не приймається.
Відсутність здобувача на екзамені або на контрольній роботі відповідає оцінці «0».
Складання/перескладання екзаменів – за встановленим деканатом розкладом.
Під час лекції здійснювати телефонні дзвінки забороняється.
Заборонено використання будь-яких підручників, посібників, конспектів лекцій, шпаргалок під час проходження модульних контролів та екзамену з дисципліни.
Документи (файли), що додаються: Робоча програма навчальної дисципліни.
Література
1. Берко, А. Ю. Системи баз даних та знань. Кн. 1. Організація баз даних та знань : навч. посібник / А.Ю. Берко, О.М. Верес, В.В. Пасічник; за заг. ред. В.В. Пасічника . – Л. : Магнолія 2006, 2011. – 454 с.
2. Дейт, К. Дж. Введение в системы баз данных. 8-е издание / К. Дж.Дейт. – М.; СПб.; К. : Диалектика-Вильямс, 2016. – 1328 с.
3. Малахов, Є. В. Проектування баз даних та їх реалізація засобами стандартного SQL та PostgreSQL : навч. посібник / Є.В. Малахов, О.А. Блажко, М.Г. Глава. – О. : ВМВ, 2012.- 248 с.
Методична література
1. Зіноватна, С.Л. Конспект лекцій з дисципліни «Бази даних» для студентів спеціальності 121 – Інженерія програмного забезпечення, – Одеса: ОНПУ, 2019. - 70 с. (КЛ11068)
2. Зіноватна, С.Л. Зіноватна С.Л. Методичні вказівки до практичних занять з дисципліни «Бази даних» для студентів спеціальності 121 - Інженерія програмного. – Одеса: ОНПУ, 2019. - 32 с. (МВ11076)
3. Зіноватна, С.Л. Методичні вказівки до лабораторних робіт з дисципліни «Бази даних» для студентів спеціальності 121 «Інженерія програмного забезпечення». – Одеса, ОНПУ, 2019. – 23 с. (МВ11075)
4. Зіноватна, С.Л. Методичні вказівки до курсової роботи з дисципліни «Бази даних» для студентів спеціальності 121 – «Інженерія програмного забезпечення. - Одеса; ОНПУ, 2019. - 19 с. (МВ11069)
Додаткова література
1. Гарсиа-Молина, Г. Системы баз данных. Полный курс / Г. Гарсиа-Молина, Дж. Ульман, Дж. Уидом. – М. : Издательский дом «Вильямс», 2003. – 1088 с.
2. Грофф, Д. Энциклопедия SQL / Д. Грофф. – СПб. : Питер, 2004. – 896 с.
3. Коннолли, Т. Базы данных: Проектирование, реализация, сопровождение. Теория и практика / Т. Коннолли. – М. : Издательский дом «Вильямс», 2002. – 1120 с.
4. Мацяшек, Л.А. Анализ и проектирование информационных систем с помощью UML 2.0. Третье издание / Л.А. Мацяшек. – М. : Издательский дом «Вильямс», 2008. – 816 с.
5. Мюллер, Р. Дж. Базы данных и UML / Р.Дж. Мюллер. – М. : ЛОРИ, 2002. – 420 с.
6. Теория и практика построения баз данных. 8-е изд./ Д.Кренке. – СПб. : Питер, 2003. – 800 с.
7. Хансен, Г. Базы данных: разработка и управление: Пер. с англ. / Г. Хансен, Дж. Хансен – М. : ЗАО «Издательство БИНОМ», 1999. – 704 с.