Супровід програмного забезпечення

Обов'язкова дисципліна
Навчальна дисципліна професійної підготовки
Обсяг освітнього компонента: 
• у кредитах ЄКТС — 3.0; • у навчальних годинах — 90.
Розподіл навчальних годин (аудиторні заняття / самостійна робота): 
• очна форма — 44 / 46; • заочна форма — 8 / 82.
Кількість аудиторних занять за видами (лекції / практичні заняття / лабораторні заняття): 
• очна форма — 15 / 0 / 7; • заочна форма — 2 / 0 / 2.
Індивідуальна робота: 
; • заочна форма — контрольна робота.
Семестровий контроль: 
Залік.
Освітню компоненту забезпечує: 
Анотація: 

Мета вивчення дисципліни:забезпечення формування комплексу знань, умінь та розумінь, а також здобуття у майбутніх бакалаврів уявлення про процес зміни програмної системи або компонента після поставки з метою виправлення помилок, підвищення продуктивності чи інших параметрів, а також для адаптації до нових умов програмного забезпечення.
Практичне значення та використання отриманих знань:
- розвити здатність застосовувати фундаментальні і міждисциплінарні знання для успішного розв’язання завдань інженерії програмного забезпечення.
- розвити здатність здійснювати процес інтеграції системи, застосовувати стандарти і процедури управління змінами для підтримки цілісності, загальної функціональності і надійності програмного забезпечення.
Тематика та види навчальних занять
Для денної форми здобуття освіти
Лекційні заняття
Лекція 1. “Визначення і термінологія. Природа супроводу. Потреба в супроводі. Пріоритет вартості супроводу. Еволюція програмного забезпечення. Категорія супроводу”.
Лекція 2. “Технічні запитання. Обмежене розуміння (швидкість внесення змін). Тестування”.
Лекція3. “Основні поняття та визначення. Види тестування програмного забезпечення. Методи тестування. Техніки тестування”.
Лекція 4. “Автоматизація тестування: як уникнути поширених помилок? Піраміда тестування”.
Лекція 5. “Метрики тестування. Управління тестуванням”.
Лекція 6 “Особливості процесу розгортання програмного забезпечення. Аналіз ризиків. розгортання програмного забезпечення”.
Лекція 7. “Аналіз впливу. Цілі аналізу впливу. Рекомендації до процесу аналізу впливу.
Лекція 8. “Аналіз взаємодії з клієнтом. Підвищення лояльності”.
Лекція 9. "Ключові проблеми супроводу. Виявлення проблем сумісності. Тестування сумісності”.
Лекція 11. “Параметричні моделі. Застосування досвіду для підвищення точність оцінок. Вимірювання в супроводі програмного забезпечення”.
Лекція 12. “Методи внутрішньої оцінки продуктивності персоналу. Спеціалізовані метрики оцінки робіт із супроводу”.
Лекція 13. “Процеси супроводу за різними стандартами. Роботи по супроводу. Унікальні характеристики діяльності супроводу програмного забезпечення. Додаткові роботи процесу супроводу. “Роботи з планування супроводу. Конфігураційне управління. Якість програмного забезпечення”.
Лекція 14. “Розуміння програмних систем . Реінжиніринг. Етапи реінжинірингу програмного забезпечення. Мета і завдання реінжинірингу. Складність реінжинірингу”.
Лекція 15. “Зворотний інжиніринг. Рефакторинг. Коли проводити рефакторинг? Процес рефакторингу. Ознаки поганого коду. Приклади методів рефакторингу. Автоматизований рефакторинг”.
Лабораторні заняття
Лабораторне заняття №1.” Розробка супроводжуваних додатків.”
Мета заняття: Формування навичок розробки програмних додатків із урахуванням можливостей їх подальшого супроводу та модернізації.
Лабораторне заняття №2. “ Модульне тестування та Test-DrivenDevelopment.”
Мета заняття: Вивчення принципів модульного тестування та методології розробки через тестування (TDD) для підвищення якості програмного забезпечення.
Лабораторне заняття №3. “ Тестування навантаженням ”
Мета заняття: Освоєння методів та інструментів тестування продуктивності програмних систем під навантаженням.
Лабораторне заняття №4. “ Отримання практичних навичок аналізу можливих наслідків і впливу змін, що вносяться до існуючої системи.”
Мета заняття: Набуття навичок аналізу ризиків та впливу змін у програмних системах для забезпечення їх стабільності та надійності.
Лабораторне заняття №5. “ Основи роботи з системами контролю версій. Частина 1.”
Мета заняття: Набуття знань щодо базових принципів роботи із системами контролю версій для ефективного управління змінами у програмному коді.
Лабораторне заняття №6. “ Основи роботи з системами контролю версій. Частина 2.”
Мета заняття: Закріплення практичних навичок командної роботи з системами контролю версій та розробки з використанням гілок і злиття змін.
Лабораторне заняття №7. “Логування, як спосіб аналізу програмного забезпечення.”
Мета заняття: Вивчення методів логування та використання логів для діагностики і моніторингу роботи програмних систем.
Для заочної форми здобуття освіти
Лекційні заняття
Лекція 1. “Процеси супроводу за різними стандартами. Роботи по супроводу. Унікальні характеристики діяльності супроводу програмного забезпечення. Додаткові роботи процесу супроводу. “Роботи з планування супроводу. Конфігураційне управління. Якість програмного забезпечення”.
Лекція 2. “Основні поняття та визначення. Види тестування програмного забезпечення. Методи тестування. Техніки тестування”.
Лабораторні заняття
Лабораторне заняття №1.” Розробка супроводжуваних додатків.”
Мета заняття: Формування навичок розробки програмних додатків із урахуванням можливостей їх подальшого супроводу та модернізації.
Лабораторне заняття №2. “ Модульне тестування та Test-DrivenDevelopment.”
Мета заняття: Вивчення принципів модульного тестування та методології розробки через тестування (TDD) для підвищення якості програмного забезпечення.
Консультації здійснюються впродовж семестру згідно встановленого розкладу.
Індивідуальна робота
Для здобувачів очної форми здобуття освіти індивідуальна робота відсутня за планом
Для заочної форми здобуття освіти
Завдання для виконання контрольної роботи здобувач отримує на установочній лекції. Робота містить 2 теоретичних питання, та 4 практичні завдання пов'язаних з тестуванням, логуваннямта роботз використання систем контролю версій.
Обсяг відповіді на кожне теоретичне питання не менше, ніж 2 сторінки машинописного тексту.
Практичні завдання присвячені модульному та навантажувальному тестуванню, логуванню додатків і роботі з системами контролю версій. Студенти мають налаштувати необхідні інструменти, виконати тести, організувати роботу з репозиторіями та зробити висновки щодо якості й стабільності програмного забезпечення згідно варіантів.
Студентам потрібно виконати практичні завдання з модульного та навантажувального тестування, логування додатків і роботи з системами контролю версій. Вони мають налаштувати інструменти, перевірити результати та зробити висновки щодо якості й стабільності програмного забезпечення згідно варіантів.
Термін надання контрольної роботи на перевірку - не пізніше, ніж за місяць до початку сесії.

Форми контрольних заходів та оцінювання результатів навчання
Для денної форми здобуття освіти
Поточний контроль полягає у виконанні
1) 7-мі індивідуальних поточних завдань. Індивідуальні поточні завдання виконуються у вигляді налаштувань на різних платформах, програмного коду і все це описується в протоколі відповідно до мети та завдань лабораторних занять. Бездоганне виконання індивідуального поточного завдання №1- 4 оцінюється по 5 балів; індивідуального поточного завдання № 5 – 6– 7 балів та №7– 6 балів;
2) модульні контрольні роботи №1 та №2 складаються з теоретичної і практичної частин та проводиться частково у формі тестування, та відповідей на відкриті питання. Бездоганне виконання кожної модульної контрольної роботи становить 30 балів разом в сумі 60 балів.
Підсумковий контроль – залік. Залік усний. Максимальна оцінка, яку може отримувач здобувач – 100 балів. Мінімальна оцінка, яка дозволяє отримати «зараховано» - 60 балів.
Для заочної форми здобуття освіти
Захист контрольної роботи. Бездоганне виконання контрольної роботи оцінюється у 50 балів. Під час її захисту здобувач може отримати до 30 балів. Виконання 2 лабораторних робіт оцінюється у 20 балів.
Підсумковий контроль – залік. Залік усний. Максимальна оцінка, яку можу отримати здобувач – 100 балів. Мінімальна оцінка, яка дозволяє отримати «зараховано» - 60 балів.

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

ПРН01. Аналізувати, цілеспрямовано шукати і вибирати необхідні для вирішення професійних завдань інформаційно-довідникові ресурси і знання з урахуванням сучасних досягнень науки і техніки.
ПРН06. Вміти вибирати та використовувати відповідні задачі методологію створення програмного забезпечення..
ПРН14. Застосовувати на практиці інструментальні програмні засоби доменного аналізу, проектування, тестування, візуалізації, вимірювань та документування програмного забезпечення.
ПРН15. Мотивовано обирати мови програмування та технології розробки для розв’язання завдань створення і супроводження програмного забезпечення.

b242528 ▪ 2025 рік