Методология
структурного анализа и проектирования
SADT В
частях II - IV книги обсуждаются основы
моделирования как процесса, в ходе
которого автор создает модель. В данной
главе эти основы несколько расширяются
при обсуждении важных и более глубоких
концепций, благодаря которым SADT
является превосходным методом
моделирования систем. Поскольку эта
книга посвящена функциональным SADT-моделям,
мы рассмотрим только те концепции,
которые относятся к функциональному
описанию систем и ограничимся моделью,
созданной одним автором. 6.1.
Модели SADT структурируют естественный
язык
Отличительная
особенность SADT как методологии описания
систем заключается в том, что она,
используя в качестве основы
естественный язык экспертов,
структурирует этот язык с помощью своих
графических средств. Естественный язык
позволяет эксперту свободно описывать
функционирование системы, пользуясь
знакомой и удобной терминологией
письменно и в беседе. Затем в процессе
создания диаграмм автор снабжает слова
эксперта специальной пунктуацией в
соответствии с графическим языком SADT.
Графические обозначения SADT, так же как и
пунктуация, обладают высокой степенью
точности. Используя "расширенную
форму пунктуации", SADT-автор дает более
точное и сжатое описание системы, не
жертвуя качеством. Графика SADT устраняет
неоднозначность описаний, выполненных
экспертом на естественном языке. Устранение
неоднозначности достигается в
результате стандартной интерпретации
графических обозначений SADT. Формально
описание "Отдельный блок В, связанный
с входными дугами I, дугами управления С,
выходными дугами О и дугами механизма М"
соответствует фразе "Функция В
преобразует I в О при ограничениях,
заданных С, с помощью М". Перевод SADT-диаграмм
в предложения в точности следует этой
схеме, но мы рекомендуем строить фразы
так, чтобы они, семантически совпадая с
приведенным образцом, были интересны
для чтения. Описание системы,
соответствующее диаграмме модели на рис.
6-1, может быть записано так: Экспериментальный
механический цех производит нестандартные
детали. Он делает это, используя рабочий
комплект и станки
и инструменты с помощью процесса,
управляемого справочником
стандартов качества и создающего готовую
деталь. Кроме того, поступающие время
от времени требования по срокам выполнения
задания, требуют отчета об оценке
степени завершённости задания. Неоднозначность устраняется также в результате декомпозиции и уточнения диаграмм высокого уровня, что приводит к ограничению числа возможных интерпретаций. Декомпозиция и уточнения производятся до тех пор, пока диаграммы низкого уровня не станут достаточно подробными для того, чтобы обеспечить точное значение объектов и функций системы. Иными словами, SADT-модель придает строгий смысл изложенному. Она организует описание системы в иерархическую структуру, подобную структуре, образуемой главами и разделами данной книги. Проанализируйте, например, спецификации в уроке 25. Обратите внимание на то, что каждая диаграмма вызывает свой ход мыслей, что позволяет по каждой из них написать несколько параграфов текста. Это объясняется тем, что, хотя блок и его дуги семантически эквивалентны фразе, отражающей одно из направлений, обычно существует еще несколько важных фактов, относящихся к данному блоку, которые необходимо сообщить, чтобы достичь цели модели. Поскольку SADT организует фразы, отражающие основные
направления, с помощью
иерархических диаграмм, где блоки
упорядочены по доминантности,
взаимосвязанные факты собраны вместе и
излагаются доступным образом без
повторений и противоречий. 6.2. Точка зрения модели влияет на
расстановку акцентов и терминологию
SADT-авторы
владеют искусством согласованного
изложения. Для согласованного изложения
существенным является понятие точки
зрения. В SADT модель должна
быть построена исходя из одной точки
зрения. Выбирая единую точку зрения для
данной модели и придерживаясь ее, автор
достигает двух важных целей. Во-первых,
определенная точка зрения всегда
выделяет одни аспекты системы и
игнорирует другие. Например, выбирая
точку зрения начальника
экспериментального механического цеха,
автор придает одинаковый вес
обязанностям различных работников цеха.
Как видно из рис. 6-2,
управлять выполнением задания,
выполнить задание и контролировать
качество выполнения задания являются
тремя самыми важными функциями
механического цеха с точки зрения
начальника. При
выборе точки зрения контролера функции
управления и обработки были бы
затушеваны в модели и диаграмма АО
выглядела бы хотя и похоже, но не совсем
так, как на рис. 6-3. Ясно, что выбор
станков или инструментов и сравнение
сроков выполнения задания с плановыми
оценками завершения не имеют важного
значения для контролера, поэтому эти
факторы исчезли бы из поля зрения
контролера и никогда не появились бы в
его модели экспериментального
механического цеха. В то же время такие
функции, как определить
степень завершенности задания в
терминах, связанных с контролем, по-прежнему
были бы выделены. Поэтому диаграмма на
рис. 6-3 только приблизительно
соответствует тому, как выглядела бы
диаграмма АО модели контролера. Это
показывает, почему модели с разными
точками зрения содержат
перекрывающуюся информацию.
частью системы.
Поскольку каждой роли, как правило,
соответствует особый жаргон, выбор
определенной точки зрения означает
также использование соответствующего
набора терминов. Обратите внимание на
терминологию рис. 6-3, с помощью которой
описана работа контролера с точки
зрения начальника. Здесь используются
термины типа стандарты
допусков и принятое
задание. Теперь сравните их с теми
терминами на рис. 6-4, которые описывают
обработку деталей с точки зрения
начальника. В этом случае используются
термины типа чертеж,
сырье и набор инструментов. Читая эти две
диаграммы, можно представить себе двух
совершенно различных людей, беседующих
о своей работе. Таким образом, автор
будет оперировать той терминологией,
которую он почерпнет, опрашивая
соответственно контролера и оператора. Выбор
точки зрения означает также выделение
определенных аспектов системы и
применение определенной терминологии.
Без правильно расставленных акцентов и
терминологии согласованное изложение
практически невозможно. Одна из
сложнейших задач автора в SADT
-оставаться в рамках выбранной точки
зрения, поскольку выявленное множество
подробностей о работе системы, которые
не вписываются в принятую точку зрения,
вызывают сильное искушение изложить их.
Например, факты, связанные с
планированием задания, входят в сферу
интересов как мастера,
так и рабочего.
Мастер в большей степени заинтересован
в плане в целом и в том, сколько времени
займет его выполнение. Рабочего же
больше интересуют конкретные шаги,
необходимые для выполнения задания.
Разделив эти два вопроса и отразив их на
диаграммах А1 и А2, автор ясно и раздельно
описал деятельность двух очень разных
работников механического цеха. Стратегия
разделения проблем осуществляется в
процессе моделирования, когда авторы
выбирают точку зрения для следующей
модели. Например, при построении модели,
которая описывает только планирование и
выполнение плана-графика, можно выбрать
точку зрения мастера. Аналогично, если
объектом моделирования будет только
обработка деталей, то наиболее
подходящей является точка зрения
рабочего. Если создать эти две модели, то
они будут содержать перекрывающуюся
информацию. В каждом из перекрывающихся
описаний экспериментального
механического цеха будут расставлены
свои акценты. Таким образом, точка
зрения не ограничивает предмет
рассмотрения, но заставляет аналитика
учитывать приоритеты различных
аспектов системы. 6.3.
Декомпозиция в ходе моделирования
Декомпозиция - это процесс создания диаграммы, детализирующей определенный блок и связанные с ним дуги. Результатом ее является описание, которое представляет собой "разламывание" родительского блока на меньшие и более частные функции. Прибавьте к этому еще и тот факт, что слово "анализ" означает разложение на составляющие, и вы получите исходное обоснование термина "структурный анализ". Но декомпозиция - это больше, чем анализ. Она включает также синтез. Подлинная декомпозиция заключается в начальном разделении объекта на более мелкие части и последующем соединении их в более детальное описание объекта. Интересно отметить, что модель показывает только результат взаимодействия анализа и синтеза. Следуя правилам SADT, автор производит вначале анализ и синтез системных объектов, записывая, как именно подверглись разбиению объекты, входящие в ограниченный объект. На рис. 6-5 показано, что список данных начинается со всех граничных дуг и их ICOM-кодов, а заканчивается их составляющими. Затем автор просматривает список данных и, возможно, объединяет эти составляющие, чтобы выделить те объекты, которые будут выступать в качестве управляющих. Затем
автор выполняет подобный анализ и
синтез функций системы, но делает это в
соответствии со списком данных. В
процессе свободного объединения и
введения новых управляющих дуг
создается список функций для дальнейшей
детализации. Например, указания и чертеж
заставляют автора подумать о функциях
выбрать
инструменты и подготовить
рабочее место. Функции вносятся в
список до тех пор, пока поток идей не
иссякнет. Затем эти функциональные
части объединяются в разумные (сбалансированные)
наборы из 3-6 блоков. (Важно заметить, что
применение правила "от трех до шести
блоков" вынуждает автора
использовать абстракцию и декомпозицию
для постепенного представления деталей
системы.) После определения
функциональных частей список данных и
список функций используются для
чернового варианта диаграммы. Снова
выполняются анализ и синтез, в
результате чего формируются наборы
объектов, которые представляются дугами,
соединяющими блоки.
|
||||
Оглавление |