Научная статья на тему 'Анализ методов оценки надежности оборудования и систем. Практика применения методов'

Анализ методов оценки надежности оборудования и систем. Практика применения методов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
2935
309
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
НАДЕЖНОСТЬ / RELIABILITY / ОШИБКА / ERROR / ДЕФЕКТ / DEFECT / ОТКАЗ / FAILURE / ПЛОТНОСТЬ ДЕФЕКТОВ / СЛУЧАЙНЫЙ ПРОЦЕСС / RANDOM PROCESS / БЕЗОПАСНОСТЬ / SAFETY / ГАРАНТОСПОСОБНОСТЬ / DEPENDABILITY / ВОССТАНАВЛИВАЕМОСТЬ / RECOVERABILITY / ОТКАЗОУСТОЙЧИВОСТЬ / FAULT TOLERANCE / ЗАВЕРШЕННОСТЬ / COMPLETENESS / ОЦЕНКА НАДЕЖНОСТИ / RELIABILITY ASSESSMENT / СЕРТИФИКАТ КАЧЕСТВА / QUALITY CERTIFICATE / MODEL / METHOD

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Пакулин Н.В., Лаврищева Е.М., Рыжов А.Г., Зеленов С.В.

Проводится анализ моделей и методов оценки надежности технических и программных средств. Определяются основные понятия методов надежности и безопасности таких систем и ситуаций, приводящих к ошибкам, дефектам и отказам. Дано определение надежности и безопасности технических систем и программного обеспечения (ПО) систем. Приведена классификация моделей надежности: прогнозирующего, измерительного и оценочного типов. Описаны оценочные модели, которые применяются на практике. Определен стандарт жизненного цикла ПО (ISO 15288:2002), ориентированный на разработку и контроль компонентов систем на ошибки, начиная с требований к системе. Представлены результаты применения моделей надежности (Мусы, Гоэла-Окомото и др.) к малым, средним и большим проектам и дана сравнительная их оценка. Описан технологический модуль (ТМ) оценки надежности сложных комплексов программ ВПК (1989). Показана модель качества стандарта ISO 9126 (1-4):2002-2004 с показателями функциональность, надежность, эффективность и др., которые используются при определении зрелости и сертификата качества продукта.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Пакулин Н.В., Лаврищева Е.М., Рыжов А.Г., Зеленов С.В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Analysis of methods for assessing the reliability of equipment and systems. Practice of methods

The analysis of models and methods of reliability evaluation of hardware and software is carried out. The basic concepts of reliability and safety methods of such systems and situations leading to errors, defects and failures are defined. The definition of reliability and safety of technical systems and software systems is given. The classification of reliability models: predictive, measuring and evaluation types. Evaluation models that are used more in practice are described. The standard of Software life cycle (ISO 15288:2002) is defined, focused on the development and control of system components for errors, starting with the system requirements. The results of application of reliability models (Moussa, Goel-Okomoto, etc.) to small, medium and large projects are presented and their comparative assessment is given. The technological module (TM) of reliability evaluation of complex software systems VPK (1989) is described. The quality model of the standard ISO 9126 (1-4): 2002-2004 with indicators of functionality, reliability, efficiency, etc., which are used in determining the maturity and certificate of the product is shown.

Текст научной работы на тему «Анализ методов оценки надежности оборудования и систем. Практика применения методов»

Анализ методов оценки надежности оборудования и систем. Практика применения методов

1,2Е.М. Лаврищева <lavr@ispras.ru> 12'3Н.В. Пакулин<npak@ispras.ru> 1А.Г. Рыжов <ryzhov@ispras.ru> 13С.В. Зеленов <zelenov@ispras.ru> 1 Институт системного программирования им. В.П. Иванникова РАН, 109004, Россия, г. Москва, ул. А. Солженицына, д. 25

2

Московский физико-технический институт,

3

141701, Россия, Московская обл., г. Долгопрудный, Институтский пер., д. 9 'Национальный исследовательский университет «Высшая школа экономики» 101000, Россия, г. Москва, ул. Мясницкая, д. 20

Аннотация. Проводится анализ моделей и методов оценки надежности технических и программных средств. Определяются основные понятия методов надежности и безопасности таких систем и ситуаций, приводящих к ошибкам, дефектам и отказам. Дано определение надежности и безопасности технических систем и программного обеспечения (ПО) систем. Приведена классификация моделей надежности: прогнозирующего, измерительного и оценочного типов. Описаны оценочные модели, которые применяются на практике. Определен стандарт жизненного цикла ПО (ISO 15288:2002), ориентированный на разработку и контроль компонентов систем на ошибки, начиная с требований к системе. Представлены результаты применения моделей надежности (Мусы, Гоэла-Окомото и др.) к малым, средним и большим проектам и дана сравнительная их оценка. Описан технологический модуль (ТМ) оценки надежности сложных комплексов программ ВПК (1989). Показана модель качества стандарта ISO 9126 (1-4):2002-2004 с показателями функциональность, надежность, эффективность и др., которые используются при определении зрелости и сертификата качества продукта.

Ключевые слова: надежность; ошибка; дефект; отказ; плотность дефектов; случайный процесс; безопасность; гарантоспособность; восстанавливаемость; отказоустойчивость; завершенность; оценка надежности; сертификат качества

DOI: 10.15514/ISPRAS-2018-30(3)-8

Для цитирования: Лаврищева Е.М., Пакулин Н.В., Рыжов А.Г., Зеленов С.В. Анализ методов оценки надежности оборудования и систем. Практика применения методов. Труды ИСП РАН, том 30, вып. 3, 2018 г., стр. 99-120. DOI: 10.15514/ISPRAS-2018-30(3)-8

1. Введение

Рассматривается теория надежности и безопасности технических и программных систем [1-10]. Теория надежности техники возникла в рамках теории массового обслуживания систем и повлияла на становление и развитие теории надежности компьютерных систем и программного обеспечения (ПО) систем.

Теоретики, изучая природу ошибок в системах, разработали более 100 математических моделей надежности, основанных на учете различных ситуаций, возникающих в технических и программных системах на первых и последующих поколениях ЭВМ. Методы надежности обеспечивают повышение надежности систем путем исправления разного рода обнаруженных ошибок в процессе разработки и их эксплуатации. Надежность систем сформировалась как самостоятельная теоретическая и прикладная наука, способствующая определению качественных показателей систем (функциональность, точность, отказоустойчивость,

гарантоспособность, завершенность и др.).

