# data[].attributes.headline
Програмне забезпечення

# data[].attributes.body
Програмне забезпечення (Software) - набір комп'ютерних програм, процедур і

пов'язаної з ними документації і даних (ISO/IEC 12207).

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

документація і інструкції користувача.

Замість словосполучення "програмне забезпечення" часто використовують інше -

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

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

системи, наприклад – САПР (система автоматизованого проектування) . До складу таких

систем крім програмного, входять і інші види забезпечень – інформаційне, математичне,

техніне, методичне, тощо.

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

системи.

# data[].attributes.headline
А програмний продукт –

# data[].attributes.body
А програмний продукт – це закінчене рішення. Одна з головних властивостей

програмного продукту – його здатність бути проданим (і купленим).

Можливість продавання ПП – основа бізнесу по розробці програмного

забезпечення. Якщо ви збираєтеся щось розробити, це повинно бути затребувано на

ринку. Інакше ви витратите гроші на розробку (зарплата співробітників, накладні витрати,

податки, оренда приміщення...), але нічого замість цього не отримаєте.

Підсумуємо: програмний продукт - це програма зі всією супутньою документацією,

програма, яку можна продати, або іншим чином отримати з неї фінансову вигоду.

# data[].attributes.headline
1.1. Програми і програ

# data[].attributes.body
1.1. Програми і програмне забезпечення (програмні продукти)

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

# data[].attributes.headline
Процес створення та ви

# data[].attributes.body
Процес створення та використання програмної системи включає декілька стадій: від

початкової ідеї до остаточного морального застаріння. Цей процес називається життєвим

циклом програмного забезпечення.

Він складається з наступних 6 етапів.

1. Специфікація вимог:

а) підготовка повного і чіткого визначення задачі;

б) представлення документів з вимогами до задачі користувачам і аналітикам для

погодження (ухвалення).

2. Аналіз:

а) вивчення задачі, визначення специфікацій (тобто структури вхідних та вихідних

даних);

б) оцінка альтернативних методів розв’язання (алгоритмів);

в) вибір оптимального метода (алгоритма).

3. Проектування:

а) визначення структури програмної системи та її проектування;

б) розбиття програмної системи на окремі компоненти та їх проектування з

визначенням ключових елементів структури даних.

# data[].attributes.headline
4. Реалізація:а

# data[].attributes.body
4. Реалізація:

а) створення алгоритмів і кодів окремих модулів вибраною мовою програмування;

б) створення вихідного текста програми;

в) налагодження вихідного текста.

5. Тестування і верифікація:

а) тестування вихідного текста;

б) участь користувачів і спеціальних колективів (тестерів) у всіх перевірках системи.

6. Експлуатація і супроводження:

а) використання готової програмної системи;

б) оцінка її ефективності;

в) усунення знайдених в процесі експлуатації помилок;

г) внесення необхідних змін для підтримки актуальності програмної системи;

д) перевірка коректності внесених змін (вони не повинні негативно впливати на

функціонування системи).

4. Реалізація:

а) створення алгоритмів і кодів окремих модулів вибраною мовою програмування;

б) створення вихідного текста програми;

в) налагодження вихідного текста.

5. Тестування і верифікація:

а) тестування вихідного текста;

б) участь користувачів і спеціальних колективів (тестерів) у всіх перевірках системи.

Життєвий цикл програмного забезпечення є ітеративним, тобто допускає

багатократне повторення своїх етапів.

В ході розробки (етап 3) можуть виникнути проблеми, які будуть вимагати змін вимог

до системи (етап 1); під час реалізації (етап 4) може виникнути необхідність

переглянути результати, отримані під час розробки (на етапі 3); під час тестування

(етап 5) можуть бути виявлені помилки і так далі.

# data[].attributes.body
Завдання: Оберіть один з типів тестування ПЗ, опишіть його суть, приклад застосування, інструменти, що використовуються.

Додайте зображення, відео або посилання – за бажанням.