Реферат: Методи оцінки та засоби підвищення надійності програмного забезпечення
Зазначена проблема має комплексний характер і для її розв’язання були поставлені та вирішені такі задачі:
1. Аналіз категорії "якість", виділення її основних складових і вимог до них, визначення ролі надійності ПЗ як характеристики якості та її дослідження на етапах ЖЦ ПЗ.
2. Дослідження і розробка моделей оцінювання надійності ПЗ на етапах ЖЦ ПЗ;
3. Аналіз і розробка методів забезпечення надійності ПЗ;
4. Розробка методів оцінки рішень, пов'язаних із забезпеченням надійності ПЗ;
5. Розробка моделей і методів підтримки прийняття рішень при виборі стратегії створення ПЗ з урахуванням необхідного рівня надійності ПЗ;
6. Реалізація запропонованих моделей і методів;
7. Експериментальне дослідження розроблених засобів, моделей і методів оцінювання і підвищення надійності ПЗ.
Об'єкт дослідження - програмне забезпечення і процес його розроблення.
Предмет дослідження - надійність програмного забезпечення, критерії та методи тестування програмного забезпечення.
Методи дослідження:
Для аналізу і розроблення моделей оцінки надійності ПЗ використовуються методи теорії ймовірностей і математичної статистики, для оцінювання параметрів моделей - метод максимальної правдоподібності, для експериментального оцінювання - комп'ютерні програмні засоби обчислення (пакет програм MathCad2001), для постановки та вирішення задачі оптимізації тестового процесу - методи дослідження операцій та прийняття рішень.
Для розробки критеріїв інтеграційного тестування використовують концептуальне моделювання, системний аналіз, моделювання структури компонентно-базованого ПЗ, його подальша розробка й аналіз, науковий експеримент.
Наукова новизна одержаних результатів. В результаті проведених в дисертаційній роботі досліджень отримані такі результати:
· розроблено оригінальну концепцію управління надійністю протягом всього ЖЦ ПЗ ІУС, яку відрізняють від інших такі особливості: 1) оцінювання надійності ПЗ на всіх етапах ЖЦ; 2) управління надійністю в процесі розроблення ПЗ з урахуванням сучасних тенденцій у розробленні і тестуванні ПЗ, таких як: компонентно-базований підхід до програмування; уніфіковані технології проектування типу RUP і концептуальне моделювання; 3) реалізація у вигляді інструментальних засобів, які можуть бути використані керівниками проектів; 4) формалізація задачі оптимізації процесу тестування з урахуванням обмежень на фінансові витрати, час на розроблення та необхідного рівня якості ПЗ ІУС, що тестується.
· вперше запропоновано узагальнену математичну модель негомогенного пуасонівського процесу, яка відрізняється від попередніх тим, що її функція інтенсивності виявлення несправностей відповідає практиці проведення тестування і враховує процеси навчання, які відбуваються в групі тестерів;
· вперше на основі формального опису розроблюваного ПЗ сформульовані нові критерії (і метрики їх досягнення) для інтеграційного тестування компонентно-базованого програмного забезпечення: критерій покриття операцій інтерфейсу; критерій покриття викликів операцій; критерій покриття активізацій інтерфейсу; критерій покриття послідовностей викликів операцій; критерій покриття послідовностей активізацій; критерій покриття залежностей;
· вперше визначено метрику відповідності між повідомленнями і переходами (викликами й активізаціями), яка дозволяє одержати точні оцінки необхідної кількості тестів і може використовуватися для підтримки рішень при виборі найкращого компонента з поміж функціонально йому еквівалентних.
Практичне значення одержаних результатів.
Запропоновані в роботі моделі і методи становлять основу для створення інструментарію для підтримки оцінювання надійності ПЗ, проведення високорівневого тестування й оптимізації вибору тестового покриття. Вони можуть бути включені у будь-яку технологію розроблення ПЗ, яка враховує новітні тенденції, або використовуватися автономно.
Такі засоби дозволяють: формалізувати розроблення плану тестування на основі представлених метрик ступеня досягнення кожного з критеріїв; зменшити суб'єктивний вплив на вибір кількості тестів за рахунок запропонованих оцінок кількості тестів, необхідних для покриття кожного з критеріїв; обґрунтовано вибирати необхідну кількість тестів для кожного з критеріїв, виходячи з наявних обмежень на фінанси, час та обраного рівня якості.
Представлені в роботі моделі і методи реалізовані у вигляді методик і інструментальних засобів для:
- оцінки і підвищення надійності ПЗ на всіх етапах його ЖЦ;
- підтримки прийняття рішень у процесі розроблення ПЗ.
Ці засоби ввійшли в модуль керування надійністю в проекті з автоматизації створення інформаційних систем ІT.com (спільний проект кафедри програмної інженерії Університету ім. Фрідріха-Олександра, м. Нюрнберг і Sіemens AG);
Особистий внесок здобувача в матеріалах дисертаційної роботи становлять:
розроблення концепції управління надійністю на всьому життєвому циклі ПЗ ІУС;
розроблення узагальненої моделі негомогенного пуасонівського процесу, знаходження її параметрів та проведення експериментальних досліджень;
розроблення критеріїв та метрик для інтеграційного тестування ПЗ, проведення досліджень з їх практичного застосування, напрацювання рекомендацій щодо вибору критеріїв;