ビジネスロジックをRPGで実行し、画面の表現力をPHPで高めるハイブリッド型Webアプリケーション開発でIBM iモダナイゼーションを推進する
【激論!】RPGは残す?残さない?を議論する本シリーズ企画に今回登場するのは、IBM iを基盤とするアプリケーションのPHPを利用したモダイゼーション手法、いわゆる「PHP on IBM i」のトップランナーとして知られるオムニサイエンスだ。現在では受託開発するアプリケーションの80%がPHPを占めているという同社だが、一方で決してPHPに囚われているわけではない。IBM iのPASE環境を新たなプラットフォームと捉え、RPGを中心とした既存システムとオープンソーステクノロジーをシームレスに融合させていくことが、オムニサイエンスの目指すモダナイゼーションの在り方なのである。
<お話を伺った人>

代表取締役社長
藤井 星多 氏

サービス開発部 部長
田中 昌宏 氏
「PHP on IBM i」ソリューション提供のトップランナー
IBM i上でPHPがサポートされたのは2006年のことである。IBMとゼンド・テクノロジーズ社が共同開発したPHPアプリケーション実行環境「Zend Core for i5/OS」のリリースを契機とするもので、当時からいち早くPHPへの取り組みを開始したのがオムニサイエンスである。現在では「IBM iのオープン化」をスローガンに掲げ、2010年にリリースされた後継製品「Zend Server for IBM i」を核とした「PHP on IBM i」の受託開発・導入移行支援・技術サポート・BIソリューションを提供している。
そこにはどんな狙いがあるのだろうか。「PHPは、この先IBM iの主力言語に発展していく可能性が高いと判断しました」と語る同社代表取締役社長である藤井星多氏は、PHP on IBM iが提供する次のようなメリットを挙げる。
「まずPHPで注目したのは、誰でも入門しやすい言語環境であることです。Zend Server for IBM iは当初から日本語版が提供されており、ツールキットやライブラリも豊富に用意されています。既存の開発資産との親和性が高く、Javaよりも環境構築が容易でスモールスタートにも適しています。そもそもPHP自体がオープンソース・ソフトウェアの世界で非常に高いシェアをもつ言語であり、そのスキルを有する多くの技術者が世界中に存在しています」
実際にPHPはサーバーサイド・プログラム言語として80%を超えるシェアを持つとされ、Webアプリケーション開発の分野で最も人気のある言語の1つとなった。加えてZend Server IBM i には無償でダウンロードできるバージョンも提供されており、手軽にIBM i上でPHPアプリケーションを体感できるのも大きな魅力となっている。
もちろん、1990年代から当時のIBM AS/400の受託開発を手がけてきたオムニサイエンスにとって、RPGを用いたアプリケーション開発にも豊富な実績とノウハウがあり、得意とするところだ。しかし現在ではPHPを用いたアプリケーション開発が中心である。特に新規案件に関しては営業戦略上、90%以上をPHP on IBM iをベースとした提案を行っており、結果として受注も拡大しているという。
「たとえば弊社で保守を承っているアプリケーションにPHPの言語環境を導入し、照会系のお試し画面を無償で開発して提供するといったことも行っています。これに対してお客様からも高い評価を受け、その後の新規案件でも『ぜひPHPで』とご依頼をいただくパターンが増えています。5250画面のGUI化をターゲットとした言語には他にもベンダーが固有に提供する言語などもありますが、やはりオープン性・技術者の確保の観点でPHPが、お客様にとって一番の最適解になるという確信を持ってご提案しています」と藤井氏は語る。
こうしたPHPに対するオムニサイエンスの強い意気込みは、ミャンマーを中心としたオフショア開発の体制強化にも顕著に表れている。Facebookなども活用して「Web系をやりたい」という日本語能力にも長けた20歳代の若手エンジニアを積極的に採用し、PHPのプログラミング・スキルを育成しているという。
あらゆるシステムの中にRPGを活用すべき場面が必ずある
具体的にオムニサイエンスはどのような分野のアプリケーション開発でPHPの活用を広げているのだろうか。PHPのメリットを存分に活かすことができるユースケースの1つとして挙げるのが、生産計画のシミュレーションの様な縦・横にも情報量が多いアプリケーションでの活用である。
製造ラインに乗せる製品を詳細な部品レベルに分解し、それぞれのプロセスのリードタイムやクリティカルパスを動的に反映させたシミュレーションを行おうとすれば、必然的に画面に表示される項目もどんどん増加していく。また一方では表現・入力要件が多く使いやすいUIが求められる。「そうした場面でもPHPであれば、従来の5250画面では表示領域・CUIの制限で難しかった大量データの表示や入力簡素化といった要件も難なくクリアできる。Web系の言語ならではのメリットです」と同社のサービス開発部部長である田中氏は語る。
さらに、例えば照会・帳票系の機能においてデータの様々な形式での展開に容易に対応できるのも大きなメリットだ。従来のエミュレータ画面のように帳票スプールを印刷したり、別途ファイル転送などの仕組みを組み合わせる必要はなく、WebブラウザからPHPでCSV・Excel形式やPDFなどに変換されたデータを直接ダウンロードし、さまざまなアプリケーションと連携させることができる。「これによりシステム構成は格段にシンプルになり、ペーパーレス化、エンドユーザーのデータ活用も飛躍的に進むのではないでしょうか」と田中氏は強調する。
ただし、オムニサイエンスは決してPHP至上主義に囚われているわけではない。これは非常に重要なポイントである。オムニサイエンスが実際のアプリケーション開発で追求しているスタイルは、ベースとなるビジネスロジックは従来どおりRPGで開発・実行し、ユーザー・インターフェースとなる画面の表現力をPHPで高めるというハイブリッド型での活用なのである。
「既存資産をできるだけ活かして開発工数を削減したいというコスト的な理由もありますが、より大きな業務上の観点から既存のロジックを生かしたほうが処理を高速化できるケースも多々あるのです。たとえば参照系画面においてPHPからSQLを実行して複数のファイルを結合し、サブクエリーや多くのスカラー関数を使いながら結果を導き出すよりも、RPGで中間ファイルを作成したほうがはるかに高速に処理することができます。SQLのパフォーマンスも年々向上していますが、こうしたケースではIBM i上ではまだまだRPGに軍配が上がるのが現実です」と田中氏は語る。
そもそもRPGはIBM DB2を基盤に四半世紀以上にわたって蓄積されてきた重要なデータ資産を、最高のパフォーマンスで活用できるように最適化された言語なのである。
こうした背景からIBM i上のPHPには、既存のRPGプログラムやサービス・プログラムとのシームレスな連携を可能とする独自のツールキットが含まれているのだ。これらのツールキットを利用することで、例えばスプールファイルやデータ待ち行列、ユーザー空間オブジェクトなどに容易にアクセスできるほか、CL連携でプログラムを呼び出すことも可能となっている。これによりリッチなエクスペリエンスを提供するユーザー・インターフェースを PHP で記述しつつ、データベース連携部分はRPGで記述するという柔軟なアプリケーション開発を実践することができる。
したがってRPGをすでにレガシーとなった言語と切り捨て、すべてのビジネスロジックをPHPで再コーディングすべきと考えるのは得策ではない。
実際、開発プロセスの中での利用比率は低下しているとはいえ、オムニサイエンスの中にRPGをなくすという考え方はないようだ。「現時点においてもRPGは非常に優れた言語であり、ILE・SQLRPG・システムAPIなどを活用しながら多種多様な使い方ができます。フリーフォームでのコーディング環境もかなり浸透してきています。こうした点を考慮すると、あらゆるシステムの中にRPGを活用したほうがよい場面は必ずあります」と田中氏は語る。そして、「結論を述べるならば、すでに現場の業務に最適化され、その企業の競争優位性となっているRPGのビジネスロジックを、わざわざコストとリスクを増加させてまで別の言語で焼き直す必要はありません。IBM iを使い続けている限り、RPGは残すべきというのが私たちの基本的な考え方です」と強調する。
PHP on IBM iの普及を妨げるボトルネックとは
違った観点から現状を俯瞰すると、IBM iモダナイゼーションの問題はRPGの技術的な制約にあるのではなく、むしろPHPにあるのかもしれない。実のところ現在の市場では、PHPがいつまでIBM iでサポートされるのかという点について、ある種の疑心暗鬼が生じているというのだ。
「Zend Server for IBM iが、ゼンド・テクノロジーズ社のWebサイトからダウンロードできなくなるといった根も葉もない噂に翻弄されている特約店や代理店が少なくありません。そうした風評がエンドユーザーにまで広がっており、IBM i上でのPHPの普及を妨げるボトルネックとなっているのです」と藤井氏は明かす。
これが完全な誤解であることは、過去から現在に至るIBM iのオープンソース対応への取り組みからも明らかだ。現在のIBM i 7.3はオープンソースと親和性を高めるために提供されたライセンス・プログラム「Open Source Technologies on IBM i (5733-OPS)」のもと、PythonやNode.js、Git、Tools、Orionなど多様な言語や開発・実行環境がサポートされている。PHPもこれとまったく同じ位置づけにある。
こうしたことからもZend Server for IBM iに対する誤解を払拭することが急務となっているのである。最新のPHPとRPGを適材適所で組み合わせたハイブリッド型Webアプリケーション開発のメリットと共に、それに基づいたIBM iモダナイゼーションの実績をより広範な企業に啓蒙および訴求していくことが必要だ。
IBM iモダナイゼーションの主なターゲットとなるのは、顧客との関係強化を図り企業の競争力強化や収益の源泉となる「SoE(System of Engagement)」や「モード2」と呼ばれる“攻めのIT”だ。その開発言語として、スキル習得のしやすさや IBMとゼンド・テクノロジーズ社のサポート体制などからPHP が最有力候補となるのは言うまでもない。
オムニサイエンスはこうしたPHP on IBM iが持つ無限大の可能性を具現化して示すべく、Zend Server for IBM iをプラットフォームに、別途サーバー不要で月額料金方式のBIツール「
PHPQUERY」を提供開始した。さらに、PHP環境の構築から技術サポートまで一貫してスピーディーなシステム構築を支援するスタートパック型のサービス「phpStartPack for IBM i」、PHPとRPGを融合した最新のアプリケーションのプロトタイプ作成や受託開発を行う「PHP on IBM i 受託開発サービス」といった多彩なメニューを取り揃え、IBM iモダナイゼーションに向けた企業の取り組みを全方位でサポートしていく構えだ。
<Company Information>
株式会社オムニサイエンス
本社: 〒104-0033
東京都中央区新川1-16-4 VORT茅場町イースト3F
設立: 2005年 8月 1日(創立:1987年 6月 18日)
事業内容:ソリューション・メディアサービス/インテグレーションサービス
開発支援サービス/労働者派遣事業
URL:
http://www.omni-s.co.jp/