Неможливо виявити всі помилки проектування
Програма відповідає специфікації, якщо вона робить саме те, що від неї очікується згідно зі специфікацією, і це все, що вона повинна робити. Дехто вважає, що якщо програма відповідає специфікації, то вона працює правильно. Але що, якщо в специфікації сказано, що 2 + 2 має дорівнювати 5? Що буде вважатися помилкою в програмі - точна відповідність неправильній специфікації чи відхилення від неї?
Найкращі компанії з тестування програмного забезпеченнянезважаючи на свій багаторічний досвід у сфері контролю якості, не можуть знайти всі помилки в програмі, оскільки це просто неможливо.
Як і все, що робиться людьми, технічні характеристики часто містять помилки. Деякі з них є випадковими (2 + 2 = 5), а інші є результатом прорахунків, допущених дизайнерами. Власне, недоліки користувацького інтерфейсу часто пов’язані з помилками проектування. Але якщо програма містить помилку, користувачеві байдуже, на якому етапі розробки вона виникла. Тому, якщо програма була написана на основі неправильної специфікації, ми говоримо, що вона неправильна. Якщо програма демонструє некоректну поведінку, настав час вдатися до послуги з тестування продуктивності програмного забезпечення.
Як і будь-які інші проблеми, неможливо виявити всі помилки користувацького інтерфейсу. І навряд чи ви знайдете когось, хто може стверджувати, що здатен вирішити цю проблему. Таким чином, це ще одна причина, чому програми не можуть бути ретельно протестовані.
Правильність програми не може бути доведена логічно
Усі комп’ютери використовують логіку для виконання всіх своїх функцій. Програми пишуться дуже точною мовою. Аналізуючи логіку програми, можна визначити її стан у будь-якій точці коду і в будь-який момент часу.
Без сумніву, виникне проблема знайти час і врахувати певну кількість і всі типи умов. Але навіть якщо їх не брати до уваги - то що саме можна перевірити, аналізуючи код? Майте на увазі, що мова йде лише про відповідність специфікації програми, але не про правильність специфікації.
І ще одне.. Аргументи - вони теж зібрані людиною, а отже, можуть містити помилки чи неточності. Де гарантія, що логіка людини, яка аналізує програму, точніша за логіку її розробника?
Ви знаєте лише про частину проблем. Насправді їх ще більше. У вас завжди не вистачає часу, а роботи багато.
Не варто забувати про послугу тестування на проникнення якщо є бажання зберегти приватні дані в безпеці. В іншому випадку, без ручних тестерів ви ризикуєте дозволити зловмисникам отримати доступ до функцій вашого комп’ютера!










0 коментарів