Методи специфікації програм
Освітня програма: Інформатика (перший (бакалаврський) рівень вищої освіти)
Структурний підрозділ: Факультет комп'ютерних наук та кібернетики
Назва дисципліни
Методи специфікації програм
Код дисципліни
ДВС.2.09
Тип модуля
Вибіркова дисципліна для ОП
Цикл вищої освіти
Перший
Рік навчання
2022/2023
Семестр / Триместр
8 Семестр
Кількість кредитів ЕСТS
4
Результати навчання
ПРН17.2. Знати та вміти застосовувати підходи щодо оцінки та забезпечення якості програмного забезпечення.
ПРН19.2. Вибирати вихідні дані для проєктування, керуючись формальними методами опису вимог та моделювання.
Форма навчання
Дистанційне навчання
Попередні умови та додаткові вимоги
Знати: основні поняття теорії програмування, методі формалізації мов програмування, зокрема формалізації та аналізу семантики та синтаксису програм; теорію найменших нерухомих точок.
Вміти: формалізувати синтаксис мов програмування за допомогою БНФ та граматик, робити синтаксичний аналіз програм, будувати семантичний терм програми в алгебрі програм, доводити коректність програм. Формалізувати та досліджувати рекурсивні програми.
Володіти елементарними навичками: програмування сучасними мовами.
Зміст навчальної дисципліни
Мета дисципліни – знайомство з формальними методами специфікацій та засвоєння формальних методів специфікацій програм, їх практичне застосування на прикладі мов формальних специфікацій Z, Dafny, В та UML/OCL.
Навчальна дисципліна “Методи специфікації програм” є складовою освітньопрофесійної програми підготовки фахівців за першим (бакалаврським) рівнем вищої освіти галузі знань 12 „Інформаційні технології” зі спеціальності 122 „Комп’ютерні науки”, вибірковий блок „Теорія та технологія програмування” освітньо-професійної програми „Інформатика”. Дана дисципліна є навчальною дисципліною за вибором за програмою “Інформатика” за вибірковим блоком “Теорія та технологія програмування”. Викладається у 8 семестрі 4 курсу в обсязі – 120 год. (4 кредити ECTS) зокрема: лекції – 40 год, консультації – 2 год., самостійна робота – 78 год. У курсі передбачено 2 частини, 2 контрольні роботи та 1 проєктна робота. Завершується дисципліна – іспитом у 8 семестрі.
Рекомендована та необхідна література
1. SMT-LIB Theory of Nominative Data / Omelchuk L. and Shyshatska O. // Springer Nature Switzerland AG, Communications in Computer and Information Science, 1175 CCIS, pp. 89-110, 2020.
2. І. Rodhe, M. Karresand. Overview of formal methods in software engineering. – FOI Swedish Defence Research Agency, 2015. – 50 р.
3. S. Kumar, R.S. Suryavanshi, G. Chandra. Formal Methods:Techniques and Languages For Software Development // International Journal of Engineering Science and Advanced Research 1 (1), 2015. – Р. 35-42.
4. Омельчук Л.Л. Формальні методи специфікації програм // К.: УкрІНТЕІ, 2009. – 78 с.
5. Буй Д.Б., Нікітченко М.С., Омельчук Л.Л., Редько В.Н., Шишацька О.В. Класифікація мов та методів формальних специфікацій програмних систем // Theoretical and applied aspects of program systems development (TAAPSD’2008). – Abstracts. – Berdyansk, Ukraine, 2007. P. 27-33.
Заплановані освітні заходи та методи викладання
Лекція, самостійна робота.
Методи та критерії оцінювання
Семестрове оцінювання:
1. Контрольна робота 1: РН 1.1., РН 1.2 — 20 балів/12 балів.
2. Контрольна робота 2: РН1.2, РН 2.1, РН 2.2, РН2.3 - 20 балів/12 балів.
3. Проєктна робота: РН2.1, РН 2.2, РН2.3, РН3.1, РН4.1, РН4.2 – 20 балів/12 балів.
Підсумкове оцінювання (у формі іспиту) вказується:
- максимальна кількість балів які можуть бути отримані студентом: 40 балів;
- результати навчання які будуть оцінюватись: PH1.1, PH1.2, PH2.1, PH2.2, PH2.3;
- форма проведення і види завдань: письмова.
Види завдань: 6 письмових завдань.
Мова викладання
Українська
Викладачі
Ця дисципліна викладаеться наступними викладачами

Олена
Володимирівна
Шишацька
Теорії та технології програмування
Факультет комп'ютерних наук та кібернетики
Факультет комп'ютерних наук та кібернетики
Кафедри
Наступні кафедри задіяні у викладанні наведеної дисципліни
Теорії та технології програмування
Факультет комп'ютерних наук та кібернетики