112 Описание процедуры (Уровень 2) 113
Чтобы эффективно составить процедуру и убедиться, что мы описываем то, что нужно, необходимо последовательно применить для каждой обозначенной команды анкету, представленную в параграфе 4.4.
Мы снова приводим эту анкету в контексте команды «Зарегистрировать заказы», осуществляемой «Секретарем».
1. Кто?: Позволяет поместить команду в нужный столбик
2. Что?: Указывает на запись команды
3. Какая информация?: Информация, которая запускает команду
4. Откуда?: Происхождение информации («Начало», «Действие предыдущего этапа»)
5. От кого?: Участник, который поставляет информацию
6. Как?: Способ выполнения команды (см. параграф 6.3.7.)
7. Чем?: Необходимые средства (см. параграф 6.3.5.)
8. Какая информация?: Информация, произведенная командой
9. Куда?: Предназначение информации («Конец», «Действие последую-щего этапа»)
10. К кому?: Участник - получатель информации
11. Какие ограничения?: Ограничения по выполнению (Длительность,
стоимость, контроль).
|
|
Эта обобщающая анкета может быть применена ко всем командам. Она позволяет изучить ближайшее окружение и обозначить элементы, необходимые для выполнения команды.
Ответы на эту анкету должны быть в некотором роде мгновенными, если этого не происходит, это означает:
а) что разработчик не обладает знаниями, необходимыми для ответа.
Следовательно, он должен окружить себя компетентными лицами,
чтобы описать процедуру,
б) что разработчик описывает процедуру, которая в реальности выполняется иначе.
В нашем примере есть действия, которые должны выполняться несколькими из задействованных участников. Это изображается особой формой команды, называющейся согласованной командой.
Согласованная команда - это команда, выполняемая несколькими участниками в одно и то же время. Следовательно, согласованная команда всегда располагается в нескольких столбцах (как минимум в двух).
Так как она пересекает несколько столбцов процедуры, необходимо указать, какие участники выполняют эту согласованную команду. Небольшие овалы, находящиеся над прямоугольником, позволяют указать, какие участники взаимодействуют, а также каковы их взаимные обязанности (кто принимает решение, кто согласовывает и т.д.)
В нашей процедуре первая согласованная команда расположена наверху трех столбцов («Коммерческого отдела», «Начальника коммерческого отдела» и «Начальника R&D»). Но только первый и последний участники сотрудничают, чтобы разработать проект. Это действие находится под ответственностью «Коммерческого отдела».
В представленную процедуру были введены некоторые новые символы. В частности, речь идет о символах, которые позволяют указать конец процедуры.
|
|
Как мы уже видели в параграфе 6.3.3, процедура всегда должна иметь «начало», представленное «первоначальным фактом» или «действием предыдущего этапа».
Существуют эквивалентные графические символы, которые показывают, как заканчивается процедура.
114 Описание процедуры (Уровень 2) 115
Символ «Конец», расположенный в столбце участника, который получает информацию и заканчивает процедуру, является парным с символом «Начало».
Он представлен в форме круга с чертой сверху. Он используется для обозначения конца процедуры или для указания конца во время разворачивания процедуры. Для этого надпись «Конец» сделана внизу символа.
Другой способ закончить процедуру - запустить процедуру, находящуюся на последующем этапе от первой. Графически это изображается символом того же порядка, что и «действие на предыдущем этапе», рассмотренное выше.
Информационная стрелка подходит к черте, внизу которой написано название (или номер) следующей процедуры.
Остается изучить еще несколько новых символов в этой процедуре.
Первый графический символ позволяет рассмотреть различные альтернативы, реализующиеся после команды. В частности, это случай, когда «Коммерческий отдел» анализирует элементы заказа и определяет, может ли он быть удовлетворен поставкой товара по каталогу или требует особого изучения.
Чтобы изобразить эти две альтернативы, мы используем символ «Или».
Этот логический оператор, расположенный под командой, обо -значает различные случаи, рассматривающиеся после команды.
По меньшей мере две стрелки должны исходить оттуда и содержать в информационной корзине результат каждого из условий, следующих из команды. «Или» заменяет символ «ромб», обычно используемый для обозначения выбора или теста.
Символ «Или» может также располагаться над командой. Тогда он обозначает, что команда может быть применена простым присутствием той или другой информации, подходящей к команде.
Ниже представлены примеры разного использования этого оператора:
а) Команда может быть выполнена, в зависимости от поступления той или другой информации: А или Б.
б) Команда производит либо информацию А, либо Б, но не обе сразу. Эта конструкция используется для обработки разных альтернатив (тестов), следующих из команды.
Такая же конструкция существует с символом «И» (см. параграф 6.5.).
Последний еще не изученный графический символ - это немного необычный овал. Действительно, он изображает «исходящего участника» и «получающего участника». Он используется с символами «Начало», «Конец», «Действие предыдущего этапа» или «Действие последующего этапа», когда необходимо обозначить, кто выполняет начало или конец процедуры, не создавая особого столбца для этого участника. В нашем случае «Магазин» и «Отдел по изучению рынка» являются получающими участниками.
Эта форма указывает, какой участник производит или получает информацию, а также кто выполняет действие предыдущего или последующего этапов по отношению к данной процедуре.
Этот символ используется для упрощения процедуры в случаях, когда участник уже был определен, но в конце описания обнаружилось, что в его столбце нет команды, а только символы, указывающие на начало или конец процедуры.
116 Описание процедуры (Уровень 2) 117
В этом случае нужно удалить столбец и указать участника как источника или получателя информации.
Этот символ изображает как «Внешнего участника», так и «Общность» или «Внутреннего участника», т.е. его нельзя различить по функции того, что он изображает.
В таком случае мы предлагаем заполнить этот овал особым цветом, например, светло-серым, и, в особенности, выразить это различие через меньший размер по отношению к другим символам участников.
|
|
Прежде чем продолжить составление нашей процедуры, мы хотели бы привлечь ваше внимание к следующим пунктам:
- Действия по передаче (отослать ответ «Заказчику», передать ответ «Секретарю»...) не изображаются с помощью прямоугольников, но сразу же обозначаются информационными стрелками.
- Действие «Секретаря», заключающееся в печатании элементов заказа клиента, не описывается особым прямоугольником. Действительно, мы сгруппировали это печатание с действием «Зарегистрировать».
- Команды, выполняемые сообща («Коммерческий отдел» и «Клиент», «Коммерческий отдел» и «Начальник R&D»}, изображаются символом согласованной команды, который распространяется на несколько столбцов для отображения ролей, принимающих участие в этих согласованных командах, используются символы ответственности (R для участника, принимающего решения, Р для соучастника).
- Участники, не принимающие активного действия в процедуре, тем не менее, отображаются символом исходящий/получающий участник.
- Все информационные корзины, фигурирующие на стрелках, должны вводить в курс дела.
- Легенда объединяет все формы графического языка.