Побудова систем штучного інтелекту та аналізу даних

Обов'язкова дисципліна
Навчальна дисципліна професійної підготовки
Обсяг освітнього компонента: 
• у кредитах ЄКТС — 6.0; • у навчальних годинах — 180.
Розподіл навчальних годин (аудиторні заняття / самостійна робота): 
• очна форма — 60 / 120; • заочна форма — 8 / 172.
Кількість аудиторних занять за видами (лекції / практичні заняття / лабораторні заняття): 
• очна форма — 15 / 0 / 15; • заочна форма — 2 / 0 / 2.
Індивідуальна робота: 
• очна форма — розрахунково-графічна робота; • заочна форма — розрахунково-графічна робота, контрольна робота.
Семестровий контроль: 
Екзамен.
Освітню компоненту забезпечує: 
Анотація: 

Мета дисципліни: Формування у студентів базових знань та практичних навичок у галузі проєктування програмних систем, ІТ-проєктів та систем штучного інтелекту, включаючи аналіз вимог, моделювання систем, побудову архітектури, проєктування взаємодії компонентів, розробку інтерфейсів користувача та застосування методів інтелектуального аналізу даних у програмних рішеннях.

Практичне значення та використання отриманих знань: Оволодіння сучасними підходами, засобами та методологіями проєктування програмних та інтелектуальних систем, зокрема аналізу вимог, моделювання та побудови архітектури програмного забезпечення з урахуванням особливостей конкретного проєкту та використання методів інтелектуального аналізу даних. Оволодіння навичками формалізації вимог до програмного забезпечення (SRS), їх структурування та аналізу відповідно до сучасних стандартів розробки. Оволодіння практичними навичками побудови UML-діаграм (Use Case, Class, Activity, Sequence) для моделювання структури, поведінки та взаємодії компонентів системи.
Оволодіння навичками розробки архітектурних рішень, проєктування data pipeline та інтеграції AI-компонентів у програмні системи. Формування практичних компетентностей повного циклу проєктування програмних продуктів із використанням інтелектуального аналізу даних та підготовка до участі у реальних ІТ-проєктах.
Тематика та види навчальних занять

Для денної форми здобуття освіти

Лекційні заняття

Тематика та види навчальних занять

Лекція 1 «Поглиблений аналіз вимог до програмних систем та data-driven підходи».
Лекція 2 «Формалізація вимог для інтелектуальних систем (SRS, вимоги до даних та моделей)».
Лекція 3 «Розширене UML-моделювання складних систем. Use Case та взаємодія сервісів».
Лекція 4 «Моделювання потоків даних у програмних системах (Data Flow Modeling)».
Лекція 5 «Class Diagram та доменне моделювання складних систем (DDD — базові принципи)».
Лекція 6 «Sequence Diagram та моделювання взаємодії API, сервісів та компонентів системи».
Лекція 7 «Архітектура програмних систем: від моноліту до мікросервісів».
Лекція 8 «Архітектура data-driven систем та побудова ML pipeline».
Лекція 9 «Проєктування data pipeline та підготовка даних у програмних системах».
Лекція 10 «Інтелектуальний аналіз даних у програмних системах: роль, задачі та застосування».
Лекція 11 «Проєктування інтелектуальних сервісів (AI як частина програмної системи)».
Лекція 12 «Проєктування інтеграції API та зовнішніх сервісів (включаючи AI-платформи)».
Лекція 13 «Моніторинг, підтримка та розвиток data-driven систем (ML Ops базово)».
Лекція 14 «Проєктування інтерфейсів користувача (UI/UX) у програмних системах».
Лекція 15 «Проєктування масштабованих та надійних програмних систем (performance, scalability, fault tolerance)».
Лабораторні заняття

