Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Выбор стратегии декомпозиции




Часто при начале работы над моделью пы­таются испробовать несколько различных страте­гий декомпозиции. Наш опыт показывает, что разработке качественной диаграммы АО может предшествовать несколько неудачных попыток. Первая попытка декомпозиции, в результате ко­торой создается диаграмма АО, обычно приводит к сверхпридирчивому анализу читательской ауди­торией. Эта начальная декомпозиция при деталь­ном рассмотрении часто не соответствует цели модели. Не унывайте, когда это случится, если ваши первые попытки являются ясными и четки­ми. Помните, что в начале моделирования важ­нее ясность изложения, чем его правильность, поскольку коллективные знания экспертов, чита­тельской аудитории, других авторов помогут вам создать полноценное общее описание, которое после детализации будет удовлетворять цели мо­дели. Просмотрите материал уроков в данной книге и обратите внимание на то, как диаграмма АО модели "Питание семьи" изменялась по ме­ре декомпозиции ее главных функций. В этом примере интерфейсы и ожидаемые действия глав­ных функций подвергались большим изменениям, которые должны были найти отражение на диа­грамме АО в соответствии с требованиями син­таксических правил SADT. Кроме того, несмотря на адекватность начальной стратегии декомпози­ции, соответствующей полному жизненному цик­лу продуктов, все диаграммы модели подверга­лись пересмотру для получения верного и согла­сованного изложения этого конкретного сцена­рия. (Полную модель "Питание семьи" см. в приложении С.) Таким образом, даже если ваша исходная стратегия декомпозиции была удачной, ожидайте больших изменений в диаграмме АО.

Момент прекращения декомпозиции определяется точностью

Постоянное, но контролируемое изменение диаграмм модели, может служить примером ин­женерной деятельности. Другими словами, рабо­та в методологии SADT является инженерным процессом, поскольку она включает последова­тельное улучшение описания системы. Но, как при любой инженерной деятельности, процесс улучшения всегда в некоторый момент должен быть прекращен. SADT-модели должны не прос­то отвечать на определенный набор вопросов. Ответы на них должны иметь заданную степень точности. Поэтому декомпозиция в SADT пре­кращается, когда диаграммы, образующие ниж­ний уровень модели, достаточно детализированы для достижения цели модели. Другими словами, дальнейшая декомпозиция не требуется, если модель достаточно точна, чтобы отвечать на все вопросы, соответствующие ее цели.

Например, целью модели, описывающей экспериментальный механический цех, является определение обязанностей персонала механичес­кого цеха с той степенью подробности, которая достаточна для описания этих обязанностей в учебном руководстве. Обратите внимание, что диаграмма нижнего уровня, приведенная на рис. 17-1, изображает набор обязанностей, которые могут быть легко записаны для каждого блока в одном параграфе текста. Это и является точным критерием для данной модели: процесс модели­рования прекращается, когда каждый блок может быть объяснен в одном параграфе текста. Для целей учебного руководства один абзац объяснений рассматривается как достаточная точность. Поэтому, как и в других прикладных дисциплинах, разработка SADT-модели прекра­щается по достижении требуемой степени точ­ности.

Резюме

SADT-модели организуют естественный язык в точные и сжатые модели, а благодаря гра­фическому языку SADT из описаний системы на естественном языке устраняется неоднознач­ность. Точка зрения модели влияет на то, какие аспекты системы подчеркиваются и какие ас­пекты затушевываются, а выбор точки зрения означает использование конкретной терминоло­гии. Декомпозиция является процессом, исполь­зуемым для построения модели. Она включает этапы как анализа, так и синтеза. В SADT пре­дусмотрено проведение анализа объектов систе­мы как "вступление" к анализу функций систе­мы. Существует множество разнообразных стра­тегий декомпозиции. Выбор той или иной стра­тегии декомпозиции и получение диаграммы АО высокого качества часто требуют нескольких ите­раций и многих изменений. Декомпозиция пре­кращается, когда модель достаточно точна, чтобы отвечать на вопросы, составляющие ее цель.

