18.02.2018 Views

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!