Методы оценки надежности систем позволяют прогнозировать, измерять и оценивать качество продукта с учетом возникающих ошибок, количества и интенсивности отказов, а также процессов разработки отдельных компонентов систем в жизненном цикле (ЖЦ).

В работе рассматриваются все аспекты обеспечения надежности, безопасности и качества технических и программных систем [1-11].

2. Методы надежности оборудования и систем

Методы оценки надежности технических систем (аппаратуры, устройства, оборудование и др.) были разработаны значительно ранее компьютерных систем и основывались на вероятностных Марковских процессах с множеством числа состояний по теории массового обслуживания [12-16]. Эти методы обеспечивали проверку надежности функционирования техники, приборов и устройств в различных областях (машиностроение, энергетика, космос, медицина и др.). На их работоспособность влияли неисправности и разные недоработки в конструкции, приводящие к разрушительным последствиям и к ущербу системы в целом.

На оценку надежности компьютерных систем и ПО существенным образом влияют следующие особенности.

1. Большое количество кода в ПО, зачастую превышающее емкость физических элементов ЭВМ, и способов взаимодействия отдельных элементов ПО между собой;

2. Нематериальный характер элементов ПО, которые не деградируют, но стареют во времени, и в их процессах, программах и конструкциях могут случаться разного рода непредвиденные ситуации;

3. Возникновение ошибочных ситуаций, разных дефектов и отказов как в задании формальной спецификации отдельных элементов, так и в их выходном коде;

4. Элементы ПО трудно поддаются визуализации, обнаружению и коррекции найденных ошибок, поэтому измерение надежности ПО требует анализа и проверки данных об ошибках в большей степени, чем для аппаратуры;

5. Системы ПО могут изменяться при функционировании и выходить из рабочего состояния от разных ситуаций внешней среды (вирусов, атак и др.), которые не предусмотрены в соответствующих моделях надёжности и обеспечиваются методами безопасности информации и систем.

Надежность технических систем зависит от двух факторов:

• качества отдельных технических конструктивных элементов системы;

• отсутствия неисправностей в конструктивных элементах и их способность работать надежно и качественно.

Надежность программных систем зависит от этих же факторов и от случайных изменений данных и маршрутов исполнения программ, которые могут привести к неверным результатам или отказам.

Между надежностью аппаратуры и ПО систем имеется сходство, состоящее в возникновении случайных явлений в процессах и системах, которые должны анализироваться методами теории вероятности, надежности и безопасности.

2.1. Определение термина надежности и безопасности систем

Под надежностью систем понимается способность системы сохранять свои свойства (безотказность, восстанавливаемость, защищенность и др.) на заданном уровне в течение фиксированного промежутка времени при определенных условиях эксплуатации.

Термин надежность (reliability) обозначает способность системы обладать свойствами, обеспечивающими выполнение функций системы в соответствии с заданными требованиями.

Термин гарантоспособность (dependability) означает способность системы гарантировать выполнение услуг, для которых она предназначена, и состоит в:

• безотказности выполнения;

• готовности к работе;

• достоверности результатов;

• приспособленности к обслуживанию или ремонту (maintainability);

• информационной безопасности (security);

• конфиденциальности (confidentiality), секретности и целостности информации (integrity);

• безопасности (safety) работы системы без катастрофических последствий;

• эксплуатационной завершенности ПО и способности к восстановлению работоспособности системы.

Отказоустойчивость (fault-tolerance) обозначает способность системы автоматически за ограниченное время прогнозировать, предупреждать и восстанавливать функциональность системы после отказов с помощью механизмов поддержки всех составляющих гарантоспособности. Системы или процессы, которые обладают таким комплексным свойством, называют гарантоспособными. Им присущи традиционные надежностные свойства (безотказность, готовность, безопасность, целостность, конфиденциальность, восстанавливаемость и др.).

Вопросы разработки и использования гарантии качества систем обсуждаются более 25 лет на международных форумах и конференциях (Conference on Dependable Systems and Networks (DSN), European Dependable Computing Conference, (EDCC), International Conference on Computer Safety, Reliability and Security (SAFECOM), Probabilistic Safety Assessment and Management Conference (PSAM), Dependable Systems, Services and Technologies (DESSERT), Conference on Dependability of Complex Systems (DepCoS) и др.). С 2004 году ассоциация IEEE издает журнал Dependable and Security Computing. В нем обсуждаются бизнес-критические приложения, электронная коммерция, банковские технологии и др. [16, 17].

С точки зрения гарантоспособности надежность является целевой функцией реализации системы. К ней предъявляются высокие требования (недопустимость ошибок, отказов, дефектов и других аварийных ситуаций). Надежность систем зависит от числа оставшихся и не устраненных ошибок в отдельных программах и компонентах системы.

Чем интенсивнее проводится эксплуатация системы, тем интенсивнее выявляются ошибки, быстрее растет надежность системы и соответственно ее качество. Надежность, по существу, является функцией от ошибок, оставшихся в системе после ввода ее в эксплуатацию. Системы без ошибок считаются абсолютно надежными. Для оценки надежности систем используются собранные статистические данные - время безотказной работы, дефекты и частота (интенсивность) отказов.

Исследование надежности систем проводится с помощью методов теории вероятностей, математической статистики, теории массового обслуживания и математических методов надежности и безопасности. Главным источником информации для оценки надежности являются процессы тестирования, эксплуатации и испытания системы и данные, полученные при разработке систем в соответствии со стандартами жизненного цикла (ЖЦ) (ISO/IEC 15846-1998, 15939:2002) системной инженерии [15-23].

2.2. Базовые понятия моделей надежности и безопасности

К базовым понятиям, которые используются в моделях надежности систем, относятся следующие [1-5].

• Отказ (failure) - это переход системы из рабочего состояния в нерабочее.

• Дефект (fault) - это последствие выполнения элемента программы, приводящее к некоторому непредвиденному событию (неверной интерпретации компьютером); невыявленные дефекты - источник потенциальных ошибок и отказов системы.

• Ошибка (error) может быть следствием недостатка в спецификациях любой из программ или при принятии неверных действий в процессе испытания системы.

• Интенсивность отказов - это частота появления отказов или дефектов в системе при ее тестировании, эксплуатации и сопровождении системы.

