Вступ до інженерії програмного забезпечення | страница 5
- фаза III: виконавці - досвідчені професіонали; ресурси - машини і комплекси, що використовуються в технологіях; методи - теоретичні і емпіричні, передавання знані, шляхом диференційованого навчання, супровід; використання - сегментація ринку.
Для інженерії програмного забезпечення характеристика зазначених фаз наводиться в табл. 1.2.
Інженерна діяльність реалізується інженерами в Контексті технологій. Технологія - це організована сукупність процесів, спрямованих на отримання з початкових матеріалів кінцевих продуктів за допомогою методів і засобів технологій. Інженери - це професіонали, чия освіта дозволяє їм, використовуючи знання фундаментальних наук і конкретних технологій, реалізовувати процеси, застосовуючи методи і засоби технологій для створення надійних, широко використовуваних продуктів.
Таблиця 1.2
Аспекти розглядання | Фаза (початок) | ||
І | II | III (1980) | |
(1960) | (1970) | ||
Особливості програмування | Програмування «абияк» | Програмування «в малому» | Програмування «у великому» |
Підготовка кадрів | Майже відсутня | Прикладна математика | Комп'ютерні науки |
Ресурси | Асемблери, машинні дампи | Транслятори, лінкери, завантажувачі, системи програмування | Середовища розробки програм |
Відсутні | НІРО, формалізовані технічні завдання | R-Технологія,PSL/PSA, SREM, SADT | |
Економіко | Відсутня | Інтуїтивна | PRICE-S, SCEP, SLIM |
Ринок | Відсутній, замовлення на програмне забезпечення | Виробництво для продажу | Сегментація ринку |
Нині інженерія програмного забезпечення - це систематизований, регламентований і кількісний (інженерний) підхід до вирішення завдань розробки, експлуатації, супроводу й утилізації програмного забезпечення. До того ж, процеси і програмне забезпечення мають відповідати заданим технічним, економічним, соціальним і правовим вимогам.
Технічні вимоги обов'язково відображають відповідність процесів і продуктів життєвого циклу вимогам, специфікованим замовником.
Економічні вимоги обов'язково містять вимоги щодо виконання проекту в рамках заданого фінансового бюджету.
Соціальні вимоги обов'язково відображають те, що створювані Програмні продукти повинні мати властивості корисності.
Правові вимоги обов'язково відображають те, що виконання програмного проекту повинне здійснюватися законними методами. Особливо це важливо, коли під час розробки застосовується успадковане програмне забезпечення або компоненти багаторазового використання.
Як і інші інженерні дисципліни, інженерія програмного забезпечення характеризується такими аспектами: