2つの会計システムをリプレイスした経験から見えるレガシーシステムとの向き合い方

# はじめに
Happy Holidays♪ 今年もAdvent Calendarの季節がやってきましたね！
「「レガシー」を保守したり、刷新したりするにあたり得られた知見・ノウハウ・苦労話」という事で、書くネタ多すぎて何書こうか迷いました笑
今回は、会計システムのリプレイスプロジェクトを2つほど経験した僕が、その経験を通して見えたレガシーシステムとの付き合い方について語ります。
まだまだコーポレート部門が利用するプロダクトはレガシーな製品が多い。だからこそレガシーとの付き合い方を身につけなければ、余計な工数を奪われ疲弊し、本当にやりたいことができなかったという悲しい未来を迎えることになります。
そうならないためにも、コーポレートエンジニア同士が今よりも繋がる未来を願っています。

https://qiita.com/advent-calendar/2022/works-hi-3

# 簡単な経歴紹介
僕のコーポレートエンジニアとしてのキャリアは、会計システム再構築PJから始まりました。
- 1社目
    - 情報系の大学を卒業後、某T自動車グループ傘下のIT企業に入社しました。3年プログラマからプロダクトの上流工程を経験しました。
- 2社目
    - その後、運送業某T社の情報システム部門に転職し、会計システムプロジェクトのプロジェクトマネージャーを任されることになります。この時、そもそも会計についての知識はゼロで、プロジェクトマネージメントも小規模でしか経験したことがなく、全てが挑戦でした。大きな裁量を与えてくれた執行役員Aさんには、大変感謝しています。
会計システムリプレイスプロジェクトを無事に終え、情報システム部門としてのキャリアを3年ほど積み重ねました。
- 3社目
    - 会計システムをリプレイスした経験を買われ、現企業に転職します。そして当然ながら、会計システムリプレイスのプロジェクトを任せていただきました。
これが、二つ目の会計システムリプレイスで、今も保守をメインで行なっています。

# 経験談1：中小企業の会計システムリプレイス
## 何をリプレイスしたのか
18年間使い続けた会計システム。もうこれだけで、香ばしいレガシーな香りが匂ってきそうですね笑
## 何が課題だったか
オンプレミスで、サーバーOSのサポート切れ、、、アウトですね。導入時にカスタマイズをしており、現行OSへの移管は、ほぼ新規導入です。
現場マニュアルは存在しておらず、新入社員に伝えられる情報は、すべては口伝。秘伝のタレ状態ですね。
## PJの結果はどうなったのか
プロジェクトは、成功でした。特に納期から遅れることもなく、当初目的としていたメリットもコミットできました。
自分としても、あの時はこうしたほうがよかったなどの反省点はあるものの、大きな成功体験を積むことができて、とても満足していました。
## 一番苦しかったこと
58歳の頑固な会計部門長とのコミュニケーションを取ることが全くできなかったこと。
僕は当時28歳、その会社に入社したてで、会計知識もなく、当然信頼度がゼロです。全く対応に話をしていただけませんでした。
何度か口論を重ね、、、夜な夜な一緒にマスタを整備していく中で、徐々に信頼を獲得していきました。
PJ解散後には、困り事があれば真っ先に頼ってくださるようになっていました。
## 一番うまく行ったこと
これは、まさにコミュニケーションスキルが超絶アップしたことです。もともとの性格で、基本的にはどんな方でもお話しすることはできますが、初見の方と一緒にプロジェクトを遂行することができるようになりました。
相手の立場に立って、性格や癖を観察して、合わせて二人三脚するように一緒に前に進むことができる自信がつきましたね。

# 経験談2：上場企業の会計システムリプレイス
## 何をリプレイスしたのか
5年程度のまだ若い会計システム（オンプレミス）です。
## 何が課題だったか
会計システムが汎用すぎて、何でもできてしまうため、経理部門が思い通りにメンテナンスできず、扱いに苦しんでいました。やりたいことがあっても、どこをどうさわれば良いのかがわからなかった。
また、UIが悪く、直感的な操作もできませんでした。
イニシャルも、ランニングコストも高額で、当時の経理部門のサイズ感に見合わないシステムでした。そしてやはり、導入担当者は退職済みです。
## PJの結果はどうなったのか
なんとか、やりきったという感触です。当初目的としていたことは、達成できました。
プロジェクトメンバーは、途中で8割程度入れ替わり、プロジェクトは2度リスケされました。本当にギリギリ、なんとか最終納期に間に合わせたという感じです。
## 一番苦しかったこと
一番辛かったのは、導入最終段階で、経理部門のメンバーから「これは使いづらい」と言われたことですね。
経理部門のユーザビリティ向上のために、努力してきた2年間だっただけに、とても辛かったです。
今もまだ、時々そういうことを耳にするので辛いですね〜。しかし次回こそはそんなこと言わせません。必ず全員が満足のいく形でリプレイスを完遂して見せます。
## 一番うまく行ったこと
前回より規模の大きい会計領域にチャレンジして、やりきれたことです。
プロジェクトに関わるメンバーも多く、前回の約3倍ですし、リプレイスする業務スコープも広く、制度開示や税務処理など目新しい業務が多く、大きな成長につながりました。
そして、やはり経理部門との信頼関係を構築することができ、今でも仕事しやすい環境となっているのはありがたいことです。


