infoTek インフォテック株式会社

テクノロジー情報 TOPTechnology

Technologyオープンソースソフトウェアを使おう (第2版)

はじめに

本稿を最初に掲載したのは、2001年です。そのころはオープンソースソフトウェア(OSS)という言葉自身がまだ珍しかったのですが、今ではオープンソースソフトウェア(OSS)は広く認識され、システム構築の際の重要な選択肢と考えられています。

しかし、特に日本の企業では、マネジメントや技術上の制約により、OSSを充分活用できていないケースも多く見受けられます。ここでは、OSS活用の可能性を考えてみます。

OSSとは

OSSとは1998年にエリック・レイモンド等によって設立されたオープン・ソフトウェア・イニシアティブ(OSI)が定義するライセンス形態に従って流通しているソフトウェアを指します。OSIの意図は、従来、さまざまなライセンス形態で配布されている無償ソフトウェアを統一的な名称と概念で定義することにより、特にビジネスでのオープンソースソフトウェアの確立を目指したものといえます。

OSIでは、OSSの要件として10の条件を挙げ(オープンソースディフィニション:OSD同日本語版) OSSを定義し、これに沿って 70弱のライセンスをOSSとして認定しています。

OSDの中でも重要な原則は、1)ロイヤリティやライセンスによりユーザの再配布を制限しないこと、2)ソースコードを公開すること、3)ソースの修正及びその配布を認めることなどです。配布を有料としたり、商用ソフトと一緒に配布することは許されています。

OSSについては、批判もあり、特にフリーソフトウェアの元祖ともいうべきフリー・ソフトウェア・ファウンデーション(FSF)(1985年設立)のリチャードストールマンは、OSSに異議を唱え、フリーソフトウェアという呼び方を使いつづけると明言しています。

OSS成立の背景に興味のある方は下記の資料を参照してください。

  • 「伽藍とバザール」(エリック・レイモンド著、山形浩生訳、光芒社 1999年)

    表題の論文の他、関連する論文、著者インタビューを収録。 ウェブ公開版

  • 「オープンソースソフトウェア」(Chris Dibona等編著、倉骨彰訳、オライリー・ジャパン 1999年)

    エリック・レイモンド、リチャード・ストールマン等オープンソースコミュニティのリーダによる論文集。 ウェブ公開版

OSSのメリット

1.ライセンス費用がかからない

一番わかりやすいメリットです。このメリットはシステムの検証や調査を行うとき、実験的な導入を行うときなどに効果があります。ライセンス購入費用の予算化が不要になるからです。また複数のサーバや多数のユーザで使用するシステムでも大きなコスト削減効果が期待できます。

情報システムに必要無費用は、ライセンス費用だけではなく、ハードウェア、開発、運用、導入・教育などさまざまなものがあります。ライセンス費用節約のメリットは、導入する企業のOSSの習熟度や経験、システムの種類により大きく異なります。

2.ソースが公開されている

OSSの他のメリットを生み出している本質的な特性といえます。個々の企業にとっては、1)業務に合せたソフトウェアのカスタマイズができる、2)障害発生時の直接的な原因究明と対応 が可能になるといったメリットにつながります。

3.コミュニティからのフィードバック

オープンソースソフトウェアは、多種多様な人がオープンに開発や利用に関わっているコミュニティにより支えられています。このため、問題が発生した時にも、その伝播が早く、様々な角度からの調査やソースの修正などの対策を期待できます。

このようなメリットは、そのソフトウェアに関わるコミュニティの運営や活発度に大きく依存します。きちんと法人化され、メーカーに匹敵するサポートや情報を期待できるコミュニティもあれば、ほとんど開店休業状態のソフトウェアもあります。

また、ユーザはソフトウェア利用のメリットを享受するだけでなく、コミュニティになんらかの形で貢献することを期待されている点にも配慮すべきでしょう。

4.最新のテクノロジーに対応

インターネットに関わる標準のの多くに、オープンソースコミュニティに関係する人々が関わっています。また開発に携わるエンジニアは新しいテクノロジーの応用に関心を持っています。このため、多くのオープンソースソフトウェアが新しい開発ツールやテクノロジーに基づいて開発されており、むしろ商用ソフトウェアより先進的な動きを見せているプロジェクトも少なくありません。

OSSのデメリット

1.責任の所在が明らかでない

メジャーなOSSについては、法人組織としてサポートを提供するケースも増えていますが、OSSでは、ユーザの自己責任が原則です。なにかあったとき、メーカーに責任をとらせるといいう解決策はとれません。このため、企業にとって導入の責任をどうとるかという点が、マネジメント上、あるいは心理上負担になるケースが多いと考えられます。

2.導入のための負担が大きい

Windows系ソフトのノウハウ蓄積に精力を傾けてきた企業にとって、Linux他の開発や運用ノウハウを新たに獲得するのは大きな負担となります。 特に社内の開発要員が少なく、情報インフラ の運用に重点をおいてきた情報システム部門にとって、OSSに基づく開発や運用への移行は困難な課題といえます。

3.サポートやドキュメントが手薄である

メーカー他多くのベンダーがOSSに関連するサポートメニューを充実させ、OSSの書籍やネット情報も急速に増加しています。それでもソフトウェアにより英語だけのドキュメントが多いといった課題は残っています。

どのように使えばよいか

まずはちょっとした開発を

OSSの中でもWebアプリケーションを開発するPHPなどの開発ツールは実績(当社の開発例)も多く品質、性能も優れています。シンプルでコンパクトなシステムを容易に開発できまるので、社内イントラネットでのちょっとした情報系システムの開発にもうってつけです。

自社独自での開発が難しい場合には、最初のシステムを信頼できる会社に外注し、メンテナンスを社内で行うアプローチも可能です。PHPなどのスクリプト言語は一定の知識があればちょっとした改修を自分で行うことも可能です。当社ではそのようなスタイルの開発もお手伝いすることができます。

関心のあるアプリケーションやツールを実験

OSやメールなど基本的なソフトウェアが代表的なOSSでしたが、最近ではほとんどの業務分野でOSSが提供されています。その中で貴社が関心をもっている分野があれば、調査も兼ねて実験的に導入して評価してみるのもひとつの方法です。ライセンス費用がかからないメリットを最大限活かすことができます。

例えば最近あらためて注目を集めているビジネスインテリジェンスの分野でも、主なものだけでPentaho(日本代理店)やJaspersoft(日本代理店)、日本のソフトでは、OpenOLAPなどがあげられます。調査も兼ねてこれらのソフトを評価し、良い結果となれば本格導入に移行していくこともできます。

また、システム管理やコラボレーションソフトなどの分野ではツールとして導入が容易なものがあります。とりあえずこれらのツールを使うことにより、OSSに慣れていく方法もあります。

ソフトウェアの評価にもそれなりのスキルと手間が必要です。社内でなかなか工数がとれない場合には、当社が評価、導入作業をお手伝いすることも可能です。