конспект лекцій (ТСПП). Конспект лекцій з дисципліни 07 технологія створення програмних продуктів напряму 050101 Компютерні науки
Скачать 14.87 Mb.
|
10.4. Основні поняття і показники надійності програмних засобів.Основні поняття надійності систем. За визначенням, встановленим в ГОСТ 13377-75, надійність - властивість об'єкту виконувати задані функції, зберігаючи в часі значення встановлених експлуатаційних показників в заданих межах, відповідних заданим режимам і умовам використання, технічного обслуговування, ремонту, зберігання і транспортування. Таким чином, надійність є внутрішньою властивістю системи, що закладеною при її створенні і проявляється в часі при функціонуванні і експлуатації. Р. Гласс надійність визначає як рівень, при якому система програм задовольняє поставленим вимогам і придатна для експлуатації. При цьому слід відрізняти надійність від коректності, яка визначається як міра задоволення вимогам. Надійність є складовою частиною загальнішого поняття - якості. Якісна програма не лише надійна, але і компактна, сумісна з іншими програмами, ефективна, зручна в супроводі, портативна і цілком зрозуміла [46]. Властивості надійності виробів вивчаються теорією надежное- ти, яка є системою певних ідей, математичних моделей і методів, спрямованих на рішення проблем пророцтва, оцінки і оптимізації різних показників надійності. Надійність технічних систем визначається в основному двома чинниками: надійністю компонентів і дефектами в кон- струкции, допущеними при проектуванні йди виготовленні. Відносно невисока фізична надійність компонентів, їх здатність до руйнування, старіння або зниження надійності в процесі експлуатації привели до того, що цей чинник виявився домінуючим для більшості комплексів апаратури. Цьому сприяла також невисока складність багатьох технічних систем, внаслідок чого дефекти проектування проявлялися відносно рідко. Надійність складних програмних засобів визначається цими ж чинниками, проте домінуючими є дефекти і помилки проектування, оскільки фізичне зберігання програм на магнітних носіях характеризується дуже високою надійністю. Програма будь-якої складності і призначення при строго фіксованих початкових даних і абсолютно надійній апаратурі виконується по однозначно певному маршруту і дає на виході строго певний результат. Проте випадкова зміна початкових даних і накопиченої при обробці інформації, а також безліч умовних переходів в програмі створюють величезне число різних маршрутів виконання кожного складного ПС. Джерелами ненадійності є неперевірені поєднання початкових даних, при яких функціонуюче ПС дає невірні результати або відмови. В результаті комплекс програм не відповідає вимогам функціональної придатності і працездатності. Наведемо приклад, який опублікований в статті Юрія Батурина в журналі "Новий час" [57]. Автор приводить декілька чинників, які описують проблеми функціонування складних програмних засобів. Так, одним з чинників виступає чинник складності. "Існують фундаментальні причини, чому програмне забезпечення неможливо зробити досить надійним, щоб можна було не сумніватися в тому, що система "Зоряних воєн" дійсно спрацює", -г рахує Д. Парнас, найбільший авторитет по великомасштабному програмуванню. Він був призначений Організацією по здійсненню Стратегічної Оборонної Ініціативи (СОЇ) членом консультативного комітету з програмування управління бойовими операціями. "Мені обіцяли 1000 доларів в день плюс накладні витрати". Але, ознайомившись детальніше з тим, чого від нього чекають, Д. Парнас відхилив зроблену йому пропозицію, одночасно представивши вісім технічних документів, які пояснювали, чому програма не зможе працювати так, як вимагається. Як приклад приведемо ще один з чинників - чинник надійності. Про те, наскільки уразливе математичне забезпечення, можна судити по наступному прикладу. Коли в 1979 р. американський космічний зонд, запущений на Венеру, не досяг своєї мети, в космос вилетіло майже півмільярда доларів. Причина в тому, що в програмі корекції курсу зонду кома була сплутана з двокрапкою. При застосуванні понять надійності до програмних засобів слід враховувати особливості і відмінності цих об'єктів від традиційних технічних систем, для яких спочатку розроблялася теорія надійності, :
|