Одним из подходов к исследованию надежности на основе отказов систем является классическая теория вероятностей, согласно которой отказы в системе считаются случайными и зависят от ошибок, внесенных при разработке системы. Все модели оценки надежности базируются на статистике отказов и интенсивности выявленных отказов в процессе верификации, тестирования и испытания системы для обеспечения ее работоспособности и гарантоспособности [16, 17].

Модели надежности основываются на нахождении случайной величины в системе, числом и интенсивностью возникновения отказов в системе. Для случайной величины вычисляется математическое ожидание и дисперсия (среднее отклонение). Если случайная величина дискретна, т.е. принимает конечное число значений хь х2, ..., xn , то ее распределение описывается вероятностью Р(| = х,), и в общем случае F(х) = < х,) является функцией распределения случайной величины.

Случайный процесс с непрерывным временем, который описывается однородными событиями, называется пуассоновским процессом. Если случайные величины, полученные на всем ЖЦ системы, распределены по показательному, эрланговскому или гиперэрланговскому законам, то поведение системы описывается Марковским процессом без непрерывных компонентов.

Надежность по существу очень близка задачам безопасности. При разработке систем научными и некоммерческими институтами их трудно оценить на надежность и безопасность из-за того, что они делаются, как правило, не по стандартам. В то время как системы управления авиацией, атомной энергетикой и оборонной промышленностью разрабатываются по стандартам. В них надежность и безопасность определяют работоспособность системы в соответствии с требованиями и с минимум отказов и дефектов.

В характеристиках безопасности учитываются только те отказы, которые могут привести к катастрофическим последствиям и ущербам (например, пожар, взрыв, разрушение здания и др.). Оценка безопасности системы базируется на надежности функционирования ПО и БД. Оценка надежности зависит от метрик стандарта качества (внешние, внутренние, эксплуатационные). Они сравниваются с требованиями заказчика на систему и используются при сертификации продукта. Для оценки надежности и функциональной безопасности используются стандарты ISO/IEC 12207 для ПО и ISO 15288 -2006 систем.

На работоспособность системы влияют отказы, дефекты и ошибки проектирования, которые приводят к длительности восстановления и к необходимости устранять в программе ошибки средствами программной и информационной избыточности. Согласно стандарта ISO 9126 (1-4) определяются характеристики надежности с учетом обнаруженных дефектов и ошибок при функционировании гарантоспособного ПО систем. Степень работоспособности/гарантоспособности зависит от соответствия характеристик требований, заданных в проекте, выявленным ошибкам и отказам в ПО и возможным неисправностям в конструктивных элементах систем.

3. Классификация моделей надежности ПО

Большинство моделей надежности исходят из предположения, что найденные ошибки и дефекты устраняются немедленно или определяются временем их устранения и новые дефекты не вносятся. В результате количество дефектов в системе уменьшается, а надежность возрастает, такие модели получили название моделей роста надежности. Shick G. [6, 16, 17] предложил следующую классификацию моделей надежности.

Прогнозирующие модели надежности основаны на измерении технических характеристик создаваемой программы: длина, сложность, число циклов и степень их вложенности, количество ошибок на страницу операторов программы и др.

Модель Мотли-Брукса основывается на длине и сложности структуры программы (количество ветвей и циклов, вложенность циклов), количестве и типах переменных, а также интерфейсов.

Модель Холстеда дает прогнозирование количества ошибок в программе в зависимости от ее объема и таких данных, как число операций (n1) и операндов (n2), а также общее число обращений к ним (N1 + N2). Измерительные модели предназначены для измерения надежности ПО, работающего с заданной внешней средой и следующими ограничениями:

• ПО не модифицируется во время периода измерений свойств надежности;

• обнаруженные ошибки не исправляются;

• измерение надежности проводится для зафиксированной конфигурации ПО.

Примером таких моделей является модель Нельсона, Рамамурти-Бастани и др[3].

Модель Нельсона основывается на выполнении к прогонов программы при тестировании и позволяет определить надежность по формуле: Я (к) = ехр [- 2 I, ОД,

где ^ - время выполнения ]-го прогона, Х(^) = -1п(1^)/^ и при q1 < 1 интерпретируется как функция интенсивности отказов.

Оценочные модели основываются на серии тестовых прогонов и проводятся на этапах тестирования системы. В тестовой среде определяется вероятность отказа программы при ее тестировании или выполнении. Эти типы моделей могут применяться на этапах ЖЦ и могут быть следующих видов [7-11]. Модели без подсчета ошибок основаны на измерении интервала времени между отказами и позволяют спрогнозировать количество ошибок, оставшихся в программе. К этим моделям относятся модели Джелински и Моранды, Шика Вулвертона, и Литвуда-Вералла.

Модели с подсчетом отказов базируются на количестве ошибок, обнаруженных на заданных интервалах времени. К этому классу моделей относятся модели Шика-Вулвертона, Шумана, Пуассоновская модель и др.

Модели с подсевом ошибок основаны на количестве устраненных ошибок и подсеве, внесенном рограмму искусственных ошибок, тип и количество которых заранее известны. При внесении изменений в программу проводится повторное тестирование и оценка надежности. Этот подход базируется на тестировании и редко используется из-за дополнительного объема работ для покрытия тестами компонентов системы.

Модели с выбором области входных значений основываются на генерации множества тестовых выборок из входного набора. К этому типу моделей относится модель Нельсона и др. На процессах выявления отказов и их интенсивности используются также:

1) модели, рассматривающие интенсивность отказов, как Марковский и пуассоновский процесс;

2) модели роста надежности.

Четкой границы между этими моделями провести нельзя, однако по фактору интенсивности отказов и моделей поведения их можно разделить на экспоненциальные, логарифмические, геометрические, байесовские и др. Для практической оценки надежности более всего представляет интерес оценочная модель Мусы, Мусы-Окомото и др. Рассмотрим их. 1. Оценочная модель Мусы [8] основана на следующих положениях:

• тесты адекватно представляют среду функционирования;

• происходящие отказы учитываются (оценивается их количество);

• интервалы между отказами независимы;

• время между отказами распределено по экспоненциальному закону;

• интенсивность отказов пропорциональна числу ошибок;

• скорость исправления ошибок (относительно времени функционирования)

• пропорциональна интенсивности их появления.

Эта модель учитывает интервалы между отказами, которые распределяется по экспоненциальному закону, а интенсивность отказов пропорциональна числу обнаруженных ошибок.

Исходя из этой модели, можно установить зависимость:

1) среднего числа отказов от времени функционирования т (рис.1), которое задается в виде:

от

