Про вибір моделі надійного функціонування програмного забезпечення у хмарних технологіях



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

Ключові слова: моделі, програмне забезпечення, хмарні технології.

Савчук Олена Володимирівна, к.т.н., доцент

КПІ ім. Ігоря Сікорського

Україна, Київ

savchuk_l1@ukr.net

Казанцева Анастасія Володимирівна, Спеціаліст

КНУ ім. Тараса Шевченка

Україна, Київ

lesnaja@bigmir.net

Пирожков Олексій Юрійович, Магістрант

КПІ ім. Ігоря Сікорського

Україна, Київ

a.y.pirozhkov@gmail.com

On Choosing Model of Reliable Software Operation in Cloud Technologies

Abstract. In this article, models of reliable software functioning are considered. A dynamic model has been chosen to guarantee the confidentiality and security of information even when compromising the provider of cloud services or its infrastructure.

Keywords: models, software, cloud technologies.

Olena Savchuk

PhD, associate professor

Dept. of automation and control in technical systems NTUU “Igor Sikorsky Kyiv Polytechnic Institute”

Kyiv, Ukraine

savchuk_l1@ukr.net

Anastasia Kazantseva

Specialist

Dept. of Mathematical Physics
Taras Shevchenko KNU

Ukraine, Kyiv

lesnaja@bigmir.net

Oleksiy Pyrozhkov

Master of Science student

Dept. of automation and control in technical systems NTUU “Igor Sikorsky Kyiv Polytechnic Institute”

Kyiv, Ukraine

a.y.pirozhkov@gmail.com

ВСТУП

У міжнародному стандарті ISO 9001:2008 виділено характеристики, які дозволяють оцінювати програмне забезпечення (ПЗ) із позиції користувача, розроблювача й керуючого проектом. Рекомендуються 6 основних характеристик якості ПЗ, кожна з яких деталізується декількома (усього 21) субхарактеристиками. Функціональна придатність деталізується придатністю для застосування, точністю, захищеністю, здатністю до взаємодії й погодженістю зі стандартами й правилами проектування. Надійність рекомендується характеризувати рівнем завершеності (відсутності помилок), стійкістю до помилок і перезапусканням. Застосовність пропонується описувати зрозумілістю, навченістю й простотою використання. Ефективність рекомендується характеризувати ресурсною й тимчасовою економічністю. Супроводженість характеризується зручністю для аналізу, змінюваністю, стабільністю й тестовністю. Переносимість пропонується відбивати адаптовністю, структурованістю, замінністю й запровадженістю. Характеристики й субхарактеристики в стандарті визначені дуже коротко, без коментарів і рекомендацій з їхнього застосування до конкретних систем і проектів. Технологія хмарних обчислень забезпечує нову концепцію плати за використання корисних обчислювальних ресурсів, що базується переважно на технологіях віртуалізації. Основними перевагами хмарних обчислювальних послуг є: самообслуговування, широкий доступ до мережі, об’єднання ресурсів, швидке масштабування. Незважаючи на ці переваги, широке використання цієї нової технології зіштовхуються з низкою перешкод, включаючи безпеку та конфіденційність. На додаток до традиційних ризиків безпеки ризик як у будь-якої обчислювальної системи, підключеної до Інтернету, хмарні системи мають особливі проблеми безпеки і конфіденційності через віртуалізацію і свою багаторівневу природу [1]. Тому саме надійність та діагностика займає перше місце серед характеристик якості у хмарних технологіях. Надійна програма насамперед повинна забезпечувати досить низьку ймовірність відмови в процесі функціонування в реальному часі. Швидке реагування на перекручування програм, даних або обчислювального процесу й відновлення працездатності за час, менше, чим поріг між збоєм і відмовою, забезпечують високу надійність програм. При цьому некоректна програма може функціонувати абсолютно надійно. У реальних умовах по різних причинах вихідні дані можуть попадати в області значень, що викликають збої, не перевірені при випробуваннях, а також не задані вимогами специфікації й технічного завдання. Якщо в цих ситуаціях відбувається досить швидке відновлення, таке, що не фіксується відмова, то такі події не впливають на основні показники надійності - наробіток на відмову й коефіцієнт готовності. Отже, надійність функціонування програм є поняттям динамічним, що проявляється в часі, і істотно відрізняється від поняття коректності програм. Основним принципом класифікації збоїв і відмов у програмах при відсутності їхнього фізичного руйнування є поділ по тимчасовому показнику тривалості відновлення після будь-якого перекручування програм, даних або обчислювального процесу, що реєструється як порушення працездатності.

