Тестування програмного забезпечення
Спеціальність: Кібербезпека
Код дисципліни: 6.125.04.E.130
Кількість кредитів: 3.00
Кафедра: Захист інформації
Семестр: 7 семестр
Форма навчання: денна
Тестування програмного забезпечення (курсова робота)
Спеціальність: Кібербезпека
Код дисципліни: 6.125.04.E.131
Кількість кредитів: 2.00
Кафедра: Захист інформації
Лектор: к.ф.-м.н., доцент Червінка Костянтин Андрійович
Семестр: 7 семестр
Форма навчання: денна
Завдання: Вивчення навчальної дисципліни передбачає формування у здобувачів освіти компетентностей:
загальні компетентності:
ЗК 1. Здатність застосовувати знання у практичних ситуаціях
ЗК 2. Знання та розуміння предметної області та розуміння професії
ЗК 3. Здатність професійно спілкуватися державною та іноземною мовами як усно, так й письмово
ЗК 4. Вміння виявляти, ставити і вирішувати проблеми за професійним спрямуванням
ЗК 5. Здатність до пошуку, оброблення та аналізу інформації
фахові компетентності:
ФКС 4.1. Володіння методологіями проведення оцінки ризиків та проактивного виявлення загроз, вміння ідентифікувати вразливості інформаційної безпеки та застосовувати ефективні інструменти для їх помягшення
ФКС 4.4. Здатність опрацьовувати та аналізувати журнали реєстрації подій, уміння розробляти синтаксичні аналізатори.
ФКС 4.5. Уміння виявляти шкідливе програмне забезпечення та здатність застосовувати принципи і методи ефективної протидії.
ФКС 4.7. Уміння розробляти програмне забезпечення із виявлення шкідливих програм і кібератак
ФКС 4.9. Здатність виконувати моніторинг даних, комп’ютерних зловживань та аномалій.
Результати навчання: У результаті вивчення навчальної дисципліни здобувач освіти повинен бути здатним
4.1. Вирішувати завдання захисту програм та інформації, що обробляється в інформаційно-телекомунікаційних системах програмно-апаратними засобами та давати оцінку результативності якості прийнятих рішень.
4.3. Вирішувати задачі захисту потоків даних в інформаційних та інформаційно-телекомунікаційних (автоматизованих) системах
4.8. Вирішувати задачі управління процесами відновлення штатного функціонування інформаційно-телекомунікаційних систем з використанням процедур резервуванням згідно встановленої політики безпеки.
4.11. Вирішувати задачі аналізу програмного коду на наявність можливих загроз
а також повинен
1. володіти уявленнями про актуальні методики тестування сучасних програмних засобів різних видів на усіх етапах життєвого циклу розробки ПЗ;
2. вміти здійснювати аналіз вимог до проектованого програмного забезпечення для різних моделей розробки за ознаками повноти, коректності, здійсненності, необхідності, пріоритетності, несуперечливості тощо;
3. розуміти основні завдання різних видів тестування та вміти вибирати оптимальні схеми тестування для різних моделей розробки ПЗ;
4. знати основні методи функціональних видів тестування, аналізу й синтезу компонентів тестового інструментарію, основ статичного й динамічного тестування;
5. здійснювати виконання тестових випадків та формування звітность із оцінкою виявлених дефектів за необхідними ознаками;
6. за заданими технічними завданнями до розробки програмного забезпечення проектувати стислі чек-списки та набори тест-кейсів для поверхневого та глибокого тестування ПЗ.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Етичний хакінг в комп’ютерних системах та мережах
Безпека мобільних технологій, ч.2
Короткий зміст навчальної програми: Зміст дисципліни включає основні поняття в області тестування програмного забезпечення, рівнів та видів тестування на різних етапах життєвого циклу розробки програмного забезпечення, методик та стратегій формування тестових наборів для різних категорій програмних продуктів, проблеми тестування безпеки програмного продукту з метою реалізації встановленої політики інформаційної та/або кібербезпеки.
Основні теми лекційних занять охоплюють:
Тестування та його роль у підвищенні якості ПЗ
Види та напрямки тестування. Класифікація тестування
Аналіз вимог та результати тестування
Інструменти тестування та його дизайн. Чек-списки та тест-кейси
Звіти про дефекти. Оцінка витрат на тестування
Особливості тестування для різних моделей розробки ПЗ
Особливості тестування різних видів ПЗ. Тестування безпеки
Основні теми лабораторних занять охоплюють:
Аналіз вимог програмного забезпечення
Планування та організація процесу тестування
Розробка тестових випадків
Функціональне тестування
Звіти про помилки та звіти тестування
Тестування локалізації, як частина функціонального тестування
Техніки та методи тест-дизайну
Опис: Тестування та його роль у підвищенні якості ПЗ
Вступ. Поняття тестування. Варіативність та ефективність тестування. Особливості професії "тестувальник ПЗ"
Види та напрямки тестування. Класифікація тестування
Стадії розробки ПЗ та життєвий цикл тестування. Планування тестів. Види тестування за запуском, доступом до коду, автоматизацією, деталізацією, метою тощо
Аналіз вимог та результати тестування
Специфікації вимог. Тестування документації. Тестування в циклі розробки програмного забезпечення. Тестові результати: визначення та види. Стратегія та план тесту. Шаблони та сценарії тестування.
Інструменти тестування та його дизайн. Чек-списки та тест-кейси
Визначення тест-кейсу, його структура та види. Життєвий цикл та поля тест-кейсу. Методики тестування. Статичний аналіз, рецензування, метрики. Динамічне тестування
Звіти про дефекти. Оцінка витрат на тестування
Виконання тестових випадків та баг-репорти. Дефекти, звіти про них та їх оцінка. Планування та звітність тестового процесу. Тест-план та його оптимізація
Особливості тестування для різних моделей розробки ПЗ
Знайомство з інструментами та гнучкими практиками. Елементи автоматизації. Системне і регресивне тестування
Особливості тестування різних видів ПЗ. Тестування безпеки
Особливості тестування Web-додатків та Web-сервісів. Дослідницьке тестування. Тестування на проникнення
Методи та критерії оцінювання: Оформлена і захищена курсова робота згідно сформульованого завдання, що містить необхідні теоретичні відомості та ілюструє на конкретних прикладах обрану проблемну задачу щодо тестування програмного забезпечення оцінюється у 100 балів
Критерії оцінювання результатів навчання: Перевірка виконання КР 50 балів
Усне опитування 50 балів
Порядок та критерії виставляння балів та оцінок: 100-88 балів - атестований з оцінкою «відмінно» - Високий рівень: здобувач освіти демонструє поглиблене володіння поняттєвим та категорійним апаратом навчальної дисципліни, системні знання, вміння і навички їх практичного застосування. Освоєні знання, вміння і навички забезпечують можливість самостійного формулювання цілей та організації навчальної діяльності, пошуку та знаходження рішень у нестандартних, нетипових навчальних і професійних ситуаціях. Здобувач освіти демонструє здатність робити узагальнення на основі критичного аналізу фактичного матеріалу, ідей, теорій і концепцій, формулювати на їх основі висновки. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку, самостійної науково-дослідної діяльності, що реалізується за підтримки та під керівництвом викладача. 87-71 балів - атестований з оцінкою «добре» - Достатній рівень: передбачає володіння поняттєвим та категорійним апаратом навчальної дисципліни на підвищеному рівні, усвідомлене використання знань, умінь і навичок з метою розкриття суті питання. Володіння частково-структурованим комплексом знань забезпечує можливість їх застосування у знайомих ситуаціях освітнього та професійного характеру. Усвідомлюючи специфіку задач та навчальних ситуацій, здобувач освіти демонструє здатність здійснювати пошук та вибір їх розв’язання за поданим зразком, аргументувати застосування певного способу розв’язання задачі. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку. 70-50 балів - атестований з оцінкою «задовільно» - Задовільний рівень: окреслює володіння поняттєвим та категорійним апаратом навчальної дисципліни на середньому рівні, часткове усвідомлення навчальних і професійних задач, завдань і ситуацій, знання про способи розв’язання типових задач і завдань. Здобувач освіти демонструє середній рівень умінь і навичок застосування знань на практиці, а розв’язання задач потребує допомоги, опори на зразок. В основу навчальної діяльності покладено ситуативність та евристичність, домінування мотивів обов’язку, неусвідомлене застосування можливостей для саморозвитку. 49-00 балів - атестований з оцінкою «незадовільно» - Незадовільний рівень: свідчить про елементарне володіння поняттєвим та категорійним апаратом навчальної дисципліни, загальне уявлення про зміст навчального матеріалу, часткове використання знань, умінь і навичок. В основу навчальної діяльності покладено ситуативно-прагматичний інтерес.
Рекомендована література: 1. Якість програмного забезпечення та тестування: базовий курс. Навчальний посібник / За ред. Крепич С.Я., Співак І.Я. / для бакалаврів галузі знань 12 «Інформаційні технології» спеціальності 121 «Інженерія програмного забезпечення». – Терно¬піль: ФОП Паляниця В.А., 2020. – 478 с.
2. Білас О. Якість програмного забезпечення та тестування: навч.посібник. – Львів: Видавництво Львівської політехніки, 2011. – 216 с.
3. Верифікація і тестування програмного забезпечення. Конспект лекцій для студентів базових напрямів 6.050101 «Комп’ютерні науки» та 6.050103 «Програмна інженерія». І частина. / Укл.: О.Є. Білас. — Львів: Видавництво Національного університету «Львівська політехніка», 2008. — 80 с.
4. ISTQB Foundation Level Certification v. 4.0 Syllabus [Електронний ресурс] – Режим доступу : https://astqb.org/assets/documents/ISTQB_CTFL_Syllabus-v4.0.pdf (2023)
5. Myers, G. J., Sandler, C., & Badgett, T. (2011). The art of software testing. John Wiley & Sons.
6. Jorgensen, P. C. (2013). Software testing: a craftsman's approach. Auerbach Publications.
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою:
вул. Карпінського, 2/4, І-й н.к., кімн. 112
E-mail: nolimits@lpnu.ua
Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).