Создание SaaS ERP решений

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

Перевод статьи: https://www.apriorit.com/dev-blog/394-saas-erp-development

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

Единственным способом упростить все эти процессы является автоматизация.

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

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

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

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

Компания Априорит имеет огромный практический опыт разработки различных SaaS продуктов. Мы создали эту статью для того, чтобы поделится своими знаниями и помочь вам встать на путь создания собственного SaaS ERP решения.

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

Создание SaaS ERP решений

 Что такое SaaS ERP-система

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

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

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

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

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

Как уже было указано выше, из-за высокой сложности и глубокой интегрированности в каждый бизнес-процесс, компании часто не спешат менять свои ERP решения. Однако, большинство ныне использующихся систем были приобретены в начале десятилетия для того, чтобы решить известную проблему 2000-ого года, и на сегодняшний день уже являются устаревшими. Таким образом, появляется отличная возможность для производителей ERP-систем привлечь новых клиентов к своим SaaS решениям. Более того, малые и средние предприятия, которые раньше никогда не использовали ERP-системы из-за их дороговизны оказались готовы пробовать более дешевые SaaS решения. Тем не менее, не все видят преимущества SaaS модели обслуживания применительно к ERP решениям. Так в чем же конкретно они заключаются?

Преимущества SaaS-модели

В марте этого года аналитики Gartner предсказали, что 90% всех SaaS ERP систем уйдут с рынка к 2018-ому. Среди названных причин постоянно растущая сложность и стоимость таких решений, а также отсутствие вменяемой стратегии интеграции со стороны производителей. Учитывая, что типичная интеграция ERP решения требует около 150 консультантов и длится примерно 14 месяцев, легко понять, почему они пришли к такому мнению.

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

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

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

Создание SaaS ERP решений

Типичные компоненты ERP-системы

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

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

Классный VPN с хорошей скидкой

Как уже упоминалось выше, различные ERP-системы покрывают огромное количество бизнес процессов. В конечном итоге, тип и количество модулей, которые вы включите в свою систему будет зависеть от потребностей вашей целевой аудитории. Ниже вы найдете описание типичных модулей, которые входят в большинство доступных сегодня на рынке ERP-систем, таких как SAP, Microsoft Dynamics, NetSuite, Epicor, и других.

  • Менеджмент материалов – этот модуль позволяет управлять существующим инвентарем, а также всем, что связано с его хранением. Он дает возможность отслеживать инвентарь с момента его поступления до момента, когда он будет использован в производстве. Такой модуль также часто содержит возможность расчета бюджета. Мобильный функционал чрезвычайно важен для этого модуля, так как он позволяет осуществлять удаленный контроль за работой склада и хранением инвентаря.
  • Менеджмент продаж – самой большой и самой важной частью этого модуля является система управления кассовыми аппаратами, позволяющая компании управлять продажами.
  • Бухгалтерский учет – этот модуль позволяет управлять всеми финансовыми активами компании, включая любые транзакции. Самым важным компонентом этого модуля является возможность получить полную бухгалтерскую отчетность компании всего в пару кликов мыши. Такая отчетность часто сопровождается инструментами аналитики и генерации отчетов, позволяя легкий поиск и большую прозрачность финансов компании. Обработка платежей и работа со счетами также являются важной частью этого модуля.
  • Менеджмент производства – этот модуль отвечает за производство и все что с ним связано, начиная от управления рабочим расписанием сотрудников, заканчивая контролем качества. Важной частью такого модуля часто являются инструменты планирование проекта, а также хорошая система генерации отчетов. Такой модуль может включать функцию управления R&D отделом.
  • Менеджмент поставок – планирование и управление поставками являются главными элементами этого модуля. Он позволяет эффективно организовать приобретение, доставку и складирование нового инвентаря и материалов, давая при этом возможность отслеживать качество и стоимость поставок, эффективно управляя различными поставщиками.
  • Система управления взаимоотношениями с клиентами (CRM) – такой модуль включает в себя стандартные функции CRM-системы. Он позволяет компаниям управлять базой данных партнеров и клиентов, включая менеджмент предоставляемых им услуг и различных бонусов и скидок. Важнейшей частью этого модуля является возможность посмотреть подробную статистику по взаимодействию с каждым отдельным клиентом.
  • Управление кадрами – еще один типичный для CRM-системы модуль, который покрывает нужды кадровой службы предприятия. Он обычно включает в себя возможность отслеживать рабочее время сотрудников и посещение ими рабочих мест, а также проводить кампании по набору нового персонала. Менеджмент отпусков, больничных и курсов по повышению квалификации также часто включается в этот модуль.
  • Как уже было указано, список выше является неполным и модули, необходимые вашему конкретному решению определяются прежде всего потребностями вашей целевой аудитории и той индустрии, для на которую вы ориентируете продукт прежде всего. В качестве примера других популярных модулей можно упомянуть поддержку, безопасность и отдельный модуль электронной коммерции. Однако, слишком большое количество модулей значительно повышает сложность системы и тоже является нежелательным. Вам необходимо соблюдать тонкий баланс между простотой и интуитивностью пользовательского интерфейса и широким функционалом. Это снова возвращает нас к неутешительному прогнозу Gartner и обсуждению потенциальных проблем, с которыми на сегодняшний день сталкиваются ERP-системы.

Создание SaaS ERP решений

Типичные проблемы ERP-систем

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

