オープンソース・ソフトウェア(OSS)とは

コンピューターのモニター、サーバー、雲、ドットの絵文字のコラージュの図
オープンソース・ソフトウェア(OSS)とは

オープンソース・ソフトウェア(OSS)とは、オープン・コラボレーションによって開発および維持されるソースコードのことです。OSSは誰でも自由に使用、調査、変更、再配布することができ、通常は無料で利用できます。

オープンソースは、Microsoft WordやAdobe Illustratorなどのプロプライエタリーまたはクローズド・ソースのソフトウェア・アプリケーションとは対照的です。作成者または著作権所有者は、プロプライエタリー・ソフトウェアまたはクローズド・ソースのソフトウェアをエンドユーザーに販売します。エンドユーザーは、著作権所有者が明記している場合を除き、製品を編集、拡張、または再配布することはできません。

「オープンソース」という用語は、より一般的には、オープン・コラボレーション、包括性、透明性、頻繁な公開更新を通じて、ソフトウェアなどのあらゆる知的財産を作成するコミュニティベースのアプローチを指します。

オープンソース・ソフトウェアの歴史概要

1970年代半ばまで、コンピューター・コードはコンピューターのハードウェアの動作に事実上組み込まれたものと見なされ、著作権保護の対象となる独自の知的財産とはみなされていませんでした。組織は独自のソフトウェアをプログラムし、コードを共有することが一般的でした。

新技術による著作物の使用に関する国家委員会は1974年に設立され、ソフトウェア・コードは著作権保護に適した創作物のカテゴリーであると結論付けました。これにより、独自のソースコードが主な収入源となる、独立系ソフトウェア発行業界が成長しました。パソコンが台頭し、企業のあらゆるデスクや多くの家庭にアプリケーションが普及するにつれて、ソフトウェア市場の競争は激化し、ソフトウェア発行者は財産権の侵害に対してますます神経を尖らせるようになりました。

1983年には、プロプライエタリー・ソフトウェアの制約や制限に対する一種の反乱が始まりました。プログラマーのRichard Stallmanは、ユーザーが各自の目的のために独自仕様のソフトウェアをカスタマイズできないという考え方に憤慨し、「ソフトウェアはビールではなく言論のように無料であるべきだ」と考え、自由にカスタマイズできるソフトウェアという概念を支持しました。

こうしてStallmanはFree Software財団を設立し、AT&T社が所有するUnixオペレーティング・システムに代わるオープンソースのアプリケーションの開発を推進しました。また、世界初のコピーレフト・ソフトウェア・ライセンスであるGNU一般公衆ライセンス(GPL)を作成しました。このライセンスでは、Stallmanが作成したソースコードをカスタマイズした人は誰でも、同様に編集したバージョンをすべての人に無料で公開することが義務付けられました。

Eric S. Raymondが1997年に発表したエッセイ「伽藍とバザール」は、フリー・ソフトウェア運動のもう1つの分水嶺とみなされています。Raymondは、すべての開発がコア・グループ(Raymond氏は「伽藍」と呼んでいました)によって処理される、プロプライエタリー・ソフトウェア開発に典型的なクローズドでトップダウンのアプローチと、インターネット上で自由に共有されるオープンなパブリック開発(同、「バザール」)を対比しました。その後まもなく、Netscape社がMozillaブラウザーのコードをオープンソースとしてリリースし、オープンソース運動が本格化しました。

Stallmanの「フリー・ソフトウェア」という用語は、ソフトウェアの主な価値として「無料」を強調しすぎていると多くの人が感じたため、1999 年に「オープンソース」という言葉に置換されました。これを推進するために設立されたOpen Source Initiativeは、オープンソースの定義を通じて業界の基本ルールを確立し、準拠したオープンソース・ライセンスをホストしています。現在、フリー・ソフトウェア、オープンソース・ソフトウェア、フリーおよびオープンソース・ソフトウェア、フリーまたはリブレ・オープンソース・ソフトウェアという用語は、すべて同じもの、つまり、一般に使用およびカスタマイズできるソースコードを備えたソフトウェアを指します。

エンタープライズ向けコンピューターおよびパソコンにおけるオープンソース

