ページの先頭です。
コンテンツエリアはここからです。
注目のキーワード!

vol.2 『OSS(Open Source Software)』 OSSの動向と成果、そして今後

かつてハードウェアメーカーやソフトウェアベンダなどが「作りたいものを作って売る」というプロダクトアウト(product out/ product oriented)に基づく文化がICT市場を支配していた。しかし多様性や細分化が進む時代変化の中で、市場(ユーザ)ニーズを重視したマーケットイン(market in / market oriented)な姿勢への移行が進んでいることは周知の通りだ。

その中で、デファクト・スタンダード(de facto standard:事実上の標準)などの言葉に代表されるように、ICTを巡る標準も業界団体や公的機関ではなく、ユーザが選んだものが結果として標準を形成するという形態に変容しつつある。以前は固有のハードウェアにしばられたり、ソフトウェアベンダごとの独自性の下に築かれたりすることで「囲い込み」が行われてきたソフトウェアの世界にもオープン化の波が押し寄せているのである。その推進役となっているのがOSS(Open Source Software)である。

今回はそのOSSに焦点を当てて、NTTの取り組みや成果、将来像などを眺望していきたい。

OSS(Open Source Software)とは・・・ - ソースコードの公開と共有を基盤に、国や企業を超えて完成度を高める

OSSの特徴

従来、コンピュータを動作させる実行形式の設計図ともいえるソースコードは、ベンダごとにブラックボックス化していた。これに対してOSSは、ソースコードが無償で公開されており、誰もがソフトウェアの改造や技術転用、再配布などを実行することができる。文字通り「オープンソース」なのである。つまり、「プログラムのソースコードを公開し、より多くの人々のさまざまな視点を採り入れることによって、ソフトウェアとしての機能や完成度を高めていこう」というのが、OSSの基本思想だ。

NTTオープンソースソフトウェアセンタ シニア・マネージャの吉田忠城は、OSSについてこう語る。 「初期ライセンス費用が不要である、保守を複数のソフトウェアベンダから選択できるなど、システムやサービスの開発・運用コストを削減することができるメリットに加え、優秀な技術開発者が国や企業の枠を超えて協調することにより、新しい市場や技術を創り上げることができる点がOSSの魅力といえます」

OSS利用のメリット - 自社内に技術力のある企業ほど活用メリットを最大化できる

OSS利用のメリット

OSSは導入(イニシャル)コストを無料、もしくは商用ソフトウェアに比べて非常に安価に抑えることができることは前述したとおりである。

さらに、技術革新のスピードが速く、コストパフォーマンスの高いIA(Intel Architecture)サーバを導入することで初期投資および保守費用を圧縮することもできる。また、ここ数年IAサーバおよびLinuxベースのシステムが一般的になってきており、ミドルウェア領域におけるOSSの活用に焦点は移ってきている。このような潮流の中で導入コストだけではなく、運用(ランニング)コストも抑制するTCO(Total Cost of Ownership)削減のために、企業などがOSSを積極的に利用している。

次にOSS導入メリットとしてあげられるのが、特定のソフトウェアベンダに依存することなく自らの戦略に応じたシステムやサービス開発とサポートが行えることである。また、自ら改造を加えることができるので、開発や利用を通じて蓄積された技術やノウハウ、知見などが自社のシステム資産として蓄積できることなどがある。このようにOSSは、今後のクラウド・コンピューティングの発展の中でも、自社でOSSによってクラウドを構築できるなど大きな戦力として期待されている。

さらに、これらのメリットは独自にソースコードを解析したり、改善したりできる技術力がある企業ほど効果を最大限に発揮できる。
「商用ソフトウェアを使ったシステムでは、導入後のサポートやライセンスなどについてすべてソフトウェアベンダが責任を負っています。これに対してOSSでは、商用製品と同様にOSSを保守する会社にサポートを委託することが可能であることに加え、システムインテグレータやユーザ自身が問題解決にあたることも可能です」

続けて吉田は、OSSはシステムインテグレータにとっても大きなメリットがあると話した。
「システム構築を担うシステムインテグレータは、ユーザへの説明責任を負っています。これまでのシステムは複数の商用ソフトウェアを組み合わせて構築されていますが、それらのソースコードは開示されていませんでした。そこで、例えば障害時に、故障範囲の切り分けが複雑になり、原因追及や解決が遅れたり、ユーザが納得できる説明を十分にできていなかったりしたことも否めませんでした。ソースコードが開示されているOSSでは、あたかも自社製品のように扱うことが可能であり、障害時にも迅速な解析・修正を行うことができます。したがって、ユーザとシステムインテグレータ間のより良好なパートナーシップを確立することもできるのです」

すでにシステムインテグレータやソフトウェアベンダなど1社の固有リソースだけですべてをカバーしたり、囲い込んだりできる時代ではないといえよう。