т=М0 [1 - ехр ( ———)], М 0Т0

где М0 - общее число ошибок; Т0 - начальная наработка на отказ; с -коэффициент времени испытаний; т - время функционирования.

2) средней наработки на отказ Т от времени функционирования т (рис.2):

Т = Т0 ехр ( ), где М0, Т0, с - зависят от наработки на отказ. от

М 0Т0

Рис. 1. Зависимость числа отказов от времени т Fig. 1. The dependence of the number offailures on time of т

Рис. 2. Зависимость средней наработки на отказ от времени т Fig. 2. The dependence mean time to failure rate from the time т

График этой зависимости представлен областью 1 (рис. 3), для которой М1 = 1, 2, ... - номера наблюдений, а т1, т2 ... тМ1 - время между отказами. Область 2 (рис.3) соответствует достижению средней наработки Тр на отказ за время Дт.

По собранным данным об ошибках оцениваются параметры Т0 и М0, с помощью которых определяются дополнительное число ошибок по формуле:

1 1 Аш = М0Т0 [- - — ].

Т Т о

2. Модель Мусы-Окумото (логарифмическая) допускает, что некоторые ошибки имеют большую вероятность проявления в виде отказов, снижают интенсивность отказов с каждой устраненной ошибкой и дают экспоненциальное распределение. Мат.ожидание найденных ошибок ш(1) имеет вид:

т (г) = (1/6) 1п (Хф + 1),

где Х0 - исходная интенсивность отказов, 6 - скорость спада интенсивности отказов с каждым устраненным дефектом, а функция интенсивности отказов Х(г) имеет вид:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Х(г) = х0 / (Х0 6 г + 1).

3. Модель Гоело-Окумото (экспоненциального роста) описывает обнаружение ошибок с помощью неоднородного пуассоновского процесса. В ней интенсивность отказов зависит от времени, а количество выявленных ошибок при тестировании трактуется как случайная величина.

Исходные данные ш, X] и Т аналогичны данным предыдущих моделей. Функция среднего числа отказов, обнаруженных к моменту 1, имеет вид: ш (1 ) = N (1 - е -ы ),

где Ь - интенсивность обнаружения отказов; )=Ь - показатель роста надежности.

Функция интенсивности X (1) зависит от времени работы системы до отказа:

Хф = Ше -Ь1, 1 >0,

где N и Ь решаются с помощью уравнения:

- m/N-1 + exp (-bT) = 0

4. S-образная модель. Функция интенсивности Ä(t) выявления ошибок в зависимости от времени работы имеет вид:

Ä(t) = aß21 exp (-ßt),

где a - общее количество дефектов, обнаруженных от начала и до конца тестирования;

ß— скорость изменения функции интенсивности выявления отказов. Введение в формулу параметра в степени 1 модели Мусы и Гоэла-Окомото дает изменение формы кривой так, что она сначала растет, а потом спадает. Практика применения этих моделей в автоматизированных системах привела к уточнению функции интенсивности при введении дополнительного параметра n: Ä(t) = aßn+1 tn exp (-ßt),

где n отражает сложность и размер проекта некоторой системы. Это позволяет более точно определить форму кривой интенсивности с учетом получаемых практических результатов. Процесс оценки надежности включает:

• протоколирование отказов в ходе функционирования системы, измерение надежности по отказам и использование результатов измерений для определения потерь надежности в период времени эксплуатации;

• анализ частоты и серьезности отказов при определении порядка устранения соответствующих ошибок;

• оценка влияния времени функционирования системы на надежность с помощью инструментов измерения надежности.

3.1. Оценка надежности систем реального времени

Некоторые типы систем реального времени с обеспечением безопасности требуют высокой надежности (недопустимость ошибок, точность, достоверность и др.), которая в значительной степени зависит от количества оставшихся и не устраненных ошибок в процессе ее разработки на этапах ЖЦ. В ходе эксплуатации системы также могут обнаруживаться и устраняться ошибки. Если при их исправлении не вносятся новые ошибки или их меньше, чем устраняется, то в ходе эксплуатации надежность системы непрерывно растет. Чем интенсивнее проводится эксплуатация, тем интенсивнее выявляются ошибки и быстрее растет надежность.

На надежность ПО влияют, с одной стороны, угрозы, приводящие к неблагоприятным последствиям, риск нарушения безопасности системы, с другой стороны, способность совокупности компонентов системы сохранять устойчивость в процессе ее эксплуатации. Риск уменьшает свойства

надежности, особенно если обнаруженные ошибки могут быть результатом проявления угрозы извне [16].

Методы и модели надежности постоянно развиваются и уточняются, поскольку надежность является одной из ключевых проблем измерения качества современных распределенных по Интернет систем. Появилось новое направление - инженерия надежности ПО (Software reliability engineering - SRE), которое ориентировано на количественное изучение операционного поведения компонентов системы по отношению к пользователю, ожидающему получить надежную работу системы [16-20]. Надежность обеспечивается путем:

1) измерения надежности, т.е. проведения количественной ее оценки методами предсказаний, собранными данными о поведении системы в процессе тестирования и эксплуатации системы;

2) оценки стратегии и применения метрик для готовых компонентов, созданных в процессе разработки компонентов системы в заданной среде и стандартов на измерение надежности системы;

3) применения современных методов инспектирования, верификации, валидации и тестирования в процессе разработки отдельных компонентов и системы в целом.

3.2. Обеспечение надежности на этапах ЖЦ

Для получения высокой надежности системы требуется наблюдать за достижением показателей надежности и качества на всех этапах ЖЦ согласно рекомендациям стандарта ISO/IEC 12207: ЖЦ [16]. К основным процессам стандарта ЖЦ относятся:

• спецификация требований,

• проектирование,

• реализация,

• тестирование,

• испытание,

• сопровождение.

На этапе спецификации требований определяются задачи и внешние спецификации основных (целевых) требований к системе с заданием метрик для оценки надежности, в терминах интенсивности отказов или вероятности безотказного его функционирования. Разработчики системы формируют:

• приоритеты функций системы по критерию важности их реализации;

• параметры среды и интенсивности использования функций и их отказов;

• входные и выходные данные для каждой функции системы;

• категорий отказов и их интенсивности при выполнении функций в единицу календарного времени.

На этапе проектирования определяются:

• размеры информационной и алгоритмической сложности всех типов проектируемых компонентов;

• категории дефектов, свойственные всем типам компонентов системы;

