Вивчення загальних принципів проектування програмного забезпечення. Розглядаються формальні методи розробки програмного забезпечення, основи теорії формального опису мов на базі граматик і регулярних виразів, методи лексичного і синтаксичного аналізу, принципи роботи сканерів і парсерів, засоби автоматичної генерації сканерів і парсерів для мов програмування на основі специфікацій, засоби автоматичного проектування і розробки програмного забезпечення.

Метою дисципліни є вивчення понять, принципів і засобів, що використовуються при створенні людино-машинних інтерфейсів програмних систем. Завданнями курсу є: - знайомство з поняттями: інтерфейс, стиль інтерфейсу, якість інтерфейсу, типи моделей, які використовуються при проектуванні інтерфейсу; - вивчення основ процесів сприйняття й навчання людини; - засвоєння стандартів і принципів проектування ергономічного інтерфейсу додатків; - вивчення основних аспектів програмування графічних інтерфейсів користувача (GUI); - вивчення та використання на практиці різних методів тестування інтерфейсів.

Метою викладання курсу є познайомити студентів із основами об'єктно-орієнтованого програмування (ООП), дати поняття про його базові концепції (інкапсуляція, поліморфізм, наслідування), навчити використовувати мову програмування, що підтримує методологію ООП (C++).
Предметом вивчення дисципліни є концепція ООП, методи та засоби її реалізації засобами мови С++, проєктування ієрархії класів для поставленої задачі.