
- •Місце тестування у життєвому циклі програмних продуктів
- •Жц розробки пз із завданнями і діями для процесу тестування
- •Визначте процеси досягнення надійності на жц
- •Задачі процесу тестування
- •Моделі якості пз
- •Визначте характеристики якості пс і їхнє призначення
- •Основні цілі й завдання системи керування якістю.
- •Які методи визначають показники якості?
- •Визначте метрики програмного продукту і їхні складові.
- •Методи контролю якості
- •Методи забезпечення якості
- •Поняття тестування
- •Основні задачі процесу тестування
- •Рівні тестування
- •Види тестування
- •Поняття тестів та тестового покриття
- •Перевірка на моделях
- •Помилки в програмах
- •Завдання і цілі процесу верифікації
- •Забезпечення якості
- •Метрики по забезпеченню якості
- •Метрики якості
- •Метрики програмного продукту
- •Метрики використання
- •Поняття якості пз
- •Рівні подання моделі якості пз
- •Що таке сертифікація програмного продукту
- •Процес верифікації
- •Процес валідації
- •Підхід до валідації сценарію вимог
- •Верифікація об’єктних моделей
- •Процес тестування за життєвим циклом
- •Поняття тесту
- •Тестові артефакти
- •Тест план
- •Тестовий випадок (Test Case)
- •Тест дизайн
- •Важливість і пріоритет дефекту
- •Градація серйозності дефектів
- •Вимоги до кількості відкритих багів
- •Помилки при написанні баг репортів
- •Техніка, що базується на інтуїції і досвіді інженера (Based on the software engineer’s intuition and experience)
- •Техніка, що базується на специфікації (Specification-based techniques)
- •Техніка, орієнтована на код (Code-based techniques)
- •Тестування, орієнтоване на дефекти (Fault-based techniques)
- •Техніки, що базуються на умовах використання
- •Техніки, що базуються на природі додатку
- •Функціональні види тестування
- •Нефункціональні види тестування
Визначте характеристики якості пс і їхнє призначення
Показник |
Опис властивостей показника |
Функціональність |
Група властивостей ПС, що обумовлює його здатність виконувати певний перелік функцій, які задовольняють потреби відповідно до призначення |
Надійність |
Група властивостей, що обумовлює здатність ПС зберігати працездатність і перетворювати вихідні дані на результат за встановлений період часу, характер відмов якого є наслідком внутрішніх дефектів й умов його застосування |
Зручність застосування |
Сукупність властивостей ПС для передбачуваного кола користувачів й освоєння, що характеризують його простоту і адаптації до умов, що змінюються, експлуатації, стабільність роботи й підготовки даних, зрозумілість результатів, зручності внесення змін у програмну документацію й програми |
Супровід |
Група властивостей, що визначає зусилля, необхідні для виконання, пристосовність до діагностики відмов і наслідків внесення змін, модифікації й атестації ПС, що модифікується |
Раціональність |
Група властивостей, що характеризується ступенем відповідності використовуваних ресурсів середовища до функціонування рівня якості (надійності), функціонування ПС за заданих умов застосування |
Переносність |
Група властивостей ПС, що забезпечує його пристосовність для перенесення з одного середовища функціонування в інші, зусилля для перенесення й адаптації ПС до нового середовища функціонування |
Основні цілі й завдання системи керування якістю.
Під керуванням якості розуміють сукупність організаційної структури й відповідальних осіб, а також процедур, процесів і ресурсів для планування й керування досягненням якості ПС. Керування якістю – SQM (Software Quality Management) базується на застосуванні стандартних положень щодо гарантії якості – SQA (Software Quality Assurance) [4, 14].
Мета процесу SQA полягає в гарантуванні того, що продукти й процеси узгоджуються з вимогами, відповідають планам і складаються з таких видів діяльності:
- впровадження стандартів і відповідних процедур розроблення ПС на процесах ЖЦ;
- оцінка дотримання положень цих стандартів і процедур.
Гарантія якості полягає в наступному:
- перевірка несуперечності й виконуваності планів;
- узгодження проміжних робочих продуктів із плановими показниками;
- перевірка виготовлених продуктів певним вимогам;
- аналіз застосовуваних процесів на відповідність договору й планам;
- узгодження із замовником середовища й методів розробки продукту;
- перевірка вибраних метрик продуктів, процесів і засобів їхнього вимірювання відповідно до затвердженого стандарту й процедур вимірювання.
Мета процесу керування SQM – моніторинг (систематичний контроль) якості для гарантії того, що продукт буде задовольняти споживача, і передбачує:
- визначення кількісних властивостей якості, ґрунтованих на виявлених і передбачених потребах користувачів;
- керування реалізацією поставлених цілей для досягнення якості.
Процес SQM ґрунтується на гарантії того, що:
– цілі досягнення необхідної якості встановлено для всіх робочих продуктів у контрольних точках продукту;
– визначено стратегію досягнення якості, метрики, критерії, засоби, вимоги до процесу вимірювання та ін.;
– визначено й виконано дії, пов'язані з наданням продуктам властивостей якості;
– проведено контроль якості (SQA, верифікація й валідація) і цілей;
– виконані процеси вимірювання й оцінювання кінцевого продукту на досягнення необхідної якості.
Основні стандартні положення [1–4, 14] щодо створення якісного продукту й оцінки досягнутого ним рівня дозволяють виділяти два процеси забезпечення якості на процесах ЖЦ:
– гарантія (підтвердження) якості ПС як результат певної діяльності на кожному процесі ЖЦ із перевіркою відповідності системи стандартам і процедурам, орієнтованим на досягненні якості;
– інженерія якості як процес надання продуктам ПС властивостей функціональності, надійності, супроводу й інших характеристик якості.
Процеси досягнення якості призначено для:
– керування, розробки й забезпечення гарантій відповідно до зазначених стандартів і процедур;
– керування конфігурацією (ідентифікація, урахування стану й дій з аутентифікації), ризиком і проектом відповідно з стандартів й процедур;
– контроль базової версії ПС і реалізованих у ній характеристик якості.
Виконання зазначених процесів складається з таких дій:
– оцінка стандартів і процедур, які виконуються при розробленні програм;
– ревізія керування, розроблення й забезпечення гарантії якості ПС, а також проектної документації (звіти, графіки розроблення, повідомлення й ін.);
– контроль проведення формальних інспекцій і переглядів;
– аналіз і контроль проведення приймального тестування (випробування) ПС.
Для організації, що займається розробленням ПС, у тому числі з компонентів, інженерія якості ПС повинна підтримуватися системою керування якістю (планування, облік і контроль).
Інженерія якості складається з набору методів і заходів, за допомогою яких програмні продукти перевіряють на виконання вимог до якості й забезпечуються характеристиками, передбаченими у вимогах на ПС.
Система якості (Quality systems – QS) [14] – це набір організаційних структур, методик, заходів, процесів і ресурсів для здійснення керування якістю. Для забезпечення необхідного рівня якості ПС застосовуються два підходи. Один з них орієнтується на кінцевий програмний продукт, а другий – на процес створення продукту.
При підході, орієнтованому на продукт, оцінка якості проводиться після випробування ПС. Цей підхід базується на припущенні, що чим більше виявлено й усунуто помилок у продукті під час проведення випробувань, тим вищою є його якість.
При другому підході передбачають й приймають заходи щодо запобігання, оперативного виявлення й усунення помилок, починаючи з початкових процесів ЖЦ відповідно до плану й процедур забезпечення якості ПС, що розроблюється. Цей підхід представлено у серії стандартів ISO 9000 й 9000-1,2,3, що дає рекомендації організаціям-розробникам створювати систему якості згідно з схемою, наведеною на рис. 9.3.
Важливе місце в інженерії якості приділяється процесу вимірювання характеристик процесів ЖЦ, його ресурсів і створюваних на них робочих продуктах. Цей процес реалізується групою якості, верифікації й тестування. У її функції входить планування, оперативне керування й забезпечення якості.
Рис. 9.3. Вимоги стандарту до організації системи якості
Планування якості являє собою діяльність, спрямовану на визначення цілей і вимог до якості. Воно охоплює ідентифікацію, встановлення цілей, вимог до якості, класифікацію й оцінку якості. Складають календарний план-графік для проведення аналізу стану розробки й послідовного вимірювання спланованих показників і критеріїв на процесах ЖЦ.
Оперативне керування складається з методів й видів діяльності оперативного характеру для поточного керування процесом проектування й усунення причин незадовільного функціонування ПС.
Забезпечення якості полягає у виконанні й перевірці того, що об'єкт розроблення виконує зазначені вимоги до якості. Цілі забезпечення якості можуть бути внутрішні й зовнішні. Внутрішні цілі – створення впевненості у керівника проекту, що якість забезпечено. Зовнішні цілі – це запевнення користувача, що необхідну якість досягнуто й отримано якісне програмне забезпечення.
Як показує досвід, ряд фірм, що випускають програмну продукцію, мають системи якості, що забезпечує ними виробництво конкурентоспроможної продукції. Система якості – це моніторинг попиту на новий вид продукції, що випускається, контроль усіх ланок її виробництва, включаючи підбір і постачання готових компонентів для системи.
При відсутності відповідних служб якості розробники ПС повинні використовувати власні нормативні й методичні документи, що регламентують процес керування якістю ПС для всіх категорій розробників і користувачів програмної продукції.