2025年(昭和100年)問題とは?

最終更新日 2019年10月11日

2025年(昭和100年)問題とは何か

(2019年3月6日)改元対応よりも大変? IT業界でうわさの「昭和100年問題」とは - ITmedia NEWS には、以下のとおり書かれています。
 昭和100年問題は、「年」の情報を2桁で取得しているアプリケーションソフトウェアの内部処理において、平成(1989年1月8日)以降も昭和が連続していることとし、「昭和〇年」として扱う場合に起きるといわれている。例えば、プログラム上で日付の処理を「yymmdd」と記述する際、平成2年3月1日を昭和換算し、「650301」として処理しているようなケースだ。

 おそらく画面表示や帳票印字の時には「平成」に置き換えていると考えられるが、内部では年を2桁で処理しているので「991231(昭和99年12月31日)」の次は、「000101(昭和00年1月1日)」と数字が一巡してしまい、これが誤作動の原因になる可能性があるという。
昭和の年を2桁、月を2桁、日を2桁、合わせて6桁で処理すると、いずれ昭和の年の2桁が99から00になってしまい問題となることが容易に予想できたと思われます。

また、昭和だと元号が変わることになるので後にややこしくなり、和暦ではなく西暦の方がわかりやすいという判断がなかったのか疑問です。

同記事には、西暦ではなく和暦が採用された理由について、以下のとおり書かれています。
 ではなぜ、西暦ではなく和暦で処理していたのか。何人かのエンジニアに聞いてみたところ、システムを構築していた当時としては、西暦(2000年で下2桁が一巡)と比べて、和暦(2025年で下2桁が一巡)の方が25年間“猶予期間”があり、それが有利な点として認識されていた面もあったようだ。

 部外者からすると「いずれ一巡することは分かっていたはず」「なぜ西暦4桁で処理するシステムを構築しなかったのか」といった物言いをしたくなるが、昭和に構築された古いシステムだけに、これには相応の事情が絡んでいる。

 現役をしりぞいたあるエンジニアは「当時は64〜128キロバイトの世界で勝負しており、1ビットをいかに節約できるかに頭を悩ましていた」と話す。メモリをどう節約するかはエンジニアの腕の見せ所であり、「年」を2桁で表現するのも1つの対応策だった。
今と違って当時のコンピューターは性能が低く、西暦ではなく和暦を採用せざるを得ない事情があったようです。

2025年(昭和100年)問題が発生する恐れがあるならシステムを改修するか新しいシステムへ交換する必要がありますが、同記事によると昔のことなので仕様書やソースコードが行方不明であったり、ソースコードがあったとしても解読不能な状態になっているほど複雑となっていることもあり、簡単にはシステム改修できない場合があるそうです。

ソースコードが解読不能なら、当時の技術者に聞く方法がありますが、定年を迎えて退職しまっている人が多く難しいそうです。


キャンペーン情報
富士通
・スプリングセール
クーポン利用で18〜24%OFF等の11大特典
(4月21日迄)
学割キャンペーン icon
学生、教職員の方に特別割引クーポン等の学割特典
(キャンペーン実施中)
シークレットクーポン
特別割引率のクーポン
(5月12日迄)

システムと元号



デル株式会社