Програмні засоби
Великі виробники частіше за все працюють саме у напрямі дружності інтерфейсу до користувача. Тут можна виділити 3 аспекти:
програма має бути побудована таким чином, щоб робота з нею могла бути здійснювана на інтуїтивному рівні;
додаткова інформація, яку користувач може одержати у вигляді допоміжних текстів і підказок;
активні засоби допомоги, наявні у програмі.
Важливою умовою для інтуїтивної роботи є однакове оформлення рядків меню в усіх модулях одного офісного пакету. Допоміжні тексти і підказки можуть показувати, яку функцію виконує та чи інша кнопка. Активна допомога у вигляді підказки може надаватись у разі неправильних дій користувача.
Випробування будь-якої системи - тестування - є одним з найбільш відповідальних етапів її розробки і часто пов’язане із найбільшими складнощами і втратами часу. Мета тестування будь-якої програми полягає в тому, щоб впевнитись, чи дійсно вона вирішує те завдання, для якого була призначена і видає правильну відповідь за будь-яких умов.
Навіть якщо програма не конфліктує з апаратною частиною, повністю трансльована і видала результати ще не можна робити висновок, що програма працює правильно. В ній все ще може залишатись велика кількість логічних помилок, а між тим, задача, яка ставиться при написанні програми, це не просто одержання відповідей, а одержання правильних відповідей. Після того, як відлагодження повністю закінчене, навіть у програмі досвідченого програміста існує приблизно одна помилка на 20-30 написаних операторів. Ці помилки можуть бути як “катастрофічними”, так і незначними, і пов’язані як з неправильним алгоритмом, так і з несуттєвими помилками кодування.
Існує поняття “живучості” (robustness) програми і вважається, що програма не має цієї властивості, якщо легко перестає формувати правильні результати. Живучість програм з часом зростає через те, що у процесі їх експлуатації її відмовлення виявляються й усуваються.
“Живуча” програма - це така програма, яка продовжує зберігати свою працездатність, незважаючи на помилки персоналу з підготовки даних, недбалість відповідальних за контроль при введенні інформації у комп’ютер і безграмотні дії при введенні.
Процес тестування програми можна поділити на три етапи:
перевірка у звичайних умовах;
перевірка в екстремальних умовах;
перевірка у надзвичайних ситуаціях.
Перевірка у звичайних умовах передбачає тестування на основі даних, характерних для реальних умов функціонування програми.
Тестові дані для перевірки в екстремальних умовах включають граничні значення області зміни вхідних змінних, які повинні сприйматись програмою як правильні значення. Типовими прикладами таких екстремальних значень є дуже великі числа, дуже малі числа та відсутність інформації.
Останній етап тестування програми проводиться з використанням даних, значення яких лежать за межами допустимої області зміни.
Найгірша ситуація складається тоді, коли програма сприймає невірні дані як правильні і видає невірний, але правдоподібний результат. Невірні дані можуть утворюватись в результаті друкарських помилок або невірного розуміння інструкцій з введення даних. Тому програма має сама відкидати будь-які дані, які вона не в змозі обробляти правильно.
Сам програміст рідко здатен передбачити всі можливі ускладнення і ліквідувати їх за допомогою об’єктивного тестування.
Добре зарекомендував себе такий підхід до тестування, коли створюється спеціальна група з програмістів і представників замовника, у задачу якої входить випробування всіх програм і систем перш ніж вони будуть остаточно передані у постійну експлуатацію.
Розробка і розповсюдження нових засобів обчислювальної техніки і програмного забезпечення вимагають створення інформаційних еталонів, за допомогою яких можна порівнювати і тестувати не тільки завершені, а й розроблювані програми. Саме вони забезпечують аналіз споживчих властивостей, виділення позитивних і негативних сторін програмного забезпечення.