Загальне визначення дисциплін програмної інженерії
Автор: Владислав Олефиренко • Апрель 23, 2021 • Лабораторная работа • 1,192 Слов (5 Страниц) • 409 Просмотры
Олефіренко В.С. 402-ТК
Лабораторна робота № 1
ЗАГАЛЬНЕ ВИЗНАЧЕННЯ ДИСЦИПЛІН ПРОГРАМНОЇ ІНЖЕНЕРІЇ
Мета роботи: навчитися обґрунтовувати теоретичні і прикладні ознаки та атрибути програмної інженерії та її дисциплін.
Самостійне завдання:
- Ознайомитися із загальним визначенням дисциплін програмної інженерії.
- Розглянути теоретичний фундамент програмної інженерії.
- Провести системний розгляд програмної інженерії з точки зору науки, інженерії, економіки та керування виробництвом.
- Розглянути структуру, зміст та призначення дисциплін ПІ.
Сутність кожної з дисциплін, які є складовими програмної інженерії, наступні:
- наукова дисципліна визначена як сукупність формальних методів специфікації, доведення та верифікації програмних об’єктів, методів їх об’єднання, теоретичних і прикладних методів програмування та теоретичних моделей надійності програм та методів їхнього застосування;
- інженерна дисципліна – це сукупність прийомів виконання діяльності, пов’язаної з виготовленням програмного продукту для різних видів цільових об’єктів із застосуванням методів, засобів і інструментів наукової складової програмної інженерії;
- дисципліна керування базується на теорії управління, як підґрунті для визначення сутності базових методів керування програмним проектом за графіками робіт, спостереження за виконанням планів, керуванням ризиками та формуванням версій (конфігурацій) виготовленого програмного продукту та передачі його користувачам;
- економічна дисципліна сформульована як сукупність методів експертного, якісного і кількісного оцінювання проміжних об’єктів ЖЦ, а також економічних методів розрахунків часу, обсягу і вартості виготовлення програмних продуктів, що поставляються на ринок;
- виробнича дисципліна – це сучасні промислові технологічні прийоми виробництва прикладних систем, сімейств систем із застосуванням готових програмних ресурсів, включаючи компоненти повторного використання, накопичених у сучасних інформаційних сховищах, одиночні готові програми розв’язку деяких задач. Для забезпечення їх правильності виконуються методи верифікації, тестування і оцінки за отриманими на них показниками якості програмного продукту.
Програмна інженерія інтегрує в собі принципи математики та головні положення фундаментальних наук, а саме, теорії алгоритмів, математичної логіки, теорії керування, теорії множин, доведення. Ці науки створюють теоретичний базис програмної інженерії, необхідний для побудови абстракцій програм за їх базовими поняттями та принципами, що перелічені нижче за кожною з фундаментальних наук базису:
– у теорії алгоритмів – нормальні алгоритми, обчислювальні функції,
машина Тюрінга, алгоритмічні алгебри, граф-схеми, моделі алгоритмів і програм тощо;
– у математичній логіці – логічні числення і логіко-алгебраїчний апарат
специфікації програм;
– у теорії керування – принципи, методи та загальні закони планування і керування процесами отримання й оброблення інформації в кібернетичних і управлінських системах;
– у теорії доведення – математичне доведення за аксіомами і твердженнями програм, вивід теорем, обґрунтування суперечності й алгоритмічно невирішених проблем, а також теорія верифікації програм, теорія надійності ПЗ;
– у теорії множин – квантори загальності, існування, операції над
множинами, що застосовуються для формального подання різних сукупностей програмних об’єктів і аксіом.
З точки зору науки, програмна інженерія як наукова дисципліна охоплює теоретичні, формальні методи та відповідні засоби побудови складних програмних об’єктів. Побудова має на меті аналіз предметної області, що автоматизується, і продукування результуючого коду для виконання на комп'ютері. Вона як наука містить у собі:
1) основні поняття і об'єкти;
...