オープンソース・ソフトウェアは現在、コンピューターで重要な役割を果たしており、オープンソース・テクノロジーはインターネット、ビジネス向けコンピューターやパソコンの基盤を提供しています。現在、ほぼすべてのコンピューティング・デバイスには、さまざまな種類のオープンソース・コードが含まれており、通常は開発者が基本的な操作をおこない、多くの場合はより高度な機能を実行するために採用されています。

最も一般的なオープンソース・ソフトウェア・アプリケーションには次のようなものがあります。

  • Unixオペレーティング・システムのオープンソース代替オプションであるLinuxオペレーティング・システム

  • Netscape NavigatorをベースにしたWebブラウザーであるMozilla Firefox

  • Microsoft Officeに匹敵するオフィスの生産性向上アプリケーションのスイートであるLibreOffice

  • Adobe Photoshop のオープンソース代替オプションであるGIMP(GNU画像編集プログラム)

  • 動画を視聴するためのクロスプラットフォーム・アプリケーションであるVLCメディア・プレーヤー

オープンソース・プログラムは、ネットワーク、エンタープライズ、クラウド・コンピューティングでも広く使用されています。ITプロフェッショナルが組織内で最も一般的に導入されているオープンソース・ソフトウェアのカテゴリーとして挙げているのは次のとおりです。

  • プログラミング言語とフレームワーク

  • データベースとデータ・テクノロジー

  • オペレーティング・システム

  • Gitベースのパブリック・リポジトリー

  • 人工知能、機械学習、ディープラーニングのフレームワーク

ユーザーと企業がオープンソースを選択する理由

オープンソース・ソフトウェアを選択する理由は、人や組織によって大きく異なります。多くの場合、エンドユーザーは自分のコンピューターやモバイル・デバイスに組み込まれているオープンソース・プログラムにまったく気づいていません。エンドユーザーがMozilla FirefoxブラウザーやAndroidアプリなどの無料アプリケーションをダウンロードすることも一般的です。これらのユーザーは、ソフトウェアの機能だけを望んでおり、ソースコードを書き直したり、確認したりする意図はありません。

一方、企業は、コストが低い(または無料)、ソースコードをカスタマイズできる柔軟性、またはアプリケーションをサポートする大規模なコミュニティーの存在を理由に、独自の代替ソフトウェアよりもオープンソース・ソフトウェアを選択する場合があります。プロまたはアマチュアのプログラマーは、評判を高めるため、あるいはこの分野の他の人とつながるために、開発やテストのスキルをオープンソース・プロジェクトにボランティアで提供することも多くあります。現在では、オープンソース・ソフトウェア開発の活性化をサポートし、高品質の製品を保証するために、企業がオープンソース・プロジェクトに従業員を参加させることが一般的になっています。

オープンソース製品を使用すると、企業はライセンス費用を節約できますが、ネットワーク統合、エンドユーザーおよびITサポート、およびプロプライエタリー・ソフトウェアに通常含まれるその他のサービスにかかる費用など、その他の費用が発生する可能性があります。それでも、多くの企業は、エンタープライズ向けオープンソース・ソフトウェアは少なくともプロプライエタリー・ソフトウェアと同程度に信頼性が高く安全であると考えており、プログラム・コードを調べてコンピューティング・インフラストラクチャーに何が追加されるかを正確に理解できるため、オープンソース・ソリューションの方が安心だと感じています。

オープンソース・ソフトウェアの開発手順

オープンソース開発モデルは、あらゆる種類を網羅しています。膨大な数のオープンソース・プログラムは、単独のプログラマーまたは小規模のプログラマー・チームによって開発されています。例えば、プログラマーのGuido van Rossumは、1989年のクリスマス休暇の週に自由な時間ができたため、人気のプログラミング言語であるPythonの開発を始めたと述べています。同様に、Apache Webサーバーは、ソフトウェア開発者のRobert McCoolがスーパー・コンピューティング・プログラムの大学生として作成したサーバー・ソフトウェアを強化するために協力し合う少人数のプログラマー・グループから始まりました。

