зводиться до визначення такої кількості каналів обслуговування N, при якому та , де б, в – рівні “прийнятного” обслуговування, визначені особою, яка приймає рішення.
Задачу можна вирішити, побудувавши графіки Ws та P як функції від кількості каналів обслуговування N (рис. 5.4). Відзначаючи на графіках значення б, в ми визначаємо прийнятний інтервал зміни для рівня обслуговування N. Якщо обидві вищезгадані умови не можна задовольнити одночасно, необхідно ослабити один або обидва рівні переваги, поки не буде отриманий “прийнятний” інтервал зміни кількості каналів обслуговування[2].
Наприклад, при умові: (хвилини) та отримаємо наступні залежності (рис.5.4). Потрібний інтервал значень каналів обслуговування знаходиться на перетині кривих (залежності простою каналу та середнього часу очікування від кількості каналів обслуговування) з відповідними прийнятними рівнями обслуговування.
Рисунок 5.4 – Визначення “прийнятного” інтервалу значень каналів обслуговування.
Отже, робимо висновок, що при даних умовах прийнятна кількість каналів обслуговування коливається від шести до десяти.
6 РОЗРАХУНОК ПОКАЗНИКІВ НАДІЙНОСТІ
ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ
6.1 Визначення критерію відмови системи
Надійність програмного забезпечення – властивість програми виконувати задані функції в заданих умовах роботи і на заданій ЕОМ.
На функціонування ПЗ значною мірою впливають вхідні дані, які обробляє обчислювальний пристрій. З часом можуть трапитися такі, які програма не зможе правильно обробити. Це і спричинює появу помилок програмного забезпечення.
Безвідмовність ПЗ з точки зору надійності принципово відрізняється від безвідмовності апаратних засобів обчислювальної техніки. Програми з часом не “зношуються”. Характеристики функціонування ПЗ залежать тільки від його якості, що зумовлена процесом розроблення. Не існує поняття виходу з ладу програми. Безвідмовність ПЗ визначає його правильність (коректність) і цілком залежить від наявності помилок у ньому, допущених на етапі проектування, а безвідмовність апаратури визначають випадковими відмовами, що залежать від зміни параметрів на етапі експлуатації.
Відмови при функціонуванні ПЗ є наслідком порушення кодів запису програми в пам'яті, нормального проходження обчислювального процесу. Це також спричиняють витирання або перекручування даних в оперативній чи довготривалій пам'яті комп'ютера. Крім того, відмови проявляються як програмне зупинення, систематичне пропускання певної групи команд, спотворення накопичуваних даних та ін. Це призводить до того, що кількість інформації та керуючих дій, які видають абонентам, скорочується. Наслідком цього є порушення працездатності ПЗ. Найчастіше це трапляється в результаті конфлікту між реальними вхідними даними, що мають оброблятися, і програмою, що здійснює це оброблення. До вхідних даних належать ті, що вперше надійшли, і ті, що вже накопичені за попередній період функціонування ПЗ.
Для аналізу надійності ПЗ використовують експериментально-аналітичні методи прогнозування надійності програмного забезпечення за результатами випробовувань, що базуються на тих чи інших припущеннях. Щоб застосувати до оцінки надійності програм математичний апарат теорії надійності, розглядають відмови програми – події, що містяться в переході до некоректної роботи або зупинці програми. Після появи відмови програмісти досліджують програму з метою пошуку та локалізації помилки.
Проведемо оцінку надійності програмного комплексу за результатами відладки на основі двох розроблених моделей: моделі Шумана та моделі Джелінського-Моранди.
6.1.1 Модель Шумана
В моделі Шумана використовуються дані про число помилок, що були виправлені в процесі компанування програм в систему програмного забезпечення і відлагодження програм. За цими даними обчислюються параметри моделі надійності, яка може бути використана для прогнозування показника надійності в процесі експлуатації програмного забезпечення.
Вважається, що при послідовних прогонах програми набори вхідних даних є випадковими і вибираються у відповідності із законом розподілу, який відповідає реальним умовам функціонування.
Модель заснована на наступних припущеннях:–
в початковий момент компанування програм в систему програмного забезпечення в них міститься E0 помилок; в процесі коректування нові помилки не вносяться;–
загальне число І машинних команд в програмах постійне;–
інтенсивність відмов програми пропорційна числу помилок, що залишилися в ній після відлагодження на протязі часу , тобто
(6.1)
де – відношення числа помилок, що усунені впродовж часу відлагодження , до загального числа команд на машинній мові.
Таким чином, в моделі розрізняють два значення часу: час відлагодження програми і час її роботи t – сумарне напрацювання програми.
Час відлагодження містить затрати на виявлення помилок за допомогою тестів, перевірок і т.п. Час справного функціонування при цьому не враховується.
Таким чином, значення інтенсивності відмов вважається постійним впродовж всього часу функціонування (0, t).
В силу прийнятих припущень для фіксованого ймовірність появи помилок програми впродовж часу напрацювання (0, t) визначається співвідношенням:
(6.2)
Для практичного використання вищенаведених формул необхідно оцінити С і Е0 по експериментальним даним. Для цього використаємо метод моментів.
Застосовуючи метод моментів і розглядаючи два періоди відлагодження програми 1 < 2, отримаємо наступні співвідношення:
(6.3)
(6.4)
(6.5)
де n1 і n2 – кількість помилок в програмному забезпеченні, виявлених відповідно в періодах 1 і 2;
T1 і Т2 – тривалості роботи системи, що відповідають 1 і 2.
Оцінимо кількість команд програми Розмір модуля програми складає 65320 байт Умовно можна прийняти що в середньому одна асемблер-команда займає три байти Відкидаємо 15% одержаного обєму – стільки в програмі займають різного роду вихідні дані Одержимо І = 18 507
Для оцінки надійності програми системи збору і обробки було обрано два періоди тестування, на яких: Т1 = 50 год., Т2 = 170 год. В результаті у програмному забезпеченні були виявлені такі помилки : помилки у визначенні глобальних змінних (3); помилки оператора (3); нерозпізнані помилки (4); помилки при вводі даних (4); інші помилки (2).Отже, n1 = 11, n2 = 5.
Отримаємо:
Врахувавши отримані значення, знайдемо:
Тепер знаходимо коефіцієнт С:
За період тестування в програмі усунено n = n1 + n2