Лабораторне заняття 1 «Аналіз предметної області та визначення вимог до data-driven програмної системи».
Мета заняття: «Аналіз предметної області, визначення користувачів системи та формування базових вимог до data-driven програмної системи».
Лабораторне заняття 2 «Розробка SRS-документа для інтелектуальної програмної системи».
Мета заняття: «Формалізація функціональних та нефункціональних вимог, а також вимог до даних і моделей у вигляді SRS-документа».
Лабораторне заняття 3 «Побудова Use Case діаграми для складної програмної системи».
Мета заняття: «Моделювання взаємодії користувачів і зовнішніх сервісів із системою за допомогою Use Case діаграми».
Лабораторне заняття 4 «Побудова Data Flow Diagram для програмної системи з обробкою даних».
Мета заняття: «Моделювання потоків даних, їх джерел, обробки та зберігання у програмній системі».
Лабораторне заняття 5 «Розробка Class Diagram та доменної моделі програмної системи».
Мета заняття: «Моделювання структури системи, визначення основних класів, атрибутів та зв’язків між ними».
Лабораторне заняття 6 «Побудова Sequence Diagram для моделювання взаємодії компонентів системи».
Мета заняття: «Моделювання послідовності взаємодії між компонентами системи, API та сервісами».
Лабораторне заняття 7 «Проєктування базової архітектури програмної системи».
Мета заняття: «Визначення основних компонентів системи (frontend, backend, база даних) та їх взаємодії».
Лабораторне заняття 8 «Проєктування архітектури data-driven системи та ML pipeline».
Мета заняття: «Моделювання процесу обробки даних, включаючи збір, підготовку, обробку та використання у системі».
Лабораторне заняття 9 «Реалізація підготовки даних (data preprocessing) для програмної системи».
Мета заняття: «Ознайомлення з методами очищення, трансформації та підготовки даних для подальшого використання».
Лабораторне заняття 10 «Реалізація базового інтелектуального аналізу даних у програмній системі».
Мета заняття: «Застосування методів інтелектуального аналізу даних для вирішення прикладної задачі».
Лабораторне заняття 11 «Інтеграція інтелектуального модуля (AI) у програмну систему».
Мета заняття: «Реалізація взаємодії між програмною системою та інтелектуальним модулем або сервісом».
Лабораторне заняття 12 «Інтеграція зовнішніх API та сервісів у програмну систему».
Мета заняття: «Реалізація взаємодії із зовнішніми сервісами через API та використання їх функціоналу у системі».
Лабораторне заняття 13 «Моніторинг та оцінка ефективності програмної системи».
Мета заняття: «Аналіз роботи системи, визначення показників ефективності та оцінка результатів її функціонування».
Лабораторне заняття 14 «Розробка прототипу інтерфейсу користувача (UI/UX)».
Мета заняття: «Проєктування структури інтерфейсу, user flow та створення прототипу системи».
Лабораторне заняття 15 «Оптимізація, тестування та фіналізація програмної системи».
Мета заняття: «Проведення тестування, виявлення недоліків та підвищення ефективності програмної системи».
Для заочної форми здобуття освіти

Лекційні заняття

Лекція 1 «Формалізація вимог для інтелектуальних систем (SRS, вимоги до даних та моделей)».
Лекція 2 «Інтелектуальний аналіз даних у програмних системах: роль, задачі та застосування».

Лабораторні заняття

Лабораторне заняття 7 «Проєктування базової архітектури програмної системи».
Мета заняття: «Визначення основних компонентів системи (frontend, backend, база даних) та їх взаємодії».
Лабораторне заняття 8 «Проєктування архітектури data-driven системи та ML pipeline».
Мета заняття: «Моделювання процесу обробки даних, включаючи збір, підготовку, обробку та використання у системі».
Консультації здійснюються впродовж семестру згідно встановленого розкладу.
Індивідуальна робота

Для даної дисципліни передбачена розрахунково-графічна робота.
Мета розрахунково-графічної роботи – дослідження та проєктування інтелектуальної програмної системи (інформаційної системи / веб-сервісу / програмного продукту) із використанням сучасних методів проєктування, таких як UML-моделювання, архітектурні підходи, проєктування data pipeline, проєктування інтерфейсу користувача (UI/UX) та застосування методів інтелектуального аналізу даних.
Здобувач отримує завдання з розрахунково-графічної роботи на першому лабораторному занятті.
Тема роботи може відповідати одному з типів систем: веб-сервіс (маркетплейс, CRM, система бронювання тощо), інформаційна система, веб-сайт, мобільний або десктопний застосунок, а також програмна система з елементами інтелектуального аналізу даних або інтеграцією AI-сервісів.

