-
вычерчивание стрелок, независимо от их назначения, выполняется только по вертикали и горизонтали, что позволяет проследить за направлением стрелок и определить блоки как точки сбора стрелок, которыми блоки и являются;
-
следует обеспечить максимальное расстояние между блоками и поворотами стрелок, а также между блоками и пересечениями стрелок для облегчения чтения диаграммы. Одновременно уменьшается вероятность перепутать две разные стрелки;
-
следует максимально увеличивать расстояние между входящими или выходящими стрелками на одной грани блока;
-
следует максимально увеличить расстояние между поворотами и пересечениями стрелок;
-
наличие входных стрелок у блока не является его обязательным атрибутом;
-
если две стрелки проходят параллельно (начинаются из одной и той же грани одной функции и заканчиваются на одной и той же грани другой функции), то по возможности следует их объединить и назвать единым термином;
-
любой блок обязательно должен иметь стрелки управления, наличие которых гарантирует работоспособность функции и обеспечивает наложение ограничений и включение/выключение функций системы;
-
если данные служат и для управления, и для входа, то вычерчиваются только стрелки управления, что уменьшает сложность диаграммы и делает очевидным управляющий характер данных;
-
расстояние между параллельными стрелками должно быть максимально возможным (с учетом габаритов диаграммы), что позволяет оставить больше места для меток и помогает зрительно определять количество стрелок и прослеживать их пути;
-
расстояние между блоками и поворотами стрелок должно быть максимально возможным (с учетом габаритов диаграммы), что позволяет облегчить процесс чтения и уменьшить веро-ятность перепутать две разные стрелки;
-
циклические обратные связи для одного и того же блока выполняются только для того, чтобы более четко подчеркнуть значение повторно используемого объекта. Обычно обратную связь изображают на диаграмме, декомпозирующей блок. Однако иногда требуется выделить повторно используемые объекты;
-
обратные связи по управлению вычерчиваются «вверх и над» («верхняя» петля), что позволяет указать ограничивающие обратные связи при минимальном числе линий и пересечений, а также собрать все стрелки управления в правой верхней части диаграммы;
-
обратные связи по входу вычерчиваются «вниз и под» («нижняя» петля), что позволяет ука-зать обратные потоки данных при минимальном числе линий и пересечений, а также собрать все входные стрелки в левой нижней части диаграммы;
-
обратные связи посредством механизма должны быть показаны как «вниз и под»;
-
количество необязательных пересечений стрелок при соединении большого числа блоков, число петель и поворотов каждой стрелки, должны быть минимальным, что позволяет значительно уменьшить сложность диаграммы. Это ручная и, в случае насыщенных диаграмм, творческая функция;
-
иногда разрешается выделять буферы и повторно используемые объекты;
-
слияние стрелок производится, если они имеют общий источник или приемник, или если они представляют связанные данные. В таком случае общее название лучше описывает суть данных;
-
следует минимизировать число стрелок, касающихся каждой стороны блока, если, конечно, природа данных не слишком разнородна;
-
если возможно, стрелки присоединяются к блокам в одной и той же ICOM-позиции. Тогда соединение стрелок конкретного типа с блоками будет согласованным, и чтение диаграммы упростится;
-
при соединении большого числа блоков необходимо избегать необязательных пересечений стрелок. Следует минимизировать число петель и поворотов каждой стрелки;
-
блоки (функции) являются сопряженными через среду, если они имеют связи с источником, генерирующим данные, без конкретного определения отношения отдельной части данных к какому-либо блоку;
-
две или более функций являются сопряженными через запись, если они связаны с набором данных и не обязательно зависят от того, представлены ли все возможные интерфейсы как сопряжение через среду. Тип интерфейса, показанный на последнем рисунке, предпочтителен, поскольку определяются отношения конкретных элементов данных к каждому блоку;
-
необходимо использовать (где это целесообразно) выразительные возможности ветвящихся стрелок;
-
при наличии стрелок со сложной топологией целесообразно повторить метку для удобства ее идентификации.