Просмотр сведений о научной статье
Обложка номера
![№2 2018](journal/archive/24/cover.jpg)
Заголовок
Архитектура программного обеспечения для высоконадежных системАвторы
А.В. Караванов, Н.Д. ИвановОрганизация
Сибирский федеральный университетг. Красноярск, Российская Федерация
Аннотация
В статье рассматривается проблема построения программного обеспечения для высоконадежных систем. Исследуются основные критерии, позволяющие оценить эффективность спроектированной архитектуры программного обеспечения. Приводится их краткое описание. Программное обеспечение с большим спектром выполняемых задач разрабатывается по модульному типу. Программа делится на модули по их функциональному назначению. Предлагается выделить модуль в отдельную программу для повышения отказоустойчивости программного обеспечения в высоконадежных системах. Приводится пример построения предложенной архитектуры с разбиением программного обеспечения на модули (программы) по функциональному назначению. С этой целью разработана программа-посредник, при помощи которой модули обмениваются информацией. Взаимодействие между модулями и программой-посредником может происходить при помощи различных технологий (TCP/IP, общие файлы, разделяемая память и т. д.). В приведенном примере взаимодействие было реализовано при помощи протокола сетевого взаимодействия TCP/IP, а также проведен эксперимент для сравнения монолитно построенной программы и программы, сделанной по предложенной архитектуре. В рамках эксперимента источник данных передавал пакеты через программное обеспечение, реализованное на основании предложенной архитектуры. За критерий надежности программного обеспечения принято количество доставленных пакетов. Данный эксперимент подтвердил преимущество надежности программного обеспечения, построенного по предложенной архитектуре.Ключевые слова
архитектура программного обеспечения, программный модуль, декомпозиция программ, высоконадежные системыСписок литературы
[1] Басс Л., Клементс П., Кацман Р. Архитектура программного обеспечения на практике. СПб. : Питер, 2006. 575 с.
[2] Гагарина Л. Г., Кокорева Е. В., Виснадул Б. Д. Технология разработки программного обеспечения : учеб. пособие. М. : Форум Инфра-М, 2013. 400 с.
[3] Круз Р. Л. Структуры данных и проектирование программ : пер. с англ. М. : «БИНОМ. Лаборатория знаний», 2008. 765 с.
[4] Мацяшек Л. А., Лионг Б. Л. Практическая программная инженерия на основе учебного примера : пер. с англ. М. : «БИНОМ. Лаборатория знаний», 2009. 956 с.
[5] Фаулер М. Архитектура корпоративных программных приложений : пер. с англ. М. : Вильямс, 2006. 544 с.
[6] Назаров С. В. Архитектура и проектирование программных систем : монография. М. : Инфра-М, 2016. 374 с.
[7] Нильссон Дж. Применение DDD и шаблонов проектирования. Проблемно-ориентированное проектирование приложений с примерами на C# и .NET. М. : Вильямс, 2008. 560 с.
[8] Фаулер М. Шаблоны корпоративных приложений. М. : Издат. дом «Вильямс», 2011. 544 с.
[9] Руководство Microsoft по проектированию архитектуры приложений [Электронный ресурс]. URL: http://apparchguide.ms/Book (дата обращения: 12.03.2018).
[10] Message Bus [Электронный ресурс]. URL: http://msdn.microsoft.com/en-us/library/ms978579.aspx (дата обращения: 15.03.2018).
Цитирование данной статьи
Караванов А.В., Иванов Н.Д. Архитектура программного обеспечения для высоконадежных систем // Космические аппараты и технологии. 2018. Т. 2. № 2. С. 100-104. doi: 10.26732/2618-7957-2018-2-100-104
Данная статья лицензирована по лицензии Creative Commons «Attribution-NonCommercial» («Атрибуция — Некоммерческое использование») 4.0 Всемирная.