時代遅れという認識を払拭し、最新環境の第一線でもCOBOLを活用可能にする

富士通(株)
ソフトウェア事業本部
ミドルウェアソリューション事業部
第3開発部
松竹 伸博/ 高橋 義雄
2001/04/04


 周知のとおり、COBOL(COmmon Business Oriented Language)は歴史ある言語処理系で、誤差を生じにくい10進演算機能やISAM形式のデータ・アクセス機能なども持ち、銀行や企業の経理システムなど、勘定系の情報処理を中心に広く使用されてきた。しかし、PCなどを活用したクライアント・サーバ・システムや、インターネット・テクノロジをベースとするWebソリューションが一般化し、新しい環境に適した新しい言語処理系が登場するなか、COBOLはシステム開発の第一線から退いたようにも見える。これに対し富士通は、自社のCOBOL言語処理系をMicrosoft.NETに対応させるべく作業を進めているという。伝統はあるが古いCOBOL言語と、最新の.NET環境という組み合わせには、正直なところ違和感を覚える読者が少なくないだろう。.NET対応COBOL開発の背景には何があるのか? 将来展望は何か? 開発を指揮されている松竹伸博氏、高橋義雄氏の両名にお話を伺った。

(聞き手:デジタルアドバンテージ 遠藤孝信)

―― たいへん失礼な話ですが、私たちのようにPCを中心に活動している者にすると、COBOLは歴史と高い実績を持つプログラミング言語ではあるものの、もはやその役割を終え、第一線から退きつつある言語という印象があります。

松竹:昨年(2000年)はCOBOLの生誕40周年にあたる年で、国内外で記念イベントなどが催されました。このようにCOBOLはたいへん古い歴史を持つプログラミング言語です。ANSIによる最新の標準規格は1985年に制定されたCOBOL85ですから、今から15年前の規格ということになります。この点だけ見れば、確かにCOBOLは古くさい言語ということになるでしょう。

 しかし実際には、その後も言語仕様の改良が続けられており、現在では最新のオブジェクト指向機能を組み込んだ次期COBOLの規格化が進められています。この規格では、オブジェクト指向機能の追加に加え、日本語などのマルチ・バイト文字サポート、型定義やポインタ・サポート、再帰呼び出し、他言語との連携などの機能が追加される予定です。次期規格の最終的な規格化は、2002年に実施される方向で作業が進んでいます。

COBOLは現在でも言語仕様の改良が続けられており、最新のオブジェクト指向機能を組み込んだ次期COBOLの規格化が進められています(松竹)

―― それでは、富士通さんもこれからオブジェクト指向対応のCOBOLを開発するということでしょうか?

松竹:いえいえ。ほとんどのCOBOL言語処理系ベンダは、オブジェクト指向に代表される新機能を先取りして、すでに製品に組み込んでいます。弊社もPowerCOBOL97という名称で製品を販売しています。この“97”は、COBOL85規格をベースに、1997年に発表されたドラフト仕様で追加されたオブジェクト指向機能を先取りしてサポートしていることから命名されました(富士通のPowerCOBOL97のホームページ)。

 このPowerCOBOL97では、CGIやISAPI(Internet Server API)などのインターネット・ソリューション対応、CORBA/DCOMなどの分散オブジェクト環境への対応、COBOLプログラムとJavaプログラムの相互呼び出し、EJB(Enterprise Java Beans)対応によるビジネス・コンポーネント構築など、さまざまな最新機能を搭載しています。PCユーザーの間ではあまり知られていないかもしれませんが、COBOLは時代のニーズに応えながら、これまで40年間ずっと進化し続けてきました。今なお現役で生き続けている言語処理系なのです。

PowerCOBOL97のホームページ
富士通が開発・販売するCOBOL言語処理系のPowerCOBOL97では、次期規格仕様を先取りしたオブジェクト指向対応、CGIやISAPI(Internet Server API)などのインターネット・ソリューション対応、CORBA/DCOMなどの分散オブジェクト環境への対応、COBOLプログラムとJavaプログラムの相互呼び出し、EJB(Enterprise Java Beans)対応によるビジネス・コンポーネント構築などの最新機能が追加されている。
http://software.fujitsu.com/jp/pcob97/index.html

―― 現在、COBOLプログラマの人口はどの程度なのでしょうか?

松竹:ある文献によれば、COBOLプログラマは全世界で300万人と推計されています。厳密な数字は持ち合わせていませんが、経験的には、日本国内のプログラマは、全世界の2割程度、50万人〜60万人ではないかと考えています。もう少しCOBOL人口は多いとする文献もありますので、もう少し幅を持たせて50万人〜100万人の間といったところでしょうか。想像したよりもCOBOLプログラマ人口が多くて驚かれたかもしれません。統計というのは当てにならないところもあるのですが、弊社および他社製品を含め、COBOLの開発環境は年間で数十万本程度出荷されていますので、50万〜100万人という数字はまんざら嘘でもなさそうです。

 現在では、従来の汎用機やオフコンからのダウンサイジング/ライトサイジングによって、業務システムでもPCを活用する例が増えています。この場合でも、従来環境向けに構築した業務プログラムがあるときには、なるべくそのままPC環境に移行させたいというユーザーの声がかなりあります。実際、弊社のCOBOL製品のお客様はこのような方ですし、このような流れから現実には、PC環境においてもCOBOLプログラムはかなり実行されています。

従来環境向けにCOBOLで構築した業務プログラムがあるときには、なるべくそのままPC環境に移行させたいというユーザーの声がかなりあります(松竹)

―― 過去のソフトウェア資産を活かすという意味は分かりました。しかし新しいソフトウェア設計においてもCOBOL言語を使おうというニーズもあるのでしょうか?

松竹:これまでに蓄積された資産は、COBOL言語で開発されたプログラム・コードだけではありません。COBOL言語に馴染んだプログラマのスキルやノウハウも、貴重な資産だと言えます。この意味では、COBOLプログラミングに慣れ親しんだプログラマが、新しいソフトウェアの開発にもCOBOL言語を使いたいというニーズはあります。たとえば少し前に、COBOL言語でグラフィカル・ユーザー・インターフェイスを設計したいというニーズがかなりあり、弊社でもこれに対応した開発環境を提供しています。最近では、WebソリューションにCOBOL言語を利用したいという声も増えてきました。

 たとえばCGIで使うとか、CORBAのオブジェクトやEJBとCOBOLプログラムを連携させたいなどです。このためCOBOLベンダ各社は、COBOL言語を使ってWebソリューション開発を行うための機能を追加しています。Webソリューションの分野では、Java言語が代表的ですが、今やその気になれば、COBOL言語だけでもほぼ同様の処理を行えるようになっています。

COBOL言語で開発されたプログラム・コードだけではなく、COBOL言語に馴染んだプログラマのスキルやノウハウも貴重な資産だと言えます(松竹)

 
 

 INDEX
  [Keyman Interview]
  1.時代遅れという認識を払拭し、最新環境の第一線でもCOBOLを活用可能にする
    2.時代遅れという認識を払拭し、最新環境の第一線でもCOBOLを活用可能にする


 

 



Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間