Напомним, что блочная структура модели явилась результатом блочного представления содержательного описания, которое сфор­мировано объединением функционально связанных элементов. Поэтому соответствующий блок модели представляет собой сово­купность взаимосвязанных элементарных моделей, имитирующих работу таких функционально связанных элементов. Так, блок I (см. рис.3, б) в составе модели АСУ может представлять собой модель ЭВМ, а его элементы 12, 13, 26, 27 - модели процессора, основной памяти, канала обмена и внешнего устройства соответственно. Рас­смотрение перечисленных узлов как элементов говорит о том, что в данном примере уровень функциональной детализации (или степень декомпозиции) соответствует устройствам машины, поскольку по определению элемент есть часть системы, не подлежащая дальнейшему делению при данном уровне рассмотрения.

Чем же определяется выбор уровня рассмотрения? Можно ука­зать, по крайней мере, три фактора: 1) цели исследования; 2) имеющиеся в наличии исходные данные; 3) доступные ресурсы моделирования.

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

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

Процедуре декомпозиции системы соответствует переход от модели k-го уровня к множеству моделей (k + 1)-го уровня. При этом, как видно из соотношений (1.1), (1.2), возникает необходимость в дополнительных сведениях, которые отсутствовали в описании модели k-го уровня. Часто их не удается получить и при ее исследовании. Например, пусть требуется построить модель АСУ. После ее декомпозиции возникает задача построения моделей источников информации АСУ, средств передачи данных (СПД), средств переработки информации (СПИ), оператора и исполнительных средств. Чтобы смоделировать систему в целом, необходимо знать параметры потоков на входах и выходах этих средств. Для получения таких данных, например, для связи СПД - СПИ может появиться необходимость изучить действие помех с учетом типа линии, структуры передаваемых сообщений и способов повышения достоверности. Это более высокий (k+1)-й уровень детализации.


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




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

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

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

Опыт моделирования позволяет привести в качестве примера различные уровни детализации при исследовании вычислительных систем (табл.1).

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

Таблица 1

Уровень детализации

Исследуемый (моделируемый) объект

Элементы объекта

Элементы модели «рабочей нагрузки»

аппаратурный Программно-информационные
1 Региональные информационно- вычислительные сети (РИВС) ЛИВС, АПД*, рабочие станции, серверы, коммутаторы, концентраторы, каналы связи
2 Локальные информационно- вычислительные сети (ЛИВС) Рабочие станции, серверы, репитеры, каналы связи Библиотеки данных, библиотеки программ, функциональные программы Запросы, функциональные задачи, массивы данных
3 Вычислительные комплексы (вычислительные системы) ЭВМ, каналы связи, коммутаторы, периферийные устройства Файлы, программы, массивы Запросы, функциональные задачи, массивы данных
4 ЭВМ Функциональные устройства (периферийные устройства, процессоры, запоминающие устройства, шины магистрали и т.д.) Программы, массивы, команды, данные Запросы, потоки команд и данных, программы
5 Функциональные устройства ЭВМ Блоки устройств, «регистры» Команды, макрокоманды Команды, макрокоманды, микрооперации
6 Блоки функциональных устройств «Регистры», логические элементы __ Микрооперации

*АПД - аппаратура передачи данных.

Элементы этой модели зависят как от цели моделирования так и от этапа моделирования. Модели рабочей нагрузки могут быть статистическими (стохастическими), детерминированными, существенными фрагментами реальной нагрузки или «реальными» - точно описывающими все характеристики рабочей нагрузки.

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

Следует еще раз подчеркнуть, что уровень детализации должен определяться на основе принципов целесообразности. Необходимо стремится к экономии ресурсов моделирования и обеспечивать баланс точностей на каждом иерархическом уровне и между уровнями

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

Определение

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

Как правило, декомпозиция проводится при помощи «дерева проблем», «дерева целей», «дерева решений», «дерева работ», при построении которых образуется четкая иерархичная структура, включающая вертикальное и горизонтальное подчинения и обратные связи.

Особенности

Основа любой декомпозиции - это структурное подчинение всем правилам метода. Из основополагающих и регулирующих всю систему правил можно выделить следующие:

1) Всегда должна быть соблюдена уровневая система.

Метод декомпозиции основан на подчинении более низкого уровня более высокому. Это достигается путем построения иерархической структуры с помощью так называемых «деревьев».

Первыми принято строить дерево проблем и дерево целей, чтобы четко и наглядно представлять все задачи, которые имеются на данный момент. При этом подчинение должно выглядеть таким образом, чтобы задачи более низкого уровня раскрывали суть задач более высокого уровня, а все подзадачи представляли собой проект целиком. Понимание точной и полной картины процентного выполнения декомпозиционного проекта приходит только тогда, когда дерево целей заполнено на 100 %.

Руководствуясь простой формальной алгеброй и логикой можно также строить «деревья И» и «деревья ИЛИ».

2) Расчленение целого на части должно происходить только по одному признаку.

Данный принцип подразумевает, что все подзадачи будут подчинены единой идее и цели. В качестве примера декомпозиции может выступать проект строительства. В качестве главного признака разбиения принят функциональный признак, то проект разбивается на разделы. К примеру, это могут быть следующие основные разделы: конструкции железобетонные (КЖ), архитектурные решения (АР), конструкции металлические (КМ), отопление и вентиляция (ОВ) и т.д. В свою очередь эти разделы тоже должны быть разбиты по функциональному признаку, то есть в подцелях следующего уровня должна быть представлена суть основных целей. Например, раздел отопление и вентиляция (ОВ) делится на пояснительную записку, чертежи, оформление, прохождение нормоконтроля и технического контроля, выпуск документации, авторский надзора, корректировки согласно замечаниям и пр.

В качестве признака можно использовать также временные рамки (сроки), предметные характеристики, структурные признаки, технологические характеристики и другие.

3) Все подсистемы декомпозиции должны раскрывать суть системы.

Если представить главную задачу в качестве 100 %, то все подзадачи должны составить эти же 100% в сумме. При этом, каждая подзадача первого уровня содержит свой процентаж, представляя собой сумму подзадач второго уровня.

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

4) Глубина декомпозиционной проработки должна быть определена на начальном этапе.

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

Классификация

На сегодняшний день известно несколько видов декомпозиции. Можно создавать и свои приемы для конкретного проекта. Однако в той или иной мере они будут относиться к основным видам, а именно: декомпозиция целей (первый и фундаментальный вид), систем (процесс разбивания системы на подсистемы с целью проработки и получения лучшего результата), процесса, работ (составление иерархии работ для обозначение слабых точек и выделения главного и первостепенного).

Как правило, все перечисленные процессы взаимосвязаны и в целом представляют полную декомпозиционную структуру.

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

Анализ действий

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

Такая логическая схема позволяет выявить те этапы работ, на которых возникли проблемы. Так как подзадачи зависят от задач высокого уровня, то дерево работ позволяет увидеть, где есть проблемы и недоработки. Часто из-за слабых мест в первом уровне декомпозиции страдают работы на более низких уровнях.

Например, если закупщик не подал заявку на саморезы, то бухгалтерия не провела счета и не закупила их. На стройке все стоит, потому что монтажникам не хватает для работы саморезов.

Классический прием

Для проведения более подробного анализа структур, выявления их слабых мест, основных целей и направлений, задач, проектов и работ выполняется декомпозиция систем.

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

Применение в бизнесе

Для описания и анализа деятельности компаний, как правило, используется декомпозиция процесса. С помощью иерархии можно определить болевые точки компании, участки, на которых происходят сбои.

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

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

  • общая пояснительная записка;
  • архитектурные решения;
  • конструктивные и объемно-планировочные решения.
  • система электроснабжения;
  • система водоснабжения;
  • система водоотведения;
  • отопление, вентиляция и кондиционирование воздуха, тепловые сети;
  • сети связи;
  • система газоснабжения;
  • технологические решения.

Разделы и подразделы проектной и рабочей документации - это подзадачи третьего уровня.

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

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

Коротко о главном

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

Декомпозиция - научный метод, использующий структуру задачи и позволяющий заменить решение одной большой задачи решением серии меньших задач, пусть и взаимосвязанных, но более простых. (wikipedia)

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

