ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА
ДЛЯ ГЕНЕРАЦИИ, ОЦЕНКИ И ВЫБОРА СТРУКТУР
СИСТЕМ
А. В.
Болонкин,
ИПУ им.В.А. Трапезникова РАН, МТУСИ, г.
Москва
Существует
огромное многообразие инструментальных средств проектирования программных и
других систем. Большинство из них использует только формальный или неформальный
подход [1]. Лишь некоторые включают элементы обоих подходов. Поэтому
актуально создание инструмента, объединяющего формальный и неформальный
подходы. Такое средство упростит процесс проектирования структуры благодаря
наглядности, а использование математических формализмов позволит построить
структуру, в максимальной степени удовлетворяющую предъявляемым к ней
критериям. В настоящей работе представлено программное средство, условно названное
«Синтезатор».
Синтезатор
построен на основе развития метода синтеза программных систем [2],
отличающегося от других методов детальным учетом характеристик объектов системы,
использованием стандартной нотации диаграмм деятельности UML для отображения алгоритма
функционирования и применением многокритериальной оценки системы для выбора ее
наилучшей структуры.
В
результате анализа известных формальных и неформальных методов сформулированы
следующие ключевые принципы проектирования структур систем:
Для
оценки системы и ЛА с точки зрения набора критериев предложено использовать
дискретный интеграл Шоке, основанный на нечеткой l-мере, что позволит не только объединить разнотипные
критерии, но и проводить оценку вариантов структуры по взаимосвязанным
критериям.
Предлагаемый
метод синтеза состоит из двух этапов — этапа анализа и собственно этапа
синтеза. Этап анализа предназначен для сбора предварительной информации о
проектируемой системе, ее алгоритма функционирования и объектах, участвующих в
системе. Он состоит из пяти шагов:
1)
формулирование целей и
требований к системе;
2)
составление списков
характеристик и критериев оценки системы;
3)
составление списка
объектов;
4)
создание иерархической
структуры процессов;
5)
создание диаграмм
деятельности.
Этап
синтеза представляет собой генерацию возможных вариантов построения системы, их
оценку и выбор наилучшего из них на основе информации, собранной на этапе
анализа. Он состоит из четырех шагов:
1)
генерация расширенного
списка объектов;
2)
генерация расширенного
списка процессов;
3)
генерация вариантов
построения системы;
4)
оценка вариантов
построения системы и выбор наилучшего из них.
Генерация
расширенных списков объектов и процессов проводится благодаря детальному учету
всех характеристик объектов и преобразований между объектами. Генерация
возможных вариантов построения системы осуществляется как поиск путей на графе
структуры, систематизирующего все процессы, объекты и их характеристики. Для
каждого варианта вычисляется его интегральная оценка, на основе которой
проводится ранжирование вариантов. Вариант, имеющий наибольшую интегральную
оценку, в большей степени удовлетворяет заданным на этапе анализа критериям.
Принципы
работы и структура Синтезатора соответствуют шагам метода синтеза. Этап анализа
включает в себя задание
пользователем характеристик и алгоритма функционирования системы при помощи
диаграмм деятельности. Этап синтеза представляет собой расчетную часть,
вызываемую по команде пользователя при наличии всех необходимых параметров.
Рис. 1. Пользовательский
интерфейс Синтезатора
Синтезатор
реализован в виде SDI-приложения MFC. Программа проводит пользователя последовательно
через все шаги метода синтеза. Ввод параметров пользователем производится на
вкладках, соответствующих шагам этапа анализа. При запуске пользователем
процедуры синтеза производится расчет нечеткой l-меры на основе парных сравнений критериев, генерация
расширенного списка объектов и расширенной иерархической структуры процессов,
генерация вариантов структуры системы, оценка и ранжирование вариантов.
Результатом является список вариантов структуры системы, упорядоченный в
порядке убывания интегральной оценки каждого из них. Наилучший вариант с точки
зрения заданных пользователем критериев располагается в начале списка. При
выборе пользователем любого варианта в списке вариантов, сгенерированных
Синтезатором, происходит выделение данного варианта на графе структуры системы
(рис. 1).
В общем случае Синтезатор
может быть использован для проектирования структур любых систем (не только
программных). Его интерфейс и принципы работы позволяют пользователю задавать характеристики,
критерии оценки, объекты и процессы в зависимости от специфики системы. Так
могут решаться задачи принятия решений при выборе альтернатив, задачи
планирования, управления проектами и многие другие.
1. Болонкин А. В. Методы синтеза структур
программных систем // Материалы 6-й международной конференции “CAD/CAM/PDM-
2. Артамонов Е. И., Хачумов В. М. Синтез структур
специализированных средств машинной графики. — М.: ИПУ РАН, 1991. — 148 с.