Как контролировать качество системы? Как точно узнать, что программа делает именно то, что нужно, и ничего другого? Как определить, что она достаточно надежна, переносима, удобна в использовании? Ответы на этот вопрос можно получить с помощью процессов верификации и валидации.
• Верифікація позначає перевірку того, що продукт робився правильно, тобто перевірку того, що він розроблявся відповідно до всіх вимог по відношенню до процесу і етапів розробки. До верифікації відносяться всі перевірки відповідності результатів деякого етапу розробки вимогам, висунутим до них на попередньому етапі.
• Валідация — це перевірка того, що сам продукт правильний, тобто підтвердження того, що він дійсно задовольняє вимогам і очікуванням користувачів, замовників і інших зацікавлених сторін.
Ефективність верифікації і валидации, як і ефективність розробки ПО в цілому залежить від точності і коректності формулювання вимог до програмного продукту.
Основою будь-якої системи забезпечення якості є методи його забезпечення і контролю. Методи забезпечення якості є техніка, що гарантує досягнення певних показників якості при їх застосуванні.
|
|
Методи контролю якостіпризначені для того, щоб переконатися, що певні характеристики якості ПО досягнуті. Самі по собі вони не можуть допомогти їх досягненню, вони лише допомагають визначити, чи вдалося отримати в результаті те, що хотілося, чи ні, а також знайти помилки, дефекти і відхилення від вимог. Методи контролю якості ПО можна класифікувати таким чином.
1. Методи і техніка, зв'язані з'ясуванням властивостей ПО під час його роботи. Це, перш за все, всі види тестування, а також профілізація і вимірювання кількісних показників якості, які можна визначити за наслідками роботи ПО, — ефективності за часом і іншим ресурсам, надійності, доступності і ін.
2. Методи і техніка, пов'язані з визначенням показників якості на основі симуляції роботи ПО за допомогою моделей різного роду. До цього вигляду відносяться перевірка на моделях (model checking), а також прототипирование (макетування), використане для оцінки якості ухвалюваних рішень.
3. Методи і техніка, призначені для виявлення порушень формалізованих правил побудови початкового коду ПО, проектних моделей і документації. До методів такого роду відноситься інспекція коду, що полягає в цілеспрямованому пошуку певних дефектів і порушень вимог в коді на основі набору шаблонів, автоматизовані методи пошуку помилок в коді, не засновані на його інтерпретації, методи перевірки документації на узгодженість і відповідність стандартам.
4. Методы и техники, связанные с обычным или формализованным анализом проектной документации и исходного кода для выявления их свойств. К этой группе относятся многочисленные методы анализа архитектуры ПО, о которых пойдет речь в следующей лекции, методы формального доказательства свойств ПО и формального анализа эффективности применяемых алгоритмов.