「OSSは今後のシステム構築に『あるべき姿』を指し示すひとつのカタチだと思います。誰もが必要になる機能をユーザやシステムインテグレータ、ソフトウェアベンダの枠を超えてみんなで作りあげ、各社が開発リソースを自分たちに必要な機能や差異化機能に集中させる、そして陳腐化した機能はOSSに還元してまた新しい機能にリソースを集中させていく・・・そんなエコシステムを築きあげていくことも可能なのではないでしょうか・・・」

NTTのOSSへの取り組み - グループ内へのOSS適用を推進するOSSセンタ

NTTでは、2000年ごろからLinuxを積極的に活用し始め、その後活用領域をミドルウェアに拡大してきた。各種コミュニティやOSDL(Open Source Development Labs:現Linux Foundation)、PostgreSQLユーザ協会などのOSS関連団体と連携しながら、特定のベンダに依存しない技術の確立を追求し、事業会社におけるTCO削減とサービスの質的向上の両立を進めてきた。

OSSセンタの取り組み

そして2006年4月には、研究所はもとよりNTTグループのOSSに関するエキスパートを集結させ、グループ内へのOSS適用を推進するOSSセンタが発足し活動を開始した。OSSセンタの活動は、OSSの普及拡大を目的とした(1)OSSのトータルサポート、(2)適用検証(OSSVERT)による導入推進、(3)技術開発 を柱としている

「OSSセンタ設立以前は、研究所以外でも、例えばNTTデータはデータベース、NTTコムウェアはクラスタリングによる冗長化技術など、各社がそれぞれ自社の強みを軸にOSSの普及活動を展開していました。NTTグループ内に優れたOSS関連技術や知見を有した人材が散在していたのです。そこで、これらの技術を集約し相乗効果を発揮させ、グループ内にOSSを本格展開することを目的にOSSセンタが設置されたのです。システム全体を問題なく動作させるには、OSやデータベース、アプリケーションサーバなどが一貫して機能する必要があります。各分野の技術者が同じ組織で活動することで、最大限の効果が発揮できているといえます」

OSS開発の中心となるコミュニティへの貢献 - 世界中の技術開発者が集うコミュニティ活動に積極参加

世界的にOSSへの関心が高まる中で、その開発の中心となるOSSコミュニティも活発になっている。多くのコミュニティでは世界中の技術開発者が協力し合って開発を進めている。その開発活動となるのがメーリングリストやWeb上の掲示板といったコミュニティであり、そこで活発に議論が交わされている。OSSセンタでは不具合の改善やエンタープライズ・システムに必要な機能を自らコミュニティに提案し、OSSの機能拡張を図ることでOSSの信頼性や可用性の問題を解決してきた。

主なコミュニティ活動状況

「OSSは特定のソフトウェアベンダが独自で提供するソリューションと違って、信頼性や可用性、機能向上の改善に関して、ユーザ相互で自発的な報告や提案を行うことが重要です。そこでPostgreSQLをはじめLinux、Heartbeat/Pacemaker、UltraMonkey、Tomcatなど、さまざまなOSSの開発コミュニティに参加し、不具合の改善や企業システムに求められる機能を提案し、OSSの機能拡張に貢献してきました。また、開発コミュニティの運営にも参画し、OSSの普及に貢献しています」
現在、OSSセンタの研究員の多くが機能拡充や各コミュニティの運営、メーリングリストでの提案やバグの修正などに直接的にかかわっている。

またOSSセンタはグループ内のOSS普及の面でも、ハードウェアを含めたOS、ミドルウェアのトータルな組み合わせの製品群に対して事前に技術検証をしたリファレンス・モデル『OSSVERT(オズバート)』を開発・提供するなどしている。その結果、NTT社内システムへのOSS導入実績も年々拡大し続けている。

NTTのOSS開発コミュニティへの貢献 - オープンソースデータベース管理システム“PostgreSQL”への取り組み

NTTにおけるOSS開発の姿勢や取り組みを、OSSセンタ設立時から関連コミュニティや機能改善に貢献しているPostgreSQLを例にとって紹介してみよう。OSSのDBMS(Database Management System)として、MySQLと並んで注目されているのがPostgreSQLである。PostgreSQLは、各種UNIXをはじめLinuxやWindowsなど複数のOS上で動作し、エンタープライズ・システムでの活用も拡大定着しており、コスト面も含めOSSならではのさまざまなメリットを発揮するものとして注目を集めている存在だ。

ほかのOSSと同様にPostgreSQLは、国際的なユーザ相互の自発的な意志で運営されるコミュニティによって開発が進められており、日本PostgreSQLユーザ会もこれにならい、各企業や団体、大学などに属する技術開発者が、基本的に個人資格による緩やかな自由参加を前提とした運営がなされている。