• стратегии функционального тестирования компонентов по принципу «черного ящика» с помощью тестов для выявления ошибок в данных.

Для обеспечения надежности продукта проводится:

• анализ вариантов архитектуры системы на соответствие требованиям к надежности;

• анализ рисков, режимов отказов, деревьев ошибок для критических компонентов с целью обеспечения отказоустойчивости и восстанавливаемости системы;

• прогнозирование показателей размера системы, чувствительности к ошибкам, степени тестируемости, оценки риска и сложности системы.

На этапе реализации и тестирования системы проектные спецификации переводятся в коды и подготавливаются наборы тестов для автономного и комплексного их тестирования. При проведении автономного тестирования обеспечение надежности состоит в предупреждении появления дефектов в компонентах и создание эффективных методов защиты от них. Все последующие этапы разработки не могут обеспечить надежность систем, а лишь способствуют повышению уровня надежности за счет обнаружения ошибок с помощью тестов различных категорий.

На этапе испытаний проводится системное тестирование для соответствия внешних спецификаций функций целям проекта. Испытание проводится или в реальной среде функционирования, или на испытательном стенде, который имитирует работу аппаратуры. При подготовке к испытаниям изучается "история" тестирования на процесса ЖЦ в целях использования ранее разработанных тестов, а также составления специальных тестов испытаний. На этом этапе осуществляется:

• управление ростом надежности путем неоднократного исправления и регрессионного тестирования ПО;

• принятие решения о степени готовности ПО и возможности его передачи в эксплуатацию;

• оценка надежности по результатам системного тестирования и испытаний по соответствующим моделям надежности, подходящих для заданных целей.

На этапе сопровождения оценка надежности ПО проводится:

• протоколирование отказов в ходе работы системы, измерения надежности функционирования и использования результатов измерений для определения потерь надежности в период времени эксплуатации;

• анализ частоты и серьезности отказов для определения порядка их устранения;

• оценка влияния функционирования системы на надежность в условиях усовершенствования технологии и применения новых инструментов разработки.

3.3. Применение моделей для оценки надежности ПО

Практика применения моделей показывает, что среди названных моделей наиболее перспективными являются модели оценочного типа, которые базируются на пуассоновских процессах (модели Мусы, Гоэла-Окомото, S-образные и др.). По этим моделям надежность стремиться к 1. Одним из недостатков является форма кривой интенсивности выявленных отказов (экспоненциальная), которая строго спускается при t>0 вблизи t=0. Это говорит о том, что при тестировании проведено недостаточно экспериментов или мало найдено ошибок, когда интенсивность отказов была близка 0. В системе остаются ошибки и их поиск требует больше времени. В таблице 1 представлены практические значения функций интенсивности отказов 1 (t) и количество отказов ц(.t) для базовых и общих моделей. В них значения a и р находятся в следующих соотношениях: N= a, р = a, b = р, р1 = р, a0 = ар.

Табл. 1. Характеристика моделей надежности Пуассоновского типа Table 1. Characteristics of Poisson type reliability models

Название модели Функции интенсивности отказов 1 (t) Функции кумулятивного количества отказов ju(t)

Модель Гоэла-Окумото 1(t) = Nb exp (-bt) H(t) = N (1- exp (-bt))

Модель Мусы 1(t) = р0 р1 exp (р) H(t) = ро (1- exp (р))

Б -подобная модель 1 (t) = afi t exp (-р) 1(t) = a^^^) exp ( -р.)

Модель Шнайдевинда 1 (t) = a0 exp (-р.t) v(t)= ao/р (1- exp (-р.))

Общая модель пуассоновского процесса 1(t) = aрn+1 f exp (-рt) H(t)= a (n1- SnfS1'1 /(n-1)1 f exp^t)))

Для метода максимального правдоподобия задаются данные а, р, п, решим систему уравнений:

n I on—t ...n—t

1 — exp(—ргт )

1=0 (n — t)!

n +1 m тр"С exp(—рр

г* Si k n | г}"—i .n—i

р —-р^ехр—

1=0 (n — t)!

m

a =

где параметр п зависит от процесса тестирования и его рекомендуемых значений:

п=0 - для небольшого проекта, в котором разработчик является также тестером (модель Мусы, Гоэло-Окомото и др.);

п=1 - для среднего проекта, в котором тестирование и проектирование ПО исполняются несколькими разработчиками из одной рабочей группы (8-образная модель);

п=2 - для большого проекта, в котором группы тестирования и проектирования работают параллельно;

п=3 - для очень большого проекта, в котором группы тестирования и разработки работают независимо друг от друга.

На основе экспериментальных данных получены функции о количестве отказов и интенсивности отказов 1 ф на выходных данных и значениях параметра п (рис. 4). Этот рисунок показывает вид функций при разных значений п=0,1, 2, 3.

Наибольшее приближение достигается при п=3, а наименьшее при п=0 (модель Мусы, Гоэло-Окомото и др.). Это подтверждается соответствующими статистическими данными (табл.2), которые задают разницу между выходными данными (/_2) и соответствующими значениями функции при значениях п = 0, 1, 2, 3.

Табл. 2. Статистические данные функции ¡x(t) при n=3, 2, 1 и данных t_2 Table 2. Statistical data of the function p(t) for n = 3, 2, 1 and data t_2

Статистические показатели Разница функций t 2 - ß 3 Разница функций t 2 - ß 2 Разница функций t 2 - ß 1 Разница функций t 2 - ß

Среднее отклонение 16.13522 16.22889 19.88387 58.93807

Медианное отклонение 15.27700 14.11600 16.0000 60.89700

Максимум отклонение 33.58100 54.23600 49.10800 88.80200

Минимум отклонение 4. 848000 -1.280000 4.175000 15.96200

Среднеквадратическое отклонение 8.374089 17.37143 14.07056 23.63765

На основе экспериментальных данных а, р, п, (табл. 2) приведены значения функций цф и 1 при п = 3, 2, 1, полученные при использовании методов оценки надежности Мусы, Мусы-Окомото и Шнайдевинда. Функции для этих методов приведены на графике (рис. 4). Им соответствуют кривые экспоненциального типа. Графики этих функций близки друг другу из-за близких значений, полученных по заданным моделям.

250 -1-1-1-Г

/¿(f) при разных значениях п.

Рис. 4. Графики функций ¡x(t) по моделям Мусы, Окомото и Шнайдевинда Fig. 4. The graphs of function ¡x(t) on models of Musa, Okumoto and Shneidewind

