Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тестування прог продукт.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
412.16 Кб
Скачать
  1. Планерування і оцінка завершеності випробувань.

План проведення випробувань має бути орієнтований на забезпечення всесторонньої перевірки ПС і максимальній (задан­ной) достовірності отриманих результатів при використанні обмежених ресурсів, виділених на випробуваннях. Прінципі­ально можливі наступні підходи до рішення цієї задачі:

1) аналізують весь діапазон вхідних даних. На основі аналізу заздалегідь готують таку безліч комбінацій даних (тестових наборів даних), яке охоплює найбільш харак­терные підмножини вхідних даних. Програму рассматри­вают як чорний ящик. Випробування зводяться до последователь­ному введення тестових наборів даних і аналізу отримуваних результатів;

2) аналізують безліч ситуацій, які можуть возник­нуть при функціонуванні ПС. Вибирають найбільш характер­ные ситуації. Кожну з них виражають через тестовий набір вхідних даних. Далі єство випробування і аналізу результатів зводиться до підходу 1);

3) за допомогою графської моделі аналізують мікроструктуру ПС. Вибирають безліч доріг, яка повністю покриває граф-схему ПС, і таку послідовність тестових наборів вихідних даних, виконання якої проходить по виділених дорогах. Організація випробувань аналогічна підходам 1) и2);

4) ПС випробовують в реальному середовищі функціонування;

5) ПС випробовують в статистично модельованому середовищі функціонування, адекватному реальному середовищу.

Жоден з цих підходів не є універсальним. Кожен з них має свої переваги і недоліки, які різною мірою виявляються залежно від специфіки випробовуваного ПС. Наприклад, підхід 1) може виявитися переважним, якщо діапазон вхідних даних оглянемо, сравни­тельно легко аналізується і систематизувався, і неприйнятним — інакше. Найбільш достовірні результати виходять при випробуваннях в реальному середовищі функціонування. Але такі випробування рідко удається здійснити. Тому на практиці використовують комбінації всіх видів. Типовим приме­ром такої комбінації може служити змішаний метод, коли середовище функціонування ПС моделюється, а достовірність ре­зультатов перевіряється шляхом порівняння з результатами, получен­ными при функціонуванні ПС в реальному середовищі.

Аналіз показує, що абсолютна перевірка ПС ні при одному з розглянутих підходів не осуществима. Тому при планеруванні випробувань необхідно заздалегідь анализи­ровать структури випробовуваних програм і вхідних даних. Зокрема, слід встановлювати ті дороги граф-схеми програм­мы, використання яких при перетворенні даних найймовірніше. Це завдання аналогічне підходам 1) і 2). Для складних програмних комп­лексов вона не має строго математичного рішення. В той же час на практиці незрідка удається заздалегідь встановити найбільш вірогідні ситуації, які можуть виникнути в автоматизируе­мой системі, а отже, і набори вхідних даних, описы­вающие ці ситуації.

Методика рішення задачі планерування випробування включає наступні етапи: знаходження всіх доріг реалізації;

виділення мінімальної підмножини доріг, що забезпечують перевірку всіх ділянок програми; розробка тестів для про­верки виділених доріг. Необхідно відзначити, що в результаті рішення отримують не одну підмножину доріг, а деяку сукупність таких підмножин. Аналізуючи ці сукупності по критеріях мини­мального часу реалізації їх на ЕОМ, вибору найбільш ве­роятных доріг, відсутності в цих совокупностях несумісних доріг (розглянутим методам властивий цей недолік), выби­рают найбільш прийнятну сукупність. Для формування вхідних даних тестування для кожної виділеної дороги реалізації складають спеціальні таблиці. У таблицях пред­ставляют лише умовні оператори, що належать даній дорозі, і оператори, в яких обчислюються змінні управле­ния. В результаті аналізу розпоряджень, що задовольняють услов­ным операторам, виробляють вхідні дані тестування.

