Поняття життєвого циклу програмного забезпечення та етапи розробки програмного забезпечення. Тема 1

Содержание

Слайд 2

1.1. Програми і програмне забезпечення (програмні продукти)

Програмне забезпечення (Software) - набір

1.1. Програми і програмне забезпечення (програмні продукти) Програмне забезпечення (Software) - набір
комп'ютерних програм, процедур і пов'язаної з ними документації і даних (ISO/IEC 12207).

Таким чином, програмне забезпечення - це не просто програма. Це ще і документація і інструкції користувача.

Замість словосполучення "програмне забезпечення" часто використовують інше - "програмний продукт". Ці поняття близькі за змістом, але це не одне і те ж.

Програмне забезпечення, в загальному випадку, є частиною інформаційної системи, наприклад – САПР (система автоматизованого проектування) . До складу таких систем крім програмного, входять і інші види забезпечень – інформаційне, математичне, техніне, методичне, тощо.

Пограмне забезпечення не є завершеним рішенням, це лише одна з частин системи.

А програмний продукт – це закінчене рішення. Одна з головних властивостей програмного продукту – його здатність бути проданим (і купленим).

Можливість продавання ПП – основа бізнесу по розробці програмного забезпечення. Якщо ви збираєтеся щось розробити, це повинно бути затребувано на ринку. Інакше ви витратите гроші на розробку (зарплата співробітників, накладні витрати, податки, оренда приміщення...), але нічого замість цього не отримаєте.

Підсумуємо: програмний продукт - це програма зі всією супутньою документацією, програма, яку можна продати, або іншим чином отримати з неї фінансову вигоду.

Слайд 3

1.2. Життєвий цикл програмного забезпечення

Процес створення та використання програмної системи включає декілька

1.2. Життєвий цикл програмного забезпечення Процес створення та використання програмної системи включає
стадій: від початкової ідеї до остаточного морального застаріння. Цей процес називається життєвим циклом програмного забезпечення.
Він складається з наступних 6 етапів.

1. Специфікація вимог:
а) підготовка повного і чіткого визначення задачі;
б) представлення документів з вимогами до задачі користувачам і аналітикам для погодження (ухвалення).

2. Аналіз:
а) вивчення задачі, визначення специфікацій (тобто структури вхідних та вихідних даних);
б) оцінка альтернативних методів розв’язання (алгоритмів);
в) вибір оптимального метода (алгоритма).

3. Проектування:
а) визначення структури програмної системи та її проектування;
б) розбиття програмної системи на окремі компоненти та їх проектування з визначенням ключових елементів структури даних.

Слайд 4

6. Експлуатація і супроводження:
а) використання готової програмної системи;
б) оцінка її ефективності;
в) усунення знайдених в

6. Експлуатація і супроводження: а) використання готової програмної системи; б) оцінка її
процесі експлуатації помилок;
г) внесення необхідних змін для підтримки актуальності програмної системи;
д) перевірка коректності внесених змін (вони не повинні негативно впливати на функціонування системи).

4. Реалізація:
а) створення алгоритмів і кодів окремих модулів вибраною мовою програмування;
б) створення вихідного текста програми;
в) налагодження вихідного текста.

5. Тестування і верифікація:
а) тестування вихідного текста;
б) участь користувачів і спеціальних колективів (тестерів) у всіх перевірках системи.

Життєвий цикл програмного забезпечення є ітеративним, тобто допускає багатократне повторення своїх етапів.
В ході розробки (етап 3) можуть виникнути проблеми, які будуть вимагати змін вимог до системи (етап 1); під час реалізації (етап 4) може виникнути необхідність переглянути результати, отримані під час розробки (на етапі 3); під час тестування (етап 5) можуть бути виявлені помилки і так далі.

Слайд 5

Методологічну основу програмної інженерії становить поняття життєвого циклу програмного продукту (ЖЦПП). Уперше

Методологічну основу програмної інженерії становить поняття життєвого циклу програмного продукту (ЖЦПП). Уперше
про життєвий цикл заговорили в 1968 році в Лондоні, де відбулася зустріч 22- х керівників проектів по розробці програмного забезпечення.
На зустрічі аналізувалися проблеми й перспективи проектування, розробки, поширення й підтримки програм. Було констатовано, що методи, що застосовуються у розробці ПЗ вимагають постійного вдосконалення. Саме на цій зустрічі була запропонована концепція життєвого циклу ПЗ, як послідовності кроків- стадій, які необхідно виконати в процесі створення й експлуатації програмного засобу.

Програми створюються, експлуатуються й розбудовуються в часі.
Життєвий цикл ПЗ - це період часу, який починається з моменту ухвалення рішення про необхідність створення програмного забезпечення й закінчується в момент його повного вилучення з експлуатації.

Кожна програма починається з якої-небудь незадовільненої потреби й, усвідомивши її, необхідно провести системний аналіз для виявлення цілей майбутнього програмного виробу й вимог до нього.

Наступним етапом буде зовнішнє специфікування, призначене для створення "ідеології" програми - загальної спрямованості в наступному проектуванні, аж до зовнішнього вигляду програми й інструкції користування програмою.

На етапі проектування програмний виріб специфікується в повному обсязі від постановки завдання до робочого проекту з описом внутрішньої структури програми й плану розробки частин програми.

Слайд 6

1.3. Загальна структура ЖЦПЗ відповідно до міжнародного стандарту ІSO/ІEC 12207: 1995

Основним нормативним

1.3. Загальна структура ЖЦПЗ відповідно до міжнародного стандарту ІSO/ІEC 12207: 1995 Основним
документом, що регламентують склад процесів ЖЦ ПЗ, є міжнародний стандарт ІSO/ІEC 12207: 1995

У даному стандарті програмний продукт визначається як набір комп'ютерних програм, процедур і пов'язаних з ними документації й даних. Процес визначається як сукупність взаємозалежних дій, що перетворять деякі вхідні дані у вихідні.

Стандарт ІSO/ІEC 12207 визначає загальну структуру життєвого циклу ПЗ у вигляді три східчастої моделі, яка складається із процесів, видів діяльності й завдань.

Кожний процес розділений на набір дій, кожна дія - на набір завдань, кожне завдання характеризується певним методом розв'язку, вихідними даними, у тому числі, отриманими від інших процесів, і результатами.

Будь-який процес пов'язаний з певними артефактами й ролями зацікавлених осіб. Кожний процес, дія або завдання ініціюється й виконується іншим процесом у міру необхідності, причому не існує заздалегідь певних послідовностей виконання.

Усього в стандарті ІSO/ІEC 12207 визначено 18 процесів, 74 видів діяльності й 224 різні завдання.

Слайд 7

У відповідності зі стандартом усі процеси життєвого циклу ПЗ розділені на 3

У відповідності зі стандартом усі процеси життєвого циклу ПЗ розділені на 3
групи

Верифікація програмного забезпечення — процес посвідчення, що програми та їх компоненти виконують запропоновані їм вимоги. Метою верифікації є посвідчення в тому, що програмне забезпечення відповідає висунутим вимогам. Паралельно з цим фіксуються нові дефекти, додані в процесі розробки. Процес верифікації є складовою частиною більш загального процесу забезпечення домовленого рівня якості розроблюваної системи.