Смекни!
smekni.com

Методи оцінки та засоби підвищення надійності програмного забезпечення (стр. 1 из 6)

НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ

“КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ”

ДІДКОВСЬКА МАРИНА ВІТАЛІЇВНА

УДК 681.1

МЕТОДИ ОЦІНКИ ТА ЗАСОБИ ПІДВИЩЕННЯ НАДІЙНОСТІ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ

05.13.06 – автоматизовані системи управління та

прогресивні інформаційні технології

Автореферат

дисертації на здобуття наукового ступеня

кандидата технічних наук

Київ – 2006


Дисертацією є рукопис.

Робота виконана на кафедрі математичних методів системного аналізу Навчально-наукового комплексу “Інститут прикладного системного аналізу” Національного технічного університету України “Київський політехнічний інститут”

Науковий керівник:

кандидат технічних наук, доцент

Тимошенко Юрій Олександрович

Навчально-науковий комплекс “Інститут прикладного системного аналізу” НТУУ “КПІ”, доцент кафедри математичних методів системного аналізу

Офіційні опоненти:

доктор технічних наук, професор

Теленик Сергій Федорович

Національний технічний університет України “Київський політехнічний інститут”, завідувач кафедри автоматики та управління в технічних системах

доктор технічних наук, професор

Кулік Анатолій Степанович

Національний аерокосмічний університет ім. М.Є.Жуковського “Харківський авіаційних інститут”, завідувач кафедри систем управління літальних апаратів

Провідна установа:

Інститут проблем реєстрації інформації НАН України

Захист відбудеться 20.02. 2006 року о _14_ годині на засіданні спеціалізованої вченої ради Д 26.002.03 при Національному технічному університеті України “Київський політехнічний інститут”, за адресою: 03056, Київ, проспект Перемоги, 37, корп. 35, ауд 006.

З дисертацією можна ознайомитись у бібліотеці Національного технічного університету України “Київський політехнічний інститут” за адресою: 03056, Київ, проспект Перемоги, 37.

Автореферат розісланий 18.01. 2006 р.

Вчений секретар спеціалізованої

вченої ради Д 26.002.03

д.т.н, професор О.М. Новіков


ЗАГАЛЬНА ХАРАКТЕРИСТИКА РОБОТИ

Актуальність теми. Програмне забезпечення (ПЗ) сучасних обчислювальних систем та інформаційно-управляючих систем (ІУС) повинне відповідати не тільки своїм функціональним параметрам. При його розробці накладаються певні обмеження на вартість і час, а також висуваються жорсткі вимоги до надійності, безпеки, готовності, цілісності та, відповідно, якості функціонування, оскільки відмова ПЗ може викликати катастрофічні наслідки. Таким чином, виникає проблема створення ПЗ з гарантованою якістю.

Гарантування якості ПЗ - це комплексна проблема, розв’язання якої вимагає проведення комплексного дослідження та відповідних ресурсів - розробників, фінансів та часу. З огляду на сутність проблеми зазначені дослідження повинні концентруватися навколо:

- розробки засобів аналізу й оцінки якості ПЗ на всіх етапах його життєвого циклу (ЖЦ);

- виділення і управління параметрами, які впливають на якість ПЗ на всіх етапах його ЖЦ.

Якість ПЗ визначається декількома показниками, серед яких надійність ПЗ виділяють як основну формалізовану характеристику. Тому виникає необхідність у забезпеченні надійності, починаючи з самих ранніх фаз ЖЦ ПЗ, з урахуванням сучасних тенденцій у проектуванні і реалізації ПЗ ІУС, таких як: компонентно-базований підхід до програмування; уніфіковані технології проектування типу RUP і концептуальне моделювання.

При традиційному підході до створення ПЗ, про надійність ПЗ починали говорити на завершальних стадіях його розроблення. Це було пов'язано з тим, що можливість оцінювати надійність програмного продукту в цьому випадку з'являлася тільки після завершення його розробки, тобто, коли накопичувалися реальні дані для проведення статистичного аналізу та отримання відповідних оцінок. Власне кажучи, такий підхід дозволяє оцінити надійність вже створеного ПЗ, починаючи з фази тестування. Проте, якщо отримані оцінки не задовольняють поставленим вимогам, то виникає потреба повертатися на попередні етапи, вносити зміни, які іноді приводять до перепроектування системи чи повторення інших стадій. Наслідком є значне зростання як фінансових, так і часових витрат. Сучасні технології створення ПЗ, побудовані на ідеях управління ЖЦ, ітеративного проектування, концептуального моделювання і автоматизованого програмування, дозволяють враховувати вимоги до ПЗ на кожному етапі ЖЦ. Це стосується і вимог до надійності. Тому виникає необхідність у забезпеченні надійності, починаючи із самих ранніх фаз ЖЦ ПЗ, з урахуванням сучасних тенденцій у розробці ПЗ, зазначених вище. Забезпечення надійності в умовах застосування сучасних технологій вимагає розробки нових моделей, методів та засобів, чому і присвячене виконане дослідження.

