Аналіз предметної області та визначення піддоменів
Мета: Навчитися аналізувати предметну область, визначати основні, універсальні та допоміжні піддомені, а також пріоритизувати їх для ефективного проєктування програмних рішень.
Короткі теоретичні відомості¶
Предметна область — визначає основну сферу діяльності або продукти, що пропонує компанія своїм клієнтам.
Приклади компаній
- FedEx спеціалізується на кур'єрській доставці.
- Starbucks найбільше відома своїм кавовим асортиментом.
- Walmart — одна з найпопулярніших мереж роздрібної торгівлі.
Піддомен — чітко визначена сфера ділової діяльності компанії, яка є частиною її загальної предметної області.
У DDD виділяють три основні типи піддоменів:
| Піддомен | Конкурентна перевага | Складність | Частота змін | Стратегія реалізації | Тип проблеми |
|---|---|---|---|---|---|
| Основний (Core) | Так | Висока | Висока | Власна розробка | Складна / Унікальна |
| Універсальний (Generic) | Ні | Висока | Середня | Покупка / Відкрите ПЗ | Вирішена |
| Допоміжний (Supporting) | Ні | Низька | Низька | Самостійна | Банальна |
Співпраця піддоменів
Усі піддомени разом утворюють ту предметну область, у якій працює компанія, її набір послуг та продуктів. Для досягнення цілей у предметній області піддомени повинні ефективно співпрацювати.
Фахівець (Domain Expert) — людина, що глибоко розбирається в бізнес-процесах та специфіці предметної області, яка формує вимоги та базу знань, необхідну для побудови програми.
Завдання¶
Вибір теми та опис бізнес моделі¶
HomeShop — компанія, що займається продажем товарів побутової хімії. За допомогою її сайту можна сформувати кошик замовлення з доставкою.
Алгоритми рекомендацій забезпечують анонімність користувачів, зберігаючи їх конфіденційні дані у зашифрованому вигляді. Споживачам надається можливість переглянути асортимент та наявність товару в магазину або зробити замовлення до магазину на основі сформованого кошика товарів.
Предметна область та піддомени HomeShop¶
Сфера діяльності компанії: Продаж товарів побутової хімії через інтернет-магазин та офлайн точки своїм цільовим споживачам.
Основні піддомени
- Система персоналізованого прогнозування попиту — алгоритм, який на основі історії покупок та середньостатистичного споживання прогнозує, коли у клієнта закінчиться якийсь конкретний продукт, і формує нагадування;
- Еко-сумісність та Хімічна безпека — система, яка аналізує склад хімічних товарів і рекомендує безпечні альтернативи для профілю клієнта.
Універсальні піддомени
- Бухгалтерський облік — ведення фінансів компанії;
- Шифрування — захист даних користувачів;
- Авторизація — для ідентифікації користувачів;
- Безготівковий розрахунок — отримання платежів від клієнтів;
- Інтернет-магазин — надає доступність сервісу за межами конкретних офлайн точок.
Допоміжні піддомени
- Постачальники — залучення різних постачальників тієї ж сфери до свого інтернет-магазину (офлайн також);
- Інтеграція з соціальними мережами — для отримання даних для системи рекомендацій;
- Доставка — забезпечення швидкого сервісу;
- Обслуговування клієнтів — відділ підтримки та повернень або скарг;
- Склад та Інвентаризація — контроль кількості товарів на складі;
- Управління контентом (CMS) — для опису товарів.
Уточнення
Подібні компанії часто можуть відрізнятися способом надання товарів та послуг. Наприклад, компанія може виробляти також власну продукцію або отримувати її від постачальника в готовому вигляді. Це може вплинути на визначення основних піддоменів.
Архітектурні рішення для HomeShop¶
Власна розробка¶
- Система персоналізованого прогнозування попиту / Еко-сумісність та Хімічна безпека.
Обґрунтування
Основні піддомени забезпечують унікальну конкурентну перевагу HomeShop (захист даних та персоналізація). Їх неможливо придбати у готовому вигляді, тому вони потребують залучення найкращих фахівців компанії.
Купівля / Готові рішення¶
- Інтернет-магазин, Бухгалтерський облік, Безготівковий розрахунок, Авторизація, Шифрування
Обґрунтування
Для універсальних піддоменів, існують надійні стандарти та рішення розробка яких з нуля є економічно недоцільною.
Аутсорсинг¶
- Постачальники, Інтеграція з соціальними мережами, Доставка, Обслуговування клієнтів, Склад та Інвентаризація
Обґрунтування
Допоміжні піддомени не впливають на цінність бізнесу, тому їх реалізацію можна делегувати третім особам.
Висновок¶
Аналіз предметної області дозволяє визначити ключові піддомени бізнесу та їх ступінь пріоритизації. Основні піддомени вважаються рішеннями, які важко скопіювати конкурентам і які виділяють компанію, створюючи її унікальну цінність. Серед універсальних піддоменів часто розглядають готові рішення, які є загальноприйнятими за стандартами та якістю. Допоміжні піддомени можуть реалізовуватися компанією без значних ресурсів або передаватися на аутсорсинг третім особам.