Алгебро-автоматні методи проєктування програмного забезпечення
Освітня програма: Програмне забезпечення систем
Структурний підрозділ: Факультет комп'ютерних наук та кібернетики
Назва дисципліни
Алгебро-автоматні методи проєктування програмного забезпечення
Код дисципліни
ОК.05
Тип модуля
Обов’язкова дисципліна для ОП
Цикл вищої освіти
Другий
Рік навчання
2022/2023
Семестр / Триместр
1 Семестр
Кількість кредитів ЕСТS
6
Результати навчання
ПРН01. Знати основні алгоритми теорії автоматів, їх складність та варіації (баазовий рівень).
ПРН02. Знати основні поняття та концепції загальної алгебри (напівтрупи, групи, гратки, багатоосновні алгебри).
ПРН2.1. Вміти проектувати та розробляти на основі побудованих математичних моделей алгоритми розв’язання поставлених задач, виконувати аналіз складності побудованих алгоритмів.
Форма навчання
Дистанційне навчання
Попередні умови та додаткові вимоги
1. Знати: основні поняття теорії алгоритмів, теорії автоматів, загальної алгебри та математичної логіки та принципи розробки програм;
2. Вміти: проектувати, розробляти та тестувати моделі та програми на базовому рівні.
3. Володіти елементарними навичками програмування мовами C, C++, Java, Pyton.
Зміст навчальної дисципліни
Мета дисципліни – опанування методами розробки програмного забезпечення на основі методів теорії автоматів, математичної логіки, алгебраїчних структур, програмування з обмеженнями та їх застосування до розробки, аналізу і верифікації алгоритмів та програм.
В результаті вивчення навчальної дисципліни студент повинен:
знати: основні концепцій процедурного, функціонального, об’єктно-орієнтованого та логічного програмування;
вміти: виконувати аналіз проблеми, будувати математичні моделі відповідних предметних областей, створювати специфікації та виконувати верифікацію моделей, програмувати у процедурному, функціональному, логічному та об’єктно-орієнтованому стилях.
Рекомендована та необхідна література
1. Кривий С.Л. Вступ до методів створення програмних продуктів. Чернівці: Букрек. –
2013 р.. – 424 с.
2. Манна З. Семантика неподвижной точки функциональных программ. – Киб. сборник.
Вып. 15. – М.Мир. -1979.-С.38-100.
3. Филд А., Харрисон П. Функциональное программирование. – М. Мир. – 1993. – 742 с.
4. Ахо А., Хопкрофт Дж., Ульман Дж. Структуры данных и алгоритмы. - М.: Издат. дом
``Вильямс''. - 2000. - 382 с.
5. Капитонова Ю. В., Летичевский А. А. Об основных парадигмах программирования. ж.
Кибернетика и сист. анализ. - 1994. - № 6. - C. 3-20.
6. Fisher M.J., Ladner R.E. Propositional Modal Logic of Programs. In Proc. 9-th ACM Ann.
Symposium on Theory of Computing. - 1977. - P. 286-294.
7. Fisher M.J., Ladner R.E. Propositional Dynamic Logic of regular programs. J. Comp. System
Sci. – 1979. - v.18. - № 2. - P. 194-211.
Заплановані освітні заходи та методи викладання
Лекції, лабораторні заняття, самостійна робота, контрольні роботи, домашні завдання, захист лабораторних робіт, іспит.
Методи та критерії оцінювання
- семестрове оцінювання:
1. Контрольна робота (тест) 1: РН 1.1,РН 1.2 - 10 балів/6 балів.
2. Контрольна робота (тест) 2: РН1.3 - 10 балів/6 бали.
3. Домашні завдання 1-7: РН 1.1,РН 1.2,РН1.3- 10 балів/6 балів.
4. Захист лабораторної роботи 1 (проекту): РН 2.1,РН3.1,РН4.1,РН4.2 – 11 балів/6 балів.
5. Захист лабораторної роботи 2 (проекту): РН 2.1,РН3.1,РН4.1,РН4.2 – 8 балів/5 балів.
6. Захист лабораторної роботи 3 (проекту): РН 2.1, РН3.1,РН4.1, РН4.2 – 11 балів/6 балів.
Одну з форм контролю студент має право замінити на здачу сертифікату з можливістю отримання 9 балів. Для реалізації цього права студент повинен до 1.10 поточного року написати та прикріпити в classroom заяву зі своїм персональним підписом.
- підсумкове оцінювання (у формі іспиту):
- максимальна кількість балів: 40 балів;
- результати навчання які будуть оцінюватись: PH1.1, PH1.2, PH1.3, PH2.1.
Мова викладання
Українська
Викладачі
Ця дисципліна викладаеться наступними викладачами
Сергій
Лук'янович
Кривий
Інтелектуальних програмних систем
Факультет комп'ютерних наук та кібернетики
Факультет комп'ютерних наук та кібернетики
Кафедри
Наступні кафедри задіяні у викладанні наведеної дисципліни
Інтелектуальних програмних систем
Факультет комп'ютерних наук та кібернетики