Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СИСТЕМОТЕХНИЧЕСКОЕ ПРОЕКТИРОВАНИЕ.doc
Скачиваний:
73
Добавлен:
01.05.2014
Размер:
1.47 Mб
Скачать

Регламент

В организациях подготовка первичных и отчетных данных производится в соответствии с определенным расписанием (регламентом)

Компоновка распределенной обработки

Исходные данные для распределения данных

Исходные данные для проектирования представим следующим образом:

G - множество конечных пользователей;

P - множество процедур обработки;

F - множество файлов данных; G-call-P -отношение, задающее функциональные потребности пользователей;

P-use-P - отношение, задающее схему использования процедур;

P-use-F - отношение, задающее схему использования файлов;

f(G-call-P) - задает частоту использования пользователями соответстующих процедур; f(P-use-P) - задает относительную частоту использования процедурами других процедур; u(P-use-P) - задает объемы используемых процедурами данных; u(F) - задает объемы файлов данных.

Анализ функциональных потребностей пользователей.

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

P-nuse-P = (P-use-P) ** n .

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

G-ncall-P = G-call-P # P-nuse-P ,

где # - знак логического умножения матриц.

Связность пользователей по общим требуемым процедурам можно определить на основе следующего выражения:

G-f-G = G-ncall-P x (G-ncall-P)t,

где x - знак арифметического умножения матриц, t - знак

транспонирования матрицы.

Каждый элемент матрицы G-f-G задает количество совместно используемых процедур соответствующей парой пользователей.

Проведя нормировку G-f-G по элементам главной диагонали, как это показано в [1], получим матрицу коэффициентов связности пользователей по требуемым процедурам. Указанные оценки чувствительны к перераспределению функциональных потребностей пользователей.

Рассмотрим пример. Пусть заданы следующие исходные данные:

G = {g1, g2};

Pr = { p1, p2, p3, p4, p5, p6, p7};

A = {a1, a2};

F = {f1, f2, f3, f4};

G-call-P = | 1 1 0 0 0 0 0 |;

| 0 1 1 0 0 0 0 |

| 1 0 0 1 1 0 0 |

| 0 1 0 1 1 1 0 |

| 0 0 1 0 1 0 1 |

P-use-P = | 0 0 0 1 0 0 0 | ;

| 0 0 0 0 1 0 0 |

| 0 0 0 0 0 1 0 |

| 0 0 0 0 0 0 1 |

| 0 0 0 0 |

| 0 0 0 0 |

| 0 0 0 0 |

P-use-F = | 1 0 0 0 | ;

| 0 1 0 0 |

| 0 0 1 0 |

| 0 0 0 1 |

u(F) = | 10 15 5 20 | .

Оценим взаимосвязь пользователей по требуемеым процедурам.

Получим транзитивное замыкание по схеме использования процедур:

P-nuse-P = (P-use-P) ** n .

В данном случае P-nuse-P = P-use-P. Полные функциональные потребности определятся следующим образом :

G-ncall-P = G-call-P # P-nuse-P = | 1 1 0 1 1 1 0 |

| 0 1 1 1 1 1 1 |.

Взаимосвязь пользователей

G-f-G = G-ncall-P x (G-call-P)t = | 5 4 |

| 4 6 |.

Проведя нормировку по элементам главной диагонали получим

K = | 1,00 0,65 |.

| 0,80 1,00 |

Коэффициент сцепления пользователей по общим процедурам

Kout = (0,80 + 0,65) / 4 = 0.32 .

Проведем перераспределение функциональных потребностей пользователей следующим образом :

G-call-P = | 1 1 0 0 0 0 0 | .

| 0 0 1 0 0 0 0 |

Повторяя последовательность операций получим новую матрицу связности :

K = | 1,00 0,30 | и коэффициент сцепления Kout = 0,125.

| 0,20 1,00 |