これらや同様のオープンソース・プロジェクトが成熟するにつれ、何千人ものプログラマーが数え切れない行数のコードを提供し、ソフトウェアのテスト、ドキュメントの作成、プロジェクトWebサイトの構築などを行うようになりました。

一方、Kubernetesコンテナ・オーケストレーション・プラットフォームはもともと、Googleのサーバー・ワークロードのバランスを取るために社内で作成されたテクノロジーのオープンソースとして、Googleのエンジニアによる開始されました。Googleは、非営利財団のLinux Foundation内にCloud Native Computing Foundationという新しいコンソーシアムを設立し、このプロジェクトをオープンソース・コミュニティーに導入しました。それ以来、大手コンピューター企業の代表者を含む何千人もの開発者が、進化するカーネルの開発に取り組んできました。

時間が経つにつれて、エコシステムはオープンソース・ソフトウェア・プロジェクトをサポートする必要がでてきます。GitHub、Bitbucket、SourceForge、Google Codeなどのコード・ホスティング・サービスは、多様な分散ワークグループが共同作業してオープンソース・プロジェクトを管理できるようにする一元管理リポジトリーやバージョン管理などを担います。GitHubだけでも8,300万人の開発者と2,000万を超えるオープン・プロジェクト・リポジトリーが登録されており、各リポジトリーはオープンソース・プロジェクトの固有のブランチを表しています。

前述のFree Software FoundationやOpen Source Initiativeなど、オープンソース・プロジェクトの継続的な維持をサポートし、資金を提供する非営利団体が数多く登場しています。また、Linux Foundationなどのアプリケーション固有の財団が数多く存在し、特定のオープンソース・プログラムや、それらのテクノロジーをサポートする関連プロジェクトをサポートしています。

オープンソース・ソフトウェアと知的財産

「オープンソース」と「プロプライエタリー」は、アプリケーション内に組み込まれた知的財産 (IP) の所有権に対する二者択一のアプローチを表します。オープンソースでは、知的財産の所有権に営利目的はなく、知的財産は公共の利益を目的としています。対照的に、プロプライエタリー・ソフトウェアは、サブスクリプション料金またはプロプライエタリー・ライセンス料金を請求することで知的財産の価値を収益化します。

しかし、オープンソース・ソフトウェアの背後にある考え方は、主に反営利や反資本主義ではなく、むしろ、ユーザー・コミュニティーに委ねることにより、ソフトウェアはより多くのユーザーに大きな価値を提供することができ、自然に可能性を最大限に実現できるというものです。史上最大のオープンソース・プロジェクトであるインターネットは、もともと学術論文を共有するために使用されていました。その限られたユースケースを超えたものはすべて、無数の人々が新しい可能性を思い描き、実装した成果です。

オープンソース・ソフトウェアは一般に無料で公開されていますが、所有権のない知的財産の法的カテゴリーであるパブリック・ドメインではありません。オープンソース・ソフトウェアの作成者は、従来の著作権を巧妙にひねり、ソースコードの無制限の公開使用、変更、再配布を許可する一方で、他者がそのコードに基づいて独自の著作権保護されたソフトウェアを作成することを禁止する「コピーレフト」と名付けた概念を生み出しました。しかし、今日では100種類を超えるオープンソース・ソフトウェア・ライセンスが存在し、その中にはオープンソース・コードに基づいて作成された派生作品に著作権を付与して販売することを許可しているものもあります。これにより、オープンソース・ソフトウェアを開発する人々のビジネス・チャンスが拡大します。

オープンソース・ソフトウェア・ライセンス

前述したStallmanのGPLは、結果として得られるコードが誰でも自由に使用できるように公開される限り、誰でも自分の好きなようにソフトウェアを書き直すことができると規定していました。このように、GPLコピーレフト・ライセンスは、新しい種類の準パブリック・ドメイン知的財産を作成しましたが、元の著作権所有者によって課された法的に強制可能な制限により、後から他者による制限的な所有権の主張から保護されました。

それ以来、数多くのオープンソース・ソフトウェア・ライセンスが作成され、Open Source Initiativeには100件を超える承認済みオープンソース・ライセンスがリストされています。これらのいくつかでは、オープンソース・コードから独自の製品を作成できます。