# レガシーシステムとは何か
私の経験談をお話しできたところで、抽象度を上げてお話ししていきます。まずは、レガシーシステムとは何か。そこからスタートです。
言葉の意味としては、[goo国語辞典](https://dictionary.goo.ne.jp/word/%E3%83%AC%E3%82%AC%E3%82%B7%E3%83%BC/)をあたると次のように掲載されています。
```:goo国語辞典
1 遺産。先人の遺物。
２ 時代遅れのもの。「―システム」
[補説]本来、過去に築かれた、精神的・物理的遺産の意であるが、近年、「首相としてのレガシーを作る」のように、後世に業績として評価されることを期待した、計画中の事業の意でも用いられるようになった。
```
「先人の遺産」というのはどうでしょうか。確かに先人が導入したシステム（導入社が既に不在）という意味では、ピッタリかもしれないですね！
では、「時代遅れのもの」というのはどうでしょうか。ここは一考の余地があると僕は思います。
「これはレガシーシステムだ！」と思うかどうかは、職種・業種・部署・役割によって変わります。いくつか例を挙げてみます。
## レガシーシステムかどうかは、役割や立場によって異なる
【シーン1】情報システム部門が「**オンプレミス**なせいで、マスタ更新がCSV取込でレガシーだ。WebAPIを有したSaasに乗り換えるべきだ。」と言っても、問題なくシステムを使い慣れている現場部門からすれば、リプレイスコストをかけて、その課題を解消する必要があるか疑問に思います。また、経営者も同様です。現場が問題なく使えているのに、コストをかけてリプレイスするべきだろうか。
しかし、CSV取込の夜間バッチ処理にてエラーが発生して、夜間対応を情報システム部門は行なっていて、多少の工数（コスト）がかかっているのです。
【シーン2】現場部門が、「このシステムは**UIが古臭い**し、オペレーション数も多く**手間**がかかっているからレガシーだ。」と言っても、経営者からみると、想定内の人件費で売上、利益を回収できている状況で、コストをかけて、リプレイスするべきか疑問に思います。
【シーン3】経営者が、「リアルタイムに現場の状況を把握したいが、**データが繋がっていない**レガシーシステムが多いからだ。そうだ、DX化しよう。トレンドワードだしな。」と言ったら、情報システム部門や、現場部門は、現状困っていないシステムをリプレイスする必要があるのか。リプレイスにかける工数を捻出する現場の**負担**を考慮しているのか不満です。
## 目線の違い
プロジェクトマネージャーは、経営者、現場部門、情報システム部門と密な連携を行う必要があり、それぞれの立場による温度差を感じ取るはずです。
それぞれ立場・目線の違いを把握した上で、着地点を模索していく必要がありますので、それぞれの立場で気にかけているポイントを確認しておきましょう。
### 経営者
現状、どこに**コスト**がかかっており、どれくらいの**投資**をすれば、将来的にどのような**メリット**を得られるのか。これが経営者が最低限気にするポイントです。
### 現場部門
現場は、システムの**利用者**です。もしかしたらメンテナンスの一部も含めて**運用**している場合もあるでしょう。つまり、一番気にあるのは、**使い勝手**です。
### 情報システム部門
情報システム部門も運用を行いますが、現場部門とは扱う領域が異なります。システムが正常に動作することを目的とした運用を行います。気に掛けるポイントは多いですが、**安定稼働**するのか、如何に**手間をかけずに**マスタを適切な状態にできるか、防衛・漏洩的に**安全か**、などです。

## 業種の違い
役割での違いに言及してきましたが、社外の方と話をする時にも視点のズレは発生します。
例えば、取引先のパン屋さんが、「御社のようなモダンな会計システムを導入して、日次計上すれば、もっと早くオーナーに現場状況を見せることができるんだけどねぇ」と言っても、イニシャルコストも、ランニングコストも、売上規模に見合わないなぁと感じてしまいます。**手段と目的**を混同してしまっている典型ですね。

# リプレイスすべきか、せざるべきか
レガシーシステムと対峙した時、役割・業種を問わず、今の立場よりも**目線を上げて考える**努力をしてください。きっと、これまでに見えていなかった課題を発見し、システムをリプレイスするべきかどうか、多角的に検討することができると思います。誰もが高い視点をもった検討チームでは、高い当事者意識が生まれ、活発な議論が行われるでしょう。（このようなメンバーであれば、プロジェクトマネージャーはきっと喜ぶと思います笑）
リプレイスをした際のメリット、投資コストを判断材料に入れながら、**リプレイスしないという選択肢**も強く持ち、**冷静な判断**をしましょう。

# 終わりに
最後まで読んでいただきありがとうございました！
いかがでしたでしょうか。レガシーシステムというものは、役割や立場によって見え方が変わるもので、各関係者を巻き込み、業種や立場を超えた議論の先に、社内システムの最適化があるのです。
レガシーシステムと対峙する皆様のお力になれたら幸いです。ご武運をお祈りしております。