Для встановлення потреби в машинному часі на про­ведение випробувань необхідно знати середнє значення абсолют­ной реактивності ПС. Ця характеристика має бути задана в ТЗ. Якщо ж вона не задана, то можна прийняти де — мінімальне значення абсолютної реактивності; — максимальне значення абсолютної реактивності.

Не дивлячись на те що перевірка всіх доріг граф-схеми великої програми неосуществима, при планеруванні випробувань необ­ходимо при заданих ресурсах забезпечити максимальну пол­ноту перевірки, особливо перевірки модулів вирішення найбільш відповідальних завдань. Прагнення уникнути при цьому неэффектив­ного простого перебору наводить до завдання вибору мінімальної кількості доріг, покриваючих граф ПС. Під покриттям по­нимают включення всіх дуг графа. Мінімальне покриття, з од­ной боку, забезпечує мінімум тестів і контрольних про­счетов, а, з іншого боку, гарантує проходження кожної дуги графа хоч би по одному разу.

Розглянутий метод планерування на етапі автономних стати­стических випробувань модулів ПІ дозволяє значно зменшити матеріальні і тимчасові витрати на випробування програм. Орієн­тация на той або інший підхід до випробувань залежить від типа испы­тываемого ПС.

У загальному випадку при планеруванні і організації випробувань слід шукати компромісне рішення, що враховує два про­тиворечивых вимоги: забезпечення максимальної достовер­ности узагальненої оцінки якості ПІ і виконання випробування в обмежений час з використанням обмежених ресурсів. Слід виділити три стадії випробування: підготовчу; безпосередні ис­пытания; завершальну (підготовка звітних матеріалів). Завдання цих стадій очевидні. Детальніше зупинимося на завданнях підготовчої стадії.

Ця стадія найбільш тривала і найбільш трудомістка. Основними її завданнями є: планерування випробувань;

розробка технологічної схеми випробувань і випробувальних засобів; розробка програм і методик випробування; накопичення попередніх статистичних даних, характеризуючих ПС.

Цілеспрямованість і чіткість організації робіт по накоп­лению статистичних даних може істотно підвищити до­стоверность оцінки якості ПС, виключити дубльовані (повторні) перевірки і зменшити терміни випробувань і затрачи­ваемые матеріальні ресурси. Проте в деяких випадках із-за поганої організації роботи результати тестування на етапах відладки програм і попередніх випробуваннях не реги­стрируются, тому не можуть використовуватися для остаточної. оцінки якості програми.

Між виділеними стадіями випробування ПС є пря­мые і зворотні зв'язки, аналогічні зв'язкам між етапами жиз­ненного циклу ПС. Це означає, що при виконанні робіт завершальної стадії може бути виявлена необхідність повернення до стадії безпосередніх випробувань (або навіть до підготовчої стадії) для уточнення окремих характе­ристик.

Складанню плану проведення випробувань повинен передувати аналіз Т3 на розробку ПС, структурних і функціональних схем, режимів функціонування, залежностей між модулями програм­мы, планів-графіків розробки і відладки компонентів ПС, результатів контролю їх якості на ранніх стадіях розробки. В результаті цього аналізу необхідно розробити і обосно­вать загальну стратегію випробування, а на її основе—комплекс документів по організації випробувань, який повинен содер­жать відповіді на наступні питання: 1) завдання випробувань на кожній фазі, послідовність розвитку фаз; 2) використовувані спеціальні випробувальні засоби; 3) кількість необходи­мого машинного часу на кожній фазі випробувань; 4) конфи­гурация загального технічного і програмного забезпечення; 5) оцінювані властивості, критерії оцінки, способи їх получе­ния; 6) процедури контролю ходу випробування; 7) процедури реги­страции, збору, обробки і узагальнення результатів випробування; 8) умови (критерії) початку і завершення кожної фази испы­таний. По кожному з цих питань необхідно визначити відповідальних виконавців, терміни виконання робіт, вигляд конеч­ного результату.

