INFM160 Проект: PL/SQL
Анотация:
Самостоятелната работа е комплементарна с курса INFM111 Програмиране с PL/SQL, поради което е желателно е студентите да са част от този курс или да имат познания по релационен модел, Oracle DB и PL/SQL.
Основната цел е студентите да проектират и реализират самостоятелно допълнителни фукционалности от страна на СУБД Oracle с използване на езика PL/SQL.
Преподавател(и):
проф. Георги Тупаров д-р
Описание на курса:
Компетенции:
Студентите да могат да прилагат в практиката и да реализират малки проекти в среда на Oracle Database с използване на PL/SQL
Предварителни изисквания:
Студентите да са част от курса IMFM111 Програмиране с PL/SQL, или
да имат познания по релационен модел, Oracle DB и PL/SQL.
Форми на провеждане:
Редовен
Учебни форми:
Проект
Език, на който се води курса:
Български
Теми, които се разглеждат в курса:
- Анализ на заданието и проектиране на схемата на БД
- Проектиране на PL/SQL програмните елементи
- Реализация в среда на Oracle Database и документиране
- Представяне на проект
Литература по темите:
1.Benjamin Rosenzweig, Elena Rakhimov, Oracle® PL/SQL™ by Example, 6 ed., Pearson Education, 2023
2.Saurabh K. Gupta, Advanced Oracle PL/SQL Developer's Guide, 2 ed., Packt Publishing, 2016
3.Donald Bales, Beginning Oracle PL/SQL, 2 ed., Apress, 2016
Средства за оценяване:
Тема (обобщена): Да се разработи БД с допълнителна функционалност, реализирана в среда на Oracle DB с използване на езика PL/SQL.
Конкретното задание за същността на разработваната БД се уточнява с преподавателя.
Изисквания към базата от данни:
Реализация в Oracle Database.
Сложност 3 - 5 таблици, поне една връзка М:N.
Нормализация до 3 NF.
Функционални изисквания:
Минималното изискване е да има по една процедура и по една функция.
Използването на оператори IF, курсори, LOOP, ЕXCEPTION и тригери се оценява по-високо.
Стандартните тригери, които се появяват при създаване на таблици НЕ се оценяват по-високо.
Обработката само на изключение OTHERS НЕ се оценяма по-високо.
Съхранените процедури и функции да са включени в пакет.
Съдържание на проекта:
ИС да се реализира в http://apex.oracle.com (свободна регистрация)
Описанието на разработката включва:
Заглавна страница с имената на студента, факултетен номер, тема на курсовата работа
Описание на темата - накратко в каква (бизнес) среда е постановката на темата
Структура на базата данни - накратко описание на използваните таблици и диаграма на връзките между таблиците. Може да се използва от APEX : SQL Workshop->Utilities->Query Builder. Препоръчително е да се ползват 3-5 таблици, с по 3-6 колони. Оценяват се по-високо спазването на принципи за нормализиране на данните (до трета нормална форма).
Описание на задачи, включващи процедури и функции по темата. След всяка задача да има код за самата процедура или функция, както и код за извикването й. Процедурите и функциите могат да не са включени в пакет.
Очакван брой задачи за отлична оценка 8 - 10.
По-високо се оценяват задачи, в които има употреба на параметри, курсори, цикли, разклонения, обработка на изключения, тригери, реализиращи друга функционалност освен стандартната при създаването на таблици.
URL, workspace, username & password за достъп до проекта.
Файлът с документация трябва да е в PDF формат с име факултетен номер, имена и година на випуск (2018)
Пример: INFM160_f12345_IvanIvanov_2018.pdf
На защитата на курсовата работа се преглежда документацията и се демонстрира работещ код в среда Apex.