Зв'язок роботи з науковими програмами, планами, темами. Дисертаційна робота виконана на кафедрі математичних методів системного аналізу Навчально-наукового комплексу "Інститут прикладного системного аналізу" Національного технічного університету України "Київський політехнічний інститут". Окремі результати дисертаційної роботи отримані при виконанні науково-дослідної роботи "Системний аналіз і прогнозування катастрофічних ризиків у динаміці керування безпекою техногенно й екологічно небезпечних об'єктів", номер державної реєстрації №013U000529.

Мета і задачі дослідження. Метою дисертаційної роботи є створення моделей оцінки і засобів підвищення надійності програмного забезпечення протягом усього ЖЦ ПЗ з урахуванням сучасних тенденцій у розробленні і тестуванні ПЗ.

Зазначена проблема має комплексний характер і для її розв’язання були поставлені та вирішені такі задачі:

1. Аналіз категорії "якість", виділення її основних складових і вимог до них, визначення ролі надійності ПЗ як характеристики якості та її дослідження на етапах ЖЦ ПЗ.

2. Дослідження і розробка моделей оцінювання надійності ПЗ на етапах ЖЦ ПЗ;

3. Аналіз і розробка методів забезпечення надійності ПЗ;

4. Розробка методів оцінки рішень, пов'язаних із забезпеченням надійності ПЗ;

5. Розробка моделей і методів підтримки прийняття рішень при виборі стратегії створення ПЗ з урахуванням необхідного рівня надійності ПЗ;

6. Реалізація запропонованих моделей і методів;

7. Експериментальне дослідження розроблених засобів, моделей і методів оцінювання і підвищення надійності ПЗ.

Об'єкт дослідження - програмне забезпечення і процес його розроблення.

Предмет дослідження - надійність програмного забезпечення, критерії та методи тестування програмного забезпечення.

Методи дослідження:

Для аналізу і розроблення моделей оцінки надійності ПЗ використовуються методи теорії ймовірностей і математичної статистики, для оцінювання параметрів моделей - метод максимальної правдоподібності, для експериментального оцінювання - комп'ютерні програмні засоби обчислення (пакет програм MathCad2001), для постановки та вирішення задачі оптимізації тестового процесу - методи дослідження операцій та прийняття рішень.

Для розробки критеріїв інтеграційного тестування використовують концептуальне моделювання, системний аналіз, моделювання структури компонентно-базованого ПЗ, його подальша розробка й аналіз, науковий експеримент.

Наукова новизна одержаних результатів. В результаті проведених в дисертаційній роботі досліджень отримані такі результати:

· розроблено оригінальну концепцію управління надійністю протягом всього ЖЦ ПЗ ІУС, яку відрізняють від інших такі особливості: 1) оцінювання надійності ПЗ на всіх етапах ЖЦ; 2) управління надійністю в процесі розроблення ПЗ з урахуванням сучасних тенденцій у розробленні і тестуванні ПЗ, таких як: компонентно-базований підхід до програмування; уніфіковані технології проектування типу RUP і концептуальне моделювання; 3) реалізація у вигляді інструментальних засобів, які можуть бути використані керівниками проектів; 4) формалізація задачі оптимізації процесу тестування з урахуванням обмежень на фінансові витрати, час на розроблення та необхідного рівня якості ПЗ ІУС, що тестується.

· вперше запропоновано узагальнену математичну модель негомогенного пуасонівського процесу, яка відрізняється від попередніх тим, що її функція інтенсивності виявлення несправностей відповідає практиці проведення тестування і враховує процеси навчання, які відбуваються в групі тестерів;

· вперше на основі формального опису розроблюваного ПЗ сформульовані нові критерії (і метрики їх досягнення) для інтеграційного тестування компонентно-базованого програмного забезпечення: критерій покриття операцій інтерфейсу; критерій покриття викликів операцій; критерій покриття активізацій інтерфейсу; критерій покриття послідовностей викликів операцій; критерій покриття послідовностей активізацій; критерій покриття залежностей;

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

Практичне значення одержаних результатів.

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

Такі засоби дозволяють: формалізувати розроблення плану тестування на основі представлених метрик ступеня досягнення кожного з критеріїв; зменшити суб'єктивний вплив на вибір кількості тестів за рахунок запропонованих оцінок кількості тестів, необхідних для покриття кожного з критеріїв; обґрунтовано вибирати необхідну кількість тестів для кожного з критеріїв, виходячи з наявних обмежень на фінанси, час та обраного рівня якості.