SAAS  или Standalone: что выбрать?

e87bf7b2c2bb0f073f5d18331be807f1

Очень часто на проектах мне приходится отвечать на вопросы, почему, в каких-то случаях я предлагаю SAAS-решения, например, Zoho CRM, а в других предпочитаю Standalone, например, решения на базе Drupal 9, и хотя я отлично понимаю что в одном случае речь идет о CRM, а в другом о CMS, для простого пользователя нет разницы. Чтобы разобраться, в каких случаях какой тип решения лучше, давайте для начала разберемся, в чем между ними разница.

Немного истории

Когда только появились компьютерные информационные системы, они все относились к декстопным. Программа устанавливалась на компьютер пользователя, а он уже в ней работал. Сегодня вариант продажи программной системы для последующей установки на компьютеры или сервера клиента называют Standalone (в переводе — «автономный»).

Позже КИС стали объединять в единую сеть. Но при этом сами программы все равно оставались на компьютерах пользователей. Иногда один из компьютеров выступал в роли сервера, т.е. на нем хранились данные для совместного использования. Но необходимость в программах на компьютера-клиентах это не отменяло.

При этом большинство таких программ после покупки дорабатывались под те или иные задачи. В некоторых код был доступен полностью, в других — частично. Встречались и полностью «закрытые» для доработок инструменты.

Со временем КИС развивались, программы становились все более сложными и одновременно универсальными. Многие виды бизнеса начали использовать программные системы без доработок от программиста или с минимальными дополнениями. Одновременно развивалась сеть Интернет.

В результате вендоры начали предлагать пользователям новый тип программного решения — SAAS (software as a service). В переводе этот термин означает «Программное обеспечение как услуга». Т.е. SAAS — это, в первую очередь, не отдельная технология, а принцип распространения продукта.

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

Standalone: особенности современных решений

Программные системы Standalone могут быть двух основных типов — открытые (Open source) и закрытые. Например, CMS DRUPAL имеет открытый код, любой желающий может вносить в него изменения. В то же время многие программные продукты продаются с «закрытым» кодом. Например, в Photoshope вносить какие-то изменения запрещено, допустимы только внешние дополнения.

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

SAAS-системы: как это работает

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

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

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

SAAS или Standalone: выбираем правильно

Чтобы понять, какой тип программного обеспечения нужен в вашем случае, ответьте себе на такой перечень вопросов:

  1. Нужен ли вам будет доступ к коду системы?

Если вы планируете какие-то доработки системы, SAAS-решения вам точно не подойдут. Но и при выборе Standalone нужно быть внимательным.

  • Во-первых, изучите, насколько открыт код программной системы.

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

  • В-третьих, помните, что любое вмешательство в работу компьютерной системы может привести к проблемам. Т.е. при внедрении изменений и доработок нужно быть готовым к риску что-то «сломать».

Также нужно понимать, что, если вы начинаете вносить изменения в программный код системы, вы автоматически лишаетесь поддержки разработчиков. Например, если вы своими силами доработали какой-то плагин в DRUPAL или BITRIX, то при обновлении системы ваш доработанный плагин может перестать работать или начнет «конфликтовать» с какими-то другими возможностями. И разработчик за это не несет никакой ответственности. Все, что связано с вашими собственными доработками, в случае обновлений, вам придется исправлять самостоятельно.

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

  1. Позволяет ли политика безопасности вашей компании хранить данные «в облаке»?

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

Здесь речь идет именно о тех данных, которые вы вносите в систему: база клиентов, справочники товаров, услуг, цен, бухгалтерские документы и т.д.

Казалось бы, Standalone намного безопаснее, так как все сведения хранятся «здесь, у вас», а не на серверах сторонней компании. На самом деле, развитые SAAS системы предоставляют высококачественную надежную защиту информации. Например доступ только с определенного IP адреса.

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

  1. Как обеспечить высокое быстродействие системы?

Если ваша программная система предназначена для работы с технологическим оборудованием, например, с ЧПУ-станками, о SAAS-решениях можно забыть сразу. Здесь работает такое правило:

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

Например, если у вас идет обмен информацией между сайтом, учетной и CRM-системой, смело можно применять SAAS, так как критически важные «потоки» обмена информацией все равно связаны со скоростью интернет-канала.

Но если вам требуется мгновенный отклик системы, например, при запросе актуального остатка товаров, то лучше выбрать Standalone. Локальный обмен данными будет быстрее. Исключение здесь составляют только компании, где в системе одновременно работает небольшое число пользователей. Здесь задержка из-за обращения к удаленному серверу может быть некритичной и незаметной.

  1. Что выгоднее по цене?

С одной стороны, ежемесячная оплата SAAS — это проще, особенно, для малого бизнеса, ведь вы ежемесячно выделяете определенную небольшую сумму. С другой, многие люди берут калькулятор и подсчитывают, что при покупке Standalone они выделяют деньги один раз, а при оплате SAAS иногда через год они отдадут за программную систему больше, и сумма будет только увеличиваться.

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

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

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

© Habrahabr.ru