Методи специфікації та верифікації програм

Освітня програма: Інформатика (перший (бакалаврський) рівень вищої освіти)

Структурний підрозділ: Факультет комп'ютерних наук та кібернетики

Назва дисципліни
Методи специфікації та верифікації програм
Код дисципліни
ВК.2.02
Тип модуля
Вибіркова дисципліна для ОП
Цикл вищої освіти
Другий
Рік навчання
2023/2024
Семестр / Триместр
6 Семестр
Кількість кредитів ЕСТS
3
Результати навчання
ПРН18.2. Знати та вміти застосовувати підходи щодо оцінки та забезпечення якості програмного забезпечення. ПРН19.2. Аналізувати, оцінювати і вибирати інструментальні та обчислювальні засоби, парадигми, технології, алгоритмічні і програмні рішення при проектуванні та розробці програмних систем.
Форма навчання
Дистанційне навчання
Попередні умови та додаткові вимоги
Знати: основи реляційних баз даних та мови запитів SQL, технології розробки інформаційних програмних систем, принципи роботи технологій доступу до даних на прикладі ADO.Net, основи HTML, CSS, JavaScript, базові елементи програмної інженерії, принципи роботи технологій створення веб-застосунків на прикладі ASP.Net. Вміти: працювати з технологією ADO.Net на автономному рівні, працювати з технологією ADO.Net Entity Framework, працювати з технологією ASP.Net. Володіти елементарними навичками: програмування мовами C#.
Зміст навчальної дисципліни
Мета дисципліни – засвоєння базових знань з основ тестування, формальної специфікації та верифікації програмного забезпечення. Оволодіння базовими навичками проектування тестів для програмних систем, роботи з найбільш уживаними засобами тестування, засобами для формальної специфікації та верифікації. Навчальна дисципліна “Методи специфікації та верифікації програм” є складовою освітньопрофесійної програми підготовки фахівців за першим (бакалаврським) рівнем вищої освіти галузі знань 12 „Інформаційні технології” зі спеціальності 122 „Комп’ютерні науки”, вибірковий блок „Теорія та технологія програмування” освітньо-професійної програми „Інформатика”. Дана дисципліна є навчальною дисципліною за вибором програми “Інформатика” за блоком дисциплін “Теорія та технологія програмування”. Викладається у 6 семестрі 3 курсу в обсязі – 90 год. (3 кредити ECTS) зокрема: лекції – 42 год, консультації – 2 год., самостійна робота – 46 год. У курсі передбачено 3 частини та 2 контрольні роботи. Завершується дисципліна – заліком в 6 семестрі.
Рекомендована та необхідна література
1. Буй Д.Б., Нікітченко М.С., Омельчук Л.Л., Редько В.Н., Шишацька О.В. Класифікація мов та методів формальних специфікацій програмних систем // Theoretical and applied aspects of program systems development (TAAPSD’2008). – Abstracts. – Berdyansk, Ukraine, 2007. P. 27-33. 2. The RAISE specification language. Prentice Hall Int.– 1992.– 397 p. 3. Бабенко Л.П., Лавріщева К.М. Основи програмної інженерії: Навч. посіб.–К.: Т-во "Знання", 2001.– 269 с. 4. Hanne Riis Nielson, Flemming Nielson Semantics with Applications. An Appetizer, SpringerVerlag.– 2007.– 274p. 5. Mike Spivey. The Z Notation: A Reference Manual, 2nd edition. Prentice Hall International Series in Computer Science, 1992. 6. https://junit.org/junit4/ 7. https://testng.org/doc/documentation-main.html 8. http://static.javadoc.io/org.mockito/mockito-core/2.23.0/org/mockito/Mockito.html.
Заплановані освітні заходи та методи викладання
Лекції, лабораторні роботи, самостійна робота.
Методи та критерії оцінювання
Cеместрове оцінювання: 1. Контрольна робота 1: РН 1.2., РН 2.2 — 32 бали/19 балів. 2. Контрольна робота 2: РН 1.3. — 20 балів/12 балів. 3. Самостійна лабораторна робота 1 (проєкт): РН1.1, РН 2.1, РН3.1 – 10 балів/6 балів. 4. Самостійна лабораторна робота 2 (проєкт): РН1.1, РН 2.1, РН3.1 – 10 балів/6 балів. 5. Самостійна лабораторна робота 3 (проєкт): РН2.1, РН 4.1, РН4.2 – 10 балів/6 балів; 6. Поточне оцінювання: РН3.1, РН 4.1, РН4.2 – 8 балів/5 балів; Підсумкове оцінювання у формі заліку. Виставляється за результатами роботи студентами впродовж усього семестру.
Мова викладання
Українська

Кафедри

Наступні кафедри задіяні у викладанні наведеної дисципліни

Теорії та технології програмування
Факультет комп'ютерних наук та кібернетики