ЄФВВ Інформаційні технології - Інженерія систем програмного забезпечення
Ви можете переглянути доступні підтеми, але для доступу до теорії та тестів потрібно увійти та придбати підписку.
Підтеми
Складні великі системи; властивості систем: емерджентність, адитивність, еквіфінальність
Відкриті та закриті системи; класифікація за призначенням, походженням, видом елементів, способом організації; спільне та відмінності складних і великих систем
Моделі систем: склад і структуровані системи; моделі типи чорної та білої скриньки; концептуальні, математичні i комп’ютерні моделі; зв’язок між системою та моделлю; iзо- та гомоморфізм
Інформаційні системи: поняття, цілі, значення, класифікація за функціональністю, масштабом, сферою застосування
Забезпечення інформаційних систем: організаційне, математичне, програмне, технічне, лінгвістичне, методичне, правове
Аналіз вимог: класифікація вимог до програмного забезпечення, джерела та методи збирання вимог
Вимоги користувача (варіанти використання та історії користувачів)
Функціональні та нефункціональні вимоги, обмеження; структуризація функціональних вимог
Проєктування програмного забезпечення: види проектування (структурне, об’єктно-орієнтоване, функціональне, архітектурне, інтерфейсне)
Парадигми проектування: функціональна декомпозиція згори донизу, архітектура, орієнтована на дані, об’єктно-орієнтований аналіз та проектування, подієво-керована архітектура
Ідентифікація класів предметної області; UML-діаграми ієрархії класів
Проектування сценаріїв реалізації варіантів використання на основі UML-діаграм послідовностей та комунікацій
Основні патерни проектування: MVC, Abstract Factory, Facade, Decorator, Flyweight, Visitor, Observer, Proxy, Strategy, Chain of Responsibility
Реалізація програмного забезпечення: вимоги до оформлення коду; засоби автоматичної генерації програмного коду; налагодження (Breakpoints, Variable Watch, Console output, Debugger, Code Analyzers); керування конфігурацією та версіями програмного забезпечення; постійна інтеграція/постійне впровадження (CI/CD)
Забезпечення якості: спільне та відмінності процесів тестування, верифікації, валідації
Тестування методами білої та чорної скрині; pівні тестування: модульний, інтеграційний, системний, валідаційний; розробка через тестування (TDD)
Додаткові техніки верифікації та валідації: інспекція коду, перевірка на відповідність стандартам i вимогам, оцінювання зручності використання та користувацького досвіду, перевірка продуктивності та масштабованості
Командна робота, підходи до розробки програмного забезпечення (ПЗ): класичні моделі розробки ПЗ: каскадна (водоспадна), ітераційна, інкрементна
Промислові технології розробки ПЗ: RUP, MSF, Аgile, Scrum, Extreme Programming (ХР), Kanban
Ролі та обов’язки у команді проєкту, переваги командної роботи, ризики та складність такої співпраці
Основні стани планування i виконання проекту; життєвий цикл IT проєкту