N² диаграмма
N² диаграмма[1] также упоминается как N², диаграмма, N-квадратная диаграмма или N-квадрат диаграммы — представляет собой диаграмму в виде матрицы, представляющий функциональные или физические интерфейсы между элементами системы. Эта матрица использовалась для «систематической идентификации, определения, сведения в таблицу, конструирования и анализа функциональных и физических интерфейсов». Это относится к системным интерфейсам и аппаратным и / или программным интерфейсам.
Диаграмма N-квадрата была изобретена системным инженером Робертом Дж. Лано, когда он работал в TRW[[1]][en] в 1970-х годах, и впервые была опубликована во внутреннем отчете TRW в 1977 году. Один из очевидных побочных эффектов хорошо работающей матрицы N² состоит в том, что можно сразу заметить, насколько быстро увеличивается сложность системы когда к ней добавляют новые функции. Матрица визуально демонстрирует, как значение «О» большого достигается при описании сложности алгоритмов. Если алгоритм O(N2), то его характеристики прямо пропорциональны квадрату значения вводимого набора данных.
Обзор Править
Диаграмма N² широко использовалась для разработки интерфейсов данных, прежде всего в областях программного обеспечения. Однако его также можно использовать для разработки аппаратных интерфейсов. Основная диаграмма N² показана на рисунке 2. Системные функции расположены по диагонали; остальные квадраты в матрице N × N представляют входы и выходы интерфейса.
Там, где появляется пробел, нет интерфейса между соответствующими функциями. Данные перемещаются по часовой стрелке между функциями (например, символ F1 F2 указывает данные, поступающие из функции F1 в функцию F2). Передаваемые данные могут быть определены в соответствующих квадратах. В качестве альтернативы, использование кружков и цифр позволяет отдельно перечислить интерфейсы данных. Поток данных по часовой стрелке между функциями, имеющими контур обратной связи, может быть проиллюстрирован большим кругом, называемым контуром управления. Идентификация критической функции также показана на рисунке 3, где функция F4 имеет ряд входов и выходов для всех других функций в верхнем модуле. Простой поток данных интерфейса существует между верхним и нижним модулями в функциях F7 и F8. Нижний модуль имеет сложное взаимодействие между своими функциями. Диаграмма N2 может быть выведена на более низкие уровни функциональных уровней аппаратного и программного обеспечения. В дополнение к определению данных, которые должны быть предоставлены через интерфейс, диаграмма N2 может точно определить области, где могут возникнуть конфликты
Строительные блоки диаграммы N² Править
Количество объектов Править
«N» на диаграмме N2 - это число объектов, для которых показаны отношения. Эта матрица N × N требует, чтобы пользователь генерировал полные определения всех интерфейсов в жесткой двунаправленной фиксированной структуре. Пользователь размещает функциональные или физические объекты на диагональной оси, а входы и выходы интерфейса - в оставшиеся квадраты диаграммы. Пустой квадрат указывает на отсутствие интерфейса между соответствующими объектами. Данные передаются по часовой стрелке между объектами (то есть символ F1 → F2 на рисунке 4 обозначает данные, передаваемые из функции F1 в функцию F2; символ F2 → F1 обозначает обратную связь). То, что проходит через интерфейс, определяется в соответствующих квадратах. Диаграмма завершена, когда пользователь сравнил каждый объект со всеми другими объектами. Диаграмма N2 должна использоваться на каждом последовательно более низком уровне разложения объектов. Рисунок 1 иллюстрирует направленный поток интерфейсов между объектами в диаграмме N2. (В этом случае операции являются функциями.)
Диагональные функции Править
В примере справа N равно 5. Пять функций расположены по диагонали. Стрелки показывают поток данных между функциями. Таким образом, если функция 1 отправляет данные в функцию 2, элементы данных будут помещены в поле справа от функции 1. Если функция 1 не отправляет данные ни в одну из других функций, остальные поля справа от функции 1 будет пустым. Если функция 2 отправляет данные в функцию 3 и функцию 5, то элементы данных будут помещены в первый и третий блоки справа от функции 2. Если какая-либо функция отправляет данные обратно в предыдущую функцию, то соответствующий блок слева функции будут размещены элементы данных в нем. Квадраты по обе стороны от диагонали (а не только смежные квадраты) заполняются соответствующими данными для отображения потока между функциями. Если нет интерфейса между двумя функциями, квадрат, представляющий интерфейс между двумя функциями, остается пустым. Физические интерфейсы будут обрабатываться таким же образом, с физическими объектами по диагонали, а не с функциональными объектами.
Контекстные и административные данные Править
Каждая диаграмма N² должна содержать как минимум следующие контекстные и административные данные:
- Дата создания диаграммы
- Имя инженера, организации или рабочей группы, создавшей диаграмму
- Уникальный десятичный разделительный номер функционального или физического объекта
- Уникальное имя для диаграммы функционального или физического объекта
Диаграммы N² представляют собой ценный инструмент не только для определения функциональных или физических интерфейсов, но также и для определения областей, в которых могут возникать конфликты с интерфейсами, так что системная интеграция проходит гладко и эффективно.
На рисунке 5 представлена информация в диаграмме N², которая дополняет блок-схему функционального потока. Обратите внимание, что на этом рисунке нет элементов данных или триггеров. На рисунке показан контекст между функциями на разных уровнях модели.
Примеры Править
На рисунке 6 показан пример диаграммы, когда ячейки заполнены данными.
Дополнения к просмотру Править
Примечания Править
Литература Править
- Лопп Майкл "Как управлять интеллектуалами. Я, нерды и гики"