オープンソース・ライセンスは、ユーザーが自分の作品の著作権を主張できる「パーミッシブ(許容型)」ライセンスと、コピーレフトのような「保護型」ライセンスに分類されることがあります。MITおよびBSDオープンソース・ライセンスは最も一般的に使用されているパーミッシブ・ライセンスですが、GPLは最も一般的に使用されている保護的なコピーレフト・ライセンスの1つです。多数の代替ライセンスがGPLまたはMITと互換性があるため、このライセンスに基づいて作成されたソフトウェア・コードは、GPLまたはMITライセンスを使用する別のアプリケーションで使用できます。

オープンソースのビジネス・モデル

オープンソース・ソフトウェアの作成は高尚で慈善事業のようにも思えますが、作成、維持、進化には作業が必要であり、この作業を完了するにはお金がかかります。幸いなことに、企業が成功できるオープンソース・プロジェクトおよびそれらを中心に構築された方法は数多くあります。

1つのルートは、財団への寄付です。企業は、オープンソース・ソフトウェアが大幅なコスト削減で非常に重要な機能を提供するため、オープンソース・ソフトウェアのサポートに関心を持っており、多くの場合、資金を寄付したり、従業員をオープンソース・プロジェクトに参加させたりします。しかし、これは主に技術の長期メンテナンスを提供するものであり、オープンソース・プロジェクトの利益にはつながりません。

より一般的なビジネス・モデルは、サポートと専門知識に対して顧客に料金を請求することです。1993年、Red Hatは、Linuxオペレーティング・システムのエンタープライズ再配布版の販売を開始し、キュレーションされていない継続的に更新されるオペレーティング・システムを導入する際に企業が遭遇する可能性のある問題を解決することを特に目的としたサポートと追加機能を有料で提供し始めました。2012年には、収益が10億ドルを超えた最初のオープンソース・ソフトウェア企業となり、2019年にはIBMが340億ドルでRed Hatを買収しました。これは史上最大のソフトウェア買収案件となりました。

また、もともとブログ・プラットフォームだったWordPressは、現在ではWebサイトの構築、管理、ホスティングに広く使用されています。使用レベルに応じて選べるサブスクリプション料金で、クラウドベースまたはサービスとしてのソフトウェア・プラットフォームとして動作し、Webホスティング、サポート、および追加のサイト機能(eコマース機能やSEOツールなど)を提供しています。

他のオープン・ソフトウェア作成者は、ソフトウェアに対して料金を請求しませんが、ソフトウェアが生成するトラフィックによって大きな収益を得ています。例えば、GitHub社はサイトに表示される広告に基づいて、また、Mozilla Firefoxはサポートしている検索エンジンから、それぞれ収益を得ています。

関連ソリューション
Red Hat software on IBM Cloud

IBMとRed Hatソリューションは生産性を向上させ、コストを削減し、ビジネス成果を向上させます。

IBMとRed Hatのソリューションの詳細はこちら
IBM LinuxONE

IBM LinuxONEは、企業向けシステムを構築してきたIBMの経験と、Linuxオペレーティング・システムのオープン性が融合した、エンタープライズ・グレードのLinuxサーバーです。

LinuxONEの詳細はこちら
Linux on IBM Z 

IBM Zメインフレーム・プラットフォーム上のLinuxオペレーティング・システムは、ハイブリッド・マルチクラウド上のデータ・プライバシーとサイバー・セキュリティーを特徴としています。

Linux on IBM Z を探る
Enterprise Linux on IBM Power

Enterprise Linux on IBM Powerを使用すると、業界をリードするクラウドネイティブの導入オプションにより、信頼性、セキュリティー、拡張性など、オープンソース・テクノロジーからより多くのメリットを享受することができます。

Linux on Powerの詳細はこちら
次のステップ

Red Hat OpenShift on IBM Cloud は、エンタープライズ ワークロードを Kubernetes クラスターにコンテナ化してデプロイするための高速かつ安全な方法を開発者に提供します。セキュリティ管理、コンプライアンス管理、展開管理、継続的なライフサイクル管理を含む、退屈で反復的なタスクの負荷を軽減します。

Red Hat OpenShift on IBM Cloudの詳細はこちら 無料で始める