Для более эффективного применения приведениях моделей надежности требуется значительное количество статистических данных о количестве и распределении отказов. А это требует увеличения количества экспериментов на процесах тестирования, системного тестирования для покрытия тестами всех компонентов и маршрутов прохождения путей в ПО.

3.4. Технологический модуль (ТМ) оценки надежности систем

ТМ разработан в рамках работ по проекту ПРОТВА ВПК (1986-1989). В состав ТМ надежности входит четыре программных модуля (ПТМ) [15, 16, 22 с.283-296]: распределение надежности, прогнозирование плотности дефектов, прогнозирование надежности и оценки надежности.

I. ПТМ «Распределения надежности» реализует метод распределения надежности по компонентам системы путем парного их сравнения и построения квадратной матрицы A размером п X п из элементов вида:

а11 = а22 = ••• = апп = 1' аа =— , = 1,-,п; 1 *]; п=к, I, m,

ар

где п - количество сравниваемых компонентов, к, I, ш - количество функций и модулей соответственно. Матрица включает относительный вес ьго компонента и вычисляется по формулам:

n

' a..

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Z ' > §w =1

nn

Z Z

wi =

1=1

a

n n

устанавливается соотношением a = § wi и значением § w. = 1. Если

ч

1 =1 7=1

В случае больших размеров матрицы в целях получения более точных относительных оценок компонентов иерархии, вычисляются, так называемые, собственный вектор и собственные значения матрицы согласно известным уравнениям [24]. В них используются следующие данные: Атах -максимальное собственное значение матрицы А п-порядка, - коэффициент относительного веса элементов матрицы А, W = (м>ь ^2, ... ^п) - собственный вектор, которому соответствует Атах. Общность решения задачи сравнения

п

' w i и значением ^ w.

I=1 1=1

матрица А имеет п-1 собственных значений А, равных нулю и Атах = п, то она является согласованной.

Определение индекса согласованности С1 и коэффициента согласованности СЯ проводится по формулам:

С1 = Атах - П , ск = С1 , где

П - 1 Е (С1)

Е(С1) - математическое ожидание для матрицы парных сравнений А (п X п). Критерий приемлемости парного сравнения элементов в матрицах размером п > 3 получен такой: СЯ < 0.05 и СЯ < 0.1 для п>5. По результатам сравнения формируется квадратная матрица Е(к X к).

Аналогично проводится сравнение приложений ПС. В результате сравнения получают к матриц. Возможный порядок каждой матрицы - I, а максимальный порядок каждой из них - т.

Инструмент для поддержки метода сравнения - Ехре11:№оюе для входной матрицы А автоматически получает собственный вектор Ш, собственное значение Атах и коэффициент согласованности СЯ. Для вычисления Атах и Ш используются соответствующие функции пакета МайаЬ [15]. Результаты сравнений заносятся в форму, содержащую перечень весовых коэффициентов программ, критерии, индексы и коэффициенты согласованности. Они предоставляются в виде готовых результатов обработки матриц. Полученные весовые коэффициенты синтезируются с помощью пакета МАТЬАБ 6.5. Результаты отображаются в виде отчета о распределении надежности по объектам системы.

II. ПТМ «Прогнозирование плотности дефектов» реализует набор моделей надежности для заданного класса программ системы обработки данных [15].

Прогнозирование плотности дефектов проводится по модели RLM (Rome Laboratory Model) и состоит в оценке влияния на плотность дефектов согласно следующих действий:

1) анализ значений параметров модели прогнозирования надежности, включая остаток дефектов от предыдущего этапа работ с ПО, используется для целевого распределенного значения надежности ПО;

2) сравнение прогнозируемого значения надежности с целевым распределенным значением;

3) корректировки переменных параметров для учета текущего состояния проекта ПО;

4) оценка параметров модели прогнозирования надежности;

5) прогнозирование плотности дефектов;

6) определение пороговых значений (допусков) для оценок результатов прогнозирования и анализа альтернатив;

7) расчет прогнозного значения надежности для ПО.

Полученная оценка является модификатором базового значения плотности дефектов для определенного класса ПО.

Расчет плотности дефектов делается по модели RLM (Rome Laboratory Model). Сначала выполняется однократное прогнозирование плотности дефектов по формуле:

9

D3 =

¡=1

где К - модификаторы плотности дефектов D0, с учетом пороговых значений данных о плотности дефектов.

Затем для каждого ПО результаты сравниваются с полученными по модели RLM. Проверка показала, что для ПО объемом 10 - 25 KSLOC погрешность прогнозировании плотности дефектов - примерно составляет 30-35%. Это объясняется некоторыми ограничениями системы Hugin Lite 6.5. Полученные результаты по определению плотности дефектов используются при прогнозировании надежности ПО.

III. ПТМ «Прогнозирование надежности» реализует метод прогнозирования значения надежности по каждому модулю системы по следующей модели надежности [15, 23]:

p ■ K

Я, = exp[ -D,I, ■ (1 - exp( p--i))],

где p - параметр среды эксплуатации /'-го модуля, v - характеристика среды ее разработки, I - оцененный размер начального кода, а Di - прогнозируемая плотность дефектов в системе. Коэффициент дефектов K - константа, предвиденная для всех объектов ПС, а значения pt и - известны на момент

первоначального прогнозирования надежности, они не изменяются во время разработки компонентов системы.

IV. ПТМ «Оценка надежности системы» согласно классификации дефектов (Orthogonal Defect Classification), в соответствии с которой для каждого выявленного дефекта определяются параметры: тип дефекта, триггер дефекта, влияние дефекта. Эти параметры используется одной или двумя подходящими моделями надежности из выше приведенного в целях проведения оценки прогнозного значения надежности отдельных модулей и системы в целом. Результаты оценки сравниваются, и выбирается из них наиболее правдоподобная модель.

По стандарту ISO/IEC 9126 (1-4) определяются показатели качества (табл. 3).

Табл. 3. Характеристики качества в стандарте ISO/IEC 9126 Table 3. Characteristics of quality in ISO/IEC 9126 standard

№ Наименование характеристики Определение характеризуемых свойств ПС

qi Функциональность (functionality) Свойства ПП, обусловливающие способность выполнения функций в соответствии требованиям в процессе тестирования и испытания системы в заданной среде

q2 Надежность (reliability) Свойства ПП, обусловливающие ее способность сохранять уровень функционирования и низкую вероятность отказов в процессе выполнения

