- •2 Принципи тестування по 5
- •1.1Системи і системна інженерія
- •1.2Що таке системна інженерія пз?
- •SwSe і програмна інженерія
- •SwSe і управління проектом
- •1.3Функції SwSe
- •Аналіз вимог
- •Дизайн програмного забезпечення
- •Планування процесів
- •Контроль процесів
- •Верифікація, підтвердження і тестування
- •2Принципи тестування по
- •2.1Неефективність існуючих технологій тестування
- •2.2Новий підхід до процесу тестування
- •2.3Верифікація
- •2.4Перевірка на коректність
- •2.5Тестування, засноване на специфікаціях
- •2.6Результати нового підходу
- •2.7Застосовність V-модели
- •2.8Заповіді тестування
Контроль процесів
Контроль — сукупність операцій управління, що використовуються для того, щоб гарантувати розвиток проекту відповідно до затвердженого плану. Контроль процесів передбачає визначення продуктивності і результатів відповідно до планів, виявлення відхилень і виконання коректуючих дій, покликаних гарантувати відповідність фактичних результатів планам.
Контроль процесів — система зворотного зв'язку, необхідна для того, щоб визначити, як рухається проект. Контроль процесів припускає відповіді на наступні питання. Чи є потенційні проблеми, здатні привести до затримки з виконанням конкретної вимоги у вказані терміни і в рамках наявного бюджету? Чи є ризик, що такі проблеми стануть реальними? Чи здійснимий підхід до проектування?
Контроль повинен породжувати коректуючі дії — або приводити стан проекту у відповідність з планом, або змінювати план, або припиняти проект. Контроль проекту також складається з двох окремих компонентів: контроль, який передбачений проектним менеджментом і контроль, який виконується в рамках інженерії програмних систем.
Верифікація, підтвердження і тестування
Процес верифікації, підтвердження і тестування (verification, validation and testing — VV&T) визначає, чи коректний процес інженерії, і чи відповідають продукти вимогам, що пред'являються .
Верифікація визначає, чи відповідають продукти на даному етапі циклу розробки програмного забезпечення вимогам, затвердженим під час попереднього етапу. Дає відповідь на питання: Чи "так я створюю продукт?"
Підтвердження визначає відповідність остаточної програми або програмного забезпечення вимогам і потребам користувача. Дає відповідь на питання: Чи "той я створюю продукт?"
Тестування - це виконання програми або частини програми з відомими вхідними і вихідними даними, які відомі наперед і які можна перевірити, що дозволяє знайти помилки. Тестування часто вважається частиною верифікації.
VV&T — це безперервний процес моніторингу операцій системної інженерії, SwSE, SwE і проектного менеджменту з метою переконатися, що вони слідують технічним і управлінським планам, специфікаціям, стандартам і процедурам. Крім того, VV&T оцінює проміжні і остаточні продукти проекту SwE. Проміжні продукти включають специфікації вимог, опис архітектури, плани тестування і оцінку результатів. До остаточних продуктів відносяться програмне забезпечення, керівництво користувачів, учбові матеріали і т.д.
SwSE використовує методи і інструментарій VV&T для оцінки вимог специфікацій, опису архітектури і інших проміжних продуктів. Тестування виконується для того, щоб визначити, чи відповідає остаточний продукт специфікаціям вимог даного проекту.
Фінальний крок в будь-якій діяльності, пов'язаній з розробкою програмного забезпечення, — це підтвердження і тестування остаточного програмного продукту на відповідність специфікації програмних вимог, а також підтвердження і тестування остаточного системного продукту на відповідність цієї специфікації.
Системна інженерія і SwSE — дисципліни, що використовуються в першу чергу для технічного планування «на вході» життєвого циклу системи і для перевірки того, що до закінчення проекту всі плани були виконані. На жаль, в реальних проектах ці дисципліни часто ігноруються.
Ігнорування системних аспектів програмного проекту може привести до створення програмного забезпечення, яке не працюватиме на вибраній апаратній платформі або не інтегруватиметься з іншими програмними системами.