МОДЕЛЬ ФАКТОРІВ, ЩО ВИЗНАЧАЮТЬ НАДІЙНІСТЬ ПРОГРАМНИХ ЗАСОБІВ

Неможливо забезпечити абсолютну відсутність дефектів проектування в складних ПЗ, внаслідок чого надійність їхнього функціонування має завжди кінцеве, обмежене значення. При цьому передбачається, що відомо правильний, еталонний стан об’єкта, стосовно якого може бути визначена наявність відхилення — дефекту або помилки. Для систематичної, координованої боротьби з ними необхідно досліджувати фактори, що впливають на надійність ПЗ із боку випадкових, існуючих і потенційно можливих дефектів у конкретних програмах, а у надзвичайних обставинах виконувати діагностичні тести системи. Наступний крок - виправлення помилок самою системою - плідний метод проектування надійних систем апаратного забезпечення. Якщо деякий програмний модуль містить помилку, ідентичні «запасні» модулі також будуть містити ту ж помилку. Розглянемо класифікацію моделей надійності ПЗ (МНПЗ), що підрозділяються на аналітичні й емпіричні. Аналітичні моделі дають можливість розрахувати кількісні показники надійності, ґрунтуючись на даних про проводження програми в процесі тестування (вимірюючи й оцінюючи моделі). Емпіричні моделі базуються на аналізі структурних особливостей програм.. Розглянемо основні передумови, обмеження й математичний апарат аналітичних моделей. Аналітичне моделювання надійності ПЗ включає чотири кроки:1) визначення припущень, пов’язаних із процедурою тестування ПЗ; 2) розробка або вибір аналітичної моделі, що базується на припущеннях про процедуру тестування; 3) вибір параметрів моделей з використанням отриманих даних; 4) застосування моделі - розрахунок кількісних показників надійності по моделі.

ДИНАМІЧНІ МОДЕЛІ НАДІЙНОСТІ

Модель Шумана може бути використана при певним чином організованій процедурі тестування. Виявлені помилки реєструються (збирається статистика про помилки), але не виправляються. Передбачається, що до початку тестування в ПЗ є ЕT помилок. Протягом часу тестування τ виявляється εс помилок розраховуючи на команду в машинній мові. Розраховується середній наробіток на відмову. Модель La Padula. По цій моделі виконання послідов-ності тестів виробляється в т етапів. Перевага моделі полягає в тім, що вона є прогнозною й, ґрунтуючись на даних, отриманих у ході тестування, дає можливість пророчити ймовірність безвідмовної роботи програми в наступних етапах її виконання. Модель Джелинського - Моранди ставиться до дина-мічних моделей безперервного часу. Основне положення, на якому базується модель, полягає в тому, що значення інтервалів часу тестування між виявленням двох помилок має експонентний розподіл із частотою помилок (або інтенсивністю відмов), пропорційною числу ще не виявлених помилок. Модель Шику – Волвертона. Це модифікація попередньої моделі. В основі моделі Шику - Волвертона лежить припущення, відповідно до якого частота помилок пропорційна не тільки кількості помилок у програмах, але й часу тестування, тобто ймовірність виявлення помилок із часом зростає. Модель Муса відносять до динамічних моделей безперервного часу. Вважається, що протягом усього життєвого циклу ПЗ може відбутися ${{M}_{0}}$ відмов і при цьому будуть виявлені всі ${{N}_{0}}$ помилки, які були присутні в ПЗ до початку тестування. Модель перехідних ймовірностей. Ця модель заснована на марковському процесі, що протікає в дискретній системі з безперервним часом. Процес, що протікає в системі, називається марковським (або процесом без наслідків), якщо для кожного моменту часу ймовірність будь-якого стану системи в майбутньому залежить тільки від стану системи в цей час (${{t}_{0}}$) і не залежить від того, яким образом система прийшла в цей стан. Процес тестування ПЗ розглядається як марковський процес. У початковий момент тестування (t = 0) у ПЗ було п помилок. Передбачається, що в процесі тестування виявляється по одній помилці. Тоді послідовність станів системи (n, n-1, n-2, n-3) і т.д. відповідає періодам часу, коли попередня помилка вже виправлена, а нова ще не виявлена. Помилки виявляються з інтенсивністю λ, а виправляються з інтенсивністю μ.

ВИСНОВКИ

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

Література

$1.$ Jose M. Alcaraz Calero, Nigel Edwards, JohannesKirschnick, Lawrence Wilcock & Mike WrayClouds: Toward a multi-tenancyauthorization system for cloud services// IEEE Security and Privacy,2010, pp. 16-122

May 16, 2018