q3 Применимость (usability) Свойства ПП, обусловливающие ее способность быть понимаемой и удобной для использования в указанных условиях

q4 Эффективность (efficiency) Свойства ПП для рационального использования выделенных ресурсов при работе системы в установленных условиях

q5 Сопровождаемость (maintainability) Свойства ПП, которые обеспечивают модификацию, усовершенствование или адаптацию системы к изменениям среды, требований и функциональности.

q6 Переносимость (portability) Свойства ПП, обусловливающие ее способность быть перенесенным из одной среды в другую.

На основе полученных данных о надежности и других показателях качества (функциональность, эффективность и др.) рассчитывается целевое значение завершенности и полезности системы (ПС), адекватных потребностям заказчика. При этом мера эксплуатационного качества системы определяется функцией полезности вида:

к

О = V а ■ Я

Х-* пс / , I 1

I=1

где ai - мера важности i-й функции системы для процесса, Ri - надежность выполнения функций в заданном периоде t эксплуатации системы. Данные по всем показателям качества (q-quality) q1-q6 в табл. 3 оцениваются по формуле:

6

q =Zаити™и

j=1

где ai - атрибуты каждого показателя качества (i= 1 -6); mj - метрики qi показателя с j-атрибутами качества; Wj - вес i -показателя качества системы с j-атрибутами. Полученные данные по показателям (характеристикам) модели качества и Ri - надежность выполнения функций входят в сертификат качества [15].

4. Заключение

В работе рассмотрены подходы к оценке надежности технических и программных систем с применением моделей надежности из множества существующих моделей разных видов и типов. Определены основные базовые понятия надежности, обеспечивающие оценку надежности по соответствующим моделям надежности ПС, основанным на времени функционирования и/или количестве отказов (ошибок), получаемых в компонентах в процессах ЖЦ тестирования, системного тестирования и эксплуатации системы. Согласно приведенной классификации моделей надежности процессы обнаружения ошибок в программах носят случайный Марковский и пуассоновский характер и обеспечивают поиск ошибок, дефектов и отказов.

Некоторые модели надежности позволяют прогнозировать число ошибок в процессе тестирования, другие оценивать надежность с помощью функций надежности по данным, собранным на этапах ЖЦ разработки системы и испытания. Для примера приведены экспериментальные данные для оценки интенсивности отказов 1 (t) и количества отказов ß(t) с помощью базовых (Мусы, Гоэла-Окомото и др.) и общей модели надежности, собранных данных на этапах ЖЦ и приведены сравнительные оценки результатов оценки. Дано описание инструментального комплекса модулей ПТМ, обеспечивающих распределение надежности, прогнозирование плотности дефектов и оценки надежности. Приведены показатели качества в стандартной модели ISO 9126 (1-4) и оценки качества, включая измерение показателя надежности, а также других показателей качества, которые входят в сертификат готового продукта.

Список литературы

[1]. Липаев В.В. Надежность программного обеспечения. М.: СИНТЕГ, 1998, 231 стр.

[2]. Липаев В.В. Методы обеспечения качества крупномасштабных программных систем. М.: СИНТЕГ, 2003, 510 стр.

[3]. Майерс Г. Надежность программного обеспечения. М.: Мир, 1980, 360 стр.

[4]. Мороз Г.Б., Лаврищева Е.М. Модели роста надежности программного обеспечения. Киев: Институт кибернетики АНУ, препринт 92-38, 1992, 23 стр.

[5]. Липаев В.В.. Надежность и функциональная безопасность комплексов программ реального времени. Москва, ЗАО «Светлица», 2013, 193 стр.

[6]. Shick G.J., Wolverton R.W. An analysis of computing software reliability models. IEEE Transactions on Software Engineering, vol. SE-4, № 2, 1978, pp. 104-120.

[7]. Shanthikumar J.G. Software reliability models: A Review. Microelectronics Reliability, vol. 23, № 5, 1983, pp. 903-943.

[8]. Goel Amrit L. Software reliability models: Assumptions, limitations, and applicability. IEEE Transactions on Software Engineering, vol. SE-11, № 12, 1985, pp. 1411-1423.

[9]. Musa J.D. Okumoto K. A. Logarithmic Poisson Time Model for Software Reliability Measurement. In Proc. of the 7th International Conference on Software Engineering, 1984, pp. 230-238.

[10]. Yamada S., Ohba M., Osaki S. S-shaped software reliability grows modeling for software error detection. IEEE Transactions on Reliability, vol. R-32, № 5, pp. 475478.

