6(40)
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Журнал «Интернаука» № 6 (<strong>40</strong>), 2018 г.<br />
М уфо = (E, L), (1)<br />
где E – множество УФО-элементов, а L – множество<br />
имен связей между УФО-элементами [2]. Множество<br />
связей может состоять из четырех непересекающихся<br />
классов: вещественные, энергетические,<br />
связи по управлению, связи по данным. Именно с<br />
составления иерархии связей начинается любая<br />
процедура УФО-анализа предметной области, так<br />
как часть из них будут является внешними по отношению<br />
к разрабатываемой модели (интерфейсными),<br />
т.е. обуславливающими функционирование<br />
надсистемы в контексте взаимодействия с анализируемой<br />
системой и они будут использованы непосредственно<br />
в контекстной диаграмме.<br />
УФО-элемент формально можно представить в<br />
виде кортежа:<br />
e = , (2)<br />
где U – «Узел», т.е. множество выходных и входных<br />
связей, характеризующих узел, который занимает<br />
определяемая система; F – «Функция», т.е. класс<br />
функций, характеризующий способы или процессы<br />
(процедуры) преобразования входных связей узла в<br />
выходные; O – «Объект», т.е. множество свойств<br />
(признаков), характеризующих класс объектов, реализующих<br />
данный класс функций [2].<br />
Для дальнейшего представления компонентов<br />
кортежа (2) будем использовать уже устоявшийся<br />
алгебраический аппарат, основанный на агрегировании<br />
элементов теории паттернов Гренандера и исчисления<br />
процессов Милнера и представленный в<br />
многочисленных работах исследователей, например,<br />
[1, 2, 5].<br />
Таким образом, компонент кортежа U можно<br />
представить как:<br />
U = (L?, L!), (3)<br />
где L? L – множество входных связей этого узла, а<br />
L! L – множество его выходных связей.<br />
Компонент F можно представить следующим<br />
образом:<br />
F = (P, P 0 , L), (4)<br />
где P – множество подпроцессов процесса, соответствующего<br />
«Функции», которые реализуются УФОэлементами,<br />
принадлежащими классу E -1 нижестоящего<br />
уровня, декомпозирующего класс E, P 0 P –<br />
множество интерфейсных подпроцессов, причем в<br />
число входных связей множества подпроцессов P?<br />
входит множество связей L?, а в число выходных<br />
связей множества подпроцессов P! входит множество<br />
связей L!; L L -1 – множество внутренних<br />
связей нижестоящего уровня.<br />
Компонент O можно представить так:<br />
О = (n, , ?, !), (5)<br />
где n – имя «Объекта» из множества N имен объектов<br />
(n ∈ N); – множество признаков «Объекта» n;<br />
? – множество показателей связей L?; ! – множество<br />
показателей связей L!.<br />
Как уже было сказано выше, вопрос автоматизации<br />
процесса построения УФО-моделей поднимался<br />
достаточно давно и нашел свое отражение в<br />
ряде работ. Одной из отправных точек для авторов<br />
стала работа [6], где был предложен алгоритм автоматизированного<br />
построения УФО-модели на базе<br />
контекстной диаграммы с внешними связями моделируемой<br />
системы, используя имеющиеся библиотечные<br />
элементы из какой-то предметной области.<br />
Суть этого алгоритма в нескольких словах:<br />
1. Рассматриваются входы контекстной диаграммы<br />
и из библиотеки элементов выбирается тот,<br />
который закрывает наибольшее число входов.<br />
2. Пункт 1 рекурсивно повторяется до тех пор,<br />
пока есть свободные входы и/или есть подходящие<br />
библиотечные УФО-элементы.<br />
3. После того, как по результатам выполнения<br />
пунктов 1-2 сформирован «слой» элементов, полностью<br />
или частично задействовавший входные связи<br />
контекстной диаграммы, процесс повторяется, но<br />
уже для выходов этого сформированного слоя, за<br />
исключением тех из них, которые совпали с выходами<br />
системы.<br />
В работе предполагалось, что конфигурирование<br />
УФО-элементов производится с учетом правил<br />
системной декомпозиции:<br />
1. Правило присоединения: элементы должны<br />
присоединяться друг к другу в соответствии с типами<br />
присущих им связей.<br />
2. Правило баланса: при присоединении элементов<br />
друг к другу (в соответствии с правилом<br />
1) должен обеспечиваться качественный и количественный<br />
баланс «притока» и «оттока» по входящим<br />
и выходящим функциональным связям.<br />
3. Правило реализации: при присоединении<br />
элементов друг к другу (в соответствии с правилами<br />
1 и 2) должно быть обеспечено соответствие интерфейсов<br />
и объектных характеристик функциональным.<br />
4. Правило замкнутости: внутренние (поддерживающие)<br />
связи/потоки элементов в системе<br />
должны быть замкнутыми.<br />
При этом предполагалось, что разработчик, использует<br />
только так называемые «логистические»<br />
конфигурации, которые предполагают преобразование<br />
элементом (точнее его функциональной составляющей)<br />
входа в выход того же типа или в выход<br />
типа, которого еще не было в данной декомпозиции.<br />
Несмотря на сформулированный алгоритм,<br />
дальнейшее развитие в виде работающего инструментария<br />
этот подход не получил. Авторы предполагают,<br />
что практическая реализация требовала<br />
уточнения ряда моментов этого подхода, что имело<br />
далеко неоднозначное решение:<br />
1. Практическая реализация правила баланса<br />
требует понимания того, насколько «совместимы»<br />
стыкуемые УФО-элементы. По сути, для контроля<br />
этого правила использовались только имена связей и<br />
в случае совпадения имен выходной связи одного<br />
14