運用なき開発を避ける
こんにちは。フィックスポイントの冨です。
今月に入ってから「ちょっとしたWebのシステムを作りたいんだけど、やってくれそうなエンジニアや会社を紹介してくれないか?」といった相談を何件か受けました。
「作るのは良いとして、運用はどうするの?」と聞くと、あまり考えて無いけど、自分で引き取ってやらざるを得ないかなあといった答えが返ってきます。作る所に集中して、作った後の運用の方には考えがおよんでいないんですね。
この手の話は珍しい事ではなく、割合にしても比較的多い印象があります。
さらに言えば、サービス開始のタイミングだけ決まっていて、あとは決まっていないことさえあります。
皆さんご承知の通り、ソフトウェア・プロダクトのライフサイクルを考えると、開発よりは運用にかかる時間の方が圧倒的に長いのが通例です。そして開発者をそのまま運用に巻き込むのも良くある話で、何かトラブルが発生したら、エスカレーションが発生して疲弊します。
では、ちゃんと運用設計を行えば良いという話になるわけですが、運用設計をきちんと行うのも難度が高い業務です。
システム環境や社内外の関係者、対応する人材、業務上の制約などを考慮し、細かく設計を組み立てて手順書や対応フローなどに落とし込んでいくわけですが、関連している技術を理解し、リスク評価を適正に行っていくのは、それなりに経験を要する仕事です。そのような意味では職人技でもあり、属人性が高いとも言えます。
一方で、運用そのものは属人性を限りなく減らす事が求められます。担当者が外れると、不具合が出てしまったり、障害が発生しても対応出来なくなるリスクを抱え込む事になります。最近ではコロナウィルスで陽性反応が出たり、濃厚接触者認定されると2週間外出出来なくなりますが、このようなリスクがシステム運用にも直結してくる可能性もあります。
特にリリース時期が決まっているサービス企画から開発の段階では制作に注意が向けられて、運用に思いが至らない場合も多いですが、少なくとも、監視・通知・一次対応・記録などの一連の運用の手順とそれらを担当者を決めておく必要があります。リモート勤務を含めたワークスタイルの多様化への対応も考慮する必要があるでしょう。