На наш взгляд, следующий ряд проблем является наиболее острым для современных ERP-систем:

  • Сложность системы – не каждая компания готова инвестировать огромные средства в то, чтобы обучить своих сотрудников пользоваться широким функционалом новой ERP-системы. В результате, многие функции остаются не используемыми, что уменьшает ценность продукта для предприятия. При разработке ERP решения максимум внимания следует уделять соблюдения хорошего баланса между простотой использования и функциональностью системы.
  • Сложность интеграции – так как ERP-системы являются универсальными инструментами, рассчитанными на различные индустрии, их интеграция часто требует от компании внести изменения в свои существующие бизнес-процессы и инфраструктуру. Процесс интеграции очень длительный и многие предприятия часто оказываются не готовыми за него браться. Как и утверждает Gartner, оставлять интеграцию полностью на откуп клиентам является ошибкой. Производители ERP-систем должны предоставить клиенту свои собственные готовые стратегии по интеграции, способные значительно облегчить и ускорить этот процесс.
  • Миграция данных – процесс миграции данных из одной ERP-системы в другую часто является очень длинным и неэффективным. В отдельных случаях он может занимать больше года. Для производителей таких систем очень важно решать вопрос миграции данных индивидуально с каждым клиентом для того, чтобы сделать его максимально быстрым и безболезненным.
  • Невозможность настроить систему под свои нужды – SaaS ERP системы часто не имеют тех возможностей для гибкой настройки, которые присущи локальным системам. Для локальных систем программисты клиента часто сами могут писать скрипты или даже отдельные элементы модулей, подстраивая таким образом функционал под себя. Решение этой проблемы возможно при очень подробном сборе всех требований клиентов и широкой поддержке системы после релиза.

Зная о существовании всех перечисленных выше проблем, вы сможете построить свою систему и свою стратегию работы с клиентами так, чтобы максимально их избежать, а в случае возникновения – эффективно решить.

Этапы разработки ERP-системы

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

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

  • Сбор бизнес-требований. Сбор требований является первым и наиболее важным шагом в разработке каждой ERP-системы. Он поможет определить масштабы проекта и понять какие ресурсы и бюджет потребуются для его реализации. Сбор требований можно выполнить рядом способов, например, изучая конкурентов, но ничего не сможет превзойти живой разговор лицом к лицу с потенциальными клиентами. В разных индустриях существуют разные бизнес-процессы и вам потребуется приложить максимум усилий, чтобы собрать необходимую информацию и составить четкое виденье конечного продукта.
  • Определение масштабов и бюджета проекта. Гораздо проще и безопаснее начать с разработки малых масштабов и затем расширять её по мере роста проекта. В конечном счете, масштабы разработки будут зависеть от вашего виденья конечного продукта и объемов инвестиций, которые вы готовы вложить. Тем не менее, мы рекомендуем начинать разработку одного модуля, который можно было бы сразу же вывести на рынок, а затем расширять, добавляя новый функционал.
  • Формирование команды и выбор стека технологий. Это наиболее важная часть разработки ERP-системы. Ваша команда должна будет разработать расширяемую систему с уровнем производительности и безопасности, которого ожидают ваши клиенты. Использование SaaS модели обслуживания приносит дополнительные сложности. Выбирать стек технологий необходимо исходя из опыта членов вашей команды. Свободно распространяемые готовые решения с открытым исходным кодом могут выглядеть привлекательно с точки зрения финансов, но выбор хорошо задокументированных решений с хорошей поддержкой, таких как ASP.NET способен сохранить деньги в долгосрочной перспективе. Также стоит отметить, что формирование необходимой команды собственными силами является чрезвычайно сложной задачей, поэтому использование услуг по аутсорсингу разработки является хорошей альтернативой создания собственной команды.
  • Определение архитектуры решения. Структура ERP решения должна иметь в своей основе каркас, который в дальнейшем можно будет расширять по мере необходимости. Самым важным элементом является базовый движок рабочих процессов, который должен поддерживать возможность определять задачи, получать к ним доступ на основе ролей, а также переключение на основе правил. Очень важно идентифицировать все общие части программы, которые будут использоваться в большом количестве будущих модулей и начать разработку именно с них. Ваш выбор на этом этапе будет также зависеть от технических характеристик и условий соглашения с провайдером, предоставляющим для вас SaaS инфраструктуру. Поэтому подход к выбору такого провайдера должен быть максимально тщательным с учетом всех существующих вариантов.
  • Разработка прототипа. Начните с создания прототипа или MVP (минимально жизнеспособного продукта), состоящего из одного модуля для одного единственного отдела. Приложите усилия для того, чтобы этот модуль попал в руки целевой аудитории и тщательно соберите все отзывы о продукте. Используйте эти отзывы, чтобы внести поправки в спецификации, масштабы и бюджет вашего продукта, если это необходимо. После всех необходимых улучшений, можно выводить ваш MVP на рынок.
  • Дальнейшие итерации и последующая разработка. Продолжайте разработку системы добавляя новые модули по тому же процессу. Сфокусируйтесь на удобстве использования и создайте стратегию для максимально простого, быстрого и безболезненного развертывания и интеграции вашей системы. Разработка облачной ERP-системы является постепенным процессом, требуемым больших вложений, и лучший способ добиться успеха – объединить техническую экспертизу с надежными знаниями рынка, и строить на этой основе.

Заключение

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

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

[irp]

Что будем искать? Например,VPN

Мы в социальных сетях