У стандарті IEEE 829—1983 (США) велика увага уде­лено документуванню процесу випробування Пп. Перелік доку­ментов, які розробляються і ведуться відповідно до плану випробування, приведений в розділі «Документування»

Проаналізувавши вміст виділених розділів плану испытания/тестирования, можна зробити вивід об целесообраз­ности включення відомостей, що містяться в цих розділах, в про­граммы і методиках випробування ПС. Таке включення буде спо­собствовать підвищенню інформативності цих документів і упо­рядочению самого процесу випробувань.

На проведення випробувань ПП доводиться витрачати зна­чительные трудові і матеріальні ресурси. Терміни проведення випробувань завжди обмежені. Тому перед випробувачами все­гда коштує завдання пошуку доріг мінімізації витрат материаль­ных, трудових і тимчасових ресурсів для досягнення мети испы­тания. Для реалізації цього завдання необхідно встановити критерії завершеності Випробувань, які можуть служити осно­вой для ухвалення рішення про завершення випробувань.

При оцінці рівня завершеності випробувань ПС і достовірності отриманих результатів часто виникає серйозна скрута. Відзначимо наступні з них:

1) більшість ПС є унікальними і або не мають аналогів для порівняння характеристик, або мають аналоги, ха­рактеристики яких невідомі;

2) відсутність загальноприйнятих показників, а також методів розрахунку необхідних і фактичних значень наводить до того, що в ТЗ на розробку ПС вимоги до характеристик ПС або фактично відсутні (у кількісному вираженні), або не претендують на повноту.

Розглянемо дороги вирішення проблеми оцінки завершеності випробувань ПС. Але перш за все звернемо увагу на необхо­димость ретельного документування процесу випробування. Таке документування слід почати з моменту придбання ПС властивості працездатності і вести його безперервно до мо­мента передачі ПС в промислову експлуатацію.

Досвід створення вітчизняних систем реального часу под­тверждает необхідність ведення одного або двох журналів. У одному з них слід реєструвати всі експерименти з ПС, а в другом—обнаруженные помилки (проблеми) і хід їх усунення. Періодично складають от­четы про випробування за певний період часу. Для ведення журналів необхідно ретельно розробити ин­струкции, в яких встановити загальні правила заповнення жур­налов, у тому числі єдині правила привласнення реєстраційних номерів помилкам, індексації типів помилок, класифікації помилок і тому подібне В журналах слід передбачити окремі розділи, в яких при необхідності даватимуться подроб­ные коментарі до помилок і способи їх усунення.

Не всяку помилку можна швидко ідентифікувати, тому в стандарті IEEE 829—1983 рекомендовано документувати у вигляді звітів тест-інцидент всі нестандартні події, про­исходящие під час випробування і що вимагають додаткового аналізу. Рекомендується наступна структура цього звіту: иден­тификатор звіту тест-інцидент, анотація, опис інциденту, вплив інциденту на подальший хід випробування. Останні два розділи є основними. Опис інциденту повинен включати наступні елементи: вхідні дані, очікувані і фактичні результати, відхилення від норми, дата і час випробування, крок процедури випробування, середовище функціонування, результати спроб повторення умов експерименту, испыта­тели, спостерігачі-реєстратори.

Реєстрація експериментів і помилок (інцидентів), периоди­ческая обробка даних і аналіз результатів дозволяють конт­ролировать випробування і управляти цим процесом. Сама про­цедура реєстрації може бути різною, поважно лише предотвра­тить втрату коштовної інформації при мінімальних трудозатра­тах на збір і обробку даних. Дана умова можна обеспе­чить лише шляхом максимальної автоматизації всіх процесів.

Критерій інтенсивності виявлення помилок. Якщо вважати, що під час одного експерименту виявляється не більш за од­ной помилку і кожна помилка до початку наступного экспери­мента усувається, то можна передбачити, що при благоприят­ном ході відладки і випробування крива залежності: N = 1 — п/К, де п — кількість виявлених і усунених помилок; До. — . кількість експериментів, асимптотика прагнутиме до одиниці (крива 1 на мал. 17). Крива 2 свідчить про не­благополучном хід процесу.

