まえがき
こんにちは。プロダクツ本部 プロダクツエンジニアグループ ビジネスアプリケーションチームのtakaです。
わたしの主な業務は物流倉庫で使うデスクトップアプリの開発です。物流倉庫では常に効率を追求し、そこで使うアプリやシステムも効率化のため、改修の繰り返しです。
そのため、一度構築したシステムでも、継続的にメンテナンスをしなければすぐに「古いシステム」といわれてしまいます。
「古いシステムは刷新すべき!」というのがエンジニアの共通認識ではありますが、今回はシステム刷新のアクションにつなげるための基準について考えてみました。
古いシステムの刷新は国を挙げた課題
そもそもなぜ古いシステムを刷新するべきなのでしょうか。
その答えは、経済産業省が2018年に公開した「DXレポート ~ITシステム「2025年の崖」克服とDXの本格的な展開~」の中に書かれています。
このDXレポートによると、既存システムの複雑化・ブラックボックス化によりDXが実現できない状態が続くと、2025年以降に最大で12兆円/年の経済損失が生じる可能性があると記されています。
この課題を「2025年の崖」と表現し、企業に対して古いシステムの刷新とDXの推進を促したのです。
それでは日本企業は2018年のDXレポートの内容を受けて、システム刷新は進んだのでしょうか?
実は2020年にも中間調査としてDXレポート2が公開されています。DXレポート2によると、残念ながら国内の9割の企業がシステム刷新によるDXが進んでいないという結果が報告されました。
古いシステムの刷新は先延ばしにされている印象を受けます。
古いシステムの刷新には基準が必要
先延ばしにしないための糸口として、システム刷新の基準を設ける必要があると思います。
「古い」の基準を明確にすることで、人によって異なる「古い」の認識が統一され、刷新のアクションにつながりやすくなるからです。
具体的には以下のような刷新基準が挙げられます。
- ニーズ・需要
- 保守性
- 耐用年数
1つ目の「ニーズ・需要」に関しては、会社の事業ニーズなどに対応できているかという基準です。システムは作って終わりではなく、新たな事業計画が始まると、システムもその事業ニーズに応じて改修が必要になります。このような調子で既存システムへの改修が繰り返されると、構築初期の古い仕組みを使い続けてしまい、今後の新しいニーズに応えるのに限界が来てしまいます。事業をスムーズに発展させるためにも、ニーズ・需要に耐えられないと判断した場合は刷新のタイミングといえます。
2つ目の保守性は、システムの改修コストが高くなっていないかという基準です。システム改修が繰り返され、システムが複雑化・肥大化すると、1つのシステム改修に対して、他の箇所も変更が必要なケースが増えやすくなります。またシステム担当者の入れ替わりでシステムの内部がブラックボックス化すると、安易に改修しづらくなります。このような保守性が低い状態では新たな「ニーズ・需要」が発生した際の対応や、不具合が発生した時の問題特定も困難になるため刷新のタイミングといえます。保守性を刷新基準にすると、昔から使い続けて肥大化しているシステムを機能別に分割したり、不要コードを消して簡素化するといったアクションも可能です。
3つ目の耐用年数に関しては、システムのOSバージョンや使用しているミドルウェアのバージョンなどが古くなっていないかという基準です。古いバージョンはサポートが終了している場合が多く、セキュリティ面においてもリスクが高いため、定期的なバージョンアップや代替手段の検討が必要になります。こちらはシステムにとって避けられない刷新基準となります。
このように基準を考えると、いまは動いているように見えて、実は中で老朽化しているシステムの存在に気付くことができます。
弊社ビジネスアプリケーションチームでは特に1つ目の「ニーズ・需要」を重要な基準にし、新しいサービスや事業をスピード感を持って展開していくために、古いシステムの刷新に取り組んでいます。
さいごに
今回はシステムの刷新基準について考えてみました。
バイクの会社として、よくバイクに例えてしまいますが、エンジンオイルやタイヤなど、消耗品の交換も基準がありますね。
3000km走ったらオイル交換や、スリップサインが出たらタイヤ交換など、一般的な基準があるから「新しくしよう」という意識が生まれます。
基準をもとに実行に移しますから、専門知識や経験値は必要ありません。
システムも同様に刷新の基準を決めることで、古いシステムが放置されずに刷新の機会を生み出してくれると思います。
システム刷新の基準に限らずなんとなくふわふわして、実行が疎かになってしまっているものは、アクションの基準をまず決めることで実行力のある組織になっていくと思います。
基準をもとに実行していくことで、一貫して良いパフォーマンスを維持していきたいですね。