Перевірте вихід до виникнення залежності від сервісу
ЗавершеноВідокремлюйте володіння вихідним кодом від операційної переносності. Перевіряйте експорт, незалежні збірки, доступ до інфраструктури та докази для переходу.
Видавець TaigaЯк ми пишемо
Перевірте своє розумінняВаша організація володіє вихідним кодом. Які додаткові докази підтримують операційну переносність?Виконайте вправу
Чого ви навчитеся
- Визначати активи та права, потрібні для роботи без постачальника.
- Проєктувати малу вправу виходу до виникнення критичної залежності.
- Відокремлювати рішення про експорт, перехід і видалення.
Визначте, що має залишитися придатним до використання
Володіння вихідним кодом цінне. Це лише одна частина плану виходу.
Розгляньмо вигаданий застосунок, код якого міститься в репозиторії компанії. Збірка завантажує приватний пакет від постачальника. Продуктивне середовище використовує хмарний обліковий запис постачальника. Ніхто не записав процедури відновлення бази даних.
Компанія має код, але ще не може незалежно експлуатувати сервіс. Її план виходу має разом охоплювати права, активи, доступ і знання.
Інвентаризуйте залежності
| Актив або відповідальність | Питання виходу |
|---|---|
| Код та історія | Чи може наступна команда отримати доступ до повного репозиторію? |
| Пакети та ліцензії | Чи може вона отримати й використовувати кожну потрібну залежність? |
| Дані та схеми | Чи може вона відновити придатні записи зі збереженими зв’язками? |
| Інфраструктура та конфігурація | Чи може вона відтворити середовище та потрібні налаштування? |
| Ідентичності та секрети | Хто створює замінні облікові дані й контролює доступ? |
| DNS і сертифікати | Хто може перенести публічний endpoint? |
| Докази та експлуатація | Які рішення, інструкції дій, тести та записи інцидентів залишаються доступними? |
Перевірте формати й обсяг експорту. Читабельний експорт документів не обов’язково зберігає кожен зв’язок, вкладення або запис виконання. Запитайте приклад і дослідіть його з людьми, які ним користуватимуться.
Виконайте незалежну повторну збірку
Використовуйте безпечне тестове середовище та схвалені прикладові дані. Надайте уповноваженому інженеру запропонований пакет передачі. Попросіть його зібрати застосунок, застосувати конфігурацію, відновити дані та перевірити одну повну бізнес-операцію.
Записуйте кожен відсутній елемент і час його отримання. Не доповнюйте вправу непомітно незадокументованими знаннями. Мета — знайти, чого бракувало б наступній команді.
Потім дослідіть обмеження переходу: паралельні підписки, час передачі даних, доступ до пакетів, зміни ідентичностей і доступність підтримки. Включіть ці витрати до порівняння власної розробки та купівлі.
Відокремлюйте експорт від видалення
Експорт створює копію. Перехід змінює того, хто експлуатує сервіс. Видалення усуває визначені записи за узгодженим процесом. Це окремі рішення з різними доказами.
Визначте потрібні строки зберігання та обсяг видалення з особами, які відповідають за ці вимоги. Підтвердьте поточні умови й процедури постачальника. Не видаляйте єдиної придатної копії відновлення до перевірки системи-одержувача.
Taiga документує адміністративний процес експорту та окремий процес стирання. Значення секретів виключені з експорту. Тому ваша передача потребує дозволеного способу відтворити потрібні секрети. Перевіряйте поточний вміст експорту за потребами переходу; не припускайте, що це повна резервна копія застосунку.
Визначте, які залежності прийнятні
Переносність не потребує вилучення кожного керованого сервісу. Залежність може бути розумним вибором, коли її цінність, обмеження та шлях переходу зрозумілі.
Записуйте прийняті залежності, відповідального та умову перегляду. Повторюйте вправу виходу після суттєвої зміни архітектури або договору. Продовжіть із плану впровадження, що включає ці обов’язки від початку.
Виконайте вправу
Вигаданий постачальник надає вам Git-репозиторій та експорт бази даних. Перелічіть п’ять інших елементів, потрібних для незалежної роботи застосунку. Виберіть один і опишіть тест, що виявив би відсутню залежність.
Завантажити робочий аркуш (Markdown)Зняття цієї позначки видаляє весь прогрес, збережений у цьому браузері.
Прогрес залишається в цьому браузері. Без облікового запису та відстеження.
Джерела та додаткові матеріали
- NIST: Secure Software Development Framework ↗
- Taiga docs: Data and privacy ↗
- Taiga docs: Integrations and environments ↗