Методология структурного анализа и проектирования SADT. Глава 11
Дэвид А. Марка, Клемент МакГоуэн, Предисловие Дугласа Т. Росса
Глава 11. Соглашения по построению диаграмм
В процессе критической оценки содержания диаграммы автор должен оценивать усложненность диаграммы, вызванную неудачным расположением ее блоков и дуг. Соглашения по размещению элементов SADT-диаграмм помогают вычерчивать более читабельные диаграммы, так же как конструкции структурного программирования позволяют писать читабельные программы. В SADT существует несколько типов соглашений по размещению элементов - для блоков, для дуг и для комбинаций блоков и дуг. В этой главе рассматривается каждый из этих типов, описываются правила для них и приводятся соответствующие примеры. По мере обсуждения правил мы настоятельно рекомендуем внимательно изучать примеры, поскольку они графически иллюстрируют эти правила. Кроме того, мы советуем отыскать на рисунках в книге другие примеры использования приведенных здесь правил, обеспечивающих наглядность SADT-диаграмм.
11.1. Соглашения по размещению блоков
- Располагайте блоки по диагонали - от левого верхнего угла диаграммы до правого нижнего, и пронумеруйте их в том же порядке.
Получившаяся "каскадная" структура идеальна для подчеркивания доминантности, минимизации поворотов и пересечений дуг, упрощения обратных связей.
- Разместите номер каждого блока в его нижнем правом углу. Стандартное расположение номеров позволяет их быстро находить.
- Запишите С-номер диаграммы, декомпозирующей блок, под правым нижним углом блока. При таком расположении его легко найти. Кроме того, номер блока наглядно связывается с детализирующей его диаграммой.
11.2. Соглашения по размещению дуг
- Чертите дуги только по вертикали и горизонтали. Таким образом блоки будут визуально выделяться как точки сбора дуг, которыми блоки и являются. Это помогает также проследить за направлением дуг.
- Блоки всегда имеют дуги управления, но могут не иметь входных дуг. Дуги управления накладывают ограничения и включают или выключают функции системы. Без них система не может работать.
- Если данные служат и для управления, и для входа, вычерчивайте только дугу управления. Этим вы уменьшаете сложность общей картины и делаете очевидным управляющий характер данных.
- Максимально увеличьте расстояние между параллельными дугами, оставляя больше места для меток. Это помогает зрительно определять количество дуг и прослеживать их пути.
- Максимально увеличьте расстояние между блоками и поворотами дуг, а также между блоками и пересечениями дуг, чтобы облегчить процесс чтения и уменьшить вероятность перепутать две разные дуги.
- Объедините дуги, источники которых не указаны на диаграмме, если они представляют одни и те же данные. Этим вы графически покажете единый источник сходных данных.
- Рисуйте циклические обратные связи для одного и того же блока только, чтобы выделить их. Обычно обратную связь изображают на диаграмме, декомпозирующей блок. Однако иногда требуется выделить буферы и повторно используемые объекты.
11.3. Соглашения по размещению блоков и дуг
- Объединяйте дуги с общим источником или с общим приемником, если они представляют связанные данные. Общее название лучше описывает суть данных.
- Минимизируйте число дуг, касающихся каждой стороны блока, если, конечно, природа данных не слишком разнородна.
- Обратные связи по управлению рисуйте "вверх и над". Таким образом вы покажете ограничивающие обратные связи при минимальном числе линий и пересечений, а также соберете все дуги управления в верхней правой части диаграммы.
- Обратные связи по входу рисуйте "вниз и под". Это позволит показать обратные потоки данных при минимальном числе линий и пересечений, а также собрать все входные дуги в нижней левой части диаграммы.
- Если возможно, присоединяйте дуги к блокам в одной и той же ICOM-позиции. Соединения дуг конкретного типа с блоками будут согласованными, и тем самым вы упростите чтение диаграммы.
- При соединении большого числа блоков избегайте необязательных пересечений дуг. Возможно, это простейшее и самое очевидное правило позволит более всего уменьшить сложность диаграммы.
- Минимизируйте число петель и поворотов каждой дуги. Это также упростит диаграмму.
11.4. Резюме
Соглашения по размещению элементов SADT-диаграмм строго следуют схеме вычерчивания сверху вниз и слева направо. Блоки обычно располагают по ступенчатой схеме; дуги подходят к блокам под прямым углом. Расстояния между дугами сохраняются максимальными, и они всегда одинаковы. Когда несколько дуг однородной природы идут из одного блока в другой, они часто объединяются в единую дугу. Обратные связи по управлению всегда чертят "вверх и над". Циклические обратные связи изображаются редко.
Дополнительная литература
- Cohen, G.: "A New Way to Test Writing", 22nd International Technical Communications Conference,1975.
- Elbow, P.: Writing with Power, Oxford University Press, Oxford, England, 1982.
- Freedman, D., and Weinberg, G.: "Walkthroughs, Inspections, and Technical Reviews", Little Brown, Boston, 1982.
- Freedman, D., and Weinberg, G.: "Reviews, Walkthroughs, and Inspections", IEEE Transactions on Software Engineering, vol. 10, no. 1, January 1984.
- Hale, R.: "Inspections in Application Development Introduction and Implementation Guidelines", IBM Report TNL GN20-3814, August 1978.
- IBM: "Code Reading, Structured Walkthroughs, and Inspections", IBM Report GE-19-5200, 1976.
- Kohli, R.: "High Level Design Inspection Specification", IBM Report TR21.601, July 1975.
- Lannon, J.: Technical Writing, Little, Brown, Boston, 1982.
- Yourdon, E.: Structured Walkthroughs, Yourdon Press, New York,1977.
|