
オープンソースとは?基礎知識と企業がOSSを利用するメリット・デメリットを解説
- 2017年9月25日
- ニュース
IT企業や自社のWeb業務を行っている方であれば、「オープンソース」という単語を一度は耳にしたことがあるでしょう。オープンソースのソフトウェアの領域は非常に広く、 CMS の「 WordPress 」、 OS の「Linux」や「 Android 」、 FTP ソフトの「FileZilla」などがあります。
業務を行う上で、これらのソフトウェアを利用したことのある方も多いのではないでしょうか。とはいえ、「オープンソース」とはなにかいまいちピンと来ない方もいるはずです。
今回は、オープンソースに関する基礎知識や、オープンソースのソフトウェアを利用するメリット・デメリットについてご紹介します。
オープンソースとは
オープンソースとは、ソフトウェアのソースコードが一般公開されており、ソースの改変や再配布を行えるライセンスを指します。
先述の WordPress やLinuxなどは、オープンソースライセンスのソフトウェアなので「オープンソースソフトウェア(略称: OS S)」と呼びます。有志の開発者たちによって手がけられており、ソフトウェアの発展や改善を目的に進められる取り組みとして行われています。利用もソースコードの改変もすべて無料で自由に行えるのが特徴です。
また、有名なオープンソース・ソフトウェアは、フォーラムやコミュニティが公開されており、技術に関する議論や情報交換が活発に行われ、継続的にアップデートされています。
フリーウェア(フリーソフト)との違い
無料で利用できるという点から、フリーウェア(フリーソフト)と似ているため、違いがわからないという方もいるでしょう。フリーウェアは、その名の通り無料で利用できますが、ソースコードは公開されていない場合があります。
また、 広告 課金制などで無料化している場合もあり、オープンソース・ソフトウェアと比べ、提供者の商業的な側面が強いのがフリーウェアの特徴です。
オープンソースのライセンス
オープンソースは大きく分けて3つのライセンスが存在します。それが、「GPL」「MPL」「BSD」です。次に、それぞれのライセンスの特徴について解説します。
GPL
「GPL」は、 WordPress やLinuxで採用されているライセンスです。オープンソース・ソフトウェアの中で一般的に採用されており、「著作権表示」「複製や改変、頒布の自由」「GPLのソフトウェアを利用した プログラム を提供する場合GPLでなければならない」というルールがあります。
BSD License
「BSD License」は、カルフォルニア大学バークリー校から誕生したライセンスです。PHPやApacheなどに採用されているライセンスで「再頒布時の著作権表示」というルールのみで利用できます。
MPL
「MPL」は、Mozilla Public Licenseの略称で「Firefox」「Thunderbird」などMozilaソフトで採用されるライセンスです。再頒布を自由に行うことができ、ソースコードも自由に取得できます。GPLに非常に近いルールのライセンスと言えるでしょう。
オープンソースソフトウェアのメリット・デメリット
オープンソースソフトウェアを利用する上でどのようなメリット・デメリットがあるのかについてご紹介します。
メリット
オープンソースソフトウェアは、ソースコードを自由に改変したりソフトウェアのカスタマイズが行えることがメリットです。自社のシステム要件に合わせたり、利用者自身が求める仕様に改変できるため、市販のソフトウェアでは対応できない場合に活用できるでしょう。
また、特定の企業から販売されているわけではないため、倒産や閉鎖によって利用できなくなることがないのもメリットと言えるでしょう。
デメリット
オープンソースソフトウェアのデメリットは、開発に関するスキルが無い場合、取り扱いが難しい点です。サポートが無い場合が多く、利用者コミュニティやフォーラムを頼る必要があります。そのため、トラブル対応に時間を要する可能性があります。
また、オープンソースソフトウェアは定期的にアップデートする義務がないため、バグや脆弱性を発見した場合、利用者自身が対応する必要があります。企業で導入するにあたり、利用したいソフトウェアに知見のある担当者を配置する必要があるでしょう。
オープンソースソフトウェアの種類
「オープンソースソフトウェア」は特定のソフトウェアを指すものではありません。 OS からアプリケーション、 プログラム 言語まで様々な領域で提供されているのが特徴です。
一般的に、オープンソースソフトウェアは下記の領域で提供されています。
OS
(Linux、Ubunts、
Android
など)
アプリケーション(Firefox、Thunderbird、LibreOfficeなど)
データベース
(Apache、MySQLなど)
サーバー(AppWeb、Lightedなど)
CMS
(
WordPress
、
EC
-CUBE、PukiWiki)
開発支援(Eclipse、Ruby on Railsなど)
プログラム
言語(PHP、Ruby、Pythonなど)
セキュリティ(Apache SpamAssasin、IPCoo Firewallなど)
ビッグデータ
収集・解析(Logstash、Fluent、Apache Hadoopなど)
上記のように、 OS やアプリケーション、 CMS など一般 ユーザー に広く利用されるものから、 プログラム 言語などエンジニアにとって身近なものまであります。
また、近年では ビッグデータ に関するオープンソースソフトウェアの取り組みも活発に進められ始めています。
まとめ
オープンソースのソフトウェアは、すべて無料で利用でき、ソースコードが公開されているためカスタマイズも自由に行えるのが特徴です。自社の業務要件に合わせることや、担当者自身の好みに合わせてカスタマイズできるため、既存のソフトウェアよりも汎用性が高いというメリットがあります。
一方で、オープンソース・ソフトウェアは公式サポートを行っていない場合も多く、トラブル時の緊急対応が難しいというデメリットがあります。
自由に利用できる反面、バグやセキュリティ面でのトラブルは利用者自身が対応しなければならないため、知見のある担当者が管理できる環境を準備しておきましょう。