日本生まれのプログラミング言語「Ruby」を、業務システムに採用する事例が増えている。プログラムを素早く開発することが可能で、後から柔軟に変更できることがRubyの特徴だ。システムを安定稼働するための環境も整い始めた。エンタープライズに浸透し始めたRubyの実態と、使いこなすポイントを解説しよう。

(中田 敦)


【無料】サンプル版を差し上げます 本記事は日経コンピュータ11月10日号からの抜粋です。そのため図や表が一部割愛されていることをあらかじめご了承ください。本「Close UP」の全文をお読みいただける【無料】サンプル版を差し上げます。お申込みはこちらでお受けしています。 なお本号のご購入はバックナンバーをご利用ください。

 Rubyは、現在は島根県松江市に在住するまつもとゆきひろ氏が作ったスクリプト言語だ。そのRubyの活躍の場が、当初の消費者向けWebアプリケーションから、企業情報システムにまで広がり始めた()。まずは、エンタープライズにおけるRubyの活用事例を見てみよう。

図●広がるRubyの適用領域
図●広がるRubyの適用領域
小規模な消費者向けWebアプリケーションが中心だったRubyの適用領域が、業務向けシステムにも広がり始めている

 岡山県岡山市に本社がある大手プロペラメーカー、ナカシマプロペラは、「プロペラ生産管理システム」をRubyで開発した。プロペラは、造船会社から1個単位で注文を受け、職人が手作業を交えて製造する。同システムは、プロペラ単品について、リアルタイムで製造コストを算出する。工場の従業員がハンディターミナルを使って、プロペラが製造工程のどこにあるのか、どの程度の工数をかけたのかを入力する。それらの情報を集約するサーバープログラムを、Rubyで開発した。

ミッションクリティカルもRuby

 東京ガスは、ミッションクリティカル領域にRubyを適用した。4000カ所に設置する地震計からリアルタイムに情報を集め、大地震発生時に、危険地域へのガスの供給を10分以内に止める地震防災システム「SUPREME」だ。

 2001年7月に稼働した初代SUPREMEは、すべてC言語で開発した。それを2009年10月に全面刷新。クライアント/サーバー型だった従来システムを、Webアプリケーションに作り替え、サーバープログラムをRubyで開発した。

 Rubyで開発したシステム管理ツールも増えている。2010年10月にセルフサービス方式で利用できるIaaS(インフラストラクチャー・アズ・ア・サービス)を開始した伊藤忠テクノソリューションズ(CTC)は、ユーザーが使うWebベースの管理ツールや課金システムを、Rubyで開発した。

 イーシー・ワンは、パブリッククラウドとプライベートクラウドの双方にある仮想マシンを一元管理する「Monkey Magic」というクラウド向け運用監視ソフトをRubyで開発した。

 三菱UFJインフォメーションテクノロジー(IT)は、オープンソースソフトウエア(OSS)の分散バッチ処理ソフト「Hadoop」を使って基幹系バッチ処理システムを構築するフレームワークを、Rubyで開発している。

 業務用WebアプリケーションをRubyで開発する事例は、もはや枚挙にいとまがない。Rubyの普及に熱心な島根県は、2010年だけで13件の業務用Webアプリケーション開発に、Rubyを採用した。「補助金や交付金、手当や給付金、貸付金償還などの資金管理系の業務」「資格試験や免許の名簿管理システム」「調査集計の統計管理システム」などだ。

 今、企業情報システムなどにRubyが本格的に採用され始めた理由は、(1)開発生産性が高い、(2)利用部門や顧客の要望に合わせて柔軟にプログラムを変更するアジャイル型開発が可能、といった従来からの利点が広く知られるようになったことに加えて(3)Rubyを安定稼働できる体制が整ったから、である。この3点が「エンタープライズRuby」を考える上で欠かせないポイントだ。


続きは日経コンピュータ11月10日号をお読み下さい。この号のご購入はバックナンバーをご利用ください。