「COBOLはもう終わり」。そんな考えは間違いかもしれない。第一線の現場では、最新の言語顔負けの開発を実践しているからだ。

 何かとネガティブなイメージが付きまとうCOBOLだが、これから紹介する開発現場を見ると、イメージが変わるかもしれない。開発と運用が一体となって迅速なリリースにつなげるDevOpsや、仕様から設計、実装、テストまでを一気通貫で進める超高速開発を実現している現場である。

 本当にそんな現場があるのか。そう思う読者も多いだろう。アクサ生命保険の中国・大連の開発現場がそれだ。同社は2018年4月から、COBOLシステムの開発・保守の高速化を目指し、アクセンチュアと共同で同拠点での新たな開発手法や開発環境の導入に取り組んでいる。

アクサ生命保険のオフショア開発拠点が入る中国・大連のビル
[画像のクリックで拡大表示]

 「保険商品の開発はスピードが命。新商品を素早く開発できれば、競合他社よりも有利にビジネスを進められる」。アクサ生命でCOBOLシステムを担当する菊池祐介氏(ITギルド&プラットフォーム本部 アーキテクチャ&データギルド シニアトライブアーキテクト)はこう説明する。

 そもそもアクサ生命には、メインフレーム上で稼働するCOBOLプログラムが約3万5000本もある。総ステップ数は約3000万行。膨大なCOBOL資産について菊池氏は「他の言語への変更も考えたが、費用対効果が見合わなかった」と打ち明ける。COBOLシステムのまま使い続けるほうがメリットは大きいと判断したのだ。

 とはいえ、新商品の開発や法改正への対応などで、COBOLプログラムには頻繁に手が入る。COBOLを使いながら高速開発を導入したい。そこで始めたのが、オフショア先の中国・大連でのDevOpsと超高速開発の実現だった。

COBOLプログラムをGitHubで一元管理

 注目したいのは、メインフレーム環境で動作するCOBOLプログラムでありながら、他の言語と変わらない最新の開発環境を整えたことだ。COBOLによる開発経験が豊富なアクセンチュアの中野恭秀氏(テクノロジーコンサルティング本部 インテリジェントソフトウェアエンジニアリング サービス グループ アソシエイト・ディレクター)は「これだけ新しい技術を取り入れた開発環境は、相当珍しいのではないか」と説明する。

 具体的な環境は次の通りだ。まず、開発者のPCには、EclipseをベースにしたCOBOL向けの統合開発環境(IDE)を導入した。ここでCOBOLプログラムのコーディングやデバッグを行う。ポイントは、コード補完機能を使って、コーディング時に予測候補を挙げてくれる点だ。COBOLの文法やコーディング規約のチェックも可能であり、開発生産性を大きく向上させたという。

 さらに、z/OS用エミュレーターを使い、作成したプログラムをクラウドの仮想マシン上でテストできる環境も用意した。これにより、メインフレームを使わずとも、開発者自身のPCでCOBOLプログラムの動作確認ができるようになった。

 そしてCOBOLプログラムについては、GitHubのリポジトリーで一元管理する。これまでもデータベースを利用したソースコード管理の仕組みはあったが、GitHubという最新のバージョン管理システムを導入し、膨大なCOBOLプログラムの版管理や構成管理を適切に行えるようにした。

アクサ生命保険の開発を担当するフロア
[画像のクリックで拡大表示]

この先は有料会員の登録が必要です。有料会員(月額プラン)は初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら