Главная страница
Навигация по странице:

  • Моделі пуассонівського типу

  • Модель Гоело–Окумото.

  • 9.2.4. Процеси оцінки надійності

  • Забезпечення надійності на процесах ЖЦ.

  • Таким чином

  • 9.3. Сертифікація програмного продукту

  • К. М. Лавріщева програмна інженерія підручник Київ, 2008


    Скачать 5.23 Mb.
    НазваниеК. М. Лавріщева програмна інженерія підручник Київ, 2008
    Дата05.05.2022
    Размер5.23 Mb.
    Формат файлаpdf
    Имя файлаlavrishcheva-6.pdf
    ТипДокументы
    #513598
    страница38 из 43
    1   ...   35   36   37   38   39   40   41   42   43
    Модель
    Шика–Вулвертона.
    Модель використовується тоді, коли
    інтенсивність відмов пропорційна не тільки поточному числу помилок, а й часу, що минув з моменту останньої відмови. Вихідні дані для цієї моделі аналогічні розглянутої вище моделі Джелинські–Моранді:
    m – число виявлених відмов за час тестування,
    X
    i
    – інтервали часу між відмовами,
    Т – тривалість тестування.
    Функції ризику Z
    i
    (t) у момент часу між i – i – відмовами визначаються у такий спосіб:
    Z
    i
    (t) = c (N – n
    i –1
    ), де i = 1 ,..., m; T
    i–1
    < t < T
    i ,
    m
    Т =

    Х
    i
    .
    i =1
    Ця функція є лінійною усередині кожного інтервалу часу між відмовами, зростає з меншим кутом нахилу.
    Оцінка c і N визначається із системи рівнянь
    m m

    1/ (N – n
    i–1
    )

    X
    i
    2/2
    = 0,
    i =1 i =1
    m
    n/c –

    (N – n
    i–1
    ) X
    i
    2/2
    = 0.
    i =1
    До вихідних показників надійності щодо тривалості T належать:
     число помилок, що залишилися, M
    T
    = N – m;
     середній час до наступної відмови MT
    T
    = (p /(2(N– m) c))
    1/2
    ;
     середній час до завершення тестування і його дисперсія:
    N-m
    E (T
    p
    ) =

    (

    / (2 i c))
    1/2
    ,
    i=1
    N-m
    Var (Tp) =

    ( (2

    /2) / i c ).
    i=1
    Функція надійності визначається за формулою:
    R
    Т
    (t) = exp (–(N–m) ct
    2/2
    ) , t

    0.
    Моделі пуассонівського типу базуються на виявленні відмов і моделюються неоднорідним процесом, що задає {M(t), t

    0}– неоднорідний пуассонівський процес із функцією інтенсивності

    (t), що відповідає загальній кількості відмов за час використання ПС – t.
    Модель Гоело–Окумото. Основою цієї моделі є опис процесу виявлення помилок за допомогою неоднорідного пуассонівського процесу, її можна

    274 Розділ 9 розглядати як модель експоненційного зростання. У цій моделі інтенсивність відмов також залежить від часу. Крім того, у ній кількість виявлених помилок трактується як випадкова величина, значення якої залежить від тесту й інших умовних чинників.
    Вихідні дані цієї моделі:
    m – число виявлених відмов за час тестування,
    X
    i
    – інтервали часу між відмовами,
    Т – тривалість тестування.
    Функція середнього числа відмов, виявлених до моменту t, має вигляд m ( t)
    = N (1 – e
    –bt
    ) , де b – інтенсивність виявлення відмов і показник зростання надійності q (t) = b.
    Функція інтенсивності

    (t) залежно від часу роботи до відмови така:

    (t) = Nb
    –bt
    , t

    0.
    Оцінка b й N випливає із розв’язку рівнянь:
    m/N –1 + exp(-bT) = 0,
    m
    m/b –

    t
    i
    – N
    m
    exp (-bT) =0.
    i=1
    Вихідні показники надійності щодо часу T визначають так:
    1) середнє число помилок, які були виявлені на інтервалі [ 0, T], за формулою
    E (N
    T
    ) = N exp (-b),
    2) функцію надійності R
    T
    (t) = exp (–N (e
    –bt
    – e
    –bt (t+т)
    )) , t  0.
    У цій моделі виявлення помилки трактується як випадкова величина, значення якої залежить від тесту й операційного середовища.
    В інших моделях кількість виявлених помилок розглядається як стала.
    У моделях зростання надійності вихідною інформацією для розрахунку надійності є інтервали часу між відмовами програми, що тестується, число відмов і час, для якого визначається надійність програми при відмові. Згідно з цією
    інформацією за допомогою моделей визначаються таки показники надійності:
    – ймовірність безвідмовної роботи;
    – середній час до наступної відмови;
    – число невиявлених відмов (помилок);
    – середній час додаткового тестування програми.
    У моделі аналізу результатів прогону тестів використовується при розрахунках загальне число експериментів тестування й число відмов. Ця модель визначає тільки ймовірність безвідмовної роботи програми й вибирається для випадків, коли попередні моделі не можна використати (мало даних, некоректність обчислень). Формула визначення ймовірності безвідмовної роботи із числа проведених експериментів має вигляд P = 1 – Neх /N, де Neх – число помилкових експериментів, N – число проведених експериментів для перевірки роботи ПС.
    Таким чином, можна зробити висновок, що моделі надійності ПС ґрунтується на часі функціонування й/або кількості відмов (помилок), отриманих у програмах у процесі їхнього тестування або експлуатації. Моделі надійності враховують випадковий марковський і пуассонівський характер відповідно до процесів виявлення помилок у програмах, а також їх кількість та інтенсивність відмов.

    Розділ 9 275
    9.2.4. Процеси оцінки надійності
    Деякі типи систем реального часу, забезпечення безпеки та інші вимагають високої надійності (неприпустимість помилок, точність, вірогідність й ін.), що значною мірою залежить від кількості, яка залишилися, і не усунутих помилок у процесі її розроблення на процесах ЖЦ. У процесі експлуатації помилки також можуть виявлятися й усуватися. Якщо при їхньому виправленні не вносяться нові помилки або їх вноситься менше, ніж усувається, то в ході експлуатації надійність системи безперервно зростає. Чим інтенсивніше здійснюється експлуатація, тим
    інтенсивніше виявляються помилки й швидше зростає надійність.
    На надійність ПС впливають, з одного боку, загрози, що призводять до несприятливих наслідків, ризику порушення безпеки системи, а з іншого –, здатність сукупності компонентів системи зберігати стійкість у процесі її експлуатації. Ризик зменшує властивості надійності, особливо, якщо виявлені помилки можуть бути результатом виявлення прояву загрози ззовні.
    Методи й моделі постійно розвиваються, оскільки надійність є однією з ключових проблем сучасних ПС. З'явився новий напрямок  інженерія надійності
    ПС (Software reliability engineering – SRE), що орієнтується на кількісне вивчення операційної поведінки компонентів ПС відносно користувача, який очікує надійну роботу системи [14], і містить у собі:
    1) вимірювання надійності, тобто проведення кількісної оцінки методами передбачення, збирання даних про поведінку системи в процесі тестування й експлуатації ПС;
    2) оцінку стратегії й метрик конструювання й вибору готових компонентів у процесі розроблення системи, а також середовища функціонування, що впливає на надійність роботи системи;
    3) сучасні методи інспектування, верифікації, валідації та тестування при розробленні окремих компонентів і системи в цілому.
    В інженерії надійності визначено новий термін dependability, що означає залежність, тобто надійність у широкому сенсі [10], тобто порівняння з терміном reliability [23] новий термін визначає здатність системи мати властивості, бажані для користувача й такі, що дають йому впевненість у якісному виконанні функцій, наданих у вимогах до системи. Dependability додає додаткові атрибути, які повинна володіти ПС, а саме:
    – готовність до використання (availability);
    – готовністю до безперервного функціонування (reliability);
    – безпека для навколишнього середовища, тобто здатність системи не викликати катастрофічних наслідків у випадку відмови (safety);
    – таємність і схоронність інформації (сonfidential);
    – здатність до збереження системи й стійкості до довільної її зміни
    (integrity);
    – здатність до експлуатації
    ПС, простота виконання операцій обслуговування, а також усунення помилок, відновлення системи після їхнього усунення й т.п.(maintainability);
    – готовність і схоронність інформації (security) і ін.
    Досягнення необхідної надійності системи забезпечується шляхом запобігання відмов (fault prevention), їх усунення (removal fault), можливого виконання системи при їх наявності й оцінки можливості появи нових відмов і

    276 Розділ 9 засобів боротьби з ними. Відмови мають випадковий характер, аналіз яких
    ґрунтується на методах теорії ймовірностей і випадкових процесів. З урахуванням цього й розроблено велику кількість моделей надійності, найважливіші з яких наведено вище.
    Кожний програмний компонент, його команди й дані обробляються в дискретні моменти часу t
    1,
    t
    2
    ,…, t
    n
    , і це може бути здійснено або вдало, або ні.
    Нехай за час Т після першого невдало обробленого компонента системи з'явилася відмова й q
    b
    – ймовірність цієї невдачі, тоді P {T > t
    n
    } = ( 1 - q t
    n
    )
    n
    , а середній час очікування T = t / q t
    n
    Припустимо, що t убуває так, що час Т залишається фіксованим, тоді маємо
    P {T > t} = (1 - t / T)
    tt t

    e
    –t/T
    , тобто час до відмови ПС у цьому випадку є безперервною величиною c,…,l, розподіленою експоненційно з параметром
    T,…,1/T...
    Для отримання високої надійності ПС потрібно спостерігати за значенням цього показника якості на всіх процесах ЖЦ, про що свідчать рекомендації стандарту ISO/IEC 12207. У ньому керування якістю (а це означає і керування основним показником якості – надійністю) визначено як новий обов'язковий процес
    ЖЦ в організації виконання основних процесів реалізації ПС. У зв'язку із цим розглянемо мету й завдання забезпечення надійності, що полягають у можливості передбачити виникнення відмов і помилок у ПС, і зібрати статистику їхньої появи й виправлення на основних процесах ЖЦ:
    – специфікація вимог,
    – проектування,
    – реалізація,
    – тестування,
    – випробування,
    – супровід.
    З організаційного характеру процесу керування якістю випливає, що забезпечення надійності припускає складання плану-графіка, у якому відображаються такі види дій:
    – виділення керованих і некерованих чинників процесу розроблення, що впливають на надійність (керовані чинники – розв’язки інспекції, обсяги всіх видів ресурсів при тестуванні, некеровані чинники – параметри середовища функціонування, досвід обслуговуючого персоналу, об’єм продукту, можливість зміни вихідних вимог до ПС та ін.);
    – вибір необхідних значень керованих чинників для оцінки досягнення цільових вимог до інтенсивності відмов і прийняття необхідних обмежень;
    – аналіз чинників, що впливають на інтенсивність відмов;
    – розроблення планів тестування й випробування продукту для оцінки надійності ПС, у тому числі при специфікації вимог, відповідності їхнім вимогам стандарту й проведення робіт з перевірки й атестації готового продукту [7, 14].
    Забезпечення надійності на процесах ЖЦ. Розглянемо роботи, які виконуються на процесах ЖЦ для досягнення надійності.
    На процесі специфікації вимог визначаються завдання й зовнішні специфікації основних (цільових) вимог до системи й ПС із поданням кількісних метрик для оцінки надійності у термінах інтенсивності відмов або ймовірності безвідмовного його функціонування.

    Розділ 9 277
    Визначення цих подань проводиться шляхом інтерв'ю розробника з користувачем для формування:
    – пріоритетів функцій за критерієм важливості їхньої реалізації в ПС;
    – сценаріїв виконання функцій;
    – параметрів середовища й інтенсивності використання функцій програм та
    їхніх відмов;
    – характеристик моделі (вхідні й вихідні дані) і вхідного простору для кожної функції;
    – категорій відмов та їхньої інтенсивності при виконанні функції в заданому сценарії із числом відмов у одиницю календарного часу.
    Результатом роботи з користувачем над аналізом проекту є:
    – класифікація відмов програмного забезпечення (за ступенем серйозності);
    – обґрунтування вимог до інтенсивності відмов на основі компромісу між надійністю, вартістю й зусиллями, затрачуваними на випуск продукту;
    – визначення ставлення замовника до відмов різного ступеня серйозності і його готовності сплачувати за зниження інтенсивності відмов за кожним категорією серйозності;
    – побудова функціональної конфігурації програмного забезпечення із зазначенням частоти використання кожної функції;
    – розбивка вхідного простору кожної функції на категорії даних для наступного функціонального тестування програм на процесі випробувань;
    – оцінка календарного часу роботи із процесором ПС.
    На процесі проектування визначаються:
    – розміри, тобто інформаційна й алгоритмічна складність всіх типів проектованих компонентів;
    – категорії дефектів, властиві всім типам компонентів ПC;
    – стратегії функціонального тестування компонент за принципом «чорної скриньки» за допомогою тестів для тестування й виявлення дефектів у класі категорії даних.
    Для компонентів ПС, що виконують різні функції, здійснюється:
    – класифікація можливих дефектів і ступеня їхнього поширення в ПС;
    – визначення середовища й інтенсивності використання компонента;
    – оцінка ризику використання певного компонента в заданому контексті системи;
    – оцінка впливів відмов компонента на стійкість всієї системи та ін.
    Для досягнення надійного продукту аналізуються:
    – варіанти архітектури ПС на відповідність поставленим вимогам до надійності;
    – види технологій аналізу ризику, режимів відмов, дерев помилок і перелік критичних компонентів для забезпечення властивостей відмовостійкості та відновлюваності ПС;
    – прогнозування показників розміру ПС, чутливості до помилок, ступеня простоти тестування, оцінки ризику й складності системи.
    В разі необхідності для покращання надійності ПС здійснюється перерозподіл певних задач між виконавцями для перепроектування, підбору нових повторно використовуваних компонентів та ін.

    278 Розділ 9
    На процесі реалізації ПС проектні специфікації переводяться в тексти МП і підготовлюються набори тестів для автономного й комплексного його тестування.
    При проведенні автономного тестування забезпечення надійності полягає в попередженні появи дефектів в окремих компонентах і створенні ефективних методів захисту від них. Всі наступні етапи розроблення не можуть забезпечити надійність ПС, а лише сприяють підвищенню рівня надійності за рахунок виявлення помилок, що залишилися, за допомогою тестів різних категорій.
    Забезпечення надійності на цьому процесі досягається за рахунок:
    – застосовуваної методології збирання й аналізу інформації про аномалії, дефекти й відмови;
    – методології виявлення й локалізації дефектів різних категорій;
    – формування критеріїв завершення тестування, визначення строків завершення тестування й вартості ресурсів тестування.
    На процесі випробувань створюється план випробувань ПС, за яким проводиться тестування на відповідність зовнішнім специфікаціям функцій і цілям проекту.
    Випробування програмного продукту повинно здійснюватися групою фахівців або користувачів у навколишньому середовищі функціонування або на
    іспитовому стенді для імітації функцій компонентів відповідно до планів випробувань. При підготовці до випробувань вивчається історія тестування на стадіях ЖЦ з метою безпосереднього використання раніше розроблених тестів, а також складання спеціальних тестів випробувань.
    При випробуванні відповідно з плану здійснюють:
    – оцінку надійності за результатами системного тестування й польових випробувань за відповідними моделями надійності;
    – керування зростанням надійності шляхом кількаразового виправлення й регресійного тестування ПС;
    – прийняття рішення про ступінь готовності ПС і можливості його передачі в експлуатацію.
    На процесі супроводу оцінка надійності ПС здійснюється за моделями надійності, що відповідають типу ПС. Якщо виявлено помилки й внесені необхідні зміни в ПС, здійснюють такі заходи:
    – протоколювання відмов у ході функціонування ПС і вимірювання надійності функціонування, а також використання результатів вимірювань при визначенні втрат надійності в період часу експлуатації;
    – аналіз частоти й серйозності відмов для визначення порядку усунення відповідних помилок;
    – оцінка впливу функціонування ПС на надійність в умовах удосконалення технології або використання нових інструментів розробки ПС.
    Таким чином, у розділі доведено, що надійність, як одна з головних характеристик ПС визначається на моделях, які ґрунтуються на часі функціонування й/або кількості відмов (помилок), отриманих у програмах у процесі їхнього тестування або експлуатації. Деякі моделі надійності дозволяють прогнозувати число помилок у процесі тестування, інші оцінювати надійність за допомогою функцій надійності й за даними, зібраними при випробуванні.
    Охарактеризовано методи досягнення надійності ПС на процесах ЖЦ.

    Розділ 9 279
    9.3. Сертифікація програмного продукту
    Під
    сертифікацією
    програмного
    продукту розуміють процес, що здійснюється третьою стороною для засвідчення його спеціальним знаком або посвідченням ідентифікованої програмної продукції (процесу або послуги) на відповідність конкретному стандарту, технічним умовам або вимогам.
    Сертифікат на програмну продукцію свідчить про відповідність перевірених показників якості цієї продукції певним вимогам. В умовах ринкових відносин наявність такого сертифікату підвищує конкурентоспроможність, є засобом завоювання ринку й захисту споживачів від недоброякісної продукції.
    Спеціальним декретом Кабінету Міністрів України «Про стандартизацію й сертифікацію» передбачається два види сертифікації створюваної продукції: обов'язкова й добровільна.
    Обов'язкова сертифікація продукту орієнтується на проведення в Державній системі сертифікації Укрсепро перевірок відповідності реальних властивостей сертифікованої продукції вимогам, певним державним нормативним документам.
    До обов'язкової сертифікації віднесено потенційно небезпечні й шкідливі продукти, вироби, процеси. У цьому переліку не зазначено програмну продукцію, хоча помилки в ній можуть призвести до небезпечних наслідків як для безпеки людей, так і для економіки. Прикладом небезпечних наслідків можуть служити аварії при запуску космічних кораблів «Челенджер» (США, 1995) і «Зеніт-2» (СНД, 1998), причиною яких стали помилки в програмах керування польотом.
    У зв'язку із цим ясно, що сертифікація програмної продукції як механізму керування якістю, забезпечення її безпеки й конкурентоспроможності вітчизняних програмних продуктів, захисту користувачів від недоброякісної продукції, необхідна. Проте багато організацій, що створюють програмні продукти, не вживають заходів з забезпечення їхньої якості й сертифікації. Це пояснюється низкою причин:
    – небажанням піддавати програмні продукти сертифікації, тому що це вимагає додаткових ресурсів;
    – нерозумінням замовника ПС переваг сертифікованого продукту;
    – відсутністю в організаціях систем забезпечення якості та ін.;
    – відсутністю ринку вітчизняної програмної продукції.
    Системи забезпечення якості ПС, нормативно-методичні документи, що визначають найраціональні й ефективні процеси й процедури його реалізації, а також системи сертифікації програмних продуктів, спрямовано на розв’язання таких завдань:
    1) створення нормативної бази інженерії якості ПС, що відповідає вимогам міжнародних і державних стандартів;
    2) розроблення типових елементів систем забезпечення якості в організаціях, що розробляють програмні продукти;
    3) опанування й удосконалювання методів оцінки якості продуктів і процесів
    їхнього виробництва;
    4) створення нормативно-методичної й інструментальної бази системи сертифікації програмних продуктів.
    До цих завдань додаються подання оцінки відповідно до моделі СММ [38] зрілості організації й процесів виробництва програмних продуктів.

    280 Розділ 9
    1   ...   35   36   37   38   39   40   41   42   43


    написать администратору сайта