Научный журнал
Фундаментальные исследования
ISSN 1812-7339
"Перечень" ВАК
ИФ РИНЦ = 1,674

МОДЕЛИРОВАНИЕ ОПТИМАЛЬНОЙ СТРУКТУРЫ КОМПОНЕНТОВ НАУЧНО-ОБРАЗОВАТЕЛЬНОЙ СРЕДЫ

Жукова С.А. 1
1 Чайковский технологический институт (филиал) ИжГТУ имени М.Т. Калашникова
В работе рассматривается модель синтеза структуры научно-образовательной среды, консолидирующей ресурсы научной деятельности и предоставляющей сервисы в области компьютерного моделирования. Предложена постановка задачи синтеза оптимальной структуры программного обеспечения научно-образовательной среды с учетом критериев оптимизации и ограничений. Выбор критериев выполнялся в соответствии с внутренними и внешними показателями качества глобальных информационных систем: масштабируемости и интероперабельности. Синтез структуры системы осуществляется в соответствии с механизмом объектно-ориентированного проектирования на основе классов, пакетов и интерфейсов. Структура описывается в виде графа G(E,V), где E-элементы структуры (классы и пакеты), V-связи между элементами структур, зависимости между классами и пакетами. В качестве критерия оптимальности выбраны трудозатраты на внедрение, привязку и эксплуатацию системы. В качестве ограничений введены две группы характеристик: внешние потребительские характеристики функционирования системы (коэффициент готовности, количество вычислительной мощности на обработку единицы запроса, время обращения к информационным массивам, время обращения к алгоритмическим ресурсам); внутренние характеристики, косвенно определяющие значение внешних характеристик (количество классов, сцепление между классами или пакетами, однократность использования методов, количество интерфейсов, типизация внешних интерфейсов и форматов обмена данными). В результате решения поставленной задачи разработана структура программного обеспечения научно-образовательной среды с учетом критериев оптимизации и ограничений. Минимизация трудозатрат достигнута за счет сокращения зависимостей между классами, размещенными в разных пакетах, снижения зависимостей неустойчивых классов с другими классами, использования унифицированных форматов данных и интерфейсов для взаимодействия с внешними системами. Предложенная математическая модель синтеза структуры обеспечивает поиск оптимального решения по составу и структуре компонентов программного обеспечения при использовании механизма объектно-ориентированного проектирования с учетом характеристик глобальных информационных систем.
единое информационное пространство
глобальные системы
структура информационных систем
модуль
интерфейс
оптимизация
1. Ефимов И.Н., Козлова С.Ж., Жукова С.А. Концептуальные основы интеграции открытых виртуальных лабораторных комплексов // Вестник ИжГТУ. – 2011. – № 3. – С. 192–198.
2. Жукова С.А., Германюк Д.Е. Особенности моделирования системы интеграции ресурсов в науке и образовании, Информационные технологии и вычислительные системы. – 2011. – № 4. – С. 66–73.
3. Жукова С.А., Построение архитектуры технологической платформы открытых исследовательских пространств // Журнал радиоэлектроники: электронный журнал. – 2013. – № 5.
4. Иванов Д.Ю., Новиков Ф.А. Моделирование на UML. Теория, практика, видеокурс. – СПб.: Профессиональная литература, наука и техника, 2010. – 640 с.
5. Кузнецов Н.А. Методы анализа и синтеза модульных информационно-управляющих систем. – М.: Изд-во: Физматлит, 2002. – 538с.
6. Черников Б.В., Поклонов Б.Е. Оценка качества программного обеспечения: учебное пособие. – М.: ИД «Форум»: ИНФРА-М, 2012. – 400 с.

Наметившиеся тенденции объединения усилий и ресурсов в решении глобальных и вместе с тем локальных задач государствами, корпорациями, а также сообществами послужили толчком к развитию и исследованию глобальных информационных систем, появлению новых подходов к их построению и оптимизации. Переход от разрозненных узкоспециализированных средств ИКТ к реализации интегрированных информационных сред, охватывающих взаимосвязанные процессы и ресурсы в рамках определенных видов деятельности, выдвигают на первый план характеристики функционирования системы: интероперабельность и масштабируемость. Актуальной является задача формирования научно-образовательной среды, консолидирующей ресурсы научной деятельности (рис. 1) и предоставляющей сервисы в области компьютерного моделирования. К ресурсам исследовательской деятельности относятся: интеллектуальные (математические модели объектов и методы их исследования, результаты численных экспериментов над объектом, отчеты и публикации), алгоритмические (программы и программные комплексы, осуществляющие вычислительный эксперимент); организационные (правила и инструкции выполнения исследования, нормативная документация), аппаратные комплексы, необходимые для выполнения экспериментов. Совокупность ресурсов описывается в виде виртуального лабораторного комплекса (ВЛК) и используется для осуществления процессов исследовательской деятельности: выбор объекта исследования, выбор инструмента компьютерного моделирования, формирование начальных условий, выполнение эксперимента, формирование документации по эксперименту, анализ результатов [1].

