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