Предметом вивчення навчальної дисципліни є теоретичні концепції, методи і засоби програмування, системи та інструменти їхньої підтримки, сучасні стандарти, зокрема, процеси життєвого циклу, вимірювання і оцінювання якості розробки програмного забезпечення.
Мета та завдання навчальної дисципліни
Формування у студентів знань, вмінь та навичок з розробки великих та середніх програмних систем, сучасних технологій розробки великих програмних проектів, методів математичного моделювання, які застосовуються в процесі розробки програмних систем загального та спеціального призначення, з розробки тестових документів, класифікації дефектів програмного забезпечення, відстеження життєвого сроку програмного забезпечення.
Основними завданнями вивчення дисципліни “Інженерія програмного забезпечення” є отримання практичних навичок та теоретичних знань у наступних питаннях:
– розробки великих та середніх програмних систем;
– відстеження життєвого циклу програмного забезпечення;
– тестування програмного забезпечення;
– супровід програмного забезпечення.
Згідно з вимогами освітньо-професійної програми студенти повинні:
знати :
– типову модель життєвого циклу програмного забезпечення;
– поняття системи та її оточення;
– основні поняття системотехніки;
– особливості програмних систем;
– основні моделі процесів розробки програмних систем;
– методи та моделі управління процесом розробки програмних систем;
– класифікацію вимог до програмних систем;
– моделі та методи розробки вимог користувача та системних специфікацій;
– моделі систем та їх переваги та недоліки;
– технології автоматизації процесів розробки програмних систем;
– методології проектування програмних систем;
– сучасні архітектури та технології проектування програмних систем;
– стадії тестінга у життєвому циклі продукту;
– класифікацію типів тесту за різними ознаками;
– класифікацію дефектів та їх атрибути;
– поняття контролю якості та гарантії якості;
– принципи складання тест-циклів.
вміти :
– застосовувати на практиці основні моделі розробки програмних систем;
– розробляти робочу документацію проектування програмних систем;
– розробляти вимоги користувача та системні програмні вимоги до програмних систем;
– застосовувати на практиці моделі та методи розробки програмних систем;
– розробляти тест-плани, тест-кейси, звіт про знайдений дефект:
– застосовувати на практиці різноманітні типи тестінгу.