pic_1.tif

Рис. 1. Состав исследовательского пространства

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

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

Синтез структуры системы осуществляется в соответствии с механизмом объектно-ориентированного проектирования на основе совокупности функциональных конструкций – классов и интерфейсов, представляющих собой программные компоненты [4].

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

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

подсистема – это совокупность модулей, объединенных в группу по некоторому признаку. В случае объектно-ориентированного проектирования в качестве подсистем рассматриваются пакеты;

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

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

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

В соответствии с приведенной в работе [5] классификацией систем обработки данных определим нашу систему как типовую модульную систему обработки данных с частичной централизацией. В нашем случае рассматриваем архитектуру типовой системы (рис. 2), в которой выделяем следующие базовые уровни программных модулей: приложения, общесистемный, прикладной, технологический и внешний.

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

pic_2.tif

Рис. 2. Многоуровневая архитектура системы с частичной централизацией

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

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

Задача синтеза оптимальной структуры системы в общем виде может быть записана следующим образом:

Φ(Σ) = Φ(π, γ),

где π – план (решение) для общесистемной части (центра); γ – это план (решение) для вариативной части. Решение π и γ представляют собой графы G(E,V), где E – элементы структуры (программные компоненты); V – связи между элементами структур, описывающие зависимости между модулями. Вес вершины соответствует численным характеристикам модуля, а мощности дуг характеризуют объем передаваемой информации.

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

В качестве ограничений при решении задач синтеза оптимальной структуры системы используем две группы характеристик:

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

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

Значение критериев внешних характеристик определено на основе рекомендаций к типовым глобальным системам и с учетом специфики применения в научной сфере. Значение критериев внутренних характеристик определялось в соответствии с методами оценки характеристик программ на основе объектно-ориентированных метрик Чидамбера, Кемерера и Мартина [6].

Таким образом, задача синтеза оптимальной модульной структуры системы по критерию стоимости разработки, привязки и эксплуатации формулируется как задача оптимизации для системы с частичной централизацией [5]:

gyk01.wmf

где F – целевая функция оптимизации трудозатрат на разработку модулей центра системы; f – целевая функция оптимизации трудозатрат на привязку системы к сервисам внешних систем; xlm – = 1, если l – метод входит в состав m-го модуля; xlm – = 0, в противном случае; Sразm – трудозатраты на разработку m-го модуля (чел./ч); Sинтj – трудозатраты на разработку j-го интерфейса (чел./ч); Sпрn – трудозатраты на привязку n-го модуля внешней системы (чел./ч),

при следующих ограничениях:

– максимальное (M) и минимальное (M`) число методов в классе

gyk02.wmf

– уровень сцепления классов (A), принадлежащих разным пакетам, определяется количеством зависимостей между ними

gyk03.wmf

– уровень сцепления классов k*(A*), являющихся неустойчивыми к изменениям, определяется количеством зависимостей между этими классами с другими

gyk04.wmf

– однократность включения метода в класс

gyk05.wmf

– уровень связности k** классов (A**), обращающихся к компонентам внешних систем, определяется количеством зависимостей между ними

gyk06.wmf

Решением задачи является:

gyk07.wmf

где gyk08.wmf.

χ′ – область определения целевой функции Ф; χ″ – область определения целевой функции f при заданном уровне централизации.

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

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

На этапе анализа исследовательской деятельности определены: сервисы системы – множество U графа обработки данных G0, информационные элементы данных графа G0–D, множество сервисов внешних систем n, с которыми необходимо взаимодействие – Un, множество информационных элементов данных для сервисов множества Un – Dn.

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

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

Рецензенты:

Кураков Ю.И., д.т.н., профессор, заведующий кафедрой «Естественнонаучные дисциплины», ШИ (ф) ЮРГПУ (НПИ) им. М.И. Платова, г. Шахты;

Бельтюков А.П., д.ф.-м.н., профессор, заведующий кафедрой «Теоретические основы информатики», Удмуртский государственный университет, г. Ижевск.

Работа поступила в редакцию 08.11.2013.


Библиографическая ссылка

Жукова С.А. МОДЕЛИРОВАНИЕ ОПТИМАЛЬНОЙ СТРУКТУРЫ КОМПОНЕНТОВ НАУЧНО-ОБРАЗОВАТЕЛЬНОЙ СРЕДЫ // Фундаментальные исследования. – 2013. – № 11-4. – С. 639-643;
URL: https://fundamental-research.ru/ru/article/view?id=33174 (дата обращения: 16.04.2024).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674