コンピューティング分野において、オープンプラットフォームとは、公開され、完全に文書化された外部アプリケーションプログラミングインターフェース(API)などのオープンスタンダードに基づくソフトウェアシステムを指します。これにより、ソースコードを変更することなく、ソフトウェアを元のプログラマの意図とは異なる方法で動作させることができます。これらのインターフェースを使用することで、サードパーティはプラットフォームに統合して機能を追加できます。[1]これと反対のものがクローズドプラットフォームです。
オープンプラットフォームはオープンソースであることを意味するわけではありませんが、ほとんどのオープンプラットフォームは複数のAPI実装を備えています。例えば、Common Gateway Interface (CGI) は、オープンソースのウェブサーバーやMicrosoft Internet Information Server (IIS) に実装されています。オープンプラットフォームは、独自仕様、オープンソース、あるいはその両方のソフトウェアコンポーネントまたはモジュールで構成される場合があります。また、CGIのようにオープンプラットフォームであるクローズドプラットフォームの一部として存在する場合もあります。一方、CGIを実装する多くのサーバーは、オープンプラットフォームに含まれない 独自仕様のコンポーネントも備えています。
オープンプラットフォームとは、ベンダーがそのような機能を許可し、場合によってはサポートしていることを意味します。オープンプラットフォームを利用することで、開発者はプラットフォームベンダーが未完成または想定していなかった機能や機能を追加できます。仕様が公開されたオープンスタンダードであるため、開発者は既存の機能を変更することができます。
サービス指向アーキテクチャ(SOA)は、サービスとして実行されるアプリケーションが、複数のシステム間やインターネット経由などの分散コンピューティング環境からアクセスすることを可能にします。Webサービスの主な目的は、プラットフォームやプログラミング言語に依存しない標準的なインターネットプロトコルを介して、機能的な構成要素にアクセスできるようにすることです。オープンなSOAプラットフォームは、誰もがこれらの構成要素にアクセスし、対話することを可能にします。
2008年にハーバード・ビジネス・スクールが発表した「プラットフォームのオープン化:方法、時期、そしてなぜ?」というワーキングペーパーでは、プラットフォームのオープン性を4つの側面から区別し、プラットフォームの例を示しました。[2]