Например, стандартный персональный компьютер начала 21в. состоит из системного блока, монитора, клавиатуры, мышки и проводов, которые соединяют эту систему. Системный блок – это материнская плата, процессор, кулер, винчестер и т.д. Мышка – это датчик перемещения, управляющие элементы, интерфейс подключения к компьютеру. Управляющие элементы мышки – это правая и левая кнопки, колёсико, дополнительные кнопки.

Декомпозиция системы чаще всего представляется в виде иерархического дерева, вершина которого — сама система, а уровни — выделенные подсистемы.

Подобные иерархические деревья для приложений можно строить с целью:

    • сбора и сохранения информации о структуре приложения. Глубина расчленения (количество уровней) будет варьироваться в зависимости от того, кто будет пользоваться этой структурой и как.
    • создания чеклиста, который можно будет использовать в процессе тестирования. Для этого необходимо достичь очень глубокого расчленения.

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

· при создании чеклистов или тест-кейсов

· при выполнении тестирования исследовательским способом

· при проведении тестирования требований

· при планировании и оценке задач по тестированию

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

Признаки декомпозиции

Для разделения одного и того же приложения на подсистемы могут использоваться разные признаки декомпозиции. В качестве задачи на декомпозицию мы будем рассматривать приложение «Браузер» (см. рис. 1). Следует учесть, что во всех примерах, которые будут приведены ниже, декомпозиция не полная. Показаны лишь некоторые из подсистем первого и второго уровней.

Рис. 1. Скриншот приложения «Браузер»

В качестве признака разделения приложения могут использоваться:

  • внешний интерфейс (экран, окно, закладка и т.п. со всеми элементами интерфейса). На рис. 2 показан пример декомпозиции по этому признаку.
  • компонентная структура (функциональные модули приложения и их интеграция в более сложные модули). См. пример на рис. 3.
  • функции приложения и их варианты использования (см. пример на рис. 4),
  • обрабатываемые приложением объекты и данные (и часто нужно анализировать не то, что видно, а то что скрыто внутри — что передается на вход, что на выходе, что храниться внутри системы),
  • характеристики (параметры) объектов и данных или в целом всей системы (например, если объект — это файл, то параметры это — формат, размер, создатель, дата создания и т.д.),
  • действия над объектами (если объект «файл», то действия — удалить, переименовать, переместить, а если объект «список файлов», то действия — сортировать, фильтровать, выделить несколько файлов)
  • состояния, в которые переходит приложение или его модули,
  • этапы взаимодействия пользователя с приложением (см. пример на рис. 5),
  • виды пользователей,
  • характеристики качества (функциональность, удобство использования, производительность и т.д.),
  • и другие.

Рис. 2. Пример декомпозиции по элементам интерфейса приложения «Браузер»

Рис. 3. Пример компонентной декомпозиции приложения «Браузер»

Рис. 4. Пример функциональной декомпозиции приложения «Браузер»

Рис. 5. Пример декомпозиции по этапам взаимодействия пользователя с приложением «Браузер»

Часто декомпозиция одной и той же системы может осуществляться по нескольким признакам, порядок их выбора зависит от квалификации и предпочтений тестировщика. Декомпозиция – задача очень субъективная. И самое главное, чтобы тестировщик осознавал свой выбор принципа декомпозиции в каждый момент времени.

Принципы декомпозиции

1. Каждое разделение образует свой уровень.

Исходная система располагается на нулевом уровне. После её разделения получаются подсистемы первого уровня. Разделение этих подсистем или некоторых из них приводит к появлению подсистем второго уровня и т.д.

Тестирование системы или подсистемы обозначает тестирование всех уровней всех подсистем, на которые она разбивается.

2. Все подсистемы одного уровня, являющиеся подсистемами одной и той же системы, должны разделяться по одному признаку. Другими словами, должны отвечать на один и тот же вопрос относительно своего родителя.

3. Вычленяемые подсистемы в сумме должны составлять всю систему (как пазл соединяться в одну картинку). При этом они должны взаимно исключать друг друга.

