Облачные сервисы, покупка коробки или разработка ПО на заказ?

2024-01-18 22:04:48 Время чтения 16 мин 313

Введение

В статье сравниваем три подхода к использованию программ в своем бизнесе: 

  1. можно взять в аренду облачный сервис, SAAS сервисы дают доступ к своим программам через сайт;
  2. можно купить готовую программу (или бесплатно скачать) и поставить на свой сервер;
  3. можно заказать создание сайта.

Рассмотрим плюсы и минусы каждого подхода. 

Также определимся, когда какой подход можно использовать для наибольшей пользы для своего дела. 

Облачный онлайн сервис

Примеры - Битрикс 24, AMO CRM, Тильда.

Регистрируйтесь на сайте, оплачиваете тариф и используете ПО прямо на сайте в течение оговоренного срока. 

Плюсы SAAS сервиса

Низкие начальные затраты - стоимость для бизнеса очень низкая. Речь обычно идет о суммах до 10 тыс. руб. за год. Бывают и бесплатные тарифы. 

Все готовое, минимальное время на настройки - программу вы можете использовать прямо в тот же день. Практически не нужно каких-то особых настроек. Зарегистрировался, оплатил (а обычно есть еще и бесплатный период) и можно пользоваться сервисом. 

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

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

Обновления ничего не стоят и ставятся незаметно для вас. Обновление делает владелец сервиса. Когда выходит обновление сервиса, оно просто становится сразу всем доступным. Ничего не нужно делать дополнительно со стороны пользователя. 

Минусы использования облачных сервисов

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

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

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

Данные вне вашего контроля. Вендора могут взломать, вендор может решить не работать с вами, вендор может слить ваши данные в спец службы или коммерческим организациям. Совсем недавно были утечки данных пользователей Яндекс Еды. Этот риск наиболее критичный,  по сути, вы полагаетесь на сохранность данных на серверах вендора. В идеале иметь механизмы периодического создания копии данных с тем, чтобы в случае проблем воссоздать сервис где-то у себя. 

Полная зависимость от одного поставщика услуг без возможности его смены. Сменить SAAS сервис будет очень непросто. Во-первых, это привыкание к определенному способу работы в сервисе (а другой сервис не будет подстраиваться под способ работы первого сервиса). Во-вторых, это возможные сложности экспорта данных. Чем больше данных у вас в старой системе, тем сложнее с нее слезть. В-третьих, у вас может быть карма, рейтинг в сервисе - жалко их будет потерять при переходе на новый сервис. 

Покупка готовой программы

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

В чем плюсы покупки готовых программ

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

Низкие затраты по сравнение со своей разработкой. Покупка лицензии программы обычно существенно дороже, чем использование 1 месяц SAAS сервиса, но это на порядки дешевле, чем заказная разработка. Стоимость для бизнеса все же можно считать относительно низкой (в среднем по палате).  

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

Работа оффлайн или под VPN, а не в открытой сети. Облачный сервис проблематично использовать в закрытой локальной сети или оффлайн. Если у вас очень плохой интернет на точке, либо особые требования по безопасности, то необходимо использовать настольный софт, либо свое веб-решение в закрытой сети, работающее на локальном веб-сервере. 

В чем минусы закупки готового софта

Нужно ставить программу, обновлять, когда выходят обновления. Программа требует администрирования. Могут возникать системные проблемы. Все это требует, как минимум технических знаний для решения этих проблем. Облачный сервис скрывает эти проблемы от пользователя, беря на себя подобные задачи.

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

Вендор-разработчик может перестать поддерживать программу, либо начать развивать ее не в ту сторону, куда вам хочется. Например, вы хотите, чтобы в программе был более простой интерфейс для новичков и слабых пользователей ПК, а вендор наоборот затачивает продукт под профессионалов - массовые действия, горячие клавиши, элементы скриптов и т.д. Т.е. продукт развивается с вашей точки зрения куда-то не туда. Тут вы практически никак не можете повлиять на вендора (впрочем, как и в случае SAAS сервиса). 

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

Разработка программы на заказ

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

Для создания ПО требуется полный цикл - от написания технического задания до внедрения в эксплуатацию и поставки изменений.

Плюсы разработки на заказ 

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

Полный контроль данных. Вы не только контролируете, где хранятся данные и как ведется обработка, но и структуру самих данных. Вы можете ее постепенно расширять, добавляя новые сущности и атрибуты у этих данных. 

Широкие возможности интеграции. Свое решение проще интегрировать, нежели чужое. Вы создаете свой слой API и взаимодействуете с внешней системой. Довольно непросто подстраивать свою систему под интеграцию с внешней системой, но еще сложнее подстраивать одну чужую систему со своей структурой данных с другой чужой системой с другой структурой данных. 

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

Недостатки разработки программы на заказ

Решение нужно сначала создать. А это долго, дорого, требует людей, нервов и еще много чего. 

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

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

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

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

Выводы

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

Далее мы изложим свое субъективное мнение на то, когда какие типы программ использовать. 

Когда выбирать облачные интернет сервисы. Услуги облачного сервиса

Если у вас есть отдельная узкая задача, где потеря данных или резкое закрытие сервиса не будет для вас критичным, то SAAS отличный вариант. 

Также это подходит для тех случаев, когда сервис дает вам все что необходимо, и задача в будущем скорее всего не будет как-то значительно изменяться. 

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

Когда необходимо выбрать покупку готовой программы

Если есть программа, которая вам полностью подходит и покрывает все ваши потребности - это хороший вариант.

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

Если у вас плохой интернет, либо вообще оффлайн, то следует выбирать готовую настольную программу.  

Когда есть необходимость заказать создание сайта

Вам требуется создать что-то свое, нетипичное. Либо сначала типичное, но потом видоизменяющееся по мере развития вашего бизнеса. 

К примеру, это может быть ваша учетная система. Очень важно иметь возможность в будущем подстраивать свою систему под новые бизнес-процессы, развивать ее параллельно с ростом бизнеса. 

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

Если вы надумали использовать SAAS решение, то главное проработайте вопрос будущей миграции с сервиса. Т.е. должен быть способ быстрой безболезненной выгрузки всех данных с сервиса в какой-то простой формат. 

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

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

В решении Falcon Space мы идем следующим путем. Сама веб-платформа - это готовая программа, но ее можно активно развивать за счет создания страниц, таблиц, форм и других объектов.

Все эти объекты управляются за счет SQL процедур. Т.е. получается сам код платформы закрытый, а код бизнес-логики решения на базе платформы - открытый. За счет этого достигается легкость обновления ядра платформы и гибкость бизнес-решения, сделанного на базе платформы.  Демостенд веб-платформы Falcon Space

Источник: https://falconspace.ru/blog/chto-luchshe-dlya-biznesa---oblachnye-servisy--pokupka-gotovoy-programmy-ili-razrabotka-programmy-na-zakaz