После поста про автоматизацию заявок некоторые коллеги попросили меня поподробнее рассказать о workflow-редакторе Nintex и о тех подводных камнях, на которые можно наткнуться при его использовании.
Я познакомилась с этим редактором ровно 3 года назад, когда ко мне подошел шеф и сказал: «Выучишь Nintex — поедешь в Казахстан». Для меня в тот период карьеры лучшей заманухи просто быть не могло. Надо сказать, что работа с этим редактором лично для меня все эти 3 года была скорее удовольствием и игрой, чем действительно работой.
Я не хочу подробно рассказывать о возможностях этого продукта, потому что, во-первых, не хочу pr-a, а, во-вторых, эта информация наверняка есть на каких-то специализированных сайтах. Я хочу рассказать о тех фактах, которые стали решающими в выборе Nintex и о тех подводных камнях, с которыми я сталкивалась.
Несомненные преимущества перед стандартным workflow-дизайнером SharePoint
- Функционал. За последние 3 года я как аналитик занималась проектированием и внедрением более чем 20 корпоративных систем на SharePoint 2007/2010 различной сложности, функциональности и бизнес-направленности и из всего этого многообразия проектов я вспоминаю только один, где стандартную функциональность Nintex пришлось добавлять. Самое существенное отличие от стандартного функционала SharePoint состоит в огромном количестве логических операций с данными (от обычной проверки true/false до полноценной машины состояний, с помощью которой можно реализовать практически любую логику процесса).
- Простота освоения. Я аналитик, не программист. И для меня несомненным плюсом стала возможность моей работы с этим редактором. Меня наверняка поймут аналитики, которые пытаются достучаться до разработчиков своими идеями реализации хотелок заказчиков и натыкаются на фразу «Это нереализуемо», а также разработчики, к которым приходят аналитики и пытаются всучить нереализуемые требования. Я для себя эту проблему решила тем, что стала разрабатывать все workflow-процессы сама. Это экономит время мне, деньги заказчику и нервы моим коллегам.
- Работа в браузере. Также в силу своей профессии я в основном работаю на небольшом ноутбуке небольшой же производительности. Я стараюсь не устанавливать на него лишних программ, отъедающих оперативную память, потому что очень часто нужно зайти к заказчику в кабинет и сразу начать работать. Возможность проектирования рабочих процессов непосредственно в браузере для меня просто панацея.
- Возможность использования подхода GTD к построению процессов. С опытом внедрения корпоративных ИС я наткнулась на однин простой принцип: Лучшая информационная система — это та система, которую никто не замечает. Если у вас в компании внедрена система автоматизации, например, заявок, но большинство сотрудников не знает даже доступа к ней, но при этом в системе в год регистрируются сотни записей, то у Вас внедрена хорошая система. Когда пользователи имеют возможность регистрировать, комментировать, согласовывать записи через почту, это позволяет им не отрываясь от основных дел и не нервничая, делать свою работу хорошо. В связке Nintex+SharePoint большинство рабочих процессов можно реализовать так, что пользователю даже в систему заглядывать не придется.
- Добавление функционала. Если стандартного функционала все-таки не хватает, то Вы всегда сможете написать свои действия и использовать их в дальнейшем.
Мои любимые функции Nintex
- Архитектура рабочих процессов. Nintex позволяет проектировать не только сложные с точки зрения функционала рабочие процессы, но и с точки зрения архитектуры системы, позволяя выносить на уровень узлов, типов содержимых как целые процессы, так и их фрагменты. Такой подход позволяет экономить на проектировании огромное количество человекочасов и делает развитие и изменение системы быстрым и безболезненным. Да и просто интересно строить правильную архитектуру рабочих процессов.
- LazyApproval. Самая востребованная на портальных проектах функция, которая позволяет согласовывать заявки напрямую из почтового уведомления. Работает она так: в центре администрирования задаются ключевые фразы для согласования/отклонения какого-то действия (ок, да, нет, пох, no, нет, нах...). Руководителю приходит письмо, содержащее максимальную информацию для принятия решения без входа в систему автоматизации. Он отвечает на письмо одной из ключевых фраз и забывает о системе до следующего письма.
- State Machine. Именно машина состояний коренным образом отличает этот редактор от всех своих основных конкурентов. Я делала рабочие процессы, которые содержали с десяток вложенный машин состояний и они работали и работают с отличной производительностью. Благодаря этой функции сделать процесс любой сложности стало делом минут, а не дней.
- Синхронизация с AD и профилями пользователей. Можно использовать данные о пользователях в любом месте рабочего процесса.
- Автоматически запускаемые рабочие процессы. По сравнению с версией редактора Nintex Workflow 2007, в версии 2010 значительно расширились возможности автозапуска рабочих процессов. К расписанию рабочих процессов и простому автозапуску при создании или изменении элементов списка SharePoint прибавился еще и условный запуск, который происходит при определенном изменении данных формы. Такой подход дает дополнительные баллы к производительности проектируемой системы.
Собственно, подводные камни
- Фатальная дружба с IE. Как все знают, начиная с 2010 версии SharePoint активно поддерживает большинство принятых браузеров. Nintex не пошел по этому пути и разработку процессов призвал вести в Internet Explorer. Вы сможете пользоваться системами, разработанными с использованием Nintex, в остальных браузерах совершенно без проблем, но вести разработку новых процессов придется в IE. Так как дома я маковод, то рабочий бук приходится возить с собой домой, если нужно поработать вечерами. В остальных случаях я стараюсь не обращать внимание на то что постоянно приходится работать именно с Explorer. Кстати, именно поэтому статья без картинок.
- Стоимость. Еще одним огорчающим моментом является цена на серверную лицензию, от которой нередко округляются глаза у представителей малого бизнеса.
- Невозможен перезапуск процесса в том месте, где он упал. Допустим, в какой-то момент работы системы, на сервере начались какие-нибудь обновления или любой другой апокалипсис, который съел львиную долю оперативной памяти, и рабочий процесс отвалился по тайм-ауту. Так вот, перезапускать его придется с самого начала. Если в этом процессе уже произошли события с участием кучи пользователей, представьте их гнев, когда их нужно будет попросить «еще раз пересогласовать заявку». Эта проблема требует более правильного построения сложных процессов.
- Необходимость небольшой доработки на более высоком уровне.К сожалению, при проектировании сложных процессов не обошлось без доработок на уровне кода. Коснулись они в основном параметров отображения кнопок запуска процессов. Стандартный функционал уже не покрывает, например, такое требование, как «Функция отправки заявки ИТ на исполнение должна быть доступна только сотрудникам, включенным в группу Диспетчер»
P.S. Автор надеется, что данная статья будет полезна тем, кто регулярно сталкивался с проблемами автоматизации бизнес-процессов на SharePoint. В Казахстан он (автор) так и не попал.
Автор: JuliyaErina