Архитектура программного обеспечения для высоконадежных систем
Автор: А.В. Караванов, Н.Д. Иванов
Журнал: Космические аппараты и технологии.
Рубрика: Космическое приборостроение
Статья в выпуске: 2, 2018 года.
Бесплатный доступ
В статье рассматривается проблема построения программного обеспечения для высоконадежных систем. Исследуются основные критерии, позволяющие оценить эффективность спроектированной архитектуры программного обеспечения. Приводится их краткое описание. Программное обеспечение с большим спектром выполняемых задач разрабатывается по модульному типу. Программа делится на модули по их функциональному назначению. Предлагается выделить модуль в отдельную программу для повышения отказоустойчивости программного обеспечения в высоконадежных системах. Приводится пример построения предложенной архитектуры с разбиением программного обеспечения на модули (программы) по функциональному назначению. С этой целью разработана программа-посредник, при помощи которой модули обмениваются информацией. Взаимодействие между модулями и программой-посредником может происходить при помощи различных технологий (TCP/IP, общие файлы, разделяемая память и т. д.). В приведенном примере взаимодействие было реализовано при помощи протокола сетевого взаимодействия TCP/IP, а также проведен эксперимент для сравнения монолитно построенной программы и программы, сделанной по предложенной архитектуре. В рамках эксперимента источник данных передавал пакеты через программное обеспечение, реализованное на основании предложенной архитектуры. За критерий надежности программного обеспечения принято количество доставленных пакетов. Данный эксперимент подтвердил преимущество надежности программного обеспечения, построенного по предложенной архитектуре.
Архитектура программного обеспечения, программный модуль, декомпозиция программ, высоконадежные системы
Короткий адрес: https://sciup.org/14114747
IDR: 14114747 | DOI: 10.26732/2618-7957-2018-2-100-104
Список литературы Архитектура программного обеспечения для высоконадежных систем
- Басс Л., Клементс П., Кацман Р. Архитектура программного обеспечения на практике. СПб. : Питер, 2006. 575 с.
- Гагарина Л. Г., Кокорева Е. В., Виснадул Б. Д. Технология разработки программного обеспечения : учеб. пособие. М. : Форум Инфра-М, 2013. 400 с.
- Круз Р. Л. Структуры данных и проектирование программ : пер. с англ. М. : «БИНОМ. Лаборатория знаний», 2008. 765 с.
- Мацяшек Л. А., Лионг Б. Л. Практическая программная инженерия на основе учебного примера : пер. с англ. М. : «БИНОМ. Лаборатория знаний», 2009. 956 с.
- Фаулер М. Архитектура корпоративных программных приложений : пер. с англ. М. : Вильямс, 2006. 544 с.
- Назаров С. В. Архитектура и проектирование программных систем : монография. М. : Инфра-М, 2016. 374 с.
- Нильссон Дж. Применение DDD и шаблонов проектирования. Проблемно-ориентированное проектирование приложений с примерами на C# и .NET. М. : Вильямс, 2008. 560 с.
- Фаулер М. Шаблоны корпоративных приложений. М. : Издат. дом «Вильямс», 2011. 544 с.
- Руководство Microsoft по проектированию архитектуры приложений [Электронный ресурс]. URL: http://apparchguide.ms/Book (дата обращения: 12.03.2018).
- Message Bus [Электронный ресурс]. URL: http://msdn.microsoft.com/en-us/library/ms978579.aspx (дата обращения: 15.03.2018).