Постоянное, но контролируемое изменение диаграмм модели, может служить примером инженерной деятельности. Другими словами, работа в методологии SADT является инженерным процессом, поскольку она включает последовательное улучшение описания системы. Но, как при любой инженерной деятельности, процесс улучшения всегда в некоторый момент должен быть прекращен. SADT-модели должны не просто отвечать на определенный набор вопросов. Ответы на них должны иметь заданную степень точности. Поэтому декомпозиция в SADT прекращается, когда диаграммы, образующие нижний уровень модели, достаточно детализированы для достижения цели модели. Другими словами, дальнейшая декомпозиция не требуется, если модель достаточно точна, чтобы отвечать на все вопросы, соответствующие ее цели.
Например, целью модели, описывающей экспериментальный механический цех, является определение обязанностей персонала механического цеха с той степенью подробности, которая достаточна для описания этих обязанностей в учебном руководстве. Обратите внимание, что диаграмма нижнего уровня, приведенная на рис. 17-1, изображает набор обязанностей, которые могут быть легко записаны для каждого блока в одном параграфе текста. Это и является точным критерием для данной модели: процесс моделирования прекращается, когда каждый блок может быть объяснен в одном параграфе текста. Для целей учебного руководства один абзац объяснений рассматривается как достаточная точность. Поэтому, как и в других прикладных дисциплинах, разработка SADT-модели прекращается по достижении требуемой степени точности.
Резюме
SADT-модели организуют естественный язык в точные и сжатые модели, а благодаря графическому языку SADT из описаний системы на естественном языке устраняется неоднозначность. Точка зрения модели влияет на то, какие аспекты системы подчеркиваются и какие аспекты затушевываются, а выбор точки зрения означает использование конкретной терминологии. Декомпозиция является процессом, используемым для построения модели. Она включает этапы как анализа, так и синтеза. В SADT предусмотрено проведение анализа объектов системы как "вступление" к анализу функций системы. Существует множество разнообразных стратегий декомпозиции. Выбор той или иной стратегии декомпозиции и получение диаграммы АО высокого качества часто требуют нескольких итераций и многих изменений. Декомпозиция прекращается, когда модель достаточно точна, чтобы отвечать на вопросы, составляющие ее цель.
Глава 7. Сбор информации
Эта глава посвящена методам, которые использует квалифицированный SADT-аналитик для изучения предметной области и технологии получения от экспертов сведений о системе, подлежащей описанию. Практики SADT называют эту технологию сбором данных, а в информатике она больше известна как опрос (интервьюирование) или извлечение знаний. Но как бы она не называлась, способность собрать необходимую информацию, основанную на знаниях экспертов, весьма существенна для построения точной и полезной модели. Поэтому технология сбора информации составляет важную часть методологии SADT.
Опрос - это сбор сведений. Первый опрос служит точкой отсчета в процессе моделирования. Чтобы провести опрос, аналитик вначале выбирает наилучший источник информации (документ или конкретного человека), а затем организует его "опрос". Цель опроса - получение порции информации, необходимой для начала либо для продолжения построения определенной части модели. После первого опроса sadt-mo-дель используется для определения той информации, которую необходимо получить в ходе следующего опроса. В соответствии с иерархией модели может быть проведена последовательность опросов для выяснения все более конкретных деталей рассматриваемой области
SADT-аналитики используют свои модели для более сфокусированного опроса и оптимизации затрат времени на работу с источниками информации. Это повышает эффективность работы, сокращает время на повторное рассмотрение неясных или забытых деталей и уменьшает вероятность повторно задавать вопросы одному и тому же эксперту. При таких условиях эксперты более охотно отвечают на вопросы аналитиков и тем самым спасают аналитические проекты от одного из "убийц" - прекращения потока информации.
Источники информации
Обычно источниками информации служат эксперты. Часто именно они являются наилучшими источниками, потому что им знакомы текущие нюансы и недокументированные аспекты системы. Самое важное - это то, что экспертам известны факты, которые не отражены в документах или которые трудно объяснить. Эти факты иногда называют "каузальное знание". Их можно получить только путем опроса экспертов. Чтобы подготовиться к такому опросу, мы советуем исследовать другие источники информации, например документы Существует множество различных стратегий для извлечения информации из этих источников. Вот те, которые мы обычно используем:
• чтение документов;
• наблюдение за выполняемыми операциями;
• анкетирование;
• использование собственных знаний;
• составление описания.
Документы - хороший источник информации, потому что они чаще всего доступны и их можно "опрашивать" в удобном для себя темпе. Чтение документов - прекрасный способ получить первоначальное представление о системе и сформулировать вопросы к экспертам. Мы советуем в ходе аналитического проекта, по возможности, формировать и поддерживать библиотеку документов. Для SADT-проектов такие документы могут храниться в библиотеке проекта и распространяться в виде небольших рабочих пакетов, называемых папками (см. главу 13).
Наблюдение за работой моделируемой системы - хорошая стратегия получения информации. Оно должно проводиться всегда, когда есть такая возможность. Через наблюдение, а возможно, и участие аналитики получают информацию о происходящих день за днем операциях из первых рук. Во время наблюдения за работой системы часто возникают вопросы, которые никогда бы не появились, если бы аналитик только читал документы или разговаривал с экспертами. Стратегией наблюдения слишком часто пренебрегают, а потому мы призываем аналитиков пользоваться ею чаще. Однако следует соблюдать осторожность. Слишком долгие наблюдения могут привести к избыточному привыканию к текущему состоянию дел. Из-за потери объективности можно не увидеть альтернативные пути описания функций системы.
Анкетирование проводится для того, чтобы опросить большие группы экспертов в сжатые сроки. Его можно использовать, например, когда необходимо быстро получить сведения о работе какой-либо определенной части системы с разных позиций. Анкетирование при опросе экспертов позволяет выявить, какие части системы более всего нуждаются в улучшении. На практике, однако, информация, полученная от экспертов с помощью анкет, оказывается малодостоверной. Мы советуем использовать анкеты только после достаточного знакомства с системой, когда вы сможете задавать конкретные, четко сформулированные вопросы. Тогда у вас больше вероятности быть правильно понятыми и получить точные ответы.
Иногда опытные аналитики исследуют большое число систем определенного типа (например, производство, телефонная сеть, бухгалтерия). В ходе многих проектов они приобретают фундаментальные знания в соответствующей предметной области, относительно определенного класса систем. Такие знания очень полезны, поскольку для многих различных систем существуют общие понятия. Эти понятия могут иметь широкое применение. Если вы хорошо знаете предметную область, то можете стать сами источником информации. Мы рекомендуем проводить самоопрос с тем, чтобы получить максимальную пользу от своих знаний. В то же время при этом следует проявлять осторожность в использовании такой стратегии, потому что у вас может не хватать знаний, специфических для рассматриваемой системы. Когда вам нужна специфика, не полагайтесь на себя, лучше опросите экспертов.
Еще одна полезная стратегия - придумать описание и дать его экспертам для корректировки. Придуманные описания могут дать альтернативные схемы функционирования системы - схемы, о которых эксперты никогда не думали. Однако для реализации таких схем нужна поддержка. Мы советуем автору предварительно изучить предметную область и найти хотя бы одну доброжелательно настроенную группу экспертов, прежде чем пытаться придумать описание. В этом случае описание будет иметь шансы отразить реальность. Придуманные описания могут, однако, потерпеть неудачу, если эксперты не готовы воспринимать новые возможности. В идеале, прежде чем прибегать к этой стратегии, автор должен установить надежные контакты с несколькими экспертами.
Типы опроса
В процессе анализа, независимо от источников информации, проводятся опросы нескольких типов. Выбор того или иного типа зависит от вида необходимой информации и поставленной цели. Наиболее распространены следующие типы опросов:
• опросы для сбора фактов;
• опросы для определения проблем;
• совещания для принятия решений;
• диалоги автор/читатель, г
Опроси для сбора фактов проводятся, когда пытаются определить, как функционирует система в настоящее время. Опросы для определения проблем полезны, когда вы хотите выяснить, что в системе не в порядке. Совещания для принятия решений проводятся, когда нужно получить представление о том, как должна функционировать будущая система, чтобы устранить недостатки в настоящей. Диалоги автор/читатель - это неформальные обсуждения при разногласиях между автором и экспертом.
Классификация опросов приведена здесь по двум причинам. Во-первых, очень важно осознавать основную задачу опроса. Ясно понятая цель позволяет направлять беседу в нужное русло. Во-вторых, аналитик получает возможность сортировать различную информацию, собранную при опросе эксперта. Обычно эксперт рассказывает о том, как идет дело в настоящее время, что не в порядке и что следует предпринять. Классификация опросов позволяет расставить по своим местам все типы фактов.
Процесс опроса
Мы советуем опрос проводить стандартным образом для всех типов источников информации. Наша цель - формализовать этот процесс так, чтобы максимизировать поток информации и предупредить возникновение ситуаций, мешающих достигнуть цели опроса. Для этого мы рекомендуем подход, подразумевающий три этапа: подготовку, проведение опроса и завершение.
Подготовка
Подготовка к опросу приобретает решающее значение, если у вас есть только единственная возможность поговорить с экспертом (например, с президентом компании или генералом). Кроме того, она поможет вам оптимизировать время, которое вы проведете с источником информации, и получить надежный поток информации.
Мы рекомендуем следующие шаги:
• выберите нужного собеседника;
• договоритесь о встрече;
• установите предварительную программу встречи;
• изучите сопутствующую информацию;
• согласуйте свои действия с группой проектирования.
Выбор собеседника является первым и самым важным шагом. Слишком часто автор не получает необходимой информации при неправильном выборе источника. Позаботьтесь о выборе представителей соответствующего иерархического уровня организации, правильных типов документов, лучшей позиции для обзора, а также о выборе эксперта, обладающего нужными знаниями. Согласуйте свой выбор с другими членами группы.
После выбора собеседника договоритесь с ним о скорой, насколько это возможно, встрече. Установите цель встречи и ограничьте беседу в пределах часа или менее. Информационный поток, как правило, иссякает через час, поэтому не рассчитывайте обсудить больше чем возможно за это время. Если тематика обширна, найдите способ разбить беседу на несколько часовых встреч.
Установите программу беседы сразу же, как договоритесь о встрече. Определите круг обсуждаемых проблем и запишите конкретные вопросы, особенно те, на которые необходимо получить ответы для продолжения работы. В ходе формирования программы изучите доступную исходную информацию. Обратитесь к соответствующим документам и терминологическим справочникам и используйте SADT-модель, чтобы проще выделить круг ваших вопросов. Наконец, не забудьте согласовать ваши приготовления со всей группой проектирования. Последнее, что вам может понадобиться - это беседа с тем, кто только вчера разговаривал с вашим коллегой именно на ту тему, которую вы хотите обсудить. Правильная координация позволяет сберечь время эксперта и минимизирует дублирование действий авторами модели.
Проведение опроса
В проведении опроса самое важное правильно организовать и поддерживать поток информации от эксперта к вам. Мы советуем потратить время на обдумывание верного начала опроса, при сборе информации по возможности использовать записи, заканчивать разговор плавно. Обсудим подробнее каждый из этих пунктов.
Начиная разговор, не забудьте представиться и сформулировать цель встречи. Это поможет избежать недоразумений и даст беседе правильное направление. Кроме того, обговорите возможность ведения записей. Заверьте эксперта в конфиденциальности беседы и в том, что впоследствии ему будет предоставлена возможность внести поправки в ваши записи. Затем сформулируйте первый вопрос. Помните, что первый вопрос часто задает тон всему разговору, поэтому хорошо продумайте его.
Собирайте информацию, делая записи обо всем (о специальных терминах, взаимосвязях между частями системы и т.п.) и ограничивая время беседы. Запишите SADT-функции и данные, попытайтесь набросать диаграмму. Поддерживайте поток информации, задавая вопросы, которые уточняют и подтверждают ответы. Вопросы, которые могут помочь уточнить или подтвердить полученную информацию, должны быть сформулированы следующим образом:
• Можете ли Вы привести пример? '
• Когда это произошло?
• Есть ли у этого правила исключения?
• Можете ли Вы привести какие-нибудь цифры в подтверждение Ваших слов?
Прежде всего не возражайте. Никогда не задавайте наводящих вопросов или вопросов с короткими ответами "да" или "нет". Вместо этого записывайте то, что вам говорят, и просите подвести итог или дать пояснения. Вы получите от опроса больше, если вы дадите эксперту возможность говорить то, что он хочет сказать, а не то, что вы хотите услышать. Следите за возникновением следующих ситуаций:
• вы уже получили достаточно информации;
• вы получаете большой объем неподходящей информации;
• обилие информации вас подавляет;
• эксперт начинает уставать;
• у вас с экспертом часто возникают конфликты.
Любая из этих причин - достаточное основание для завершения беседы.
Когда вы считаете нужным закончить опрос, завершайте беседу плавно. Кратко подытожьте основные пункты и сделайте обзор полученных сведений, которые могут быть опущены или неверно истолкованы. Договоритесь о времени следующей встречи, если она нужна, и получите рекомендации для ближайших опросов. Поставьте эксперта в известность, когда и как вы собираетесь использовать полученную информацию и когда вы пришлете ему материал на рецензирование.
Завершение
Всегда оформляйте материалы опроса сразу же после встречи с экспертом. В этом случае немедленно возникает обратная связь, и вы минимизируете возможность потери важной информации. Просмотрите и закончите ваши заметки, а потом составьте SADT-глоссарий как средство определения новых понятий и терминологии. Затем набросайте диаграмму, определяя, какие еще следует задать вопросы и какие области исследовать. Как можно скорее сделайте хорошие копии этих диаграмм и глоссариев, сформируйте из них небольшой пакет материалов для рецензирования (папку) и отправьте ее эксперту.