Если сложить все выделенные подсистемы вместе, то мы должны получить всю систему. Однако целостность и качество этой системы можно гарантировать только с учётом взаимодействия подсистем. Например, нет гарантии, что системный блок компьютера будет работать, если работают по отдельности материнская плата, процессор, компьютер и др. компоненты. Их нужно собрать вместе и проверить взаимодействие.

В процессе декомпозиции допускается выделять группу (подсистему) «Другие», в которую включаются те подсистемы, для которых невозможно выделить один общий признак или подсистем получается слишком много, чтобы выделять их на верхний уровень. Но в «Других», должен всё равно применяться некий свой внутренний признак расчленения.

К неоднозначности может привести использование на одном уровне взаимно пересекающихся подсистем. Например, в сводке расходов за месяц, в большинстве случаев немного странно будут выглядеть пункты: еда, аренда помещения, канцелярия, коммунальные услуги, подогрев воды. Обычно подогрев воды относится к коммунальным услугам.Соответственно, при выделении этих пунктов на один уровень могут возникнуть вопросы формата: расходы на подогрев воды — это дополнительные расходы сверх нормы? Или это постоянные ежемесячные расходы? А не платим ли мы дважды за подогрев воды?

4. Выбирайте глубину декомпозиции в зависимости от задач, которые решаете с помощью неё и в зависимости от уровня знаний специалистов, которые будут ей пользоваться. Ищите компромисс между полнотой и простотой.

Глубина декомпозиции (количество уровней) и степень подробности описания определяются требованиями обозримости и удобства восприятия получаемой иерархической структуры, её соответствия уровням знания работающему с ней специалисту.

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

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

Системы нижнего уровня называются элементарными.

Если иерархическая схема используется как чеклист, то элементарные системы — это и есть идеи тестов.

Если же схема используется как структура приложения, то элементарные системы — это системы с такой степенью детализации, которую будет очевидно, как тестировать человеку, использующему эту схему в процессе тестирования.

5. Проводите критическую оценку декомпозиции каждого из построенных уровней и системы в целом.

Всё ли охвачено? Не пропущено ли? Может быть есть избыточные ветви или пересекающиеся?

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

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

Текст статьи и иллюстрации готовила я сама, подготавливала статью с помощью анализа материалов и книг, найденных на просторах интернета и основываясь на своем личном опыте и взгляде .

Последовательная декомпозиция целей

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

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

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

Полнота "дерева целей" и соответствие рангов подцелей. Полнота "дерева целей" обеспечивается путем:

1) разбиения исходной цели или очередной промежуточной подцели
п-то ранга на наиболее укрупненные, однородные составляющие подцели
(л+1)-го ранга. Обычно удается выделить от 2 до 5 таких подцелей;

2) если нет уверенности, что они полностью исчерпывают разделяе
мую (декомпозируемую) подцель старшего n-го ранга, то, кроме выделен
ных, следует ввести еще одну (резервную) подцель (n+1)-го ранга, содер
жащую "прочие", т.е. неучтенные, подцели. При дальнейшей проработке
проблемы такие "прочие" составляющие будут либо конкретизированы,
либо исключены из состава "дерева целей".

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

Проверка соответствия рангов подцелей состоит в следующем: из выделенных подцелей (n + 1)-го ранга надо попытаться найти две или несколько таких, которые можно объединить по некоторому общему принципу, но в то же время к этому объединению нельзя отнести остальные подцели. Если такая попытка увенчается успехом, это будет означать, что однородность подцелей нарушена и требуется корректировка рангов подцелей (подробнее см. ).

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

Обобщая процесс формирования целей, можно сделать следующие выводы:

¨ совокупность целей проблемы имеет иерархическую структуру, поcтроение и анализ которой следует осуществлять методом последовательного разделения (декомпозиции) более общих целей на их составляющие, обеспечивая полноту выявления подцелей и их взаимное соответствие по уровню в иерархии (по рангам);

¨ результаты декомпозиции удобно фиксировать в виде "дерева целей", которое оформляется либо в виде графа иерархической структуры, либо в виде таблицы, строки которой определяют место подцели в иерархии;

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

¨ в составе "дерева целей" следует избегать сложных показателей, представляющих собой отношение или другую функцию более простых показателей.

