Розробка автоматизованих програмних засобів для об'єктивного оцінювання знань студентів та фахівців
R: (назва галузі знань, код галузі знань, назва освітньо-професійної програми підготовки, код освітньо-професійної програми підготовки, тип освітньо-професійної програми підготовки, назва кваліфікації, код кваліфікації, назва компетенції, шифр компетенції, тип компетенції, зміст вміння, шифр вміння, назва навички, зміст навички, назва дисципліни, кількість академічних годин, кількість… Читати ще >
Розробка автоматизованих програмних засобів для об'єктивного оцінювання знань студентів та фахівців (реферат, курсова, диплом, контрольна)
Зміст Вступ
1. Аналіз предметної області та постановка задачі предметної області «База вимог щодо організації перевірки якості знань»
2. Розробка універсального відношення предметної області «База вимог щодо організації перевірки якості знань»
3. Розробка концептуальної схеми предметної області «База вимог щодо організації перевірки якості знань» за ER-принципом
4. Обґрунтування вибору моделі даних предметної області «База вимог щодо організації перевірки якості знань»
4.1 Ієрархічна модель даних
4.2 Мережева модель даних
4.3 Реляційна модель даних
4.4 Об'єктно-орієнтована модель даних
5. Проектування нормалізованих відношень предметної області «База вимог щодо організації перевірки якості знань»
6. Оцінка спроектованих відношень бази даних
7. Розробка вихідних форм бази даних
8. Розробка програмного забезпечення для організації та управління даними бази «База вимог щодо організації перевірки якості знань»
8.1 Розробка схеми-алгоритму реалізації запитів
8.2 Обґрунтування використання мови програмування для управління організованою базою даних
8.3 Основні команди та оператори мови програмування
8.4 Розробка схеми-алгоритму реалізації програмного забезпечення для бази даних Висновки Список використаних джерел Додаток, А Додаток Б Додаток В Додаток Г
Вступ
Актуальною проблемою вищої школи України на сучасному етапі є перебудова та реформування системи освіти згідно з вимогами Болонського процесу. Важливими показниками ефективності при цьому залишаються професіоналізм та конкурентоспроможність майбутніх фахівців. Підвищення якості освіти, безумовно, пов’язано з необхідністю вдосконалення існуючих методів навчання та пошуком нових форм об'єктивного контролю знань. Широке впровадження інформаційних технологій у сферу освіти, в т. ч. застосування Web-орієнтованих сучасних методів дистанційного навчання, вимагає розробки автоматизованих програмних засобів для об'єктивного оцінювання при поточному та підсумковому контролюванні знань студентів та фахівців.
Розглядаючи сучасний стан в області вирішення проблем автоматизованого тестування, слід відмітити, що сьогодні багато вищих навчальних закладів розробляють власні комплексні комп’ютеризовані системи генерації завдань та бази завдань для перевірки якості знань за певним фахом, призначені для ефективного контролю і оцінки знань студентів. Розробки програмних засобів навчання та контролю знань на основі застосування нових інформаційних технологій ведуться в Національному університеті «Львівська політехніка», Херсонському державному технічному університеті, Одеському національному політехнічному університеті та в інших ВНЗ України.
Розробка ефективних систем генерації завдань для тестування знань, незважаючи на наявність відомих розробок, залишається актуальною, що обумовлено наступними факторами: досить високою вартістю представлених розробок для споживача; неможливістю створення високоефективних тестів та баз завдань для контролю якості знань за певним фахом; невирішеністю проблеми перевірки якості запропонованих тестів; представлені системи не надають засобів інтеграції в єдину комплексну систему.
Об'єктом даного дослідження є процес розробки бази вимог щодо організації перевірки якості знань, що дозволить спростити та автоматизувати процес формування питань у білеті для визначення рівня знань студента.
Предметом даного дослідження є база вимог щодо перевірки якості знань.
Мета розробки бази вимог щодо перевірки якості знань полягає у підвищенні об'єктивності укомплектування білетів для фахових випробувань та полегшенні збереження самих завдань. Досягнення цієї мети призведе до мінімального втручання викладача у процес формування білету та до об'єктивного оцінювання знань студента.
1. Аналіз предметної області та постановка задачі предметної області «База вимог щодо організації перевірки якості знань»
База даних вимог щодо організації перевірки якості знань призначена для викладачів та розробників автоматизованих систем генерації білетів для перевірки якості знань. За допомогою бази даних вимог щодо організації перевірки якості знань може бути сформований екзаменаційний білет який задовольняє задані умови, такі як рівень знань студента, фах, спеціальність тощо. База даних «База вимог щодо організації перевірки якості знань» здебільшого орієнтована на викладачів та студентів тому потрібно забезпечити досить гнучкий і зручний інтерфейс.
Відповідно до вимог користувачів та даної бази завдань для перевірки якості знань за певним фахом необхідно реалізувати такі запити:
1. Визначити освітньо-професійні програми підготовки (назва, шифр, тип), навчання за якими забезпечить можливість отримання певної кваліфікації.
2. Вивести перелік вмінь (зміст вміння, шифр) та навичок (назва, зміст), якими повинен володіти фахівець заданої галузі знань, який завершив підготовку за заданою освітньо-професійною програмою підготовки.
3. Визначити шифри освітньо-професійних програм підготовки за якими проводиться фахова підготовка в заданій галузі знань.
4. Визначити вміння (зміст вміння, шифр) та навички (назва, зміст) якими має володіти фахівець певної галузі знань, який проходить фахову підготовку за заданим напрямом/спеціальністю, відповідно до вибраної компетенції щодо вирішення професійних завдань.
5. Вивести список дисциплін (назва) та їх змістовних модулів (назва шифр), які входять до освітньо-професійні програми підготовки заданої галузі знань і забезпечують набуття певного вміння.
6. Вивести перелік дисциплін (назва, кількість академічних годин, кількість національних кредитів, кількість кредитів ECTS, вид контролю, назва циклу) що включені до заданої освітньо-професійної програми підготовки.
7. Вивести перелік типових завдань діяльності(зміст завдання, шифр), які входять до заданої виробничої функції вибраної кваліфікації.
8. Вивести список вмінь (зміст вміння, шифр) та навичок (назва, зміст), які забезпечують виконання заданого типового завдання діяльності, яке належить до вибраної виробничої функції та певної кваліфікації.
9. Вивести перелік тем (назва, шифр), заданої дисципліни, які повинен опрацювати студент певного напряму/спеціальності, з них ті, що належать до певного змістовного модуля.
10. Визначити перелік можливих завдань (номер завдання в темі, текст завдання, тип) для перевірки якості знань з певної теми вибраної дисципліни вибраного змістовного модуля заданої освітньо-професійної програми підготовки.
На мові інфологічного моделювання основні категорії предметної області можуть бути подані в такому вигляді:
— Галузь знань (код, назва)
— Освітньо-професійна програма підготовки (назва, код, назва галузі знань, тип)
— Кваліфікація (код, назва, код освітньо-професійної програми підготовки)
— Компетенція (назва, шифр, тип, код освітньо-професійної програми підготовки)
— Вміння (зміст вміння, шифр)
— Навички (назва, зміст)
— Дисципліна (назва, кількість академічних годин, кількість національних кредитів, кількість кредитів ECTS, вид контролю, назва циклу, код освітньо-професійної програми підготовки)
— Змістовний модуль (назва, шифр, назва дисципліни)
— Тема (назва, шифр, назва дисципліни, назва змістовного модуля)
— Завдання (номер завдання в темі, текст завдання, тип)
— Типове завдання діяльності(зміст завдання, шифр)
— Виробнича функція (назва, назва кваліфікації)
2. Розробка універсального відношення предметної області «База вимог щодо організації перевірки якості знань»
В універсальне відношення потрібно включити атрибути, що описують наступні сутності: Галузь знань; Освітньо-професійна програма підготовки; Кваліфікація; Компетенція; Вміння, Навички; Дисципліна; Змістовний модуль; Тема; Завдання; Типове завдання діяльності; Виробнича функція.
Серед них є стрижневі, характеристичні та асоціативні, й описуються відповідно до вимог подання категорій бази даних:
— Галузь знань (код, назва)
— Освітньо-професійна програма підготовки (назва, код, назва галузі знань, тип)
— Кваліфікація (код, назва, код освітньо-професійної програми підготовки)
— Компетенція (назва, шифр, тип, код освітньо-професійної програми підготовки)
— Вміння (зміст вміння, шифр)
— Навички (назва, зміст)
— Дисципліна (назва, кількість академічних годин, кількість національних кредитів, кількість кредитів ECTS, вид контролю, назва циклу, код освітньо-професійної програми підготовки)
— Змістовний модуль (назва, шифр, назва дисципліни)
— Тема (назва, шифр, назва дисципліни, назва змістовного модуля)
— Завдання (номер завдання в темі, текст завдання, тип)
— Типове завдання діяльності(зміст завдання, шифр)
— Виробнича функція (назва, назва кваліфікації)
Отже, універсальне відношення для бази вимог щодо організації перевірки якості буде мати наступний вигляд:
R: (назва галузі знань, код галузі знань, назва освітньо-професійної програми підготовки, код освітньо-професійної програми підготовки, тип освітньо-професійної програми підготовки, назва кваліфікації, код кваліфікації, назва компетенції, шифр компетенції, тип компетенції, зміст вміння, шифр вміння, назва навички, зміст навички, назва дисципліни, кількість академічних годин, кількість національних кредитів, кількість кредитів ECTS, вид контролю, назва циклу, назва змістовного модуля, шифр змістовного модуля, назва теми, шифр теми, номер завдання, текст завдання, тип завдання, шифр типового завдання діяльності, зміст типового завдання діяльності, назва виробничої функції).
Ступінь універсального відношення — 30.
3. Розробка концептуальної схеми предметної області «База вимог щодо організації перевірки якості знань» за ER-принципом
Перелік сутностей, що необхідні для опису предметної області, іншими словами типи об'єктів, про які повинна накопичуватися інформація: Галузь знань; Освітньо-професійна програма підготовки; Кваліфікація; Компетенція; Вміння, Навички; Дисципліна; Змістовний модуль; Тема; Завдання; Типове завдання діяльності; Виробнича функція.
Сутність являє собою основний зміст явища або обєкту, про який збирається інформація в базі даних та визначається, як деякий об`єкт, що представляє інтерес для користувача.
Таблиця 3.1 — Табличний вигляд ER-моделі предметної області
Ім'я сутності 1 | Ім'я сутності 2 | Ім'я зв’язку | Тип зв’язку | |
Галузь знань | Освітньо-професійна програма підготовки | Включає | 1:N | |
Освітньо-професійна програма підготовки | Кваліфікація | Забеспечує | 1: 1 | |
Освітньо-професійна програма підготовки | Компетенція | Надає | M:N | |
Освітньо-професійна програма підготовки | Дисципліна | Включає | M:N | |
Кваліфікація | Виробнича функція | Забеспечує виконання | 1:N | |
Виробнича функція | Завдання діяльності | Включає | 1:N | |
Завдання діяльності | Вміння | Забеспечує виконання | M:N | |
Завдання діяльності | Навички | Забеспечують виконання | M:N | |
Компетенція | Вміння | Включає | M:N | |
Компетенція | Навички | Включає | M:N | |
Дисципліна | Вміння | Забеспечує | M:N | |
Дисципліна | Навички | Забеспучує | M:N | |
Дисципліна | Змістовний модуль | Складається | 1:N | |
Змістовний модуль | Тема | Складається | 1:N | |
Тема | Завдання | Включає | 1:N | |
За правилами побудови концептуальних схем предметної області у вигляді ER — структур сутності зображують позначеними прямокутниками, асоціації - ромбами, а зв’язки між ними — ненаправленими ребрами, над якими може проставлятися ступінь зв’язку і необхідне пояснення.
Представлення ER-моделі для бази даних «База вимог щодо організації перевірки якості знань» на рисунку 3.1.
Рисунок 3.1 — Концептуальна схема предметної області «База вимог щодо організації перевірки якості знань»
4. Обґрунтування вибору моделі даних предметної області «База вимог щодо організації перевірки якості знань»
Модель даних — сукупність правил створення структур даних у базі даних, операцій над ними, а також обмежень цілісності, що визначають допустимі зв’язки і значення даних, послідовність їх зміни. Є три основних типи моделей даних: ієрархічна, мережева, реляційна.
Перш ніж створювати базу даних «База завдань для перевірки якості знань за певним фахом», яка б працювала правильно, коректно та ефективно, необхідно вибрати модель даних, найбільш зручну для вирішення поставленого завдання. Для цього потрібно провести порівняльний аналіз ієрархічної, мережевої та реляційної моделі, та вибрати ту, що найповніше задовольняє вимоги проектованої бази даних.
4.1 Ієрархічна модель даних
Деревоподібна (ієрархічна) структура [6], або дерево — це зв’язний неорієнтований граф, що не містить циклів, тобто петель з замкнутих шляхів.
Вона визначається як кінцева множина Т, яка складається з одного або більше вузлів. Один спеціально виділений вузол є корінням дерева, а інші вузли — піддеревами. Пошук даних в ієрархічній структурі виконується завжди по одній із гілок, починаючи з кореневого елемента.
Перевагами деревовидної моделі є наявність функціональних систем керування базами даних, які підтримують дану модель; простота сприйняття користувачами принципу ієрархії; забезпечення деякого рівня незалежності даних; простота оцінки операційних характеристик системи завдяки апріорно заданим взаємозв'язкам.
Недоліками ієрархічних структур є надлишковість зберігання інформації, так як деревовидні структури не підтримують взаємозв'язки Б: Б; строга ієрархічна впорядкованість, яка ускладнює процедури включення та вилучення відповідних їм породжених, що вимагають особливої обережності; ускладнюється доступ до даних, які лежать на більш низьких рівнях ієрархії, оскільки кореневий вузол завжди є головним, а доступ до будь-якого породженого вузла може здійснюватись через вихідний.
При побудові графа кінцевими вершинами будуть вершини, що відповідають запитам.
Представлення ієрархічної моделі даних предметної області «База вимог щодо організації перевірки якості знань» показано на рисунку 4.1.
Рисунок 4.1 — Ієрархічна модель даних предметної області «База вимог щодо організації перевірки якості знань»
4.2 Мережева модель даних
Мережева модель даних дозволяє відображати відношення між типами записів виду «багато до багатьох». У мережевій моделі кожних тип запису може бути членом більш ніж одного типу набору. В результаті можна сформувати модель бази даних із довільними зв’язками між різними типами записів. Суттєва відмінність між мережевою та ієрархічною моделями даних є в тому, що в мережевій кожний запис може брати участь у будь? якій кількості наборів.
Перевагами мережевої структури є наявність СУБД, які успішно реалізують таку організацію, а також простота реалізації зв’язків «багато до багатьох», які часто стрічаються в реальному світі.
Використання мережевої моделі даних є кращим для відображення бази даних «База вимог щодо організації перевірки якості знань» ніж ієрархічна модель, тому що вона надає великі можливості у створенні довільних зв’язків. Проте можуть виникнути незручності при поданні даних у випадку великої кількості категорій предметної області та особливостей семантичних зв’язків.
Представлення мережевої моделі даних предметної області «База вимог щодо організації перевірки якості знань» показано на рисунку 4.2.
Рисунок 4.2 — Мережева модель даних предметної області «База вимог щодо організації перевірки якості знань»
4.3 Реляційна модель даних
Реляційною є база даних, у якій усі дані, що доступні користувачу, подані у вигляді таблиць, а всі операції над даними зводяться до операцій над цими таблицями. Для представлення реляційних баз даних розроблена формальна теорія баз даних, теоретичну основу якої складає алгебра та математична логіка.
У реляційній базі даних інформація організована у вигляді таблиць, розділених на рядки і стовпці, на перетині яких містяться значення даних. У кожної таблиці є унікальне ім'я, що описує її зміст, а масив значень, що можуть міститися в стовпці, є доменом цього стовпця.
Використання реляційної моделі надає такі переваги: простота і доступність розуміння кінцевим користувачем (єдиною інформаційною конструкцією є таблиця); максимальна гнучкість при обробці непередбачених запитів; при проектуванні реляційної БД застосовуються строгі правила, що базуються на математичному апараті; повна незалежність даних; можливість розширення бази приєднанням нових елементів й записів без зміни при цьому існуючих підсистем та прикладних програм; для побудови запитів і написання прикладних програм немає необхідності знання конкретної організації БД.
Представлення фрагменту таблиці реляційної моделі даних предметної області «База вимог щодо організації перевірки якості знань» показано на рисунку 4.3.
Сутність «Дисципліна» | ||||||
Назва | Кількість академічних годин | Кількість національних кредитів | Кількість кредитів ECTS | Вид контролю | Назва циклу | |
Теорія алгоритмів | 2,33 | 3,5 | Іспит | Цикл математичної, природничо-наукової підготовки | ||
Рисунок 4.3 — Фрагмент таблиці реляційної моделі даних предметної області «База вимог щодо організації перевірки якості знань»
4.4 Об'єктно-орієнтована модель даних
Об'єктно-орієнтована база даних? база даних, яка створюється і використовується в середовищі СУБД, яке засновано на принципах об'єктно?орієнтованого підходу і підтримує об'єктну модель даних. Об'єктна база даних являє собою сукупність взаємозв'язаних об'єктів, які відповідають певній схемі. Проектування об'єктно-орієнтованих баз даних (ООБД) має багато спільних рис з проектуванням реляційних БД і в цілому можна застосовувати методологію концептуального і логічного моделювання, яка застосовується для створення традиційних БД. Процес проектування реляційних БД в основному направлений на ідентифікацію елементів даних, а не на визначення операцій з даними.
При проектуванні ООБД визначаються як дані, так і процедури їх обробки. На етапі реалізації обов’язково повинні використовуватися об'єктно-орієнтовані мови. При проектуванні ООБД дані і процедури вважаються єдиною сутністю і об'єкти розглядаються як окремі модулі.
Ознайомившись з основними моделями даних, в курсовій роботі використовується реляційна модель даних. Саме ця модель має ряд переваг, через що вибір зупинився саме на ній. Ця модель є зрозумілою для користувача та гнучкою при обробці запитів.
5. Проектування нормалізованих відношень предметної області «База вимог щодо організації перевірки якості знань»
Проведемо нормалізацію таблиць бази даних «База вимог щодо організації перевірки якості знань» до третьої повної нормальної форми [4], для отримання такого проекту бази даних, у якому кожний атрибут з’являється лише в одному місці, тобто виключена надлишковість інформації.
Універсальне відношення даної предметної області знаходиться в 1НФ, оскільки таблиця має основний ключ: мінімальний набір колонок, які ідентифікують запис, таблиця задовольняє умову, у відповідності з якою у позиції на перетині кожного рядка і стовпця таблиці знаходиться єдине атомарне значення, а не множина таких значень, в таблиці немає кортежів, що повторюються:
R: (назва галузі знань, код галузі знань, назва освітньо-професійної програми підготовки, код освітньо-професійної програми підготовки, тип освітньо-професійної програми підготовки, назва кваліфікації, код кваліфікації, назва компетенції, шифр компетенції, тип компетенції, зміст вміння, шифр вміння, назва навички, зміст навички, назва дисципліни, кількість академічних годин, кількість національних кредитів, кількість кредитів ECTS, вид контролю, назва циклу, назва змістовного модуля, шифр змістовного модуля, назва теми, шифр теми, номер завдання в темі, текст завдання, тип завдання, шифр типового завдання діяльності, зміст типового завдання діяльності, назва виробничої функції).
Відношення знаходиться в другій нормальній формі (2НФ), якщо воно знаходиться в 1НФ і кожний неключовий атрибут функціонально повно залежить від складеного ключа. Якщо проаналізувати такі умови — то можна зробити висновок, про те, що не всі атрибути функціонально повно залежать від ключа — наприклад, атрибут «кількість академічних годин» залежить лише від частини складеного ключа «назва дисципліни», але зовсім не залежить від таких складових як «код галузі знань, код освітньо-професійної програми підготовки, код кваліфікації, шифр компетенції, шифр вміння, назва навички, шифр змістовного модуля, шифр теми, номер завдання, шифр типового завдання діяльності» .
Друга нормальна форма вимагає, щоб відношення знаходилось у 1НФ, а також, щоб кожен не ключовий атрибут функціонально повно залежав тільки від первинного ключа. Визначимо функціональні залежності, що присутні в універсальному відношенні.
Код галузі знань > назва галузі знань.
Код освітньо-професійної програми підготовки > назва освітньо-професійної програми підготовки, тип освітньо-професійної програми підготовки, код галузі знань, код кваліфікації.
Код кваліфікації > назва кваліфікації.
Назва виробничої функції > код кваліфікації
Шифр типового завдання діяльності > зміст типового завдання діяльності, назва виробничої функції.
Шифр компетенції > назва компетенції, тип компетенції.
Шифр вміння > зміст вміння, шифр компетенції, шифр типового завдання діяльності.
Назва навички > зміст навички, шифр компетенції, шифр типового завдання діяльності.
Назва дисципліни > кількість академічних годин, кількість національних кредитів, кількість кредитів, ECTS, вид контролю, назва циклу.
Шифр змістовного модуля > назва змістовного модуля, назва дисципліни.
Шифр теми > назва теми, шифр змістовного модуля.
Номер завдання в темі, шифр теми > текст завдання, тип завдання.
На основі функціональних залежностей визначимо відношення, присутні у базі даних «База вимог щодо організації перевірки якості знань». Ключові атрибути у даних відношеннях виділимо підкресленням.
Галузь знань (код галузі знань, назва галузі знань) Освітньо-професійна програма підготовки (код освітньо-професійної програми підготовки, назва освітньо-професійної програми підготовки, тип освітньо-професійної програми підготовки, код галузі знань, код кваліфікації)
Кваліфікація (код кваліфікації, назва кваліфікації, код освітньо-професійної програми підготовки) Компетенція (шифр компетенції, назва компетенції, тип компетенції, код освітньо-професійної програми підготовки) Вміння (шифр вміння, зміст вміння, шифр компетенції, шифр типового завдання діяльності)
Навички (назва навички, зміст навички, шифр компетенції, шифр типового завдання діяльності)
Дисципліна (назва дисципліни, кількість академічних годин, кількість
національних кредитів, кількість кредитів, ECTS, вид контролю, назва циклу)
Змістовний модуль (шифр змістовного модуля, назва змістовного модуля) Тема (шифр теми, назва теми, шифр змістовного модуля)
Завдання (шифр теми, номер завдання в темі, текст завдання, тип завдання) Типове завдання діяльності (шифр типового завдання діяльності, зміст типового завдання діяльності, назва виробничої функції)
Перевіримо чи знаходяться дані відношення у 2НФ.
У відношенні «Галузь знань» ключовим атрибутом є «Код галузі знань». Неключові атрибути: «Назва галузі знань», функціонально повно залежать від ключа.
У відношенні «Освітньо-професійна програма підготовки» ключовим атрибутом є «Код освітньо-професійної програми підготовки». Неключові атрибути: «Назва освітньо-професійної програми підготовки», «тип освітньо-професійної програми підготовки», «Код кваліфікації», «Код галузі знань», функціонально повно залежать від ключа.
У відношенні «Кваліфікація» ключовим атрибутом є «Код кваліфікації». Неключові атрибути: «Назва кваліфікації», функціонально повно залежать від ключа.
У відношенні «Компетенція» ключовим атрибутом є «Шифр компетенції». Неключові атрибути: «Назва компетенції», «Тип компетенції», «код освітньо-професійної програми підготовки», функціонально повно залежать від ключа.
У відношенні «Вміння» ключовим атрибутом є «Шифр вміння». Неключові атрибути: «Зміст вміння», функціонально повно залежать від ключа.
У відношенні «Навички» ключовим атрибутом є «Назва навички». Неключові атрибути: «Зміст навички», функціонально повно залежать від ключа.
У відношенні «Дисципліна» ключовим атрибутом є «Назва дисципліни». Неключові атрибути: «Кількість академічних годин», «Кількість національних кредитів», «Кількість кредитів», «ECTS», «Вид контролю», «Назва циклу», функціонально повно залежать від ключа.
У відношенні «Змістовний модуль» ключовим атрибутом є «Шифр змістовного модуля». Неключові атрибути: «Назва змістовного модуля», функціонально повно залежать від ключа.
У відношенні «Тема» ключовим атрибутом є «Шифр теми». Неключові атрибути: «Назва теми», функціонально повно залежать від ключа.
У відношенні «Завдання» ключовими атрибутами є «Шифр теми», «Номер завдання в темі». Неключові атрибути: «Текст завдання», «Тип завдання», функціонально повно залежать від ключа.
У відношенні «Типове завдання діяльності» ключовим атрибутом є «Шифр типового завдання діяльності». Неключові атрибути: «Зміст типового завдання діяльності», «Назва виробничої функції», функціонально повно залежать від ключа.
Тепер отримані відношення знаходяться у другій нормальній формі.
Третя нормальна форма вимагає, щоб будь-які неключові атрибути відношення транзитивно не залежали один від одного, тобто будь-який такий стовпець, повинен залежати лише від стовпця первинного ключа. Проведемо аналіз уже зведених до другої нормальної форми відношень.
У відношенні «Галузь знань» ключовим атрибутом є «Код галузі знань». Неключові атрибути: «Назва галузі знань», транзитивно не залежать від ключа.
У відношенні «Освітньо-професійна програма підготовки» ключовим атрибутом є «Код освітньо-професійної програми підготовки». Неключові атрибути: «Назва освітньо-професійної програми підготовки», «тип освітньо-професійної програми підготовки», «Код кваліфікації», «Код галузі знань», транзитивно не залежать від ключа.
У відношенні «Кваліфікація» ключовим атрибутом є «Код кваліфікації». Неключові атрибути: «Назва кваліфікації», транзитивно не залежать від ключа.
У відношенні «Компетенція» ключовим атрибутом є «Шифр компетенції». Неключові атрибути: «Назва компетенції», «Тип компетенції», «код освітньо-професійної програми підготовки», транзитивно не залежать від ключа.
У відношенні «Вміння» ключовим атрибутом є «Шифр вміння». Неключові атрибути: «Зміст вміння», транзитивно не залежать від ключа.
У відношенні «Навички» ключовим атрибутом є «Назва навички». Неключові атрибути: «Зміст навички», транзитивно не залежать від ключа.
У відношенні «Дисципліна» ключовим атрибутом є «Назва дисципліни». Неключові атрибути: «Кількість академічних годин», «Кількість національних кредитів», «Кількість кредитів», «ECTS», «Вид контролю», «Назва циклу», транзитивно не залежать від ключа.
У відношенні «Змістовний модуль» ключовим атрибутом є «Шифр змістовного модуля». Неключові атрибути: «Назва змістовного модуля», транзитивно не залежать від ключа.
У відношенні «Тема» ключовим атрибутом є «Шифр теми». Неключові атрибути: «Назва теми», транзитивно не залежать від ключа.
У відношенні «Завдання» ключовими атрибутами є «Шифр теми», «Номер завдання в темі». Неключові атрибути: «Текст завдання», «Тип завдання», транзитивно не залежать від ключа.
У відношенні «Типове завдання діяльності» ключовим атрибутом є «Шифр типового завдання діяльності». Неключові атрибути: «Зміст типового завдання діяльності», «Назва виробничої функції», транзитивно не залежать від ключа.
Оскільки ні один не ключовий атрибут не залежить транзитивно від ключа відношення, то можна стверджувати, що відношення знаходяться у третій нормальній формі.
Галузь знань (код галузі знань, назва галузі знань) ОППП (код освітньо-професійної програми підготовки, назва освітньо-професійної програми підготовки, тип освітньо-професійної програми підготовки, код кваліфікації, код галузі знань) Кваліфікація (код кваліфікації, назва кваліфікації)
Компетенція (шифр компетенції, назва компетенції, тип компетенції)
Вміння (шифр вміння, зміст вміння)
Навички (назва навички, зміст навички) Дисципліна (назва дисципліни, кількість академічних годин, кількість
національних кредитів, кількість кредитів, ECTS, вид контролю, назва циклу)
Змістовний модуль (шифр змістовного модуля, назва змістовного модуля) Тема (шифр теми, назва теми)
Завдання (шифр теми, номер завдання в темі, текст завдання, тип завдання) Типове завдання діяльності (шифр типового завдання діяльності, зміст типового завдання діяльності, назва виробничої функції)
Введемо додаткові відношення, які будуть відображати зв’язки типу Б: Б:
ОППП_Компетенція (код освітньо-професійної програми підготовки, шифр компетенції)
ОППП_Дисципліна (код освітньо-професійної програми підготовки, назва дисципліни) Дисципліна_Вміння (назва дисципліни, шифр вміння) Дисципліна_Навички (назва дисципліни, назва навички)
6. Оцінка спроектованих відношень бази даних Проаналізуємо, які операції реляційної алгебри необхідно виконати при опрацюванні кожного з запитів користувача.
Запит 1. Визначити освітньо-професійні програми підготовки (назва, шифр, тип), навчання за якими забезпечить можливість отримання певної кваліфікації.
Для виконання запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «Кваліфікація». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 2. Вивести перелік вмінь (зміст вміння, шифр) та навичок (назва, зміст), якими повинен володіти фахівець заданої галузі знань, який завершив підготовку за заданою освітньо-професійною програмою підготовки.
Для виконання запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «ОППП_Компетенція», «Компетенція», «Вміння», «Навички». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 3. Визначити шифри освітньо-професійних програм підготовки за якими проводиться фахова підготовка в заданій галузі знань.
Для виконання запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «Галузь знань». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 4. Визначити вміння (зміст вміння, шифр) та навички (назва, зміст) якими має володіти фахівець певної галузі знань, який проходить фахову підготовку за заданим напрямом/спеціальністю, відповідно до вибраної компетенції щодо вирішення професійних завдань.
Для виконання запиту потрібно провести операцію об'єднання відношень «Вміння», «Навички», «Компетенція», «ОППП_Компетенція», «Освітньо-професійна програма підготовки», «Галузь знань». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 5. Вивести список дисциплін (назва) та їх змістовних модулів (назва шифр), які входять до освітньо-професійні програми підготовки заданої галузі знань і забезпечують набуття певного вміння.
Для виконання запиту потрібно провести операцію об'єднання відношень «Змістовний модуль», «Дисципліна», «ОППП_Дисципліна», «Освітньо-професійна програма підготовки», «Галузь знань», «Дисципліна_Вміння», «Вміння». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 6. Вивести перелік дисциплін (назва, кількість академічних годин, кількість національних кредитів, кількість кредитів ECTS, вид контролю, назва циклу) що включені до заданої освітньо-професійної програми підготовки.
Для виконання запиту потрібно у відношенні «Дисципліна», «ОППП_Дисципліна», «Освітньо-професійна програма підготовки» провести операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 7. Вивести перелік типових завдань діяльності (зміст завдання, шифр), які входять до заданої виробничої функції вибраної кваліфікації.
Для виконання запиту потрібно у відношенні «Типове завдання діяльності», «Виробнича функція», «Кваліфікація» провести операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 8. Вивести список вмінь (зміст вміння, шифр) та навичок (назва, зміст), які забезпечують виконання заданого типового завдання діяльності, яке належить до вибраної виробничої функції та певної кваліфікації.
Для виконання запиту потрібно провести операцію об'єднання відношень «Вміння», «Навички», «Типове завдання діяльності», «Виробнича функція», «Кваліфікація». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 9. Вивести перелік тем (назва, шифр), заданої дисципліни, які повинен опрацювати студент певного напряму/спеціальності, з них ті, що належать до певного змістовного модуля.
Для виконання запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «ОППП_Дисципліна», «Тема», «Дисципліна», «Змістовний модуль». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
Запит 10. Визначити перелік можливих завдань (номер завдання в темі, текст завдання, тип) для перевірки якості знань з певної теми вибраної дисципліни вибраного змістовного модуля заданої освітньо-професійної програми підготовки.
Для виконання запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «ОППП_Дисципліна», «Тема», «Дисципліна», «Змістовний модуль» «Завдання». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях.
7. Розробка вихідних форм бази даних При розробці бази даних «База вимог щодо організації перевірки якості знань» було розроблено запити та форми представлення цих запитів. Розглянемо вихідні форми по кожному із запитів:
1. Визначити освітньо-професійні програми підготовки (назва, шифр, тип), навчання за якими забезпечить можливість отримання певної кваліфікації.
Форма запиту 1 зображена на рисунку 7.1:
Назва | Шифр | Тип | |
Рисунок 7.1 — Вихідна форма для запиту 1
2. Вивести перелік вмінь (зміст вміння, шифр) та навичок (назва, зміст), якими повинен володіти фахівець заданої галузі знань, який завершив підготовку за заданою освітньо-професійною програмою підготовки.
Форма запиту 2 зображена на рисунку 7.2:
Шифр вміння | Зміст вміння | |
Назва навички | Зміст навички | |
Рисунок 7.2 — Вихідна форма для запиту 2
3. Визначити шифри освітньо-професійних програм підготовки за якими проводиться фахова підготовка в заданій галузі знань.
Форма запиту 3 зображена на рисунку 7.3:
Шифр ОППП | |
Рисунок 7.3 — Вихідна форма для запиту 3
4. Визначити вміння (зміст вміння, шифр) та навички (назва, зміст) якими має володіти фахівець певної галузі знань, який проходить фахову підготовку за заданим напрямом/спеціальністю, відповідно до вибраної компетенції щодо вирішення професійних завдань.
Форма запиту 4 зображена на рисунку 7.4:
Шифр вміння | Зміст вміння | |
Назва навички | Зміст навички | |
Рисунок 7.4 — Вихідна форма для запиту 4
5. Вивести список дисциплін (назва) та їх змістовних модулів (назва шифр), які входять до освітньо-професійні програми підготовки заданої галузі знань і забезпечують набуття певного вміння.
Форма запиту 5 зображена на рисунку 7.5:
Назва дисципліни | Назва модуля | Шифр модуля | |
Рисунок 7.5 — Вихідна форма для запиту 5
6. Вивести перелік дисциплін (назва, кількість академічних годин, кількість національних кредитів, кількість кредитів ECTS, вид контролю, назва циклу) що включені до заданої освітньо-професійної програми підготовки.
Форма запиту 6 зображена на рисунку 7.6:
Назва | Кількість академічних годин | Кількість національних кредитів | Кількість кредитів ECTS | Вид контролю | Назва циклу | |
Рисунок 7.6 — Вихідна форма для запиту 6
7. Вивести перелік типових завдань діяльності (зміст завдання, шифр), які входять до заданої виробничої функції вибраної кваліфікації.
Форма запиту 7 зображена на рисунку 7.7:
Зміст завдання | Шифр завдання | |
Рисунок 7.7 — Вихідна форма для запиту 7
8. Вивести список вмінь (зміст вміння, шифр) та навичок (назва, зміст), які забезпечують виконання заданого типового завдання діяльності, яке належить до вибраної виробничої функції та певної кваліфікації.
Форма запиту 8 зображена на рисунку 7.8:
Шифр вміння | Зміст вміння | |
Назва навички | Зміст навички | |
Рисунок 7.8 — Вихідна форма для запиту 8
9. Вивести перелік тем (назва, шифр), заданої дисципліни, які повинен опрацювати студент певного напряму/спеціальності, з них ті, що належать до певного змістовного модуля.
Форма запиту 9 зображена на рисунку 7.9:
Назва теми | Шифр теми | |
Рисунок 7.9 — Вихідна форма для запиту 9
10. Визначити перелік можливих завдань (номер завдання в темі, текст завдання, тип) для перевірки якості знань з певної теми вибраної дисципліни вибраного змістовного модуля заданої освітньо-професійної програми підготовки.
Форма запиту 10 зображена на рисунку 7.10:
Назва дисципліни | Назва модуля | Шифр модуля | |
Рисунок 7.10 — Вихідна форма для запиту 10
8. Розробка програмного забезпечення для організації та управління даними бази «База вимог щодо організації перевірки якості знань»
8.1 Розробка схеми-алгоритму реалізації запитів
Вхідними даними для розробки алгоритму виконання запитів користувача є інформація подана у реляційних відношеннях. Опрацювання запитів користувача бази даних «База вимог щодо організації перевірки якості знань» буде виконуватися за таким алгоритмом:
1. Введення критерії для виконання певного запиту
2. Виконання операцій логіки алгебри над відношеннями
3. Виведення результатів виконання певного запиту.
Для виконання першого запиту потрібно провести операцію об'єднання відношень Освітньо-професійна програма підготовки, Кваліфікація. Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.1).
Рисунок 8.1.1 — Схема алгоритму реалізації першого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання другого запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «ОППП_Компетенція», «Компетенція», «Вміння», «Навички». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.2).
Рисунок 8.1.2 — Схема алгоритму реалізації другого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання третього запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «Галузь знань». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.3).
Рисунок 8.1.3 — Схема алгоритму реалізації третього запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання четвертого запиту потрібно провести операцію об'єднання відношень «Вміння», «Навички», «Компетенція», «ОППП_Компетенція», «Освітньо-професійна програма підготовки», «Галузь знань». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.4).
Рисунок 8.1.4 — Схема алгоритму реалізації четвертого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання п’ятого запиту потрібно провести операцію об'єднання відношень «Змістовний модуль», «Дисципліна», «ОППП_Дисципліна», «Освітньо-професійна програма підготовки», «Галузь знань», «Дисципліна_Вміння», «Вміння». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.5).
Рисунок 8.1.5 — Схема алгоритму реалізації п’ятого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання шостого запиту потрібно у відношенні «Дисципліна», «ОППП_Дисципліна», «Освітньо-професійна програма підготовки» провести операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.6).
Рисунок 8.1.6 — Схема алгоритму реалізації шостого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання сьомого запиту потрібно провести операцію об'єднання відношень «Типове завдання діяльності», «Виробнича функція», «Кваліфікація» провести операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях. (рисунок 8.1.7).
Рисунок 8.1.7 — Схема алгоритму реалізації сьомого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання восьмого запиту потрібно провести операцію об'єднання відношень «Вміння», «Навички», «Типове завдання діяльності», «Виробнича функція», «Кваліфікація». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.8).
Рисунок 8.1.8 — Схема алгоритму реалізації восьмого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання дев’ятого запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «ОППП_Дисципліна», «Тема», «Дисципліна», «Змістовний модуль». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.9).
Рисунок 8.1.9 — Схема алгоритму реалізації дев’ятого запиту бази даних «База вимог щодо організації перевірки якості знань»
Для виконання десятого запиту потрібно провести операцію об'єднання відношень «Освітньо-професійна програма підготовки», «ОППП_Дисципліна», «Тема», «Дисципліна», «Змістовний модуль» «Завдання». Потім у щойно утвореному відношенні виконати операцію селекції за потрібними умовами та над отриманим відношенням потрібно провести операцію проекції по потрібних стовпцях (рисунок 8.1.10).
Рисунок 8.1.10 — Схема алгоритму реалізації десятого запиту бази даних «База вимог щодо організації перевірки якості знань»
8.2 Обґрунтування використання мови програмування для управління організованою базою даних
Для того щоб вибрати найоптимальнішу мову програмування для управління організованою базою даних «база завдань для перевірки якості знань за певним фахом» потрібно порівняти декілька мов програмування та вибрати ту, що задовольняє більшість вимог, які стосуються управлінням та підтримкою адекватної роботи бази даних. Для того щоб вибрати найоптимальнішу мову програмування для управління організованою базою даних «база завдань для перевірки якості знань за певним фахом» потрібно порівняти декілька мов програмування та вибрати ту, що задовольняє більшість вимог, які стосуються управлінням та підтримкою адекватної роботи бази даних. Проведемо порівняння мов програмування.
Java — об'єктно-орієнтована мова програмування, випущена компанією Sun Microsystems у 1995 році як основний компонент платформи Java. Синтаксис мови багато в чому походить від C та C++. У офіційній реалізації, Java програми компілюються у байткод, який при виконанні інтерпретується віртуальною машиною для конкретної платформи.
Sun Microsystems надає компілятор Java та віртуальну машину Java, які задовольняють специфікації Java Community Process, під ліцезією GNU General Public License.
Мова значно запозичила синтаксис із C і C++. Зокрема, взято за основу об'єктну модель С++, проте її модифіковано. Усунуто можливість появи деяких конфліктних ситуацій, що могли виникнути через помилки програміста та полегшено сам процес розробки об'єктно-орієнтованих програм. Ряд дій, які в С/C++ повинні здійснювати програмісти, доручено віртуальній машині. Передусім, Java розроблялась як платформо-незалежна мова, тому вона має менше низькорівневих можливостей для роботи з апаратним забезпеченням. За необхідності таких дій java дозволяє викликати підпрограми, написані іншими мовами програмування.
Швидкість офіційної віртуальної машини Java значно покращилася з моменту випуску ранніх версій, до того ж, деякі випробування показали, що продуктивність JIT компіляторів у порівнянні зі звичайними компіляторами у машинний код майже однакова. Проте ефективність компіляторів не завжди свідчить про швидкість виконання скомпільованого коду, тільки ретельне тестування може виявити справжню ефективність у даній системі.
На противагу C++, Java об'єктно-орієнтованіша. Всі дані і дії групуються в класи об'єктів. Виключенням з повної об'єктності (як скажімо в Smalltalk) є примітивні типи (int, float тощо). Це було свідомим рішенням проектувальників мови задля збільшення швидкості. Через це, Java не вважається повністю об'єктно-орієнтовною мовою.
У Java всі об'єкти є похідними від головного об'єкта (він називається просто Object), з якого вони успадковують базову поведінку і властивості. Хоча у C++ вперше стало доступне множинне успадкування, але у Java можливе тільки одинарне успадкування, завдяки чому виключається можливість конфліктів між членами класу (методи і змінні), які успадковуються від базових класів.
У намірах проектувальників Java мала замінити C++ — об'єктного наступника мови C. Проектувальники почали з аналізу властивостей C++, які є причиною найбільшого числа помилок, щоби створити просту, безпечну і безвідмовну мову програмування.
Після порівняння мов програмування для проектування системи застосовано мову Java в середовищі розробки Eclipce JUNO.
8.3 Основні команди та оператори мови програмування
Мова маніпулювання даними SQL використовується, для маніпулювання даними в таблицях баз даних. Вона складається з основних команд:
CHANGE змінює тип даних стовпця таблиці
CREATE створює нову базу даних або її елементи (таблицю, колонку, індекс)
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,…)][table_options] [select_statement]
DELETE FROM видаляє запис із таблиці
DROP INDEX index_name ON tbl_name
DROP видалення БД, таблиці або індексу, DROP TABLE [IF EXISTS] tbl_name [, tbl_name,…] [RESTRICT | CASCADE]
INSERT вставляє дані в таблицю :
INSERT [LOW_PRIORITY | DELAYED] [IGNORE][INTO] tbl_name [(col_name,…)] VALUES (expression,…),(…),…
SELECT вибірка даних з таблиці :
SELECT [STRAIGHT_JOIN]
[SQL_SMALL_RESULT][SQL_BIG_RESULT][SQL_BUFFER_RESUL]
[SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] [HIGH_PRIORITY][DISTINCT | DISTINCTROW | ALL]
REPLACE вставляє дані в таблицю
UPDATE вставляє дані в таблицю:
UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2, …] [WHERE where_definition] [LIMIT #]
Команда SELECT:
SELECT — операція виборки, дає можливість отримувати всі рядки, або частину рядків одної таблиці;
FROM — операція проекції, дозволяє виділити підмножину стовбців таблиці.
WHERE — операція з'єднання, дозволяє з'єднувати рядки з більш ніж з одної таблиці.
Кваліфікатор AS — заміняє в результуючій таблиці, існуючу назву таблиці на задану.
До агрегуючих функцій відносять функції розахунку суми (SUM), максимального (MAX) і мінімального (MIN) значень стовпців, середньо-арифметичного (AVG), а також кількість рядків, які знаходяться за заданою умовою (COUNT).
Обмеження на число рядків, що виводяться, виконується задопомогою речення WHERE.
<> не дорівнює
≠ не дорівнює
> більше
< меньше
>= більше чи дорівнює
<= меньше чи дорівнює
Стандартними булевими операторами, які використовуються в мові SQL, є AND, OR і NOT.
AND — використовує два операнда в формі А AND В і оцінює їх по відношенню до істини: чи вони два є правдою;
OR — використовує два операнда в формі А OR В і оцінює їх на істинність: чи є правдою хоча б один з них;
NOT — використовується один операнд в формі NOT, А і замінює його значення з TRUE на FALSE, чи навпаки.
В реченні SELECT в доповненні до традиційних реляційних і булевих операторів, можуть бути використані інші оператори IN, BETWEEN, LIKE, IS NULL.
Оператор IN визначає набір значень, в яких дане значення повинне бути виключено.
BETWEEN — визначає діапазон значень, в якому повинні бути значення, які потрібно знайти.
LIKE — корисний в тому випадку, коли при пошуку значення, якщо точне його написання невідоме.
Оператор IS NULL використовується в тому випадку коли потрібно розрізнити неправильне та невідоме значення.
При реалізації запитів команда GROUP BY дає можливість визначити підмножину значень в полі в терміналах другого поля, і застосовує функцію аргументу до такої підмножини.
HAVING — визначає критерії, які використовуються для видалення зазначених груп із виводу.
8.4 Розробка схеми-алгоритму реалізації програмного забезпечення для бази даних
Для інтерактивного використання створеної бази даних реалізовано програмне забезпечення. Його використання надає можливість користування базою даних особам, що не мають розуміння про структуру бази даних чи фізичне розміщення даних.
База даних «База завдань для перевірки якості знань за певним фахом» працює за наступним алгоритмом (Додаток Г):
Крок 1. Завантажується головна сторінка.
Крок 2. Проводиться вибір дії над базою даних.
Крок 3. Якщо вибрано винонання запиту, то переходимо до Кроку 4, якщо вибрано редагування даних — до Кроку 9.
Крок4. Виконується вибір потрібного і-го запиту.
Крок 5. Введення критеріїв для виконання запиту.
Крок 6. Виконання операцій реляційної алгебри над відношеннями у відповідності до введених критеріїв.
Крок 7. Виведення результатів виконання запиту.
Крок 8. Повернення до Кроку 2.
Крок 9. Редагування і додавання даних.
Крок 10. Вихід.
Схема алгоритму реалізації програмного забезпечення для бази даних «База вимог щодо організації перевірки якості знань» зображено на рисунку 8.4.1 Лістинг запитів наведено в додатку А. Приклад виконання запиту наведено в додатку В. Інструкція користувача програми наведена в додатку Б.
Рисунок 8.4.1 — Схема алгоритму програмного забезпечення для бази даних «База вимог щодо організації перевірки якості знань»
Висновки
В курсовій роботі була розроблена «База вимог щодо організації перевірки якості знань». Враховуючи запити, які необхідно реалізувати, було проведено детальний аналіз предметної області та виявлено всі сутності та їх атрибути.