PR

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

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

 アクサ生命保険は2018年4月から中国・大連の開発現場で、COBOLシステムの開発・保守の高速化を目指し、アクセンチュアと共同で新たな開発手法や開発環境の導入に取り組んでいる。

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

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

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

最新開発環境と若手主体の現場

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

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

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

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