Тоді як критерій припинення випробувань можна прийняти, наприклад, наступна умова: N > 0,95 при обнаруже­нии в останніх двохстах експериментах не більше трьох несуще­ственных помилок.

Ідея вибору такого критерію заснована на тому, що частота виявлення помилок, виражена відношенням п/К, у міру збільшення кількості експериментів повинна зменшуватися і до моменту завершення випробувань набути значення, близького до нуля. Слід мати на увазі, що оцінка рівня завершеності испы­таний по цьому показнику буде достовірною лише в тому випадку, якщо кожен експеримент проводиться в нових умовах і испы­татели прагнуть виявити помилки, а не довести їх отсут­ствие. Якщо ж програму перевіряють при одних і тих же або близьких умовах, то досить швидко отримують криву вигляду 1, яка не свідчить ні про облиште, ні про глибину перевірки програм, ні про відсутність в ній помилок.

Критерій заданого значення середнього напрацювання на відмову (критерій Дж. Д. Муса). Зроблено два припущення. 1. Сум­марноє кількість виявлених і усунених дефектів в про­

грамі (під дефектом розуміється будь-яка причина неудовлетво­ренности властивостями програми) описується показовою функцією часу функціонування

- вихідна кількість дефектів в програмі; - загальна кількість дефектів, яка може виявитися за час эксплуа­тации ПС; — середнє напрацювання на відмову на початку випробувань;

С—коеффіциент стискування тестів. Коефіцієнт З 1 тоді, коли абсолютна реактивність програми при прогоні тестів або статистичних випробуваннях відрізняється від абсолютної реак­тивности при роботі програми в реальних умовах. Якщо, на­пример, за одну годину випробувань моделюється керований про­цесс, що відбувається в реальних умовах протягом десяти годинників, то коефіцієнт стискування З приймається рівним 10.

Швидкість виявлення і усунення дефектів, вимірювана відносно часу функціонування програми, пропорцио­нальна інтенсивності відмов. Коефіцієнт пропорционально­сти B=n/m називається коефіцієнтом зменшення дефектів.

Кількість зареєстрованих відмов т залежить від сумарного часу функціонування програми таким чином:

Значення середнього напрацювання на відмову також залежить від сумарного часу функціонування:

Якщо в ході випробування виявлені помилки усуваються, то поточне зна­чение середнього напрацювання на відмову збільшуватиметься. Таким чином, як критерій завершеності випробування можна прийняти досягнення необхідного (заданого) значення середнього напрацювання на відмову Tо. Тоді, визначаючи періодично поточне значення середнього напрацювання на відмову по цій формулі, можна при планеруванні подальшого ходу випробування розрахувати тре­буемое час для подальшого про­гона програми по формулі

При планеруванні відладки і ис­пытания ПО слід враховувати влия­ние наступних чинників: 1) скоро­сти виявлення дефектів; 2) швидкості усунення дефектів; 3) удовлетво­ренности машинним часом. Пер­вий чинник залежить від укомплек­тованности і кваліфікацій испы­тателей, второй—от укомплекто­ванности і кваліфікації групи програмістів відладчиків, третій — від фондовооруженности (технічній оснащеності) розробляючої (що випробовує) організації.

На початковій стадії відладки програми інтенсивність вы­явления дефектів висока. Програмісти-відладчики переобтяжені роботою, доводиться навіть переривати тестові прогони, робити перерви у випробуваннях. На завершальній стадії интенсив­ность виявлення дефектів низька, але гостро відчувається необ­ходимость в машинному часі. Випробувачі переобтяжені в под­готовке все нових і нових тестових вихідних даних, тоді як в програмістів-відладчиків роботи може бути мало.