Каждое приложение имеет бизнес-логику, своеобразный поток действий и операций, который определяет будущий функционал приложения.
1222 просмотров
Большой частью бизнес-логики являются бизнес-процессы. Что это такое и как их создавать — разбираемся в этой статье.
Что такое бизнес-логика?
Прежде чем рассмотреть бизнес-процессы в отдельности, давайте разберем понятие бизнес-логики.
Бизнес-логика — набор процессов, которые определяют последовательность выполнения операций в приложении, отвечают за обработку данных и устанавливают правила взаимодействия между пользователем и приложением.
Работу бизнес-логики можно рассмотреть на простом примере регистрации пассажира на рейс администратором, который вводит информацию в базу данных.
Здесь администратор выбирает нужный рейс, заполняет форму для регистрации пассажира, вводя необходимые данные. В это время система проверяет авторизован ли пользователь и имеет ли права на выполнение этих действий. Затем программа обрабатывает полученную информацию, проверяет соответствие данных установленному формату, получает данные из базы о полете и пассажире, оповещает, если информация указана неверно, отправляет данные в базу с командой внести изменения.
Моделирование бизнес-процессов | Naked BPM
Как результат данные обновляются и в списке появляется новый пассажир.
Описанные в примере действия, их последовательность, обмен данными, их обработка, запросы и ответы — за все эти операции отвечает бизнес-логика.
Бизнес-логика — неотъемлемый компонент архитектуры приложения. Как уточнялось выше, бизнес-логика состоит из бизнес-процессов. Давайте рассмотрим их подробнее.
Что такое бизнес-процесс?
Бизнес-процессы представляют собой последовательность действий для реализации функционала приложения.
Бизнес-процессы в AppMaster.io
Как и при классическом подходе, в AppMaster.io бизнес-логика строится из бизнес-процессов. БП предназначены для работы с данными: поиск, создание, удаление, обновление, изменение и отвечают за выполнение любых действий в приложении.
На платформе есть специальный редактор для работы с бизнес-процессами. Для создания БП используются блоки.
В каждом бизнес-процессе автоматически создаются замыкающие блоки Start и End. Они могут иметь переменные: выходные для стартового блока и входные для конечного.
У каждого блока БП, за исключением блоков start и end, есть два типа коннекторов — точек подключения (входные In, выходные Out):
- flow_connection — коннектор потока выполнения, описывает очередь блоков, какой за каким выполнять;
- var_connection — коннектор переменных, описывает какую переменную откуда брать.
Бизнес-процессы делятся на три категории:
- Бизнес-процессы бэкенда — компилируются в исходный код на языке Go, выполняются в серверном приложении.
- Бизнес-процессы для веб-приложений — доставляются в веб-приложение, обрабатываются языком JavaScript на стороне браузера.
- Бизнес-процессы для мобильных приложений — доставляются в мобильные приложение и выполняются в них, обрабатываются нативными инструментами мобильных платформ.
Внутри каждого типа приложения есть определенный набор бизнес-процессов.
Как строить блок-схемы и рисовать бизнес-процессы [для начинающих]
В бэкенде — обычные бизнес-процессы, имеют блоки Start и End. Могут поддерживать асинхронный вызов и режим транзакций.
В веб и мобильных приложениях существуют следующие типы БП:
- БП компонентов — задаются в каждом компоненте, странице, виджете или экране. Зависят от компонента, для которого они создаются. Не имеют блока End. На входе имеют один или несколько блоков-триггеров, которые начинают выполнение при наступлении заданного события, например, нажатия кнопки.
- БП уровня приложения — задаются для всего приложения, практически идентичны БП компонентов за исключением того, что имеют контекст приложения и имеют только один триггерный блок — начальный.
- Generic БП — задаются на уровне приложения, однако созданы чтобы в них была вынесена часто используемая логика из всех других бизнес-процессов. Эти БП имеют блоки Start и End и ведут себя аналогично серверным бизнес-процессам, но не имеют режима транзакции.
Как создать бизнес-процесс на AppMaster.io?
Для работы с бизнес-процессами на платформе AppMaster.io существует редактор бизнес-процессов.
Все редакторы бизнес-процессов устроены по одному принципу и имеют только несколько отличий в зависимости от типа бизнес-процесса (об этом мы писали выше).
Редактор БП состоит из:
- левой панели со списком доступных блоков;
- рабочей области в центре;
- правой панели с настройками выбранного элемента (блока).
Чтобы добавить блок бизнес-процесса, нужно перетащить элемент с левой панели на рабочую область.
В настройках каждого БП можно активировать режим транзакции. В таком случае БП приобретает свойство атомарности: БП либо выполняется полностью, либо не выполняется ни один из его отдельных блоков. Если в каком-то блоке произойдет ошибка, то будет выполнен откат всех изменений, вызванных предыдущими блоками бизнес-процесса.
На левой панели блоки распределены в группы по видам:
- Logic — логика. Отвечают за изменение потока процесса, реализацию системных функций, сравнение переменных и преобразование типов данных.
- Functions — функции. Позволяют выполнять различные типы операций с разными типами данных, такие как округление чисел, разбиение строк, чтение файлов и многое другое.
- Model Functions — функции для работы с моделями базы данных. Позволяют выполнять операции с моделями данных, такие как создание, поиск, редактирование и удаление.
- User-Created BPs — пользовательские бизнес-процессы. Вызывает любой из пользовательских бизнес-процессов, который вы создали.
- Global variables — глобальные переменные. Переменные, которые используются в рамках всего проекта. Отображается при наличии глобальных переменных.
- Variables — переменные. Задает и сохраняет переменные, которые будут использоваться в бизнес-процессе.
- External API Requests — внешние API-запросы. Запуск любого ранее созданного запроса к внешнему API.
- Models — модели. Устанавливают и сохраняют переменные моделей данных, которые будут использоваться в бизнес-процессе.
- Enums — перечисление. Устанавливает и сохраняет переменные с типом перечисление, которые будут использоваться в бизнес-процессе.
- Auth — блоки, добавляемые модулем авторизации Auth.
При добавлении того или иного модуля в проект, в списке блоков будет создан раздел с бизнес-процессами установленного модуля.
При помощи правой панели настроек можно добавлять кастомные переменные, задавать дефолтные значения существующим, настраивать блоки.
Чтобы добавить переменные, необходимо выделить нужный блок бизнес-процесса и нажать на иконку плюс на панели Variables.
Различают локальные и глобальные переменные.
Локальные переменные доступны для всех типов бизнес-процессов. Локальные переменные существуют в пределах одного БП. После выполнения БП локальные переменные уничтожаются, освобождая оперативную память приложения.
Глобальные переменные предназначены для использования во всем приложении. Они объявляются заранее и доступны в любом бизнес-процессе. Они хранят данные в течение жизненного цикла приложения.
Локальные и глобальные переменные могут иметь любой тип: от простых int и string, до массивов моделей и энамов. Хранятся исключительно в оперативной памяти.
Пример бизнес-процесса
Рассмотрим пример создания БП на примере редактора бизнес-процессов бэкенда. Процесс будет выполнять регистрацию пассажира на рейс.
*Все данные уже были введены в базу данных. Ниже описано только создание бизнес-процесса. Полный урок доступен тут.
Чтобы создать новый процесс, перейдите в раздел Business Logic и нажмите на Create business process.
В открывшемся окне введите название процесса, можно заполнить поле description и при необходимости включить режим транзакции.
По умолчанию в нашем БП уже есть два блока: Start и End.
В блок Start мы добавляем несколько выходных переменных. Для этого кликните на нужный блок и в правой части экрана напротив Variables нажмите иконку +.
В новом окне введите название переменной, укажите ее тип и задайте дефолтное значение, если необходимо.
Добавляем несколько переменных, которые нужны нам для регистрации пассажира на рейс:
- ID рейса — flight_id;
- Данные о пассажире — passenger;
- Место — seat;
- Check-in статус — status.
Далее нам нужно получить ID рейса из базы данных. Для этого мы добавляем блок GetOneFlight.
Между блоками мы устанавливаем связи, для этого достаточно протянуть стрелку от одного блока к другому. Здесь голубая линия выполняет функцию связи потока между блоками, указывая порядок их выполнения. Цветные линии — связи данных, которые устанавливаются между переменными и указывают на то, откуда брать и куда передавать данные в рамках БП.
ID рейса получено, теперь нам нужно получить данные о пассажире и удостовериться, что такой человек есть в базе данных.
Добавляем блок Expand Passenger и получаем ID пассажира. При помощи блока GetOne Passenger проверяем запись о нем в базе данных.
Теперь нам нужно создать саму регистрацию. Для этого используем блок Make Registration. Устанавливаем связи между блоками.
Теперь необходимо сохранить запись о регистрации в базе данных, так как до этого мы создали ее только в рамках бизнес-процесса. Добавляем блок Create Registration, устанавливаем связи и завершаем бизнес-процесс.
Созданный бизнес-процесс отвечает за выполнение следующих действий: поиск данных о рейсе в базе данных, поиск и получение ID пассажира, создание и сохранение регистрации.
На нашем YouTube-канале вы можете пройти полный курс AppMaster.io 101 и научиться работать с no-code платформой. Так легко и наглядно при помощи блоков и визуальных связей на платформе AppMaster.io можно собирать бизнес-процессы любой сложности без написания кода. Попробуйте создать свой бизнес-процесс и приложение, зарегистрировавшись на пробный период на платформе.
Источник: vc.ru
Fox Manager
Для проектирования любой технологически сложной системы используются специальные инструменты. Архитектор составляет план проекта, инженер – чертёж детали. Бизнес – это такая же сложная система с множеством связей, объектов и взаимодействий. Для построения архитектуры бизнеса используются специальные системы бизнес-моделирования, одной из которых является программа Fox Manager BPA.
Зачем строить бизнес-модель?
Без построенной бизнес-модели мы не можем принимать взвешенные решения и теряем контроль над своим бизнесом. Не имея полной картины происходящего, руководитель занимается «тушением пожаров» при помощи доступных ему инструментов: выговоров, «летучек», ручной координацией работ, личным участием в повседневных задачах.
Для того, чтобы решать проблемы системно, а не интуитивно, необходимо спроектировать архитектуру бизнеса, прописать правила и стандарты работы, распределить ответственность за функции среди персонала и контролировать их выполнение.
Ниже представлена диаграмма функциональных возможностей и этапов построения бизнес-архитектуры предприятия в Fox Manager.
1. Моделирование бизнес-процессов и распределение ответственности
На большинстве предприятий ответственность за работы персонала распределена лишь формально. При очередном потерянном заказе или срыве сроков поставки найти виноватого бывает весьма затруднительно, так как чётких стандартов и регламентов работы нет. Оказывается, что Вася поручил Пете, Петя передал Саше, а Саша заболел и забыл предупредить Лёшу. Решением данной проблемы будет формирование корпоративных стандартов работы, регламентов и должностных инструкций, в которых за каждый шаг и задачу будет обозначен ответственный, определены требования к срокам и прописаны взаимодействия между сотрудниками.
Самым современным и эффективным способом описания деятельности предприятия являются графические схемы бизнес-процессов. Наша программа поддерживает две самых простых и наглядных нотации для моделирования процессов: Fox Manager FlowChart и Cross Functional FlowChart.
Увеличить картинку
Бизнес-процесс CFFC
Увеличить картинку
Бизнес-процесс
Для бизнес-аналитиков и профессионалов, которые предпочитают использовать нотацию BPMN как корпоративный стандарт для моделирования процессов, мы предусмотрели поддержку и этой нотации.
При помощи графических схем можно наглядно отобразить последовательность выполняемых работ, ответственность за них, а также сделать ссылки на необходимые документы, программное обеспечение и ресурсы используемые в ходе выполнения процесса. Информация, заложенная в графических схемах будет затем использована для расчёта стоимости и времени выполнения процесса, а также формирования таких регламентирующих документов как должностные инструкции, положения о подразделении, регламенты процессов, рабочие инструкции и т.п. При этом все схемы бизнес-процессов связаны между собой и формируют единую цельную модель предприятия. Все рутинные действия пользователя максимально автоматизированы, при удалении или изменении какого-либо элемента в базе данных, информация о нём обновляется во всей бизнес-модели.
Fox Manager BPA – единственная программа на рынке, которая умеет формировать схемы процессов верхнего уровня автоматически, не требуя навыков многоуровневого моделирования и знания сложных правил декомпозиции модели.
Вы самостоятельно можете решить насколько подробно и как глубоко хотите описать свою модель. Программа позволяет для каждой функции процесса задать плановое и граничное время выполнения, частоту, с которой выполняется функция, краткое и подробное её описание. Также вы можете указать требования к компетенциям, профессиям и личным качествам исполнителей, которые отвечают за выполнение данной функции в процессе.
2. Построение организационной структуры и подбор персонала
Организационная структура – это тот скелет, на котором строится система управления предприятием. Без иерархического дерева оргструктуры невозможно грамотно выделить центры ответственности и компетенций, делегировать полномочия и осуществлять эффективный контроль за деятельностью предприятия.
Организационная структура и бизнес-процессы неразрывно связаны друг с другом. Руководители, отвечающие за результаты бизнес-процессов должны обладать достаточными полномочиями и занимать соответствующие должности, а сотрудники – обладать достаточной квалификацией для выполнения своих функций.
Графические диаграммы оргструктуры строятся программой в реальном масштабе времени за считанные секунды. Забудьте про ручное редактирование схем в MS Visio!
Программа Fox Manager позволяет построить наглядное дерево организационной структуры предприятия, отображающее административное подчинение персонала. Для каждой должности можно определить требования, права, ответственность и взыскания, а также сформулировать требования к компетенциям, профессиям и личным качествам сотрудников, которые её занимают. В вашем распоряжении большое количество русскоязычных шаблонов для типовых должностей, которые можно использовать при построении своей структуры.
Источник: fox-manager.com
10 бесплатных приложений управления бизнес процессами
Спонсор сладкого поста — http://banzon.ru/.
Сегодня у нас гостевой пост от Нины Горбуновой. Она специалист в области Saas, Cloud систем, онлайн решений для управления проектами. Тупо говоря, пост для тех, кто хочет выбрать онлайн сервис для управления командой какого-то проекта, но пока не определился.
Каждый день команды, работающие с проектами, используют множество приложений для того, чтобы компенсировать невозможность живого общения. Речь идет не только о крупных компаниях с многоэтажными офисными зданиями, в которых люди попросту не узнают друг друга в лицо. Это основная проблема также для фрилансеров и любых групп, работающих удаленно.
ICQ, Skype, email, Google Docs — почему бы не попробовать найти им достойную замену в виде единого приложения?
Я не думаю, что среди читателей этого блога остались люди, не знающие о существовании онлайн решений для совместной работы, однако доля скептицизма наверняка присутствует во мнении каждого.
Это не удивительно: у каждого руководителя есть свои собственные методы управления бизнес-процессами, но вряд ли кто-то станет отрицать необходимость единого рабочего пространства.
Первым же вопросом, возникающим при выборе платформы для управления проектами становится ее стоимость.
Когда речь идет о малом и среднем бизнесе, фрилансерах и некоммерческих организациях, вопрос цены на ПО встает ребром, ведь далеко не все могут позволить себе использование дорогостоящих платформ для совместной работы.
К счастью, бесплатные онлайн решения существуют и в этой сфере.
Мне бы хотелось представить вашему вниманию 10 систем для управления проектами, которые, смогут значительно сократить строку расходов на организацию бизнеса в отдельной компании.
1) http://freedcamp.com/ — с самого начала Freedcamp порадует Вас тем, что регистрацию можно легко пройти через Facebook.
Кроме того, приложение может похвастаться простым и дружелюбным интерфейсом, а также встроенным Meebo Chat, который позволит Вам общаться со всеми Вашими друзьями и коллегами, использующими Gtalk, ICQ, Facebook Chat и другие чат — клиенты.
Freedcamp обеспечивает импорт и экспорт данных из Basecamp при переходе с одной платформы на другую, а также все базовые инструменты для управления проектами: учет рабочего времени, автоматические отчеты, возможности вести обсуждения и устанавливать вехи проекта.
Однако отличительной фичей Freedcamp является возможность создавать компактные списки дел (to-do листы), которых так не хватает в некоторых платформах. Создать такой мини-список очень легко благодаря кнопочке “To Do”/ “Задачи”, услужливо расположенной на главной панели.
русскоязычный интерфейс — есть
юзабилити — 4 из 5
функциональность 4 из 5
http://goplanapp.com/ — это простая в использовании система для управления проектами с дружелюбным интерфейсом, предлагающая хостинг на собственном сервере. Панель управления GoPlan довольно проста, понятна, однако стоит признать, что навигация приложения слегка затруднена по сравнению, опять же, с аналогичными системами управления проектами.
Причина тому — опции, спрятанные в контекстном меню, выплывающем только при наведении мыши.
Пользователям доступны все необходимые инструменты для совместной работы: учет рабочего времени, задачи, вехи, дискуссии. не хватает разве что возможности комментировать прикрепленные файлы, но, полагаю, это не критично.
Бесплатная версия GoPlan предоставляет 15 Мб памяти, а также возможность иметь одновременно 2 проекта и 4 пользователя.
русскоязычный интерфейс — нет
юзабилити — 4 из 5
функциональность 4 из 5
http://teamly.com/ — возможно не все согласятся с тем, что это система для управления проектами, однако, на мой взгляд всем требованиям СУПа она отвечает.
Кроме того, создатели платформы сами относят свой продукт к этой категории. Так или иначе, эта несложная системка предлагает несколько упрощенную версию таск-менеджера и, возможно, больше предназначена для контроля личной эффективности.
Например, с Teamly очень удобно расставлять приоритеты: они отличаются по заданным Вами цветам.
Кроме того, статистика по дням, неделям и месяцам позволит отслеживать в подробностях активность каждого работника (даже в процентном соотношении!) и грамотно распределять задания в будущем. Если сравнить платную и бесплатную версии приложения, то самым существенным недостатком второй является, на мой взгляд лишь невозможность экспорта данных.
русскоязычный интерфейс — нет
юзабилити — 3 из 5
функциональность 2 из 5
http://teambox.com/ — больше всего понравится активным пользователям Facebook и Twitter, так как множество представленных в нем возможностей были позаимствованы непосредственно из социальных сетей. В частности, члены команды проекта могут регулярно публиковать в своих статусах информацию о том, как продвигаются дела.
Участники “постят” статусы в режиме реального времени — точно так же, как это делают твиттеряне и фейсбучане). С бесплатной версией к Вашим услугам 50 Мб дискового пространства и возможность вести 3 проекта одновременно.
русскоязычный интерфейс — есть
юзабилити — 3 из 5
функциональность 4 из 5
http://www.teamlab.com/ru/ — русскоязычная бесплатная альтернатива Basecamp, главным отличием которой является ее универсальность. Базового функционала для управления проектами здесь предостаточно: учет рабочего времени, задачи и вехи проектов, блоги, форумы, чат, мультичат и возможность получать автоматические отчеты и многое другое.
Однако разработчики решили на этом не останавливаться. В Teamlab есть полноценный модуль для работы с документами, представленный встроенным приложением Open Office, а также онлайн-редактором документов в стиле Google Docs, позволяющим создавать, редактировать и обмениваться документами и электронными таблицами прямо в портале.
Интересные возможности предлагаются и для активного общения в команде, например, при выборе лучшего дизайна, можно оперативно провести опрос сотрудников с голосованием прямо в портале.
русскоязычный интерфейс — есть
юзабилити — 4 из 5
функциональность 4 из 5
http://www.teamer.ru/ — еще одна отечественная разработка, которая призвана помочь небольшим группам решать совместные задачи. “Работать – это ведь так прикольно,чёрт побери!” — гласит надпись на главной странице сайта.
И судя по текстам, авторы программы действительно получают огромное удовольствие от своего дела.
Создатели платформы явно не страдают недостатком чувства юмора: базовые модули Teamer’a имеют незамысловатые названия: «Что делать?», «Кто виноват?» и «Где все?», кроме того, для тех, чей список дел зашкаливает, а с чего начинать — непонятно, создана кнопка “Мне повезет” Возможность использовать Teamer в качестве веб-приложения предоставляется абсолютно бесплатно.
русскоязычный интерфейс — есть
юзабилити — 4 из 5
функциональность 3 из 5
http://qtrack.ru/ — Уникальность это системы состоит в том, что она позволяет управлять задачами через email. Авторы QTrack утверждают, что смогли создать самый простой способ управлять задачами. Самое удобное в этой системе, на мой взгляд — это полная, 100% интеграция с почтой.
На деле это выглядит следующим образом: участники команды получают не только приглашения в проект, но и оповещения о новых задачах через email. При этом, они могут как перейти по ссылке в систему, чтобы продолжить работу, так и ответить непосредственно через почту — все будет учтено и отобразится в QTrack автоматически.
Чтобы обсудить поставленную задачу с конкретным человеком, его даже не обязательно регистрировать в системе — достаточно того, что у него есть почтовый ящик. Кроме того, Вы легко сможете понять, в каком состоянии задача, поскольку в QTrack введена система условных цветовых обозначений.
русскоязычный интерфейс — есть
юзабилити — 5 из 5
функциональность 4 из 5
http://conceptboard.com/ — очень любопытная система, созданная в первую очередь для дизайнеров, которая позволит провести в команде мозговой штурм вне зависимости от того, где находятся участники. Приложение реализует идею интерактивной доски, доступной всем участникам онлайн встречи.
По сути это рабочее пространство, в котором вы сможете совместно редактировать документы, рисовать и делать наброски. Импорт текстовых документов, изображений и Pdf файлов в Conceptboard выполняется легко и быстро методом “перетаскивания”.
Синхронизация, естественно, осуществляется в реальном времени, поэтому любые изменения, сделанные на Вашей интерактивной доске автоматически отобразятся на экранах всех остальных участников виртуальной встречи. Для персонального использования Conceptboard предоставляется бесплатно.
русскоязычный интерфейс — нет
юзабилити — 4 из 5
функциональность 4 из 5
http://www.rule.fm/ — весьма амбициозные создатели rule.fm заявляют о том, что ни basecamp, ни zoho в качесте СУП’ов их совсем не устраивают. Кроме того, им хотелось создать платформу, которая могла бы получиться, если ее созданием занимался сам Стив Джобс.
Что ж, заставить Apple рыдать от зависти не удалось, но кое-что предложить они все-таки могут. Как любая другая система для совместной работы, rule.fm стремится соединить все необходимые инструменты в едином рабочем пространстве.
Таким образом, пользователи получают email, список контактов, календарь, wiki, CRM, возможность распределять задания и вести дискуссии — все это в придачу к довольно несложному и дружелюбному интерфейсу. Бесплатно вам предоставляется возможность создать команду из 10 пользователей с неограниченным объемом памяти, количеством контактов, проектов и клиентов.
русскоязычный интерфейс — нет
юзабилити — 3 из 5
функциональность 4 из 5
http://www.huddle.com/ — предоставляет возможность бесплатного использования платформы для некоммерческих организаций. Несмотря на то, что в Huddle нельзя ставить задачи и вехи для проекта, он остается довольно мощным инструментом для совместной работы, ведь эта платформа — одна из немногих — позволяет устраивать телефонные и веб-конференции и даже приглашать на них сторонних участников. Кроме того, меня очень впечатлила функция текстового поиска в Huddle: ни одно слово не исчезает из памяти системы. Вы в любой момент сможете найти запись трехлетней давности и даже точную информацию о том, кто, когда и при каких обстоятельствах ее сделал.
русскоязычный интерфейс — нет
юзабилити — 4 из 5
функциональность 5 из 5
Источник: partnerkin.com