nmk

Лекція №14 (2 години). Основи SaaS: архітектура та моделі надання послуг

План лекції

  1. Концепція SaaS та порівняння з IaaS/PaaS
  2. Архітектурні моделі SaaS: single-tenant та multi-tenant
  3. Монетизація SaaS: підписки, freemium, usage-based pricing
  4. Безпека та відповідність у SaaS
  5. Огляд провідних SaaS-рішень у бізнесі

Перелік умовних скорочень

Списком


Вступ

SaaS (Software as a Service) — найпоширеніша форма хмарних послуг для кінцевих користувачів. Google Workspace, Microsoft 365, Salesforce, Slack, Zoom — усе це SaaS-продукти, якими щодня користуються мільярди людей. З архітектурної та бізнесової точки зору, побудова SaaS-продукту включає унікальні виклики: як обслуговувати тисячі клієнтів з одного коду, як монетизувати продукт через підписки, та як гарантувати безпеку даних кожного клієнта.


1. Концепція SaaS та порівняння з IaaS/PaaS

1.1 Що таке SaaS

SaaS (Software as a Service) — модель доставки програмного забезпечення, за якої провайдер розміщує застосунок у хмарі та надає доступ до нього клієнтам через Internet (зазвичай веб-браузер).

Розподіл відповідальності у SaaS:

┌────────────────────────────────────────────────────────────┐
│ Шар             │ On-Premise │  IaaS   │  PaaS   │  SaaS   │
├────────────────────────────────────────────────────────────┤
│ Дані            │  Клієнт    │ Клієнт  │ Клієнт  │ Клієнт* │
│ Застосунок      │  Клієнт    │ Клієнт  │ Клієнт  │Провайдер│
│ Рантайм         │  Клієнт    │ Клієнт  │Провайдер│Провайдер│
│ ОС              │  Клієнт    │ Клієнт  │Провайдер│Провайдер│
│ Інфраструктура  │  Клієнт    │Провайдер│Провайдер│Провайдер│
└────────────────────────────────────────────────────────────┘
* Клієнт несе відповідальність за дані, що вносить у SaaS

1.2 Переваги SaaS для клієнта

Перевага Опис
Zero installation Доступ через браузер — нічого не потрібно встановлювати
Automatic updates Нові функції та патчі безпеки без участі клієнта
Pay-as-you-subscribe Передбачувані витрати; без капітальних інвестицій
Масштабованість Додавання нових користувачів миттєво
Доступність 24/7, з будь-якого пристрою та локації
Знижений TCO Немає витрат на адміністрування, hardware

1.3 Виклики SaaS для провайдера

Виклик Опис
Multi-tenancy Ізоляція даних кількох клієнтів у спільному середовищі
Масштабованість Архітектура для тисяч/мільйонів одночасних клієнтів
Безпека Відповідальність за дані всіх клієнтів
SLA Зобов’язання 99.9%+ доступності для всіх клієнтів
Кастомізація Задовольнити різноманітні потреби клієнтів без дивергенції коду

2. Архітектурні моделі SaaS

2.1 Single-Tenant (Окремий екземпляр для кожного клієнта)

Клієнт A: [App Instance A] + [DB A] + [Infra A]
Клієнт B: [App Instance B] + [DB B] + [Infra B]
Клієнт C: [App Instance C] + [DB C] + [Infra C]

Переваги:

Недоліки:

Застосування: Enterprise-SaaS з суворими compliance-вимогами (банки, держсектор).

2.2 Multi-Tenant Silo (Спільна платформа, але ізольовані БД)

[Спільний Application Tier]
         │
  ├── [DB: Клієнт A (окрема БД)]
  ├── [DB: Клієнт B (окрема БД)]
  └── [DB: Клієнт C (окрема БД)]

Баланс між ізоляцією даних та ефективністю. Популярний підхід для B2B SaaS.

2.3 Multi-Tenant Pool (Спільна все)

[Спільний Application Tier]
         │
[Спільна БД (рядки ідентифіковані tenant_id)]

Приклад схеми:

-- В кожній таблиці є tenant_id
SELECT * FROM orders WHERE tenant_id = 'tenant_abc' AND status = 'pending';

Row-Level Security (PostgreSQL RLS):

-- Автоматично фільтрує за tenant_id
CREATE POLICY tenant_isolation ON orders
  USING (tenant_id = current_setting('app.tenant_id'));

Переваги: максимальна ефективність ресурсів, низька вартість. Недоліки: ризик «noisy neighbor»; складніше виконати compliance-аудит.

2.4 Hybrid (Комбінований підхід)

Enterprise-клієнти → Single-Tenant або окрема DB; SMB-клієнти → Pool.


3. Монетизація SaaS

3.1 Моделі ціноутворення

Subscription (Підписка за місяць/рік):

Usage-based (Оплата за використання):

Freemium:

Marketplace:

3.2 Метрики SaaS-бізнесу

