1. Автоматизовані системи управління. Вивчення та закріплення навичок роботи з АСУ, їх класифікація.

2. Алгоритми та структури даних. Дана дисципліна знайомить студентів із базовими концепціями структур даних і пов’язаних з ними алгоритмів. Теми курсу включають рекурсію, філософію об’єктно-орієнтованого програмування, базові структури даних (включаючи стеки, черги, зв’язані списки, хэш- таблиці, дерева й графи), основи аналізу алгоритмів і стратегії конструювання алгоритмів.

3. Аналіз вимог до програмного забезпечення. Засвоєння методів виявлення та формалізації вимог до програмних систем. Вивчення мов та моделей представлення вимог, аналіз системних вимог та вимог до якості. Мова UML. Бізнес вимоги до системи, керування вимогами до ПЗ. Визначення вимог до різноманітних систем – web-систем, бізнес-систем. Стандарти документування вимог.

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

5. Архітектура та проектування програмного забезпечення. Поглиблене вивчення проектування програмного забезпечення. Продовження вивчення шаблонів проектування, середовищ розробки й архітектури. Дослідження існуючих архітектур проміжного програмного забезпечення. Проектування розподілених систем з використанням проміжного програмного забезпечення. Компонентне проектування. Теорія виміру й використання метрик і проектування.Проектування з урахуванням таких якостей, як продуктивність, безпека, захищеність, можливість повторного використання, надійність тощо. Зміна внутрішніх параметрів і складності програмного забезпечення. Оцінка й еволюція проектування.

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

7. Безпека програм та даних. Питання безпеки – важлива частина концепції упровадження нових інформаційних технологій у всі сфери життя суспільства. Широкомасштабне використання обчислювальної техніки і телекомунікаційних систем приводить до якісно нових можливостей несанкціонованого доступу до ресурсів і даних інформаційної системи, тобто до високої уразливості. Таким чином, забезпечення цілісності, достовірності і доступності інформації – важливі складові успіху діяльності будь-якої організації.

8. Групова динаміка та комунікації. Метою викладання дисципліни “Групова динаміка і комунікації“ є основи усної, письменної і графічної комунікації для програмних інженерів. Ставиться за мету вивчення і використання: принципів написання документації, типів документів, презентацій, основ ефективної роботи і усної комунікації з колегами та в міжособистому спілкуванні, мотивації людей, концепції групової динаміки, принципів спілкування, переконання і впливання на людину, принципів уникнення стресових та конфліктних ситуацій.

9. Екстремальне програмування. Вивчення методології ХР, ознайомлення з основними 12 прийомами гнучкого програмування.

10. Емпіричні методи програмної інженерії. Засвоєння принципів застосування емпіричних методів у галузі програмної інженерії. Розглядаються основи описової статистики, дискретні та безперервні розподіли ймовірностей, методи оцінювання параметрів регревійних залежностей, кореляції, статистичні тести, найуживаніші у галузі програмної інженерії. Також методи планування експерименту і перевірка гіпотез. Застосування емпіричних методів для аналізу продуктивності та надійності програмних систем тощо.

11. Захист інформації. Ознайомлення з основними алгоритмами шифрування даних. Вивчення  та закріплення навичок реалізації алгоритмів захисту даних в комп’ютерних мережах.

12. Інструментальні програмні засоби. Ознайомлення з тестовим, математичним та табличними процесорами операційної системи Windows.

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

14. Інтелектуальні системи. Вивчення теоретичних принципів організації інтелектуальних систем, методів аналізу та проектування предметних галузей, придбання практичних навичок із розробки, представлення і реалізації на ЕОМ інструментальних програмних засобів, концептуальних моделей проблемної галузі і програмних засобів їхньої підтримки, агентних технологій, машинного навчання та нейроних мереж.

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

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

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

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

19. Мережі і потоки. Вивчення технології, що засновані на Ethernet (FastEthernet, GigabitEthernet), TokenRing, FDDI. Технології глобальних мереж X.25, FrameRelay, ATM. Комунікація в мережах і модемний зв’язок по виділеним каналам та каналам, що комутуються ( ISDN, xDSL, V.x). Web, FTP, telnetслужби. Утиліти роботи з мережею через операційні системи ( Windowsxx, NetWare4.x, 5.х, Linux). Мережні протоколи (TCP\IP, IPX\SPX). Методи комутацій мереж, методи підвищення ефективності мереж. Маршрутизація в мережах і протоколи ( RIP, OSPF).

20. Моделювання та аналіз програмного забезпечення. Моделювання й аналіз розглядаються як основні концепції в будь-якій інженерній дисципліні, тому що вони необхідні для документування й оцінки проектних рішень і альтернатив. Моделювання й аналіз у першу чергу застосовуються до аналізу, специфікації й атестації вимог. Вимоги являють собою реальні потреби користувачів, клієнтів і інших зацікавлених осіб, інтереси яких так чи інакше зачіпаються системою.

21. Мультизадачне програмування. Метою курсу є вивчення методів створення паралельних алгоритмів і програм. Розглядаються сучасні технології паралельної обробки даних (SSE), виконання команд (суперскалярність), функцій (багатопоточність) і програм (багатопроцесність), математичний апарат для створення паралельних алгоритмів, етапи розробки паралельних програм, оцінка обчислювальної складності в різних режимах виконання програм, сучасні технології для створення, відлагодження та аналізу виконання таких програм.

22. Мультимедійні технології. Метою дисципліни є формування методологічних уявлень інженера-програміста про технологію розробки програмних засобів мультимедіа, оволодіння технологіями віртуальної дійсності, а саме тих, що ґрунтуються на принципах поєднання звукового та візуального відображення інформації. Студенти повинні ознайомитися з методами та положеннями теорії та практики розробки, перспективами і тенденціями розвитку мультимедійних технологій, повинні оволодіти принципами, технологіями та програмними продуктами зберігання та розповсюдження в Інтернет мультимедіа-інформації, цифрової анімації та звукового супроводу на Веб-сторінках, програмними технологіями створення віртуальної дійсності.

23. Об’єктно – орієнтоване програмування. Курс є введенням до об’єктно-орієнтованого програмування (ООП). Він починається оглядом керуючих конструкцій програмування та поширених структур даних з акцентом на масиви. Далі вводяться основні поняття ООП, особлива увага надається визначенню та використанню класів. Також розглядаються різні мови програмування стосовно до ООП, найбільш поширені алгоритми, найпростіший аналіз складності алгоритмів та окремі питання програмної інженерії.

24. Операційні системи. Засвоєння основоположних знань у використанні та розробці операційних систем. Розглядаються класифікація сучасних операційних систем, архітектура та принципи їх побудови, забезпечення паралелізму в умовах одно- та багатопроцесорних систем, керування зовнішніми пристроями, керування процесами та потоками, керування пам’яттю.

25. Організація компютерних мереж. Знання студентів у галузі сучасних мережних технологій. Після вивчення дисципліни студенти повинні знати концепції, принципи, правила побудови мереж LAN і WAN. Цей курс із загальних мережних технологій. Студенти будуть використовувати технології, процедури та обладнання для зв’язку і роботи комп’ютерів у мережах Зміст: Класифікація мереж, модель OSI та стандарти IEEE. Мережне обладнання (концентратори, мультиплексори, комутатори, маршрутизатори, шлюзи). Протоколи комунікації (HDLC, PPP, SLIP).

26. Основи алгоритмізації. Вивчення основних алгоритмів програмування. Закріплення навичок роботи редакторами побудови блок-схем.

27. Основи інтеграції інформаційних потоків. Програма передбачає вивчення студентами основних принципів кількісного та якісного аналізу процесів у сучасному інформаційному просторі із застосуванням методики аналізу інформаційних потоків. Метою цього спецкурсу є підготовка студентів магістратури до наукових досліджень електронних видань, що є неможливим без кількісної оцінки характеристик процесів у системі продукування та поширення інтернет-контенту.

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

29. Основи програмування. Засвоєння основ машинної арифметики (двійкової та 16-річної систем обчислювання) та засобів перетворення чисел з однієї в іншу систему обчислювання; зуміння типових алгоритмічних структур та основ алгоритмізації; розробка алгоритмів, де ці типові алгоритмічні структури комбінуються; засвоєння технології розробки процедурних програм на мові С++.

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

31. Програмне забезпечення комп’ютерних мереж. Закріплення навичок розробки програмного забезпечення для комп’ютерних мереж, розробка власних протоколів.

32. Програмне забезпечення АСУ технологічних процесів. Слухачі ознайомляться з сучасними підходами до створення програмних продуктів та великих програмних систем. Здобудуть уявлення про парадигми, методології програмування. Докладно вивчать основні фази, процеси розробки програмного забезпечення. Докладно вивчать такі методології як Rational Unified Process (Уніфікований процес розробки програмних продуктів), та Екстремальне програмування. Матимуть змогу використовувати, винаходити та документувати нові паттерни.

33. Проектування бізнес-логіки в базах даних. Формування систематичного та наукового підходу до розробки автоматизованих інформаційних систем корпоративного рівня та придбання практичних навичок використання систем управління базами даних, що лежать у їх основі, на прикладі СУБД ORACLE; розуміння взаємозв’язку архітектури даних на фізичному, логічному рівнях; володіння сучасними методами та засобами розробки інформаційних систем, таких як технологія клієнт-сервер, розподілені системи. Особливу увагу приділяється набуттю навичок розробки серверних частин інфораційних систем.

34. Програмування в Інтернет. Надання майбутнім спеціалістам розуміння принципів програмування в Інтернет на прикладі серверної скриптової мови програмування PHP.

35. Проектний практикум. Метою курсу є засвоєння практичних навичок у галузі створення программних систем. Практично засвоїти життєвий цикл програмного продукта. Реалізувати один з методів організації розробки програмної системи. Одержати навички створення програм у складі групи програмістів (розподіл обов’язків, робочі та етичні відношення між членами групи, особливості виконання кожної зі складових процесу). Поглибити свої знання та навички створення моделі, алгоритму та програми для конкретної задачі. Навчитися створювати програми, що є складовими систем вищого рівня.

36. Проектування розподілених інформаційних систем. Метою курсу є вивчення методів створення паралельних алгоритмів і програм. Розглядаються сучасні технології паралельної обробки даних (SSE), виконання команд (суперскалярність), функцій (багатопоточність) і програм (багатопроцесність), математичний апарат для створення паралельних алгоритмів, етапи розробки паралельних програм, оцінка обчислювальної складності в різних режимах виконання програм, сучасні технології для створення, відлагодження та аналізу виконання таких програм.

37. Середовища розробки програм. Ознайомлення та закріплення навичок реалізації програмних алгоритмів у середовищах Delphi та VisualStudio.

38. Сертифифікація та патентознавство. Дисципліна призначена для магістрів і завершує творчий блок дисциплін для магістрів, серед яких «Методологія наукових досліджень». Ця дисципліна як наукова дисципліна носить інтегративний характер і знаходиться на стику ряду самостійних дисциплін, включаючи технічні, правові, економічні і специфічні галузі знань.

39. Системне програмування засобами API. Ознайомлення з особливостями програмування інтерфейсів, визначення основних методів та засобів для автоматизованого програмування програмних інтерфейсів.

40. Теорія прийняття рішень.  Вивчається системна парадигма та інструментарій прийняття рішень, аксіоматичні теорії раціонального поводження у прийнятті рішення; розглядаються багатокритеріальні математичні моделі та методи у прийнятті рішень, а також інструментарій штучних нейронних мереж та генетичних алгоритмів; експертне оцінювання у прийнятті рішень; прийняття рішень в умовах невизначеності з урахуванням та оцінюванням ризику, крім того розглядається теорія та інструментарій нечітких множин та синтез нейронних мереж, нечітких множин та генетичних алгоритмів у прийнятті рішень.

41. Теорія розпізнавання образів та класифікація в системах штучного інтелекту. Систематизація знань про можливості й особливості застосування нейрокомп’ютерних алгоритмів і систем цифрової обробки інформації

42. Цифрова обробка сигналів. Головною метою дисципліни є вироблення у студентів системного підходу до основних засад цифрової обробки сигналів;  навчити працювати з методами цифрової обробки з урахуванням особливостей аналізу похибок; навчити застосовувати знання при рішенні задач інформаційно-вимірювальної техніки.

43.  Якість програмного забезпечення та тестування. Якість: як її забезпечити й верифікувати; необхідність культури якості. Запобігання помилок і проблем. Перевірки інспекціями й рецензії. Методи тестування, верифікації й атестації. Якість процесу в поєднанні з якістю продукту. Стандарти якості. Забезпечення якості продукту і якості процесу. Статистичні підходи до контролю якості.