Короткий ответ
#Как устроены четыре недели
Это намеренно не проект. Это четыре коротких упражнения, каждое из которых даёт что-то конкретное и каждое из которых полезно само по себе, если вы на нём остановитесь.
| Неделя | Результат | Трудозатраты |
|---|---|---|
| Первая | Список аккаунтов с указанием, на чьё имя каждый, плюс копия данных у вас | Два часа, в основном ваших |
| Вторая | Опись частей и того, зачем каждая | Одна инструкция плюс полчаса на чтение |
| Третья | Где живут клиентские данные и что уходит из системы | Час и один разговор |
| Четвёртая | Подсчёт концентрации и список вопросов с приоритетами | Час |
#Первая неделя — чем вы владеете
Начинайте отсюда, а не с софта, по двум причинам: это единственная часть, где неверный ответ может лишить вас возможности работать, и это часть, которую вы можете сделать целиком сами.
Проверьте каждое сами
- Домен: на чьё имя оформлен и куда уходит письмо для восстановления
- DNS: кто им управляет и можете ли вы туда войти
- Облачный аккаунт: на чьё имя, кому счёт, кто root-пользователь
- Организация с репозиторием: кто её владельцы
- Платёжный провайдер: на чьё имя и куда уходят выплаты
- Каждый сервис в вашей банковской выписке, который вы не опознаёте Ваши счета — карта зависимостей системы, полученная с независимой стороны.
И одно действие
- Возьмите независимую копию продакшен-данных, которую держите вы и которую лично открывали Всё остальное в этом руководстве можно повторить позже. Это то, что покрывает наихудший случай.
#Вторая неделя — из чего это состоит
Попросите опись: каждая часть продукта, её тип и одно предложение о том, что она делает, написанное для того, кто код не читает.
Просите вывести, а не написать. Различие практическое: документ, написанный по памяти, отнимает у кого-то неделю, описывает то, что этот кто-то помнит, и не может быть проверен. Выведенный отнимает одну инструкцию, покрывает то, что там есть на самом деле, и несёт ссылку под каждым утверждением.
Что искать, когда будете читать:
- Всё, чего вы не опознаёте. Компонент, о котором никто не упоминал. Это случается чаще, чем ожидают, и это главная причина делать упражнение.
- Сколько всего частей. Само число полезно: это ответ на вопрос «насколько это большое», который задают все и на который никто не отвечает.
- Понятно ли вам назначение каждой части. Если предложение вам непонятно, оно либо плохо написано, либо никто до конца не уверен, — и то и другое стоит вопроса.
#Третья неделя — куда уходят данные и деньги
Две трассировки, и обе идут за чем-то, что выходит из системы, а не ходит внутри неё.
-
Проследите клиентские данные наружу
Где они хранятся и что уходит? Аналитика, почтовые провайдеры, выгрузки партнёрам, ночные экспорты, бэкапы. Исходящее — половина, о которой никто не думает, и половина, которая важна юридически.
Там, где адрес назначения настроен вне кода, по одному софту на это не ответит никто, — и это само по себе стоит знать явно.
-
Проследите денежный путь от начала до конца
От нажатия клиентом «оплатить» до прихода денег. Какие компоненты, какие внешние сервисы и — важнейшая часть — что происходит, когда каждый шаг падает.
Вопрос про сбои — там, где быстро построенные системы слабее всего, и это вопрос, который владелец вправе задать в бизнес-терминах.
#Четвёртая неделя — концентрация и дыры
Подсчёт концентрации. Перечислите части из второй недели. Рядом с каждой напишите имена всех, кто мог бы ответить по ней на трудный вопрос. Сосчитайте части, где имя ровно одно.
Веб-приложение 3 человека
Биллинг и платежи 1 человек ← Анна
Логика подписок 1 человек ← Анна
Почта и уведомления 2 человека
Инфраструктура и выкатки 1 человек ← Марек
Ночная выгрузка 0 человек ← никто, оно просто работает
Мобильное приложение 1 человек ← бывший подрядчик
С этой компанией всё в порядке. Так и выглядит обычный успешный четырёхлетний продукт, когда его кто-нибудь посчитает, — и этот подсчёт точнее того реестра технических рисков, который есть у большинства компаний.
Список вопросов. Всё, что подняли и не закрыли предыдущие три недели, отсортированное по тому, во что обойдётся ошибиться. От десяти до тридцати пунктов — норма. Важными окажутся четыре.
#Как удерживать это верным потом
- Пересобирайте опись, когда меняется что-то существенное — после крупного релиза, в конце этапа работ, когда приземлилась подсистема. Не по календарю.
- Разбирайте список вопросов и записывайте, кто на какой ответил. Сокращающийся список — единственная работающая здесь мера прогресса.
- Перепроверяйте владение раз в год. Аккаунты накапливаются, а адреса восстановления уплывают.
- Держите это там, где прочитает компания, а не в своих заметках. Если знаете только вы, упражнение переставило проблему, а не решило её.
#Что идёт не так
Начать с софта, а не с аккаунтов.
Вместо этого Сначала аккаунты. Это единственная категория, где неверный ответ не отыгрывается деньгами, и часть, которую вы можете сделать в одиночку.
Просить документ.
Вместо этого Просите вывести опись. Документ — это чья-то неделя, описывает он чью-то память, и проверить его нельзя.
Превратить это в проект с управляющим комитетом.
Вместо этого Четыре упражнения по часу-два. Формальность здесь производит представление, а не ответы.
Сделать это один раз.
Вместо этого Картина полуторагодичной давности описывает другой продукт. Ценность в разнице между двумя.
Оставить результат при себе.
Вместо этого Всё уходит туда, чем владеет компания. Иначе точкой отказа теперь являетесь вы.
#Чего это не покрывает
Чего это не делает
- Хорошо ли софт построен. Не тот вопрос, на который отвечает этот метод, и не тот, ответ на который нужен владельцу.
- Оценку безопасности. Трассировка данных её касается; ревью безопасности — отдельная работа.
- Продуктовые решения — что строить дальше, что выводить из эксплуатации.
- Способности и результативность команды.
- Всё регуляторное, специфичное для вашей отрасли.