ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Публикационная активность

(сведения по итогам 2016 г.)
2-летний импакт-фактор РИНЦ: 0,493
2-летний импакт-фактор РИНЦ без самоцитирования: 0,389
Двухлетний импакт-фактор РИНЦ с учетом цитирования из всех
источников: 0,732
5-летний импакт-фактор РИНЦ: 0,364
5-летний импакт-фактор РИНЦ без самоцитирования: 0,303
Суммарное число цитирований журнала в РИНЦ: 5022
Пятилетний индекс Херфиндаля по цитирующим журналам: 355
Индекс Херфиндаля по организациям авторов: 499
Десятилетний индекс Хирша: 11
Место в общем рейтинге SCIENCE INDEX за 2016 год: 304
Место в рейтинге SCIENCE INDEX за 2016 год по тематике "Автоматика. Вычислительная техника": 11

Больше данных по публикационной активности нашего журнале за 2008-2016 гг. на сайте РИНЦ

Вход


Забыли пароль? / Регистрация

Добавить в закладки

Следующий номер на сайте

4
Ожидается:
16 Декабря 2017

Среда исполнения мультиверсионного программного обеспечения

Статья опубликована в выпуске журнала № 2 за 2007 год.[ 21.06.2007 ]
Аннотация:
Abstract:
Авторы: Царев Р.Ю. (tsarev.sfu@mail.ru) - Сибирский федеральный университет, г. Красноярск, , , кандидат технических наук
Ключевое слово:
Ключевое слово:
Количество просмотров: 7310
Версия для печати
Выпуск в формате PDF (1.17Мб)

Размер шрифта:       Шрифт:

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

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

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

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

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

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

Мультиверсионная методология повышения надежности программных систем

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

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

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

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

Описание среды исполнения мультиверсионного программного обеспечения

Пользователь среды исполнения мультиверсионного программного обеспечения задает структуру формируемого мультиверсионного програм­много обеспечения. Он указывает используемые программные модули и взаимосвязь между ними. Удобный интерфейс позволяет пользователю при помощи мыши расположить модули в необходимом порядке и указать межмодульные связи.

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

После определения списка модулей задаются параметры каждого модуля. Пользователь определяет тип возвращаемого модулем значения. В среде исполнения мультиверсионного программного обеспечения используются основные простые типы данных: int, float, double, bool и char. Результатом работы модуля может являться только одно значение, несколько значений, массив данных. Существует возможность добавлять, удалять новые параметры и менять значение и тип параметра. Время ожидания завершения работы модуля также задается пользователем. В качестве единиц измерения используются миллисекунды.

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

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

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


Постоянный адрес статьи:
http://swsys.ru/index.php?page=article&id=381
Версия для печати
Выпуск в формате PDF (1.17Мб)
Статья опубликована в выпуске журнала № 2 за 2007 год.

Возможно, Вас заинтересуют следующие статьи схожих тематик: