Ім'я файлу: Lab_№1_Basa_danyx.pdf
Розширення: pdf
Розмір: 559кб.
Дата: 13.02.2024
скачати
Пов'язані файли:
Лекц_я-1.-Вуглецев_-нанотрубки.pdf

Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Інститут комп’ютерних наук та інформаційних технологій
Кафедра систем автоматизованого проектування
Звіт
з дисципліни: “
Організація баз даних та знань” з лабораторної роботи №1 на тему: “ Проектування бази даних. Системний аналіз та створення концептуальної схеми БД

Виконав:
Студент групи ПП-23
Пренделович Кирило
Прийняла:
асистент каф. САП
Спас Н.Я.
2023

Мета роботи: освоїти етапи проектування бази даних (БД) – аналіз предметної області та побудова ER-моделі.
Завдання 1.
За результатами аналізу ПО та зв’язків між встановленими сутностями побудувати ER-модель БД “Сесія” згідно зі сформульованою задачею у теоретичній частині.
Рис.1 ER-модель БД "Сесія"
Завдання 2. Спроектувати БД (не менше 7 сутностей) для вирішення комплексу задач у відповідній предметній області із заданого переліку або запропонованій самостійно за обов’язковим попереднім узгодженням з викладачем.
Тема БД: "Sudoku & Puzzle Championships 2022"
Предметна область БД:
База даних "Sudoku & Puzzle Championships 2022" призначена для збереження та управління інформацією, пов'язаною з учасниками, головоломками, результатами та іншими аспектами чемпіонату Sudoku та головоломок, який відбувся в 2022 році. Чемпіонат "Sudoku & Puzzle

Championships 2022" є важливою подією для любителів головоломок та логічних ігор. Цей чемпіонат є масштабним заходом, на якому учасники мають можливість продемонструвати свої навички та спробувати свої сили в різних типах головоломок, зокрема в Sudoku, кросвордах, логічних головоломках та
інших.
1. Дата та місце проведення:

Чемпіонат відбувся протягом 2022 року у визначеному місці, яке було спеціально обране для організації цього події.
2. Тематика:

Чемпіонат включав головоломки різних типів та рівнів складності.
Учасники мали можливість випробувати свої сили у вирішенні головоломок з різних категорій.
3. Учасники:

Учасниками чемпіонату були ентузіасти головоломок з різних країн та категорій. Це були як досвідчені гравці, так і новачки.
4. Головоломки:

Головоломки включали в себе популярні логічні гри, такі як
Sudoku, кросворди та інші. Кожна головоломка мала свій тип та рівень складності.
5. Змагання:

Змагання проходили на різних етапах, де учасники змагалися у вирішенні головоломок та наборі максимально можливої кількості балів.
6. Нагороди:

Учасники, які досягли найкращих результатів, були відзначені нагородами та призами. Це можуть бути грошові призи, грамоти, медалі тощо.
7. Спонсори та партнери:

Чемпіонат отримав підтримку від різних спонсорів та партнерів, що сприяло успішній організації та проведенню події.

"Sudoku & Puzzle Championships 2022" став цікавим та захоплюючим заходом для всіх любителів головоломок, де можна було випробувати свої логічні навички та конкурувати з іншими учасниками.
Система питань до БД:
1. Яка інформація про учасників зберігається в базі даних, і як вона оновлюється?
2. Які типи головоломок представлені в базі даних, і чи можна фільтрувати
їх за рівнем складності?
3. Які змагання відбулися в 2020 році, і яка була дата та місце їх проведення?
4. Які учасники приймали участь у конкретному змаганні, і яка була їхнія оцінки?
5. Які команди брали участь у змаганнях, і скільки учасників було в кожній команді?
6. Які локації були використані для проведення змагань, і які змагання вони приймали?
7. Які спонсори підтримували змагання, і яка була сума їхнього спонсорства?
8. Які головоломки були вирішені учасниками під час змагань, і який час їм знадобився для цього?
9. Які учасники були членами команд, і які змагання вони разом брали участь?
10. Які учасники здобули найвищі оцінки у конкретних головоломках, і чи були вони частиною команд?
Аналіз вимог до БД:
Функціональні вимоги:
1. Управління учасниками:

Можливість додавання, редагування та видалення інформації про учасників (ім'я, прізвище, контактні дані, дата народження, країна, категорія учасника).
2. Управління головоломками:

Можливість додавання, редагування та видалення інформації про головоломки (тип, рівень складності, початковий стан, правильні відповіді).

3. Управління змаганнями:

Можливість додавання, редагування та видалення інформації про змагання (дата та час проведення, місце, організатори, судді).
4. Управління результатами:

Можливість додавання, редагування та видалення результатів учасників у різних змаганнях та головоломках.
5. Управління командами:

Можливість створення та управління командами учасників.
Нефункціональні вимоги:
1. Продуктивність:

База даних повинна працювати швидко та ефективно, навіть при великій кількості записів та запитів.
2. Надійність:

База даних повинна бути надійною та забезпечувати відновлення даних в разі помилок або відмов.
3. Безпека:

Забезпечення конфіденційності та відсутності несанкціонованого доступу до даних.
4. Зручність використання:

Інтерфейс користувача повинен бути зрозумілим та легким у використанні для адміністраторів та інших користувачів.
5. Масштабованість:

Система повинна бути масштабованою для можливості розширення та обробки збільшеного обсягу даних.
Друга фаза аналізу
Об’єкти:
Учасники, головоломки, змагання, результати, команди, локації, спонсори.
Атрибути об’єктів:
1. Учасники (Participants):

ID учасника

Ім'я

Прізвище


Країна

Дата народження

Категорія учасника (наприклад, дорослі, діти)

Контактна інформація (email)

ID команди
2. Головоломки (Puzzles):

ID головоломки

Тип головоломки (Sudoku, кросворд тощо)

Рівень складності

Початковий стан головоломки

Відповіді
3. Змагання (Competitions):

ID змагання

Дата та час проведення

ID локації

Організатори

Судді та арбітри
4. Результати (Results):

ID результату

ID учасника

ID змагання

ID головоломки

Час вирішення головоломки

Оцінка
5. Команди (Teams):

ID команди

Назва команди
6. Локації (Locations):

ID локації

Назва місця проведення

Адреса

Координати (для картографічних додатків)
7. Спонсори (Sponsors):

ID спонсора

Назва компанії

Контактна інформація спонсора

Рівень спонсорства (платиновий, золотий, срібний тощо)

ID змагання
Зв'язки між об’єктами:
1. Зв'язок між "Учасники" та "Змагання":
• Учасники беруть участь у змаганнях.
• Зв'язок багато-до-багатьох (Many-to-Many): Кожен учасник може брати участь у багатьох змаганнях, і кожне змагання може мати багато учасників.

• Таблиця-посередник "Результати" використовується для відстеження результатів учасників у кожному змаганні.
2. Зв'язок між "Головоломки" та "Змагання":
• Головоломки використовуються під час змагань.
• Зв'язок багато-до-багатьох (Many-to-Many): Кожна головоломка може використовуватися в багатьох змаганнях, і кожне змагання може мати багато головоломок.
• Таблиця-посередник "Результати" використовується для зберігання результатів для кожної головоломки під час кожного змагання.
3. Зв'язок між "Змагання" та "Локації":
• Кожне змагання відбувається в певному місці (локації).
• Зв'язок один-до-багатьох (One-to-Many): Кожне змагання має лише одну локацію, але кожна локація може бути використана для багатьох змагань.
4. Зв'язок між "Змагання" та "Спонсори":
• Спонсори можуть фінансово підтримувати змагання.
• Зв'язок багато-до-багатьох (Many-to-Many): Кожне змагання може мати багатьох спонсорів, і кожен спонсор може підтримувати багато змагань.
• Таблиця-посередник може використовуватися для відстеження
інформації про спонсорів, які підтримують кожне змагання.
5. Зв'язок між "Учасники" та "Команди":
• Учасники можуть бути членами команд.
• Зв'язок багато-до-багатьох (Many-to-Many): Кожен учасник може бути членом багатьох команд, і кожна команда може включати багатьох учасників.
• Таблиця-посередник може використовуватися для відстеження членства учасників у командах.
Обмеження на характеристики:
1. Унікальність ID сутностей: Кожна сутність (наприклад, учасник, головоломка, змагання) повинна мати унікальний ідентифікатор (ID) в межах всієї бази даних.

2. Заборона на видалення даних у разі пов'язаних записів: Наприклад, не дозволяти видаляти учасника, якщо він має результати у змаганнях. Це запобігає видаленню даних, які мають зв'язки з іншими записами.
3. Каскадне оновлення чи видалення: Це обмеження встановлюється для забезпечення автоматичного оновлення або видалення даних у зв'язаних записах при видаленні чи оновленні базового запису.
4. Обмеження доступу: Визначення, хто має доступ до бази даних та які дії вони можуть виконувати (наприклад, права на читання, запис або видалення даних).
5. Обмеження на типи даних: Встановлення обов'язкового типу даних для конкретних полів, щоб уникнути введення некоректних даних (наприклад, дата має бути у форматі дати).
6. Обмеження на розмір бази даних: Встановлення обмежень на максимальний розмір бази даних для забезпечення ефективності та масштабованості.
7. Автоматичне
резервне копіювання: Встановлення регулярного автоматичного резервного копіювання бази даних для забезпечення збереження даних в разі аварій.
8. Обмеження на запити: Встановлення обмежень на кількість запитів, які можуть бути виконані одночасно для забезпечення надійності та швидкодії бази даних.
9. Автоматичне видалення застарілих даних: Встановлення правил для автоматичного видалення даних, які вже не актуальні або не потрібні.
Опис даних БД:
Елементи даних
Об’єкт
Тип даних
Умова на
позначення
ID учасника
Учасники числовий
Обов'язковий
Ім'я
Учасники текстовий
Обов'язковий
Прізвище
Учасники текстовий
Обов'язковий
Країна
Учасники текстовий
Обов'язковий
Дата народження
Учасники дата
Обов'язковий
Категорія учасника (наприклад, дорослі, діти)
Учасники текстовий
Обов'язковий
Контактна інформація (email, номер телефону)
Учасники
текстовий
Обов'язковий
ID команди
Учасники
числовий
Обов'язковий
ID головоломки
Головоломки числовий
Обов'язковий
Тип головоломки (Sudoku, кросворд тощо)
Головоломки мультимедійний
Обов'язковий
Рівень складності
Головоломки текстовий
Обов'язковий
Початковий стан головоломки
Головоломки мультимедійний
Обов'язковий
Відповіді
Головоломки мультимедійний
Обов'язковий
ID змагання
Змагання числовий
Обов'язковий
Дата та час проведення
Змагання дата
Обов'язковий

Місце проведення
Змагання текстовий
Обов'язковий
Організатори
Змагання текстовий
Обов'язковий
Судді та арбітри
Змагання текстовий
Обов'язковий
ID результату
Результати числовий
Обов'язковий
ID учасника
Результати числовий
Обов'язковий
ID змагання
Результати числовий
Обов'язковий
ID головоломки
Результати числовий
Обов'язковий
Час вирішення головоломки
Результати числовий
Обов'язковий
Оцінка
Результати числовий
Обов'язковий
ID команди
Команди числовий
Обов'язковий
Назва команди
Команди текстовий
Обов'язковий
ID локації
Локації числовий
Обов'язковий
Назва місця проведення
Локації текстовий
Обов'язковий
Адреса
Локації
текстовий
Обов'язковий
Координати (для картографічних додатків)
Локації
числовий
Обов'язковий
ID спонсора
Спонсори
числовий
Обов'язковий
Назва компанії
Спонсори
текстовий
Обов'язковий
Контактна інформація спонсора
Спонсори
текстовий
Обов'язковий
Рівень спонсорства (платиновий, золотий, срібний
тощо)
Спонсори
текстовий
Обов'язковий
ID змагання
Спонсори
числовий
Обов'язковий
ER-модель для БД

Висновок: На цій лабораторній роботі я освоїв етапи проєктування БД - аналіз предметної області та побудову ER-моделі

скачати

© Усі права захищені
написати до нас