Метрика Опис Формула
MRR (Monthly Recurring Revenue) Щомісячний рекурентний дохід Сума щомісячних підписок
ARR (Annual Recurring Revenue) Щорічний рекурентний дохід MRR × 12
Churn Rate Відсоток клієнтів, що скасували підписку Відтоки / початок місяця × 100%
LTV (Lifetime Value) Середній дохід від одного клієнта ARPU / Churn Rate
CAC (Customer Acquisition Cost) Вартість залучення нового клієнта Витрати на маркетинг / нові клієнти
LTV:CAC ratio Ефективність бізнесу LTV / CAC (> 3 — здоровий бізнес)

4. Безпека та відповідність у SaaS

4.1 Модель відповідальності за безпеку SaaS

SaaS-клієнт відповідає за:

SaaS-провайдер відповідає за:

4.2 Сертифікація та відповідність

Стандарт Опис Хто вимагає
SOC 2 Type II Контроль безпеки, доступності та конфіденційності B2B SaaS для ентерпрайзу
ISO 27001 Система управління інформаційною безпекою Банки, страхові, державний сектор
GDPR Захист персональних даних (ЄС) Будь-який SaaS з клієнтами з ЄС
HIPAA Захист медичних даних (США) Healthcare SaaS
PCI DSS Безпека платіжних карток Будь-які SaaS, що обробляють платежі

4.3 Single Sign-On (SSO) та Identity Federation

Ентерпрайз-SaaS повинен підтримувати SSO для інтеграції з корпоративним Identity Provider (IdP):


5. Огляд провідних SaaS-рішень

5.1 Категорії SaaS

Категорія Лідери Опис
Collaboration Google Workspace, Microsoft 365, Slack Email, документи, комунікації
CRM Salesforce, HubSpot, Pipedrive Управління клієнтами
ERP SAP S/4HANA Cloud, Oracle ERP Cloud Планування ресурсів підприємства
Dev Tools GitHub, GitLab, Jira, Confluence Управління кодом та проєктами
Video Zoom, Microsoft Teams, Google Meet Відеоконференції
Payments Stripe, PayPal, Braintree Обробка платежів
Data/Analytics Snowflake, Tableau, Looker Бізнес-аналітика
AI/ML OpenAI API, Google Vertex AI AI-послуги через API

5.2 Тренди: Vertical SaaS та AI-powered SaaS

Vertical SaaS — SaaS для конкретної галузі:

AI-augmented SaaS:


Висновки

  1. SaaS надає готовий застосунок через Internet, знімаючи з клієнта відповідальність за весь стек. Клієнт відповідає лише за дані та управління доступом.

  2. Multi-tenancy є ключовою архітектурною концепцією SaaS. Вибір між Pool, Silo та Single-Tenant визначає баланс між ізоляцією, вартістю та compliance.

  3. Монетизаційні моделі (Per-seat, Usage-based, Freemium) мають різні профілі revenue predictability та масштабованості. Метрики LTV/CAC, MRR та Churn є ключовими для SaaS-бізнесу.

  4. Безпека та compliance (SOC 2, GDPR, HIPAA) є критичними для B2B SaaS. SSO та підтримка SAML/OIDC є стандартними вимогами ентерпрайз-клієнтів.

  5. AI-powered SaaS стає новим стандартом у всіх категоріях — від CRM до Dev Tools.


Джерела

  1. Chong, F., & Carraro, G. (2006). Architecture Strategies for Catching the Long Tail. Microsoft.
  2. AWS. (2023). SaaS on AWS: A Comprehensive Guide. https://aws.amazon.com/saas/
  3. OpenAI. (2024). OpenAI Platform Documentation. https://platform.openai.com/docs/
  4. Zuora. (2023). The Subscription Economy Report. https://www.zuora.com/
  5. Bessemer Venture Partners. (2024). State of the Cloud 2024. https://www.bvp.com/atlas/state-of-the-cloud

Запитання для самоперевірки

  1. У чому принципова різниця між SaaS та PaaS з точки зору розробника та з точки зору кінцевого користувача?
  2. Назвіть три архітектурні моделі multi-tenancy. Які компроміси між ізоляцією та ефективністю притаманні кожній?
  3. Що таке Row-Level Security? Як вона допомагає реалізувати Multi-Tenant Pool?
  4. Поясніть відмінність між Subscription та Usage-based ціноутворенням. Для яких продуктів підходить кожне?
  5. Що таке Churn Rate? Яке значення вважається допустимим для B2B SaaS?
  6. Що таке SOC 2 Type II? Чому ентерпрайз-клієнти вимагають цей сертифікат від SaaS-провайдера?
  7. Що таке SSO? Яку роль відіграє SAML 2.0 у корпоративній інтеграції SaaS?
  8. Що таке Vertical SaaS? Чим він відрізняється від горизонтального SaaS (Salesforce, Slack)?
  9. Поясніть метрику LTV:CAC ratio. Що означає значення < 1?
  10. Які зміни вносить AI у традиційну SaaS-архітектуру?