[11]. Chulani S. Constructive quality modeling for defect density prediction: COQUALMO. In Proc. of the International Symposium on Software Reliability Engineering (ISSRE'99), 1999.

[12]. Гнеденко Б.В., Коваленко И.Н. Введение в теорию массового обслуживания. М., Наука, 1966, 432 стр.

[13]. Коваленко И.Н., Шпак В.Д. Вероятностные характеристики сложных систем с иерархическим управлением. Известия АН СССР. Техническая кибернетика, no. 6, 1972, стр. 30-34.

[14]. Duval P., Matyas R., Grover A. Continuous integration improving Software quality and reducing risk. Addison Wesley, 2009, 691 p.

[15]. Коваль Г.И. Модели и методы инженерии качества систем на ранних этапах ЖЦ. Реф. дис. ИК НАНУ, 2005, 20 стр.

[16]. Андон Ф.И., Коваль Г.И. и др. Основы инженерии качества программных систем. К.: Наукова думка, 2007, 670 стр.

[17]. Горбенко А.В., Засуха С.А., Рубан В.И., Тарасюк О.М., Харченко В.С. Безопасность ракетно-космической техники и надежность компьютерных систем: 2000-е годы. Авиационно-космическая техника и технология, №1(78), 2011, стр. 920.

[18]. A. Avizienis, J.-C. Laprie, B. Randell, C. Landwehr. Basic Concepts and Taxonomy of Dependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing, vol. 1, no. 1, 2004, pp. 11-33.

[19]. IEC 62628. Guidance on software aspects of dependability. Geneva: IEC, 2011, 63 p.

[20]. ISO 15288:2002. Systems Engineering. Cycle Life Processes of Systems.

[21]. Лаврищева Е.М. Методы программирования. Теория, инженерия, практика. К.: Наукова думка, 2006, 452 стр.

[22]. Лаврищева Е.М., Грищенко В.Н. Сборочное программирование. Основы индустрии программных продуктов. К.: Наукова думка, 2009, 372 стр.

[23]. Лаврищева Е.М. Software Engineering компьютерных систем. Парадигмы, технологии, СASE-средства. К.: Наукова думка, 2014, 284 стр.

[24]. Саати Т. Принятие решений. Метод анализа иерархий. М.: Радио и связь, 1993, 315 стр.

Analysis of methods for assessing the reliability of equipment and systems. Practice of methods

1,2E.M. Lavrischeva <lavr@ispras.ru> 1,2,3N. V. Pakulin<npak@ispras.ru> 1A.G. Ryzhov <ryzhov@ispras.ru> 1,3S.V. Zelenov <zelenov@ispras.ru> 1 Institute for System Programming of the Russian Academy of Sciences, 25, Alexander Solzhenitsyn st., Moscow, 109004, Russia, Moscow Institute of physics and technology (MIPT) 141700, Russia, Moscow region, Dolgoprudny, Campus per., 9. 3 National Research University Higher School of Economics (HSE) 20 Myasnitskaya Ulitsa, Moscow, 101000, Russia

Abstract. The analysis of models and methods of reliability evaluation of hardware and software is carried out. The basic concepts of reliability and safety methods of such systems and situations leading to errors, defects and failures are defined. The definition of reliability and safety of technical systems and software systems is given. The classification of reliability models: predictive, measuring and evaluation types. Evaluation models that are used more in practice are described. The standard of Software life cycle (ISO 15288:2002) is defined, focused on the development and control of system components for errors, starting with the system requirements. The results of application of reliability models (Moussa, Goel-Okomoto, etc.) to small, medium and large projects are presented and their comparative assessment is given. The technological module (TM) of reliability evaluation of complex software systems VPK (1989) is described. The quality model of the standard ISO 9126 (14): 2002-2004 with indicators of functionality, reliability, efficiency, etc., which are used in determining the maturity and certificate of the product is shown.

Keywords: reliability, model, method, error, defect, failure, random process, safety, dependability, recoverability, fault tolerance, completeness, reliability assessment, quality certificate.

DOI: 10.15514/ISPRAS-2018-30(3)-8

For citation: Lavrischeva E.M., Pakulin N.V., Ryzhov A.G., Zelenov S.V. Analysis of methods for assessing the reliability of equipment and systems. Practice of methods. Trudy ISP RAN/Proc. ISP RAS, том 30, вып. 3, 2018 г., стр. 99-120. DOI: 10.15514/ISPRAS-2018-30(3)-8

References

[1] Lipaev V. V. Software Reliability. M.: SINTEG, 1998, 231 p. (in Russian)

[2] Lipaev V. V. Methods of quality assurance of large-scale software systems. M.: SINTEG, 2003, 510 p. (in Russian).

[3] Myers G. Software Reliability, M.: Mir, 1980, 360 p. (in Russian).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

[4] Moroz G. B., lavrisheva E. M. Models of software reliability growth. K.: V.M. Glushkov Institute of Cybernetics of NAS of Ukraine, preprint 92-38, 1992, 23p. (in Russian).

[5] Lipaev V. V. Reliability and functional safety of software systems real time. Moscow, Svetlitsa, 2013, 193 p.

[6] Shick G.J., Wolverton R.W. An analysis of computing software reliability models. IEEE Transactions on Software Engineering, vol. SE-4, № 2, 1978, pp. 104-120.

[7] Shanthikumar J.G. Software reliability models: A Review. Microelectronics Reliability, vol. 23, № 5, 1983, pp. 903-943.

[8] Goel Amrit L. Software reliability models: Assumptions, limitations, and applicability. IEEE Transactions on Software Engineering, vol. SE-11, № 12, 1985, pp. 1411-1423.

[9] Musa J.D. Okumoto K. A. Logarithmic Poisson Time Model for Software Reliability Measurement. In Proc. of the 7th International Conference on Software Engineering, 1984, pp. 230-238.

[10] Yamada S., Ohba M., Osaki S. S-shaped software reliability grows modeling for software error detection. IEEE Transactions on Reliability, vol. R-32, № 5, pp. 475-478.

[11] Chulani S. Constructive quality modeling for defect density prediction: COQUALMO. In Proc. of the International Symposium on Software Reliability Engineering (ISSRE'99), 1999.

[12] Gnedenko B.V., Kovalenko I.N. Introduction to the queueing theory. M.: Science, 1966, 432 p. (in Russian).

[13] I. N. Kovalenko and V. D. Shpak. Probabilistic characteristics of complex systems with hierarchical control. Izv. Akad. Nauk SSSR, Tekhn. Kibern., no. 6, 1972, pp. 30-34 (in Russian).

[14] Duval P., Matyas R., Grover A. Continuous integration improving Software quality and reducing risk. Addison Wesley, 2009, 691 p.

[15] Koval G.I., Models and methods for engineering quality systems at early stages of life cycle. IK NANU, Extended abstract of PhD Thesis, 2005, 20 p. (in Russian)

[16] Andon F. I. et al. Foundation of quality engineering software system. K.: Naukova Dumka, 2007, 670 p. (in Russian)

[17] Gorbenko A.V.et al. the Safety of rocket-space engineering and reliability of computer systems. Aerospace technics and technology, №1 (78), 2011, pp. 9-20, 2011.

[18] A. Avizienis, J.-C. Laprie, B. Randell, C. Landwehr. Basic Concepts and Taxonomy of Dependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing, vol. 1, no. 1, 2004, pp. 11-33.

[19] IEC 62628. Guidance on software aspects of dependability. Geneva: IEC, 2011, 63 p.

[20] ISO 15288:2002. Systems Engineering. Cycle Life Processes of Systems.

[21] Lavrischeva E. M. Programming Methods. Theory, engineering, practice. K.: Naukova Dumka, 2006, 452 p. (in Russian).

[22] Lavrisheva E. M., Grishchenko V. N. Assembly programming. Foundation of software industries. K.: K.: Naukova Dumka, 2009, 372 p. (in Russian).

[23] Lavrisheva E. M. Software Engineering of computer systems. Paradigms, technologies, CASE-means. K.: K.: Naukova Dumka, 2014, 284 p. (in Russian).

[24] Saati T. Decision-Making. Method of hierarchy analysis. M.: Radio and communications, 1993. 315p. (in Russian).

i Надоели баннеры? Вы всегда можете отключить рекламу.