三城ホールディングスのシステム企画 藤江龍登氏
写真●三城ホールディングスのシステム企画 藤江龍登氏

 大手眼鏡チェーンの三城は、在庫/販売管理のCOBOLアプリケーションを、NEC製のメインフレームからLinuxにマイグレーションした。三城ホールディングス システム企画 藤江龍登氏によれば「Linuxへオープン化するコストはメインフレームを更改するコストのおよそ3分の2で済み、運用コストは25%削減できた」という。藤江氏はCOBOL開発者向けイベント「COBOLコンソーシアムセミナー in XDev」で、「Linuxへのレガシー・マイグレーション事例」と題して講演した。

 三城がレガシーマイグレーションをした目的は、システムの柔軟性を向上させることと、運用コストを削減すること。「他システムがオープン化するなか、メインフレームではどうしてもデータを連携するコストが高くついてしまっていた」(藤江氏)。

 移行先はLinuxサーバー。その選択することに不安はなかったのか。「6年前にLinux上でJavaのミッションクリティカルなシステムを構築した実績があった。その点では不安がなかった」という。

 今回は月に350万件のデータを処理する在庫管理や販売管理の業務そのものに変化がないため、COBOLアプリケーションをLinux上でそのまま生かす形を取った。「言語を書き換えるだけで1億~2億円のコストがかかる。COBOLエンジニアの人数は確かに減ってきてはいるが社内やNECにも確保している。書き換えるコストは無駄」と藤江氏は言い切る。

 とはいえ、既存資産をすべてCOBOLベースで移行したわけではない。業務ロジック部分はCOBOLアプリケーションを移行させたが、例えば画面はVisual Basic .NETで書き換えている。また帳票はウイングアークのSuper Visual Formade(SVF)やNECのWebSAM Rakuformといった帳票ソフトで出力できるように変更し、JCLはシェルに書き換えた。

 こうした移行のツールはNECが開発した(図1)。NECにとっても大規模移行は初めてだったという。「ツールをどれだけ用意してもらえるかが肝。あるのと無いのではユーザー側の労力に天と地ほど開きが出る」。

図1●資産移行方式とツール
図1●資産移行方式とツール

 移行をスムーズに進めるために、プロジェクトを開始した2008年4月の直後、いくつかのプログラムを抜き出してプロトタイプで移行手法を検証した。「データベースの更新などで問題が出てきたため、きちんと解決してから全面移行に移った。おおむねプロジェクトはうまく進んだ」(藤江氏)という。

 マイグレーションした結果、「オープン系システムとの連携が格段に楽になったし、バッチ処理もメインフレーム時代よりも早く終了するようになった」(同)。COBOLアプリケーションはコンパイラをCOBOL85からCOBOL2002に変えたが、COBOL2002の新機能であるオブジェクト指向などは使っていない。これまで通りに保守できるようにするためである。

 システムに関するコストも削減できた。NEC製メインフレームを新機種に更改する場合と比べて、ハード費用を3分の2に、運用費用を4分の3に削減できた。なお「UNIXサーバー上にマイグレーションすることも考えたが、ハードウエア費用がLinuxとはけた違いだったのですぐに却下した」(藤江氏)という。

 システム構成はメインフレーム1台の構成からLinuxサーバー複数台の構成になった。本番系を冗長構成にしたり、開発系を別のサーバーに分けたりしたからだ(図2)。「構成が分かれたことでオンライン処理の仕組みや帳票出力の仕組みは複雑になったが、運用手順を極力変えないようにしたこともあり、トラブルは無い」という。

図2●システム構成概要
図2●システム構成概要

 藤江氏は「コンピュータはしょせん道具であり、ビジネスを達成するため手段に過ぎない」と話した。藤江氏によれば、COBOLも多数ある言語のうちの一つで、メインフレームも多数あるプラットフォームの一つであると冷静に評価すべきという。「今でも十分強みを発揮できる部分があり、逆に新しい技術のほうが強い部分もある。技術の進歩をしっかり見据えながら、持ち続けるべきか移行すべきかを検討すべきだ」。

 少なくともLinuxはCOBOLアプリケーションを稼働できるプラットフォームになっていると話す藤江氏は「勇気を持ってマイグレーションに取り組んでもらいたい」と聴講者にエールを送って講演を締めくくった。