システムを一人で見ていた担当者が辞めて、誰も中身を説明できない。そうなったとき、最初にやるのは作り直すことでも、全体を理解することでもありません。鍵を取り戻して、何でできているかを書き出すことです。
最初に消えるのは、コードの外にあるもの
数年前に一人でシステムを作った方がいて、問題なく動いていたので、誰も中身を気にしなかった。その方が辞める日になって、サーバーがどこにあるのか、ドメインをどこで更新しているのか、エラーのお知らせメールを誰が受け取っているのかを、社内の誰も知らないことに気づく。小さな会社では、よくある流れです。誰のせいでもありません。
担当者と一緒になくなるのは、コードそのものより、コードの外にあるものです。個人の名義で契約したアカウント。本人のスマートフォンに紐づいた二段階認証。毎月手作業でやっていて、どこにも書かれていない作業。
動いているシステムは、動いたままにしておきます。ここが出発点です。
最初の1週間にやること
エンジニアがいなくても、社内でできることから始めます。日数は目安で、会社によって変わります。
1. アクセス権を取り戻す。 サーバーやクラウド、ソースコードを置いている場所、ドメインの管理画面、自動で送るメールのサービス。それぞれについて、名義人と、パスワードを忘れたときの復旧方法を書き出します。前任者の個人名義になっているものは、連絡が取れるうちに会社名義へ移してください。本人のスマートフォンに紐づいた二段階認証は、見落としやすい代表です。退職した人のカードで払っているクラウドの費用も、同じです。
2. 期限を洗い出す。 ドメイン、通信を守る証明書、ソフトウェアの利用契約、サーバーの契約。何年も動いてきたシステムは、コードの不具合より、誰も覚えていない期限切れで止まることがあります。
3. 自動で動いているものを探す。 月末の帳票の出力、夜中のデータ同期、バックアップ。サーバーの設定に書かれていることが多く、コードを読んでも見つかりません。
4. 取っているバックアップを、一度戻してみる。 取得はしているけれど、一度も戻したことがない、という状態は珍しくありません。戻せるかどうかは、戻してみないとわかりません。やり方がわからなければ、わかる人に頼むところまでを、この週の目標にしてください。
並行して、ルールを一つ決めます。分かるまで、誰もシステムに手を入れない。構造がわからないまま「ちょっと整理しておこう」と触ったことで、動いていたシステムが、誰にも触れないシステムに変わってしまうことがあります。
もし前任者とまだ連絡が取れるなら、1〜2時間だけお願いしてみてください。長い引き継ぎ資料より、こう聞くほうが役に立ちます。「このシステムは、どこで止まりやすいですか。止まったとき、どうしていましたか」。
その次に、システムがしていることを書き出す
足場が固まったら、システムが今何をしているかを書き出します。仕様書がないとき、確かな記録はソースコードだけです。AIにコードを読ませると、そこから下書きを作り始められます。AIを使ってよいかは、先に社内の規程や契約で確かめてください。私たちも、お客様の許可がなければ、お客様のコードをAIツールには入れません。
ただし、出てくるのは下書きです。コードからわかるのは、システムが何をしているかであり、なぜそうしているのかは書かれていません。たとえば「50万円を超える注文は上長の承認が必要」という処理があっても、なぜ50万円なのかはわかりません。業務ではもうやめたルールが、今も動いているように書かれることもあります。表計算ソフトでの手作業のように、コードの外で行われていることは、そもそも出てきません。
だから、普段そのシステムを使っている方に、項目を一つずつ見ていただきます。「この作業は今もしていますか」。答えは「合っている」「違う」「使っていない」のどれかで、項目の横に残します。月に一度しか使わない経理の方のような、普段は問い合わせてこない人も、一人は入れておきたいところです。
すぐに作り直さないほうがよい理由
システムが何をしているか全部はわかっていない段階で作り直すと、使う人には必要なのに、誰も覚えていない機能が抜け落ちやすくなります。残す、直す、作り替える。この判断は、仕様を書き出して業務の方と確かめたあとで、遅くありません。
この進め方が合わない場合もあります。システムがすでに止まっている、データが壊れている場合は、復旧が先です。ソースコードがもう手元にない場合は、動いているシステムとデータから組み立て直すことになり、時間がかかり、確かさも下がります。
今日できることを一つ挙げるなら、システムに関わるアカウントを、思いつく限り書き出して、名義人を横に書くことです。紙一枚で始められます。
開発の進め方についても、このブログで続けて書いていきます。続きを読みたい方は、フォローしていただけるとうれしいです。