OSS(オープンソースソフトウェア)とは?企業にもたらす6つのメリットとデメリット

オープンソースとは

一般的にオープンソースというと、ソースコードが開示されている状態という認識の人が多いのではないでしょうか。
「オープンソース」という名称は、1998年にOpen Source Initiative(OSI)という団体が作ったものです。OSIはソースコードが開示されているだけではなく、自由な利用、再配布を認めているソフトウェアに対してオープンソースという名称を採用し、オープンソースであるソフトウェアの定義を掲げました。
OSIが定めたオープンソースの定義は以下に記載する10の条項からなります。

1. Free Redistribution(再頒布の自由)
2. Source Code(ソースコード)
3. Derived Works(派生ソフトウェア)
4. Integrity of The Author's Source Code(作者のソースコードの完全性)
5. No Discrimination Against Persons or Groups(個人やグループに対する差別の禁止)
6. No Discrimination Against Fields of Endeavor(利用する分野に対する差別の禁止)
7. Distribution of License(ライセンスの分配)
8. License Must Not Be Specific to a Product(特定製品でのみ有効なライセンスの禁止)
9. License Must Not Restrict Other Software(他のソフトウェアを制限するライセンスの禁止)
10. License Must Be Technology-Neutral(ライセンスは技術中立的でなければならない)

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

オープンソースソフトウェア(以下、OSS)とは、前述したオープンソースの定義に従っているソフトウェアです。プロプライエタリ・ソフトウェアとは異なりソースコードが公開され、改良や再配布を行うことが許可されているソフトウェアのことです。

OSSとフリーウェアの違い

OSSと似たようなソフトウェアにフリーウェア(フリーソフト)があります。
フリーウェアも無償で利用できますがソースコードが公開されていないものも多く、ソースコードの監査や脆弱性チェックなどを行う事ができません。
改良、再配布といった権利もフリーウェアでは認められていない場合もあります。
一方、OSSは、原則として「ソースコードが公開されている」「再配布が可能」です。しかも、OSSはOSやデータベースといった企業の利用を目的とし、 企業が要求する利用環境に耐える性能や機能、品質を実現しています。
OSSは脆弱性対策やバグ修正、機能追加・拡張などを常に継続・維持するために、世界中の多くの開発者が参加するコミュニティ(以下、OSSコミュニ ティ)や開発元企業で開発しています。
このようにOSSとフリーウェアは全く異なるソフトウェアです。

OSSのライセンス

OSSは改良や再配布を行うことが誰に対しても許可されていますが、まったくの無条件というわけではありません。このような改良や再配布を行う際の 利用事項を定義したものがOSSライセンスです。
代表的なOSSライセンスには、GPL、MIT、MPL、AGPLなどがあります。

オープンソースソフトウェアが企業にもたらす6つのメリット

OSSを利用するメリットについて一番最初に「コスト削減」という事を思い浮かべると思います。しかし「コスト削減」を含めて様々なメリットがある事を知らなければなりません。
一般的には以下のメリットがあると言われています。

  1.信頼性
ソースコード公開によって、不正なプログラムや脆弱性などの確認(監査)を行う事ができ、ソフトウェア自身の信頼性を判断する事ができます。また、発見された脆弱性やバグに対してもいち早く修正を行う事ができます。
メリット:ソースコードの信頼性
 2.安定性
プロプライエタリ・ソフトウェアではサポート打ち切りなどによるアップグレードを余儀なくされます。
しかしソースコードが公開されているOSSではメンテナンスを継続する事が可能です。
メリット:長期間の安定して利用
 3.監査能力
OSS利用メリットとして、あまり知られていないメリットが監査能力です。公開されないソースコードではどのようなプログラムが動作をしているのか監査をする事はできません。それにバグ・脆弱性があったとしても開発したベンダーでしか確認及び修正を行う事ができません。OSSの場合は第三者機関に監査を依頼するなど様々な選択が可能です。
メリット:監査可能なソフトウェア
 4.柔軟性と自由

OSSは国際標準規格のプロトコル及びAPIを備えており、システム間連携やプラグインの開発が容易に実現できます。さらにソースコード自体に修正を行う事も可能です。既存システムとの連携やスマートデバイス対応、将来に備えたIoTやM2Mの対応など様々な業務や市場の変化に柔軟に対応可能です。
メリット:既存システムを有効活用(エコシステム)し、変化する様々な事情に対して柔軟対応
 5.コスト

OSSはライセンス費用は無償となります。関連業務としての資産管理(ライセンス管理)業務の削減、ライセンス違反の脅威からの解放、サポート打ち切りに伴う定期的なリプレース費用や工数の削減など。OSSがもたらす統合的なコスト削減効果は大きなメリットとなります。
メリット:システム導入から運用に関する統合的なコスト削減
 6.サポートの選択
オープンソースソフトウェアのサポートには「コミュニティ版をサポートするサービス(コミュニティ版)」と「サブスクリプション契約に基づくサポート(商用版)」の2種類があります。コミュニティ版は導入から運用まで全て自己責任となりますが、それを支援サポートするのがコミュニティ版のサポートです。サブスクリプション(商用版)は商用ソフトウェアと同様にバグ・脆弱性への対応、法的保証、サポートレベルなどをコミットしています。システムの重要度や利用用途に応じて「コミュニティ版」 or「商用版」の選択を行う事ができます。
メリット:システムによってサポートレベルを選択できる

オープンソースソフトウェアの利用に関する課題

オープンソースの課題調査

緊急時にサポートが迅速に受けられない

オープンソースコミュニティで公開されている情報や、コミュニティへの質問を通じて問題解決できる事もありますが、情報を見つけられなかったり、質問をしても期待するスピード感で回答が得られない、または回答自体を得られないこともあります。

OSSを管理できる社内のエンジニアが少ない

サポートが無い場合、問題を自力で解決するしかありませんが、大量のマニュアルの確認やソースコードの解析が必要となるため、OSSを扱うスキルがあるエンジニアが必要になることがあります。

ベンダーやSIerのサポート継続性に不安

ベンダーやSIerが提供しているOSSのサポートが打ち切られる可能性もあります。また、OSSコミュニティ自体がクローズする場合もあります。

セキュリティ(脆弱性)などに不安がある

OSSは自由に改良することが可能なため、その過程で意図しない脆弱性や不具合が発生する可能性があります。また、通常の製品は脆弱性や不具合が見つかった際、自動でアップデートされるものがありますが、OSSは自主的に情報を取得し、メンテナンスを行う必要があります。

OpenStandiaではこれらの課題を解決するための様々なサービスや取り組みを提供しています。
「オープンソースソフトウェア利用の課題を解決する」はこちらです。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気midPoint
  • 人気Keycloak
  • 注目MongoDB
  • ForgeRock AM(OpenAM)
  • ForgeRock IDM(OpenIDM)
  • MongoDB
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • PostgreSQL
  • Apache Struts
  • Apache Kafka
  • Apache Hadoop
  • Apache Spark
  • Spring Framework
  • Apache Tomcat
  • Solr
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • ForgeRock DS(OpenDJ)
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • BIND
  • Dovecot
  • Pentaho
  • sendmail
  • Courier-IMAP
  • ForgeRock DS(OpenDJ)
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO