Cистемна інженерія програмного забезпечення
Мета вивчення дисципліни
формування у здобувачів комплексу знань і здобуття навичок з системної інженерії програмного забезпечення.
Практичне значення та використання отриманих знань
набуття практичних навичок та формування у здобувачів вищої освіти знань з особливостей процесу системної інженерії програмного забезпечення; формування системного погляду, що включає в себе моделювання, прийняття рішень і оптимізацію, планування і управління процесами життєвого циклу системи; навчання методам розробки з використанням базових моделей і типових процесів: ознайомлення зі стандартами системної і програмної інженерії.
Тематика та види навчальних занять
Для денної форми здобуття освіти
Лекційні заняття
Лекція 1. Введення в поняття «система». Принцип системності. Застосування поняття «система». Багатозначність поняття «система». Історія виникнення і загальна характеристика поняття «система». Підходи до визначення поняття «система». Групи визначень: онтологічний, гносеологічний, методологічний підходи.
Лекція 2. Сучасний зміст поняття «система». Формалізовані визначення поняття «система». Вибір визначення системи. Основні поняття, що характеризують будову та функціонування систем. Поняття мети та закономірності ціле утворення. Зв'язок системи і середовища.
Лекція 3. Системна інженерія в структурі сучасних системних досліджень. Основні поняття. Базова методологія системного аналізу. Предмет системного аналізу. Етапи системного аналізу. Принципи системного аналізу.
Лекція 4 Переваги системного аналізу (підходу). Система переваг ОПР і системний підхід до процесу прийняття рішень. Концепція ризику в задачах системного аналізу.
Лекція 5. Методи і моделі теорії систем і системного аналізу. Моделювання. Базові моделі систем. Вимірювання та оцінювання систем.
Лекція 6. Математичний опис систем. Внутрішній опис; зовнішнє опис; опис систем з кінцевим числом станів; опис системи на мові потенційних функцій; одномірна динаміка; стаціонарна динаміка.
Лекція 7. Задача прийняття рішень. Прийняття рішень. Завдання прийняття рішень. Процес прийняття рішень. Основні системно-теоретичні завдання.
Лекція 8. Керовані і некеровані динамічні системи. Ідентифікація. Обмеження. Оптимізація. Стохастичні системи.
Лекція 9. Мови опису вибору. Вибір як реалізація мети. Множинність завдань вибору.
Мова, яка описує вибір критеріально.
Лекція 10. Зведення багатокритеріальної задачі до однокритеріальної. Умовна максимізація. Пошук альтернативи із заданими властивостями. Знаходження паретовської безлічі.
Лекція 11. Багатокритеріальні задачі прийняття рішень. Загальні відомості про багатокритеріальні задачі оптимізації.
Лекція 12. Багатокритеріальні задачі прийняття рішень. Математична модель об'єкта проектування.
Лекція 13. Постановка задачі багатокритеріальної оптимізації. Проблеми вирішення завдань багатокритеріальної оптимізації.
Лекція 14. Декомпозиція системи. Моделі системи як основа декомпозиції. Змістовна модель, як підстава для декомпозиції. Зв’язок між формальною та змістовною моделями. Проблеми повноти моделей. Алгоритмізація процесу декомпозиції.
Лекція 15. Прийняття рішень в умовах ризику і невизначеності. Методологія прийняття рішення. Прийняття рішень в умовах ризику. Прийняття рішень в умовах невизначеності.
Практичні заняття
Практичне заняття №1. Основні моделі системного аналізу. Схема взаємодії досліджуваної системи з довкіллям.
Мета заняття: ознайомитись з основними типами моделей системного аналізу та навчитися будувати схему взаємодії системи із зовнішнім середовищем.
Практичне заняття №2. Формування вимог та проблемних ситуацій до досліджуваної системи системи з довкіллям.
Мета заняття: навчитись визначати проблемні ситуації у функціонуванні системи та формулювати вимоги до її удосконалення у взаємодії з довкіллям.
Практичне заняття №3 Огляд прикладних методів та моделей системного аналізу.
Мета заняття: дослідити сучасні прикладні методи та моделі системного аналізу, оцінити їх придатність для вирішення практичних завдань.
Практичне заняття №4. Систематизація шляхів досягнення цілей, оцінка їхньої значущості.
Мета заняття: розвинути навички структурування цілей системи, визначення шляхів їх досягнення та оцінювання відносної важливості кожної цілі.
Практичне заняття №5. Розгляд системної послідовності прийняття рішень.
Мета заняття: засвоїти етапи системного процесу прийняття рішень та навчитися формалізувати логіку вибору альтернативних дій.
Практичне заняття №6. Розгляд методів генерації рішень.
Мета заняття: ознайомитись із методами генерації та креативного пошуку рішень, навчитися формувати множину можливих альтернатив для досліджуваної системи.
Практичне заняття №7. Вибір оптимального варіанта. Експериментальна оцінка кожного варіанта.
Мета заняття: освоїти методи порівняльного аналізу альтернатив, здійснити експериментальну оцінку варіантів та обґрунтувати вибір оптимального рішення.
Практичне заняття №8. Багатокритеріальний вибір на основі експертних оцінок.
Мета заняття: навчитись застосовувати методи багатокритеріального аналізу та експертного оцінювання для вибору найефективнішого варіанта системного рішення.
Лабораторні заняття
Лабораторне заняття № 1. Побудова моделі «чорного ящика» досліджуваної системи.
Мета заняття: ознайомитись із принципами побудови моделі «чорного ящика» та визначити основні вхідні, вихідні параметри і зовнішні зв’язки досліджуваної системи.
Лабораторне заняття № 2. Генерація і вибір перспективних варіантів.
Мета заняття: Навчитись формувати множину можливих варіантів реалізації системи та обирати перспективні рішення на основі заданих критеріїв і обмежень
Лабораторне заняття № 3. Побудова ієрархічної моделі досліджуваної системи: структурний аналіз.
Мета заняття: розробити верхній рівень ієрархічної моделі системи, визначивши головні підсистеми, їх функції та взаємозв’язки.
Лабораторне заняття № 4 Деталізація ієрархічної моделі та опис функцій підсистем.
Мета заняття: виконати декомпозицію підсистем на нижчі рівні, уточнити функції та вхідно-вихідні параметри кожного елемента моделі
Лабораторне заняття № 5. Формування цілей системи та розробка критеріїв ефективності.
Мета заняття: визначити основні цілі функціонування системи та розробити показники (критерії) для оцінювання ступеня їх досягнення
Лабораторне заняття № 6. Ієрархія цілей та узгодження критеріїв ефективності.
Мета заняття: побудувати ієрархічну структуру цілей системи, узгодити локальні та глобальні критерії, забезпечивши їх взаємну узгодженість
Лабораторне заняття № 7. Вибір оптимального варіанта. Експериментальна оцінка кожного варіанта.
Мета заняття: навчитись проводити експериментальну оцінку можливих варіантів реалізації системи та обґрунтовувати вибір оптимального рішення за визначеними критеріями
Для заочної форми здобуття освіти
Лекційні заняття
Лекція 1. Введення в поняття «система». Принцип системності. Застосування поняття «система». Багатозначність поняття «система». Історія виникнення і загальна характеристика поняття «система». Підходи до визначення поняття «система». Групи визначень: онтологічний, гносеологічний, методологічний підходи.
Лекція 2. Переваги системного аналізу (підходу). Система переваг ОПР і системний підхід до процесу прийняття рішень. Концепція ризику в задачах системного аналізу.
Практичні заняття
Практичне заняття №1. Формування вимог та проблемних ситуацій до досліджуваної системи системи з довкіллям.
Мета заняття: навчитись виявляти проблемні ситуації, що виникають у процесі взаємодії системи з зовнішнім середовищем, та формулювати початкові вимоги до її функціонування і розвитку.
Лабораторні заняття
Лабораторне заняття № 1. Побудова моделі «чорного ящика» досліджуваної системи.
Мета заняття: ознайомитись із принципами побудови моделі «чорного ящика» та визначити основні вхідні, вихідні параметри і зовнішні зв’язки досліджуваної системи.
Лабораторне заняття № 2. Генерація і вибір перспективних варіантів.
Мета заняття: Навчитись формувати множину можливих варіантів реалізації системи та обирати перспективні рішення на основі заданих критеріїв і обмежень
Консультації здійснюються впродовж семестру згідно встановленого розкладу.
Індивідуальна робота
Для очної форми здобуття освіти.
Розрахунково-графічна робота
Мета розрахунково-графічної роботи - є закріплення теоретичних знань і розвиток умінь практичного застосування методів системного аналізу для дослідження, моделювання та вдосконалення складних систем.
Здобувач отримує завдання на початку семестру на платформі edu.op.edu.ua.
Пояснювальна записка повинна містити 30–35 сторінок. Кількість розділів – 7.
Змістовна послідовність виконання роботи.
1. Вступ. Опис варіанту та предметної області. (Теоретична обґрунтованість теми, чітко розроблений науковий апарат).
2. Побудова моделі «чорного ящика» досліджуваної системи.
3. Формування вимог та проблемних ситуацій.
4. Побудова ієрархічної змістовної моделі досліджуваної системи.
5. Формування цілей та критеріїв досягнення цілей досліджуваної системи побудова дерева цілей системи.
6. Генерація і вибір перспективних варіантів.
7. Висновки та оформлення бібліографії.
Захист розрахунково-графічної роботи – протягом двох останніх навчальних тижнів семестру. На захисті студент представляє презинтацію своєї роботи.
Для заочної форми здобуття освіти
Розрахунково-графічна робота
Мета розрахунково-графічної роботи - є закріплення теоретичних знань і розвиток умінь практичного застосування методів системного аналізу для дослідження, моделювання та вдосконалення складних систем.
Здобувач отримує завдання на початку семестру на платформі edu.op.edu.ua.
Пояснювальна записка повинна містити 30–35 сторінок. Кількість розділів – 7.
Змістовна послідовність виконання роботи.
1. Вступ. Опис варіанту та предметної області. (Теоретична обґрунтованість теми, чітко розроблений науковий апарат).
2. Побудова моделі «чорного ящика» досліджуваної системи.
3. Формування вимог та проблемних ситуацій.
4. Побудова ієрархічної змістовної моделі досліджуваної системи.
5. Формування цілей та критеріїв досягнення цілей досліджуваної системи побудова дерева цілей системи.
6. Генерація і вибір перспективних варіантів.
7. Висновки та оформлення бібліографії.
Захист розрахунково-графічної роботи – протягом двох останніх навчальних тижнів семестру. На захисті студент представляє презинтацію своєї роботи.
Завдання для виконання контрольної роботи здобувач отримує на установчій лекції.
Робота містить 3 теоретичних питання та 2 практичних завдання.
Обсяг відповіді на кожне теоретичне питання: не більше, ніж одна сторінка тексту, оформленого шрифтом Times New Roman 14 pt.
Термін надання виконаної контрольної роботи на перевірку – не пізніше, ніж за місяць до початку сесії.
Форми контрольних заходів та оцінювання результатів навчання
Для денної форми здобуття освіти
Поточний контроль полягає у виконанні
1) 7-мі індивідуальних поточних завдань. Індивідуальні поточні завдання виконуються письмово і полягають в виконанні типових дій відповідно до мети та завдань лабораторних занять. Бездоганне виконання індивідуальних поточних завдань №1- №7 оцінюється по 4 бали;
2) розрахунково-графічної роботи. Бездоганне виконання оцінюється у 12 балів.
3) двох модульних контрольних робіт. Модульні контрольні роботи складаються з теоретичної і практичної частин та проводяться у формі комп'ютерного тестування. Бездоганне виконання кожної модульної контрольної роботи становить 30 балів.
Підсумковий контроль – екзамен. Екзамен у формі комп'ютерного тестування. Максимальна оцінка, яку може отримати студент – 100 балів.
Для заочної форми здобуття освіти
Захист контрольної роботи. Бездоганне виконання контрольної роботи оцінюється у 50 балів. При її захисті студент може отримати до 50 балів.
Підсумковий контроль – екзамен. Екзамен у формі комп'ютерного тестування. Максимальна оцінка, яку може отримати студент – 100 балів.
ПРН01 Знати і застосовувати сучасні професійні стандарти і інші нормативно-правові
документи з інженерії програмного забезпечення
ПРН02 Оцінювати і вибирати ефективні методи і моделі розроблення, впровадження,
супроводу програмного забезпечення та управління відповідними процесами на всіх
етапах життєвого циклу.
ПРН03 Будувати і досліджувати моделі інформаційних процесів у прикладній області.
ПРН05 Розробляти, аналізувати, обґрунтовувати та систематизувати вимоги до
програмного забезпечення.
ПРН07 Аналізувати, оцінювати і застосовувати на системному рівні сучасні програмні та апаратні платформи для розв’язання складних задач інженерії програмного забезпечення.
ПРН08. Розробляти і модифікувати архітектуру програмного забезпечення для реалізації вимог замовника.
ПРН10. Модифікувати існуючі та розробляти нові алгоритмічні рішення детального проєктування програмного забезпечення.
ПРН11 Забезпечувати якість на всіх стадіях життєвого циклу програмного забезпечення, у тому числі з використанням релевантних моделей та методів оцінювання, а також засобів автоматизованого тестування і верифікації програмного забезпечення.
ПРН13 Конфігурувати програмне забезпечення, керувати його змінами та розробленням програмної документації на всіх етапах життєвого циклу.
ПРН14 Прогнозувати розвиток програмних систем та інформаційних технологій.