"Дерево целей" промышленного предприятия. Системный анализ всегда конкретен. Потому единого типового "дерева целей" не может быть ни для промышленного предприятия, ни для иного объекта. На построение "дерева целей" влияют в основном два фактора: специфика объекта и особенности той проблемы, для решения которой проводится анализ целей.

Даже для одного предприятия может быть построено несколько вариантов "дерева".

Используя ранее изложенную методологию, построим "дерево целей" для химического предприятия с широким ассортиментом продукции (рис. 4.5). Зададим цель - максимальное повышение эффективности предприятия. Целевую функцию максимального повышения эффективности деятельности предприятия можно представить в виде двух основных групп подцелей: подцель 1 - достижение конечных результатов (у j); подцель 2 - экономия ресурсов всех видов (х j).

Очевидно, каждую из этих групп можно рассматривать как одну из двух основных подцелей (т.е. подцелей 1-го ранга).

В свою очередь, среди конечных результатов выделим результаты ос-вной деятельности системы (по производству продукции, услуг, информации) и результаты решения социальных задач. Каждую из этих групп ДЦелей можно рассматривать как подцель 2-го ранга:

подцель 1.1 -- удовлетворение потребности в продукции и услугах;

подцель 1.2 - достижение социальных целей.

Со своей стороны, другая подцель 1-го ранга (экономия ресурсов всех лов) может быть также разбита на две или несколько подцелей 2-го ранга. Например, на экономию текущих (регулярных) затрат, измеряемых как правило, в рублях в год, и экономию единовременных затрат, измеряемых в рублях:

подцель 2.1 - экономия текущих затрат, снижение потерь;

подцель 2.2 - экономия единовременных затрат.

Развиваем "дерево целей" предприятия, последовательно расчленяя четыре подцели 2-го ранга, представленные на рис. 4.5.

Подцель 1.1 - удовлетворение потребности в продукции и услугах может быть дезагрегировано на три основных подцели: удовлетворение потребности по количеству продукции, по ее качеству, а также улучшение временных (динамических) характеристик производства.

Подцель 1.1.1 - удовлетворение потребности по количеству продукции следует дифференцировать далее, выделяя отдельные группы и марки продукции.



Подцель 1.1.2 - удовлетворение потребности по качеству продукции целесообразно сразу же разделить на две подцели: обеспечение качества в пределах, установленных нормативно-техническими документами, и повышение качества в соответствии с экономически обоснованной потребностью.

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

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

подцель 1.1.3.1 - обеспечение ритмичности поставок продукции;

подцель 1.1.3.2 - ускорение реакции производства на изменение спроса. Дальнейшее дезагрегирование указанных подцелей зависит от поставки анализируемой проблемы и конкретных условий ее решения.

Подцель 1.2 - достижение социальных целей. Здесь правомерно сразу выделить две крупных группы целей: экологические и локальные, отно-яеся к социальному развитию коллектива предприятия.

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

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

Построение ветви подцели 2 - экономия всех видов ресурсов производится аналогично построению ветви подцели 1, а детализация подцелей зависит от постановки анализируемой проблемы и конкретных ограничений ее решения.

Вспомните, что SADT-аналитик делает набросок декомпозиция, подвергает его критической оценке, перечерчивает и затем выпускает соответствующую папку. Эта глава состоит из трех уроков, связанных с созданием декомпозиции первого уровня - т.е. декомпозиции блоков диаграммы АО. В уроке 8 создается диаграмма, декомпозирующая один блок диаграммы АО. Урок 9 - авторская критика и пересмотр диаграммы. В уроке 10 рассматривается процесс создания папки для рецензирования.

Выполните все три урока без перерыва. Это даст вам точное представление об объеме работы, необходимой для декомпозиции ограниченного объекта. (Сравните усилия, потребовавшиеся для начала работы над моделью, с усилиями, потребовавшимися для декомпозиции одного блока.) Отведите около получаса на каждый урок, но не беспокойтесь, если затратите времени больше. Закончите работу, связанную с выполнением этих уроков, даже если вы испытываете трудности в следовании точному описанию системы на диаграмме АО.

Урок 8. Групповое построение диаграмм

Цель

Выбрать и декомпозировать один из блоков диаграммы АО.