Дополнительная литература

 

Alexander, С.: Notes on the Synthesis of form, Harvard University Press, Cambridge, Mass., 1964.

 

Jackson, M.: System Development, Prentice-Hall, Englewood Cliffs, N.J., 1983.

 

Orr, K.: Structured Systems Development, Yourdon Press, New York, 1977.

 

Miller, G.: "The magical Number Seven, Plus Or Minus Two: Some Limits on Our Capacity for Information Processing", The Psychology Review, vol. 63, no. 2, March 1956.

Marca, D., and McGowan, C.: "Static and Dynamic Data Modeling for Information System Design", 6 th International Conference on Software engineer­ing Proceedings, September 1982.

 

Parnas, D.: "On the Criteria to be Used in De­composing Systems into Modules", CACM, Decem­ber 1972.

 

Pirsig, R.: Zen and the Art of Motorcycle Mainte­nance, Bantam Books, New York, 1974.

 

Ross, D.: "An Essay on Activity Diagramming", SofTech Technical Report no. 7104, November, 1976.

 

SofTech, Inc.: "IDEFO Author's Guide to Creating Activity Diagrams", SofTech Deliverable no. 7500-13, September 1979.

 

SofTech, Inc.: "Integrated Computer-Aided Manu­facturing (ICAM) Report: Function Modeling Manual (IDEFO)", contract no. F33612-78-C-5158, SofTech, Inc., 1981.


Часть II Создание функциональных моделей и диаграмм

В этой части книги показано, как аналитик (или автор) создает описание работы системы, набрасывая эскиз функциональной SADT-модели. Будет рассмотрено, как получить информацию в ходе опроса, как создаются диаграммы, как осуществляется декомпозиция и как оценить собственную работу с точки зрения точности и наглядности. II часть поможет вам преодолеть первый этап системного анализа, в ходе которого должен быть сделан набросок функционального описания системы.

В главе 7 обсуждаются навыки, которыми надо обладать, чтобы получить у экс­пертов информацию, необходимую для создания модели. В главе 8 описан этап анализа, на котором делают первую попытку создать модель. Глава 9 по­священа второму этапу анализа, на котором декомпозируется часть модели, созданной в главе 8. В главе 10 показано, как оценить собственную работу, прежде чем послать ее на рецензирование. В главе 11 приведен основной набор стандартных графических обозначений для упрощения SADT-диаграмм. В процессе изложения материала в этих главах обсуждаются способы опроса и методы анализа и синтеза. Модель экспериментального механического цеха используется для иллюстрации синтаксических правил диаграмм и моделей, процесса создания диаграмм и построения моделей. Таким образом, последовательно изучив материал этих глав, вы получите представление о том, как мыслит сис­темный аналитик в процессе создания модели системы по методологии SADT.


Глава 7. Сбор информации

Эта глава посвящена методам, которые использует квалифицированный SADT-аналитик для изучения предметной об­ласти и технологии получения от экспертов све­дений о системе, подлежащей описанию. Прак­тики SADT называют эту технологию сбором данных, а в информатике она больше известна как опрос (интервьюирование) или извлечение знаний. Но как бы она не называлась, способ­ность собрать необходимую информацию, осно­ванную на знаниях экспертов, весьма сущест­венна для построения точной и полезной модели. Поэтому технология сбора информации составля­ет важную часть методологии SADT.

Опрос - это сбор сведений. Первый опрос служит точкой отсчета в процессе моделирова­ния. Чтобы провести опрос, аналитик вначале выбирает наилучший источник информации (до­кумент или конкретного человека), а затем орга­низует его "опрос". Цель опроса - получение порции информации, необходимой для начала либо для продолжения построения определенной части модели. После первого опроса sadt - модель используется для определения той информа­ции, которую необходимо получить в ходе следу­ющего опроса. В соответствии с иерархией моде­ли может быть проведена последовательность опросов для выяснения все более конкретных де­талей рассматриваемой области.

