Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Moduli_pitannya(1).doc
Скачиваний:
5
Добавлен:
06.12.2018
Размер:
189.95 Кб
Скачать

Основні вимоги до програм

 Типова програма реалізує так званий IPO-принцип (Input - Processing - Output). Програма вводить деякі вхідні дані, обробляє їх відповідно до заданого алгоритму і видає вихідні дані, тобто результат. Велике значення мають інтерактивні програми, які в ході своєї роботи можуть сприймати команди від користувача і здійснювати з ним діалго.  Інтерактивними є, зокрема, сучасні операційні системи і переважна більшість прикладних програм загального призначення (текстові та графічні редактори, електронні таблиці та бази даних тощо).  Оскільки програма по суті являє собою алгоритм, записаний мовою, зрозумілою для комп'ютера, програма має всі властивості, характерні для алгоритмів. Але програма є конкретною реалізацією алгоритма, призначеною для практичного використання, і властивості програм розглядають саме з цієї точки зору.  Можна виділяти такі вимоги до програм:

1. Правильність.

Програма повинна видавати правильні результати для будь-яких даних з заздалегідь визначеного припустимого діапазону. Це звучить банально, але з цим пов'язана дуже серйозна проблема. Якщо програма є достатньо складною, навіть найкваліфікованіший програміст навряд чи зможе з першого разу написати її без помилок. Ці помилки можуть бути найрізноманітніші: від суто механічних ("забув поставити крапку з комою") до неналежного використання програмних конструкцій або навіть помилок в самому алгоритмі.  Загальноприйнятою є така класифікація програмних помилок:

·                      синтаксичні, які пов'язані з порушенням формальних граматичних правил написання програм. Синтаксичні помилки виявляються на етапі компіляції;

·                      помилки часу виконання. Ці помилки знову ж-таки поділяються на такі категорії:

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

§                       програма не доходить до кінця. Вона працює нескінченно довго або зависає;

§                       програма видає неправильні результати.

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

2. Ефективність.

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

3. Надійність.

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

4. Універсальність.

Програма повинна бути розрахована на широкий діапазон вхідних даних і при можливості - на широкий спектр задач.

5. Функціональність.

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

6. Зручність у використанні.

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

7. Стандартизованість.

Різні програмні продукти повинні мати однотипні засоби керування і однотипний інтерфейс для того, щоб користувач, який має досвід роботи з однією програмою, мав якнайменше незручностей при переході до іншої.

8. Переносимість.

Повинна забезпечуватися можливість перенесення програм з однієї машини на іншу без змін або з мінімальними змінами.

9. Читабельність.

Тексти програм повинні бути максимально простими для сприйняття і розуміння людиною.

10. Модифікованість.

Програма повинна передбачати можливість для змін і доповнень.

11. Документованість.

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

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]