Действия

    Выберите блок диаграммы АО. Этот блок является контекстным на протяжении всего этого урока. Не выходите за его границы.

    Мысленно проверьте этапы построения диаграммы: составить список объектов, составить список функций, сгруппировать функции в 3-6 блоков, начертить блоки в порядке убывания доминантности; начертить внешние дуги, начертить дуги управления, начертить входные и выходные дуги.

    Прочтите диаграмму АО снова, сосредоточившись на том, как ваш блок согласуется с другими блоками. Используйте граничные дуги выбранного вами блока для начала составления списка данных.

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

    При вычерчивании делайте для себя примечания и определяйте терминологию.

    После окончания работы проверьте ICOM-коды. Удостоверьтесь, что вы не забыли использовать граничные данные.

Примечания

    Не выходите за пределы содержания, определенного выбранным вами блоком диаграммы АО. Вы можете встретиться с трудностями в построении диаграммы, поскольку первые декомпозиции часто выявляют недостатки родительской диаграммы. Записывайте возникшие затруднения, делая заметки на диаграмме АО.

    На данном этапе не беспокойтесь о корректности этой диаграммы. Декомпозиции данного уровня редко удаются с первого раза.

Образец

    Обратите внимание на то, что сначала перечислены внешние входные дуги, дуги управления и выходные дуги, а затем -последующие данные, составляющие компоненты этих дуг. Так вы будете уверены, что не забыли контекст, в котором работаете.

    Обратите внимание на управляющую обратную связь от блока купить к блоку составить список покупок. Это описывает ситуацию, когда вы изменяете список покупок, если видите, что в магазине отсутствует что-то из запланированного.

Урок 9. Критическая оценка декомпозиции первого уровня

Цель

Критически исследовать построенную в уроке 8 диаграмму, чтобы определить, как она детализирует родительский блок диаграммы АО.

Действия

    Просмотрите построенную диаграмму и попытайтесь изложить то, как она отражает свою часть задачи питания семьи. Начните с логического начала: с поступления одного или более объектов из блока диаграммы АО. Обращайтесь непрерывно к диаграмме АО и делайте примечания, когда находите изложение неверным или неполным.

    Не забывайте отмечать нужные изменения как на вашей диаграмме, так и на диаграмме АО. Изменяйте или уточняйте вашу терминологию в процессе критического анализа.

    Постройте видоизмененную в соответствии с вашими замечаниями диаграмму и перечертите, если необходимо, диаграмму АО. Не забывайте проверять ICOM-связи между рассматриваемой диаграммой и диаграммой АО.

Примечания

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

Образец

    Обратите внимание на то, как изменились названия блоков для лучшего описания блока пополнить запасы. Например, название обследовать запасы лучше описывает ситуацию и использует менее техническую терминологию.

    Блок составить список покупок сделан более общим.

    Это означает, и что теперь функция Спланировать покупки управляет еще и выбором магазинов.

    Замечание 4 напоминает, что необходимо уточнить вместе с автором, который ввел в диаграмму функцию планировать, значение термина реальная доступность продуктов. Такие случаи часто бывают, когда модель строится несколькими авторами.

Урок 10. Подготовка папки

Цель

Собрать в SADT-папке проверенную вами диаграмму первого уровня и связанный с ней глоссарий.

Действия

    Подготовьте как вашу диаграмму, так и глоссарий и проверьте согласованность информации.

    Оформите титульный лист: внесите в него идентифицирующую информацию (автор, проект, дата), название папки, а также укажите, что она содержит, кому должна быть направлена и когда возвращена.

    Добавьте в поле комментариев титульного листа другие специальные комментарии или замечания для читателей.

    Скрепите страницы - сначала титульный лист, затем диаграмму АО, потом вашу диаграмму и, наконец, глоссарий. После этого пошлите папку библиотекарю проекта.

Примечания

    Используйте поле комментариев для сообщения о каких-либо особенностях папки. Такие замечания часто помогают получить полезную рецензию, если попросить читателей обратить особое внимание на конкретные моменты (одно замечание может способствовать повышению качества рецензии).

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

Образец

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

    Запасы, маршрут и список покупок определены в глоссарии через перечисление составляющих их частей.