SADT-аналитики используют свои модели для более сфокусированного опроса и оптимиза­ции затрат времени на работу с источниками ин­формации. Это повышает эффективность работы, сокращает время на повторное рассмотрение не­ясных или забытых деталей и уменьшает вероят­ность повторно задавать вопросы одному и тому же эксперту. При таких условиях эксперты более охотно отвечают на вопросы аналитиков и тем самым спасают аналитические проекты от одного из "убийц" - прекращения потока информации.

Источники информации

Обычно источниками информации служат эксперты. Часто именно они являются наилучши­ми источниками, потому что им знакомы теку­щие нюансы и недокументированные аспекты системы. Самое важное - это то, что экспертам известны факты, которые не отражены в доку­ментах или которые трудно объяснить. Эти фак­ты иногда называют "казаульное знание". Их можно получить только путем опроса экспертов. Чтобы подготовиться к такому опросу, мы сове­туем исследовать другие источники информации, например документы. Существует множество различных стратегий для извлечения информации из этих источников. Вот те, которые мы обычно используем:

 

· чтение документов;

· наблюдение за выполняемыми операциями;

· анкетирование;

· использование собственных знаний;

· составление описания.

 

Документы - хороший источник информа­ции, потому что они чаще всего доступны и их можно "опрашивать" в удобном для себя темпе. Чтение документов - прекрасный способ полу­чить первоначальное представление о системе и сформулировать вопросы к экспертам. Мы сове­туем в ходе аналитического проекта, по возмож­ности, формировать и поддерживать библиотеку документов. Для SADT-проектов такие докумен­ты могут храниться в библиотеке проекта и рас­пространяться в виде небольших рабочих паке­тов, называемых папками (см. главу 13).

Наблюдение за работой моделируемой сис­темы - хорошая стратегия получения информа­ции. Оно должно проводиться всегда, когда есть такая возможность. Через наблюдение, а воз­можно, и участие аналитики получают информа­цию о происходящих день за днем операциях из первых рук. Во время наблюдения за работой системы часто возникают вопросы, которые ни­когда бы не появились, если бы аналитик только читал документы или разговаривал с экспертами. Стратегией наблюдения слишком часто прене­брегают, а потому мы призываем аналитиков пользоваться ею чаще. Однако следует соблюдать осторожность. Слишком долгие наблюдения мо­гут привести к избыточному привыканию к те­кущему состоянию дел. Из-за потери объектив­ности можно не увидеть альтернативные пути описания функций системы.

Анкетирование проводится для того, чтобы опросить большие группы экспертов в сжатые сроки. Его можно использовать, например, когда необходимо быстро получить сведения о работе какой-либо определенной части системы с раз­ных позиций. Анкетирование при опросе экс­пертов позволяет выявить, какие части системы более всего нуждаются в улучшении. На практи­ке, однако, информация, полученная от экспер­тов с помощью анкет, оказывается малодостове­рной. Мы советуем использовать анкеты только после достаточного знакомства с системой, когда вы сможете задавать конкретные, четко сформу­лированные вопросы. Тогда у вас больше вероят­ности быть правильно понятыми и получить точ­ные ответы.

Иногда опытные аналитики исследуют большое число систем определенного типа (на­пример, производство, телефонная сеть, бухгал­терия). В ходе многих проектов они приобрета­ют фундаментальные знания в соответствующей предметной области, относительно определенно­го класса систем. Такие знания очень полезны, поскольку для многих различных систем сущест­вуют общие понятия. Эти понятия могут иметь широкое применение. Если вы хорошо знаете предметную область, то можете стать сами ис­точником информации. Мы рекомендуем прово­дить самоопрос с тем, чтобы получить макси­мальную пользу от своих знаний. В то же время при этом следует проявлять осторожность в ис­пользовании такой стратегии, потому что у вас может не хватать знаний, специфических для рассматриваемой системы. Когда вам нужна спе­цифика, не полагайтесь на себя, лучше опросите экспертов.

Еще одна полезная стратегия - придумать описание и дать его экспертам для корректиров­ки. Придуманные описания могут дать альтерна­тивные схемы функционирования системы - схе­мы, о которых эксперты никогда не думали. Од­нако для реализации таких схем нужна поддер­жка. Мы советуем автору предварительно изу­чить предметную область и найти хотя бы одну доброжелательно настроенную группу экспертов, прежде чем пытаться придумать описание. В этом случае описание будет иметь шансы отразить ре­альность. Придуманные описания могут, однако, потерпеть неудачу, если эксперты не готовы вос­принимать новые возможности. В идеале, прежде чем прибегать к этой стратегии, автор должен установить надежные контакты с несколькими экспертами.

Типы опроса

В процессе анализа, независимо от источни­ков информации, проводятся опросы нескольких типов. Выбор того или иного типа зависит от вида необходимой информации и поставленной цели. Наиболее распространены следующие типы опросов:

· опросы для сбора фактов;

· опросы для определения проблем;

· совещания для принятия решений;

· диалоги автор/читатель.

Опросы для сбора фактов проводятся, когда пытаются определить, как функционирует систе­ма в настоящее время. Опросы для определения проблем полезны, когда вы хотите выяснить, что в системе не в порядке. Совещания для принятия решений проводятся, когда нужно получить пред­ставление о том, как должна функционировать будущая система, чтобы устранить недостатки в настоящей. Диалоги автор/читатель (см.главу 12) - это неформальные обсуждения при разногласиях между автором и экспертом.

Классификация опросов приведена здесь по двум причинам. Во-первых, очень важно осозна­вать основную задачу опроса. Ясно понятая цель позволяет направлять беседу в нужное русло. Во-вторых, аналитик получает возможность сортиро­вать различную информацию, собранную при опросе эксперта. Обычно эксперт рассказывает о том, как идет дело в настоящее время, что не в порядке и что следует предпринять. Классифика­ция опросов позволяет расставить по своим мес­там все типы фактов.

Процесс опроса

Мы советуем опрос проводить стандартным образом для всех типов источников информации. Наша цель - формализировать этот процесс так, чтобы максимизировать поток информации и предупредить возникновение ситуаций, мешаю­щих достигнуть цели опроса. Для этого мы реко­мендуем подход, подразумевающий три этапа: подготовку, проведение опроса и завершение.

 

7.3.1. Подготовка

Подготовка к опросу приобретает решаю­щее значение, если у вас есть только единствен­ная возможность поговорить с экспертом (на­пример, с президентом компании или генера­лом). Кроме того, она поможет вам оптимизиро­вать время, которое вы проведете с источником информации, и получить надежный поток информации.

Мы рекомендуем следующие шаги:

 

· выберите нужного собеседника;

· договоритесь о встрече;

· установите предварительную программу встречи;

· изучите сопутствующую информацию;

· согласуйте свои действия с группой проектирования.

 

Выбор собеседника является первым и са­мым важным шагом. Слишком часто автор не получает необходимой информации при непра­вильном выборе источника. Позаботьтесь о выбо­ре представителей соответствующего иерархичес­кого уровня организации, правильных типов до­кументов, лучшей позиции для обзора, а также о выборе эксперта, обладающего нужными знания­ми. Согласуйте свой выбор с другими членами группы.

После выбора собеседника договоритесь с ним о скорой, насколько это возможно, встрече. Установите цель встречи и ограничьте беседу в пределах часа или менее. Информационный по­ток, как правило, иссякает через час, поэтому не рассчитывайте обсудить больше чем возможно за это время. Если тематика обширна, найдите спо­соб разбить беседу на несколько часовых встреч.

Установите программу беседы сразу же, как договоритесь о встрече. Определите круг об­суждаемых проблем и запишите конкретные воп­росы, особенно те, на которые необходимо получить ответы для продолжения работы. В ходе формирования программы изучите доступную ис­ходную информацию. Обратитесь к соответству­ющим документам и терминологическим спра­вочникам и используйте SADT-модель, чтобы проще выделить круг ваших вопросов. Наконец, не забудьте согласовать ваши приготовления со всей группой проектирования. Последнее, что вам может понадобиться - это беседа с тем, кто только вчера разговаривал с вашим коллегой именно на ту тему, которую вы хотите обсудить. Правильная координация позволяет сберечь вре­мя эксперта и минимизирует дублирование дей­ствий авторами модели.

 

7.3.2. Проведение опроса

В проведении опроса самое важное пра­вильно организовать и поддерживать поток ин­формации от эксперта к вам. Мы советуем по­тратить время на обдумывание верного начала опроса, при сборе информации по возможности использовать записи, заканчивать разговор плав­но. Обсудим подробнее каждый из этих пунктов.

Начиная разговор, не забудьте представить­ся и сформулировать цель встречи. Это поможет избежать недоразумений и даст беседе правиль­ное направление. Кроме того, обговорите воз­можность ведения записей. Заверьте эксперта в конфиденциальности беседы и в том, что впо­следствии ему будет предоставлена возможность внести поправки в ваши записи. Затем сформу­лируйте первый вопрос. Помните, что первый вопрос часто задает тон всему разговору, поэтому хорошо продумайте его.

Собирайте информацию, делая записи обо всем (о специальных терминах, взаимосвязях между частями системы и т.п.) и ограничивая время беседы. Запишите SADT-функции и дан­ные, попытайтесь набросать диаграмму. Поддер­живайте поток информации, задавая вопросы, которые уточняют и подтверждают ответы. Воп­росы, которые могут помочь уточнить или под­твердить полученную информацию, должны быть сформулированы следующим образом:

 

· Можете ли Вы привести пример?

· Когда это произошло?

· Есть ли у этого правила исключения?

· Можете ли Вы привести какие-нибудь цифры в подтверждение Ваших слов?

 

Прежде всего не возражайте. Никогда не задавайте наводящих вопросов или вопросов с короткими ответами "да" или "нет". Вместо этого записывайте то, что вам говорят, и просите подвести итог или дать пояснения. Вы получите от опроса больше, если вы дадите эксперту воз­можность говорить то, что он хочет сказать, а не то, что вы хотите услышать. Следите за возник­новением следующих ситуаций:

 

· вы уже получили достаточно информации;

· вы получаете большой объем неподходящей информации;

· обилие информации вас подавляет;

· эксперт начинает уставать;

· у вас с экспертом часто возникают конфликты.

 

Любая из этих причин - достаточное осно­вание для завершения беседы.

Когда вы считаете нужным закончить опрос, завершайте беседу плавно. Кратко поды­тожьте основные пункты и сделайте обзор полу­ченных сведений, которые могут быть опущены или неверно истолкованы. Договоритесь о време­ни следующей встречи, если она нужна, и полу­чите рекомендации для ближайших опросов. По­ставьте эксперта в известность, когда и как вы собираетесь использовать полученную информа­цию и когда вы пришлете ему материал на ре­цензирование.

 

7.3.3. Завершение

Всегда оформляйте материалы опроса сразу же после встречи с экспертом. В этом случае не­медленно возникает обратная связь, и вы мини­мизируете возможность потери важной информа­ции. Просмотрите и закончите ваши заметки, а потом составьте SADT-глоссарий как средство определения новых понятий и терминологии. За­тем набросайте диаграмму, определяя, какие еще следует задать вопросы и какие области исследо­вать. Как можно скорее сделайте хорошие копии этих диаграмм и глоссариев, сформируйте из них небольшой пакет материалов для рецензирования (папку) и отправьте ее эксперту,

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...