Пояснювальна записка містить 20-25 сторінок. Кількість розділів – 3.
Змістовна послідовність виконання роботи.
збір вимог та планування – аналіз предметної області, визначення функціональних і нефункціональних вимог, формування вимог до даних та інтелектуальних компонентів, підготовка SRS-документу та опис сценаріїв використання системи;
моделювання системи (UML) – побудова Use Case, Activity, Sequence та Class діаграм, а також моделювання потоків даних (Data Flow), визначення структури та поведінки системи;
проєктування архітектури – вибір архітектурного підходу (клієнт-сервер, MVC, мікросервіси), визначення компонентів системи, організація взаємодії між сервісами та побудова data-driven архітектури;
проєктування даних – розробка структури бази даних, визначення сутностей і зв’язків, проєктування data pipeline, API та взаємодії між компонентами системи;
розробка інтерфейсу користувача – створення UI/UX концепції, розробка прототипу інтерфейсу та опис сценаріїв взаємодії користувача із системою;
інтеграція сучасних технологій – визначення можливостей використання інтелектуального аналізу даних, інтеграція AI-сервісів або зовнішніх API, автоматизація обробки даних у системі;
тестування та підтримка системи – перевірка роботи системи, аналіз ефективності, моніторинг, оцінка результатів та оформлення проєктної документації.

Захист розрахунково-графічної роботи – протягом останнього навчального тижня семестру.
Форми контрольних заходів та оцінювання результатів навчання

Для денної форми здобуття освіти

Система оцінювання рівня навчальних досягнень ґрунтується на принципах ЄКТС. Здобувачі протягом семестру готуються до лекційних та лабораторних занять та до двох модульних контрольних робіт.

Поточний контроль полягає у виконанні:
1) 15-ти лабораторних робіт. Лабораторні роботи виконуються на комп’ютері з використанням сучасних програмних засобів для моделювання, проєктування та аналізу програмних систем відповідно до мети та завдань лабораторних занять. Бездоганне виконання лабораторних робіт №1 – №7 оцінюється у 4 бали, бездоганне виконання лабораторних робіт №8 – №15 оцінюється у 3 бали;
2) розрахунково-графічної роботи. Бездоганне виконання розрахунково-графічного завдання оцінюється у 10 балів;
3) двох модульних контрольних робіт. Модульні контрольні роботи складаються з теоретичної і практичної частин та проводяться у формі комп'ютерного тестування. Бездоганне виконання першої модульної контрольної роботи оцінюється у 22 бали, бездоганне виконання другої модульної контрольної роботи оцінюється у 16 балів;
Підсумковий контроль – екзамен. Максимальна оцінка, яку може отримати студент – 100 балів.

Для заочної форми здобуття освіти

Контрольна робота

Поточний контроль полягає у виконанні:
1) двох лабораторних робіт. Лабораторні роботи виконуються на комп’ютері з використанням інструментів моделювання та проєктування програмних систем , відповідно до мети та завдань лабораторних занять. Бездоганне виконання кожної лабораторної роботи оцінюється у 15 балів;
2) розрахунково-графічної роботи. Бездоганне виконання розрахунково-графічного завдання оцінюється у 10 балів;
3) контрольної роботи. Бездоганне виконання та захист контрольної роботи оцінюється у 60 балів;
Підсумковий контроль – екзамен. Максимальна оцінка, яку може отримати студент – 100 балів.

Результати навчання: 

ПРН1. Застосовувати знання основних форм і законів абстрактно-логічного мислення,
основ методології наукового пізнання, форм і методів вилучення, аналізу, обробки та синтезу інформації в предметній області комп'ютерних наук.
ПРН2. Використовувати сучасний математичний апарат неперервного та дискретного аналізу, лінійної алгебри, аналітичної геометрії, в професійній діяльності для розв’язання задач теоретичного та прикладного характеру в процесі проєктування та реалізації об’єктів інформатизації.
ПРН4. Використовувати методи обчислювального інтелекту, машинного навчання, нейромережевої та нечіткої обробки даних, генетичного та еволюційного програмування для розв’язання задач розпізнавання, прогнозування, класифікації, ідентифікації об’єктів керування тощо.
ПРН11. Володіти навичками управління життєвим циклом програмного забезпечення, продуктів і сервісів інформаційних технологій відповідно до вимог і обмежень замовника, вміти розробляти проєктну документацію (техніко-економічне обґрунтування, технічне завдання, бізнес-план, угоду, договір, контракт).
ПРН12. Застосовувати методи та алгоритми обчислювального інтелекту та інтелектуального аналізу даних в задачах класифікації, прогнозування, кластерного аналізу, пошуку асоціативних правил з використанням програмних інструментів підтримки багатовимірного аналізу даних на основі технологій DataMining, TextMining, WebMining.
ПРН15. Застосовувати знання методології та CASE-засобів проєктування складних
систем, методів структурного аналізу систем, об'єктно-орієнтованої методології
проектування при розробці і дослідженні функціональних моделей організаційно-
економічних і виробничо- технічних систем.

b272528 ▪ 2025 рік