В статье пойдет разговор о том, что такое схема алгоритмов, какие данные в эту схему вносятся. Также будет дан ответ на вопрос, какие существуют виды блоков для схем представления алгоритма.
Algorithm — строгая последовательность действий для какого-нибудь исполнителя, которая приводит к решению поставленной задачи либо получению заданного результата за определенное количество число шагов. Упоминание исполнителя здесь неслучайно, ведь любая алгоритмическая последовательность создается с учетом конкретного исполнителя и имеющихся у него возможностей. Под исполнителем понимается некий субъект, который способен понять и выполнить определенный перечень команд. Совокупность этих команд является системой команд исполнителя.
Но чтобы выполнить алгоритм, одного лишь его наличия недостаточно. Выполнение предполагает применение в контексте решения реальной задачи, а значит, потребуется выполнение запланированных действий по отношению к конкретным входным данным. Следовательно, исполнителю надо передать входные данные до начала алгоритма:
Как строить блок-схемы и рисовать бизнес-процессы [для начинающих]
Входные данные → Algorithm → Выходные данные (результат)
Когда исполнитель получает выходные данные, они выдаются в качестве результата выполненной работы. Также стоит учесть, что в процессе выполнения этой самой работы возможно создание и использование в программе промежуточных данных.
Блок-схемы алгоритма
Наглядным способом представления алгоритмической последовательности является блочная схема. Она выглядит как последовательность функциональных блоков, связанных между собой. Каждый из этих элементов отвечает за выполнение одного либо нескольких действий. Так как возможны разные действия, то каждому типу действия соответствует геометрическая фигура.
Очередность выполнения действий определяется линиями, которые соединяют блочные элементы с данными. Принято, чтобы компоненты схемы соединялись слева направо и сверху вниз. В случае наличия какой-либо иной последовательности, используют линии направленного вида (со стрелками).
Блок–схемы алгоритма: виды и примеры
Функциональный (операторный) блок:
Его еще называют процессом. Такой элемент нужен для указания действия (шага) алгоритма. Он представляет собой прямоугольник, в который может входить одна направленная линия и выходить тоже одна линия. Внутри записывают команду, подлежащую выполнению. Для наглядности возможна запись нескольких команд в одном блочном элементе.
Альтернативный блок:
Это условный блок, т. к. в нем прописывается какое-нибудь условие. Он указывает наличие выбора среди одного из двух вероятных действий. Геометрическая фигура представляет собой ромб. Внутри прописывается условие выбора (вопрос, сравнение). В качестве условия может выступать выражение, для которого справедливо лишь одно из 2-х значений: «ложь» либо «истина».
В ромб может входить одна направленная линия, а выходить две направленные линии, причем одна подписывается словом «Да», вторая — «Нет». В случае, если записанное внутри геометрической фигуры условие является верным (значение истинно), управление передается по стрелке, которая подписана словом «Да». В обратной ситуации управление переходит на стрелку «Нет».
Блок начала/конца (пуск/останов):
Применяется, соответственно, в начале и конце блок-схемы алгоритма.
Блок ввода-вывода:
С его помощью организуют ввод исходных данных и вывод результирующих данных.
Блок цикла:
Служит для организации циклического процесса с каким-нибудь параметром. Должно быть известно как число итераций (повторений) цикла, так и шаг изменения параметра. Внутри через запятую прописывается начальное значение циклического параметра, а также шаг изменения и конечное значение.
Блок подпрограммы (предопределенного процесса):
Применяется в целях указания обращения к отдельным модулям, библиотечным подпрограммам, вспомогательным алгоритмам.
Элемент печати:
Обозначает вывод результатов на печать.
Исходя из вышесказанного, пример простейшей блок-схемы алгоритма (речь идет о линейной последовательности) будет выглядеть следующим образом:
Следующий пример представляет собой схематическое описание (блок-схему) итога работы алгоритма целочисленных преобразований с оператором присваивания := :
Источник: otus.ru
Блок-схемы
Блок-схема — это графическое описание процесса или алгоритма, использующее различные символы с целью представить операции, данные, подпроцессы и т.д., связи между которыми раскрываются с помощью стрелок.
Блок-схемы применяются для передачи сложных идей максимально простым способом, так, что они становятся понятны даже неопытной аудитории. Кроме того, блок-схемы дают возможность разбивать процесс на этапы и одновременно оценивать роль каждого из них в данном процессе.
Для чего используются блок-схемы
Блок-схемы помогают понять логику процесса, выделить проблемы и разрывы связей, определить степень сложности процесса и сформировать общую базу знаний о нем.
Блок-схемы используются прежде всего для:
- оформления и описания существующего процесса;
- развития изменений существующего процесса или выявления областей, в которых могут возникать проблемы;
- разработки нового процесса;
- анализа процесса и проверки его соответствия заданным требованиям.
Программа для рисования блок-схем
Grapholite — приложение, специально предназначенное для создания блок-схем. Программа проработана таким образом, чтобы максимально упростить процесс составления блок-схемы из составляющих частей. Все это возможно благодаря следующим ключевым особенностям:
- «умные» инструменты для рисования;
- автоматические соединения между элементами;
- расширенная библиотека элементов (фигур);
- экспорт в наиболее популярные форматы иллюстраций и документов.
Элементы блок-схем
Элементы (или символы) блок-схем различаются по своему назначению.
К основным элементам блок-схем относятся:
- Терминатор — указывает на начало и конец процесса, в схеме представлен овалом.
- Данные — используется для отображения инструкций или действий; изображается в виде параллелограмма.
- Решение — отображает альтернативные пути в схеме процесса в зависимости от условия; изображается как ромб.
- Действие — этап процесса; графически представляется прямоугольником.
- Документ — обозначает вывод результатов.
- Коннектор — линия со стрелкой для установления связей между фигурами.
Как нарисовать блок-схему
Одно из главных достоинств программы Grapholite — простота и удобство создания блок-схем. Чтобы проиллюстрировать это, мы сделали следующее видео. Чуть более медленная версия видео, где можно рассмотреть все детали, доступна по ссылке.
Источник: grapholite.ru
Описание процессов при помощи блок-схем
Простейшим, но практически важным способом описания бизнес-процессов является методика составления блок-схем. Данный подход имеет много общего с графическими языками описания алгоритмов программного обеспечения. С точки зрения методологии формирование блок-схем проводится так же, как в нотации 1DEF3, хотя для упрощения символы логики можно опустить.
Для разработки блок-схем используют стандартные офисные программные продукты, например MS Word или Visio. Основные графические объекты языка описания процессов при помощи блок-схем представлены в табл. 2.3.
Таблица 2.3 Графические объекты блок-схемы процесса
102_________________________________ ВВ. Репин. В.Г. Елиферов. Процессный подход к управлению
Пример описания процесса при помощи блок-схем представлен на рис. 2.44.
Блок-схемы удобно строить на листе, располагая вертикально. При этом справа от блок-схемы процесса остается место для описания выполняемых функций, результатов выполнения функций, исполнителей, номеров входящих и ис-
Рис. 2.44. Пример блок-схемы процесса.
ходящих документов. Такая форма представления блок-схем удобна для документирования процессов и создания регламентирующей документации: описания процессов, должностных и рабочих инструкций.
Глава 2 Выбор методологии описания бизнес-процессов 103
Описание процессов при помощи блок-схем имеет одно очень существенное преимущество — простота и доступность для восприятия руководителями и специалистами предприятия. Затраты на обучение исполнителей чтению блок-схем являются минимальными. Кроме того, для формирования блок-схем не требуются специализированные дорогостоящие программные продукты.
Сравнительный анализ нотаций ARIS и IDEF. Выбор нотации для описания процессов
Нотации IDEF0 и ARIS VAD
В табл. 2.4 приведен сравнительный анализ нотаций моделирования бизнес-процессов ARIS VAD и IDEFO. Обе эти нотации предназначены для описания процессов организации на верхнем уровне.
Таблица 2.4 Сравнение нотаций IDEFO и ARIS VAD
№ | Критерии | Нотация | |
п.п. | сравнения | ARIS VAD | IDEFO |
Принцип | Временная последовательность | Принцип доминирования | |
построения | выполнения процедур. | (см. стандарт IDEF0). | |
диаграммы | Используется тип связи | Функции связаны потоками | |
is predecessor of | данных и материальных | ||
ресурсов | |||
Описание процедуры | Объект на диаграмме | Объект на диаграмме | |
процесса | |||
Использование | Не регламентировано. Стороны | Регламентировано. Каждая | |
сторон объекта | объекта Value-added process chain | сторона объекта Activity | |
«процесса» | не имеют специального назначения | (функция, процесс) имеет | |
для отображения | специальный смысл: | ||
различных видов | входы, выходы, | ||
входов | управление, механизмы | ||
Входящий | Не используется специальный | Стрелка входа, стрелка | |
документ | объект для отображения документов. | управления | |
Может использоваться объект | |||
Technical Term | |||
Входящая | Используется отдельный объект | Стрелка входа, стрелка | |
информация | Cluster. Может быть использован | управления | |
объект Technical Term | |||
Исходящий | Не используется специальный | Стрелка выхода | |
документ | объект для отображения документов | ||
Может использоваться объект | |||
Technical Term | |||
Исходящая | Используется отдельный объект | Стрелка выхода | |
информация | Cluster. Может быть использован | ||
объект Technical Term |
104___________________________ В.В. Релин, В.Г. Елиферов. Процессный подход к управлению
Таблица 2.4 (окончание)
N9 | Критерии | Нотация | |
п.п. | сравнения | ARIS VAD | IDEF0 |
Исполнитель | Используются отдельные объекты | Стрелка механизма | |
процесса | для описания: Position, | ||
Organizational Unit | |||
Используемое | Используется отдельный объект | Стрелка механизма | |
оборудование | для описания: Product, Product/Service. | ||
Может быть использован объект | |||
Technical term | |||
Управление | Нет средств для отображения | Стрелка управления | |
процессом | управления процессом. | (стрелка сверху) | |
Возможно косвенное отображение | |||
управления при помощи входящих | |||
документов, информации | |||
Обратная связь | Не может быть отображена. | Стрелка управления. | |
по управлению/ | Есть возможность однократно | (Есть требования | |
контролю | показать обратную связь типа | по отображению обратных | |
is predecessor of | связей по управлению) | ||
Обратная связь | Не может быть отображена. | Стрелка входа | |
по входу | Есть возможность однократно | (Есть требования | |
показать обратную связь типа | по отображению обратных | ||
is predecessor of | связей по информации) | ||
Миграция потоков | Принципиально невозможна | Предусмотрена | |
данных и ресурсов | миграция стрелок | ||
при декомпозиции | вниз и вверх | ||
Туннелирование | Принципиально невозможна | Предусмотрено | |
потоков данных | туннелирование стрелок | ||
и ресурсов | вверх и вниз | ||
при декомпозиции | |||
Автоматическая | Не предусмотрена | Предусмотрена | |
нумерация узлов | |||
(процессов) | |||
Стандартная форма | Не регламентирована. | Регламентирована. | |
представления | Нет рекомендаций | Рамка IDEF0. | |
диаграммы | по форматированию моделей | Развитая система | |
процесса при | ARIS VAD при документировании | обозначений на диаграмме | |
документировании | |||
Ограничения по ко- | Количество объектов | Рекомендовано не более | |
личеству объектов | не ограничено | шести. Общее количество | |
на диаграмме | не ограничено | ||
процесса |
Сравнительный анализ нотаций показывает, что нотацию ARIS VAD можно рассматривать как инструмент простейшего схематического изображения бизнес-процессов. Это средство для эскизного описания процессов верхнего уровня, не предназначенное для построения связных, комплексных моделей деятельности организации. Более того, принцип построения моделей в ARIS VAD — последо-
Глава 2 Выбор методологии описания бизнес-процессов______________________ 105
вательность процедур во времени — больше подходит для создания моделей класса Work Row (например, моделей IDEF3). Метод ARIS VAD лишен важнейших практически необходимых инструментов, таких как отображение входов управления процессом, возможность описания обратных связей, миграция связей (входов/выходов процесса) при декомпозиции и др.
В методических материалах [6| по использованию нотации ARIS VAD можно найти следующие рекомендации. На первом этапе работы формируют модели верхнего уровня в нотации ARIS VAD. Затем эти модели декомпозируют в нотации ARIS eEPC.
Но допускается также создание нескольких уровней декомпозиции в нотации ARIS VAD, что исключительно неудобно, так как декомпозируемые модели никак не связаны с моделями верхнего уровня (кроме формальной принадлежности). При дальнейшеи декомпозиции процессов в нотации ARIS eEPC приходится «вручную» заботиться о связности создаваемых моделей, так как на верхнем уровне составляющие процессов в нотации ARIS VAD были слабо взаимоувязаны между собой через потоки информации и ресурсов, носили чисто иллюстративный характер, как показано на рис. 2.45.
Справедливости ради следует отметить, что при декомпозиции процессов из нотации IDEF0 в нотацию IDEF3 мы сталкиваемся с теми же проблемами. Но
106_________________________________ В.В. Репин, В.Г Елиферов Процессный подход к управлению
здесь мы делаем акцент на том, что описание процессов в ARIS VAD на верхнем уровне существенно менее удобно, чем в IDEF0. Кроме того, работа в ARIS VAD является значительно более трудоемкой. Так, количество операций по отображению процесса в ARIS VAD увеличиваются в два и более раз, чем при создании аналогичной модели в IDEF0. На рис. 2.46 и 2.47 приводится пояснение данной оценки трудоемкости.
Видно, что для отображения простейшего процесса из двух функций в IDEF0, включающего один поток материальных ресурсов и две обратных связи, потребовалось отображение пяти объектов (две функции и три стрелки). В нотации ARIS VAD для отображения рассматриваемого процесса потребовалось 12 объектов (два объекта Value-added process chain, два — Cluster, один — Technical term.
Глава 2 Выбор методологии описания бизнес-процессов 107
семь стрелок). Таким образом, трудоемкость описания процесса в нотации ARIS VAD существенно больше, а это отражается на времени выполнения проекта и величине требуемых ресурсов.
Если в организации поставлена задача описания деятельности организации на верхнем уровне, можно решать эту задачу двумя путями, как показано в табл. 2.5.
Таблица 2.5 Способы описания бизнес-процессов верхнего уровня
Способ блок-схем | Комплексный подход |
Данный подход предполагает быстрое | Использование методологии IDEF0 является |
эскизное описание схем бизнес-процессов | оптимальным вариантом для описания |
верхнего уровня. Не требуется создавать | бизнес-процессов на верхнем уровне, так как |
комплексную модель. При такой постановке | позволяет отобразить информационные |
задачи можно использовать простейшие | и материальные потоки, требования |
средства визуализации блок-схем процессов, | к персоналу и инфраструктуре, управляющие |
например MS Word или Visio. | воздействия и обратные связи. Методология |
Использование IDEF0 не рекомендуется, | соответствует определению процесса |
так как получаемые схемы процессов | в МС ИСО 9000:2000. |
являются слишком сложными. | Использование ARIS VAD не обеспечивает |
Использование ARIS VAD возможно, | получения комплексных, связных моделей |
но не дает существенных преимуществ | верхнего уровня, поэтому не рекомендуется |
для создания моделей такого типа |
Подчеркнем, что выбор нотации для описания процессов верхнего уровня, в первую очередь, определяется задачами проекта.
Источник: stydopedia.ru