下の図に示すように、NTTは早い時期からコミュニティにおける開発活動や広報活動に取り組み、新機能追加や機能改善、開発者会議での方向性提案、さらに内部構造にかかわる勉強会やユーザ会ポータルサイトの運営支援などに注力してきた。その結果、NTTグループではすでに自ら100件以上のPostgreSQL導入を推進。バックアップや周辺システムを含めたチューニングなど、実践的な適用実績を積みながら、同時に大きなコスト削減を実現してきたのである。

PostgreSQL本体に関する取組み

また2011年6月には、「オープンソースデータベース技術者認定制度(別ウインドウが開きます) 」が実現。これは中立公正な立場からLinux技術者認定を行う民間非営利団体(NPO)であるLPI Japan(Linux Professional Institute Japan)(別ウインドウが開きます) に対して、OSSセンタが呼びかけたもので、PostgreSQLのさらなるすそ野拡大が加速されることとなった。

2011年、「オープンソースデータベース技術者認定試験」が実現

さらにNTTは、エンタープライズ・システムへの普及・推進を目指して、PostgreSQLの法人ユーザ会結成を呼びかけた。これに応えたPostrgeSQLの保守を提供している大手システムインテグレータやソフトウェアベンダなどの参加によって、2012年4月11日に『PostgreSQLエンタープライズ・コンソーシアム(PGECons)(別ウインドウが開きます) 』が結成された。

「これまでのコミュニティ活動に対する実績や、ベンダフリーな通信キャリアというニュートラルな立場による呼びかけがPGECons設立の背景となった一因といえますが、それ以上に、各社ともユーザからOSSのソリューションを求める声が日に日に強くなっており、システムインテグレータやソフトウェアベンダなどの業界全体で効率的にノウハウを共有していく必要があるとの強い認識があったからこそではないでしょうか。今や1社のリソースですべてをカバーできる時代ではありません。そこで、各社のノウハウや技術、活用情報などの集約、発信、共同検証、開発コミュニティへのフィードバックや開発プロジェクト支援などを行っていくことが重要であり、本コンソーシアムのミッションにもなっています」

将来に向けての組織と人材育成 - 効率的な体制で、国際舞台で交渉のできる人材が活躍

2012年4月1日、OSSセンタはサイバーコミュニケーション総合研究所(2012年7月よりサービスイノベーション総合研究所と名称変更)のソフトウェアイノベーションセンタ内に組織編入された。ソフトウェアイノベーションセンタでは、OSSを活用したオープンイノベーションを軸に、情報システム基盤の技術開発から運用・保守を一元的に実施し、事業に直結する技術開発を進めている。

「もはや、情報システムはOSSなくしては構築できないといっても過言ではないでしょう。クラウド基盤をはじめとしてさまざまなOSSが各研究所のプロダクトに活用されています。そこで、各研究所がこれまで以上に相互に連携しながら、OSSセンタとスクラムを組んでフェーズごとにサポート体制を構築しようという意思の表れなのです」

OSSの世界は、自らソースコードを操作しながら、技術開発者の交流の場ともいうべきコミュニティを運営したり、その中でバグシューティングや機能改善、新機能追加などを行ったり…、まさに新しい時代における技術開発職としての資質が求められる。そこで最後に吉田から、OSSセンタに求められる研究員像について語ってもらった。

「研究開発職では独創性が求められますが、OSSの世界ではまずソースコードが書けることが絶対条件ですね。もちろん良い機能を提案していくにはアイデアやリサーチ力も重要な資質ですが、開発コミュニティのメンバは最終的には提案されるコードによって判断しますし、ほかのメンバから出される修正提案を短時間に吸収していく必要があるため、実際にコーディングできることが基本条件です。もう一つ重要な能力が、語学力や交渉力を含めたコミュニケーション能力です。自分の主張を伝えるという意味ではほかの研究開発でも同じようにコミュニケーション能力が必要ですが、OSS開発では提案したコードが最終的にひとつのプロダクトに統合されていくことになりますので、ほかのメンバに提案内容の必要性を説得したり、誤った修正提案に対して反論したりしていくことも必要になります。コミュニティと連携したOSS開発には、技術力と交渉力を兼ね備えた能力が必要なのです」

※OSSの開発最前線を担う若手研究員のインタビュー記事がこちらに掲載されています。

NTTのOSS分野における最新ニュースの一部

サービスイノベーション総合研究所 ソフトウェアイノベーションセンタ OSS推進プロジェクト(オープンソースソフトウェアセンタ) シニア・マネージャ 吉田 忠城(よしだ ただしろ)

取材協力

サービスイノベーション総合研究所 ソフトウェアイノベーションセンタ
OSS推進プロジェクト(オープンソースソフトウェアセンタ)
シニア・マネージャ
吉田 忠城(よしだ ただしろ)

NTTオープンソースソフトウェアセンタのホームページ(別ウインドウが開きます)



フッタエリアはここからです。