|
過去10年間、オープンソースソフトウェアは組み込みシステムを席巻してきました。Netscapeの共同創業者であり、LinkedInの主要投資家でもあるMarc Andressen氏は最近、「ソフトウェアが世界を飲み込む」と題した記事を発表しました。組み込みソフトウェアは現在、他のどの種類のソフトウェアを合わせたよりも多くのアプリケーションで使用されています。輸送、セキュリティ、ヘルスケア、食品、農業、防衛、エンターテインメントといった分野において、組み込みソフトウェアは中心的な役割を果たしており、実際、これらの産業のあらゆる分野が、様々な形で私たちの日常生活に深く組み込まれています。 組み込みソフトウェア設計の複雑さは指数関数的に増大しています。これは、ある意味では、過去40年間、ゲートの複雑さが18ヶ月ごとに倍増してきた統合デバイスのトレンドを反映し、追随するものと言えます。このコード複雑性の増加は、市場の細分化されたグローバル化と重なっています。在庫切れ製品の需要の指数関数的な増加、製品機能の向上、開発コストの削減は、調達ニーズの増大、コラボレーションの促進、そしてコード再利用の促進につながっています。コード再利用の究極の形であるオープンソースソフトウェアは、今日の組み込み市場における競争の大きな原動力となっています。 1983年のGNUの最初のリリースから2011年までにITシステム全体に浸透するまで、オープンソースはソフトウェア開発のあらゆる側面に浸透してきました。オープンソースソフトウェアは、市場投入までの時間の短縮、開発コストの削減、セキュリティの向上、品質の実証、多様性、ライセンスコストの削減、多数の有名ベンダーからの多様な選択肢など、さまざまな利点があるため、組み込みプロジェクトの40%で採用されています(VDC Researchのレポート「Choice Study: Embedded Engineering Survey」全文をダウンロード)。 オープンソースが組み込みデバイスを制覇 組み込みアプリケーションにおけるオープンソースソフトウェアの代表的な例としては、Android(組み込みLinuxおよびその他のオープンソースリアルタイムオペレーティングシステム(RTOS))、携帯電話およびPDA向けのQtユーザーインターフェース、冷蔵庫および産業用制御システム、および通信ソフトウェアスタック、Webブラウジング、ユーザーインターフェース、リモート管理、組み込みデータベース、オーディオおよびビデオコーデック、さらには仮想マシン(Java仮想マシンなど)まで、あらゆるものを網羅する約10万のプロジェクトがあります。組み込み環境で使用されているリアルタイムオペレーティングシステム(RTOS)の40%はオープンソースであり、Androidだけでなく、MontaVista、QNX、Mentorなどの大手ベンダーの製品も含まれています。 オープンソースアプリケーションは管理されるべきである オープンソースソフトウェアの利点は、その実用化が規制されて初めて明らかになります。オープンソースソフトウェアには、対応するライセンス、著作権、セキュリティリスクに関する声明、輸出規制の分類など、明確な利用規約が常に付属しています。これらの規約を理解または遵守しないと、製品の品質問題につながる可能性があります。消費者向け製品やその他の組み込みデバイスの大規模な販売において、品質問題やライセンス規約違反は、大きな経済的損失につながる可能性があります。 プロジェクトレベルまたは組織レベルのポリシーは、通常、条件の許容範囲を制限します。認めがたい人もいるかもしれませんが、今日のリソースが豊富な開発者は、必要なコードがどこにあるのかを知っており、創造性だけで最適化できるため、ゼロからコーディングを始めることはありません。厳しいソフトウェア開発の期限の中で、開発者がコーディング規約を理解し、管理することを期待するのは、無理があり、現実的ではありません。そのため、開発期間を短縮し、開発コストを削減するために、組織はプロジェクトでマネージドオープンソースソフトウェアの使用を許可することが増えています。 大規模な多国籍企業から従業員50名未満の中小企業まで、100社を超えるテクノロジー企業を対象とした調査で、組み込みシステム分野におけるオープンソースソフトウェアの活用と管理に関するベストプラクティスが明らかになりました。これらのベストプラクティスには、製品発売前のライセンスポリシーの策定、ソフトウェアパッケージの事前承認プロセスの導入、既存のソフトウェアカタログに関する基本ガイドラインの作成、定期的かつ一貫したソフトウェア分析の実施などが含まれます。 オープンソース ソフトウェアは組み込みデバイス市場を席巻しつつあり、組み込みシステム企業の開発者や経営陣、そして組み込みソリューションのエンド ユーザーに幅広いメリットをもたらしています。これらのメリットには、開発コストの削減、市場投入コストの削減、市場投入までの時間の短縮、製品の進化のスピードアップ、実績のある高品質ソリューション、ソリューションの多様性、そして需給変動の不確実性を軽減しながら保証された長期的な製品可用性などが含まれます。これらのメリットはどれも、既存のコードを基にして独自の創造性を加えることに集中できるため、リソースの豊富な開発者にとって非常に魅力的であり、イノベーション サイクルを加速できます。しかし、すぐに利用できるオープンソース コードには、組み込みプロジェクト全体を理解するためのコードのドキュメント化と整理に時間がかかること、新しいバージョンの更新に対応する必要があること、ライセンスや著作権の問題が発生する可能性があること、セキュリティの実現可能性を考慮してこれらの問題にパッチを適用して軽減する必要があることなどの欠点もあります。 適切に構造化されたオープンソースソフトウェア利用プロセス(OSSAP)により、組織はオープンソースソフトウェアの利点を、管理しやすく制御された方法で活用できます。OSSAPには、ポリシーの策定、ソフトウェアパッケージの事前承認、既存コードや商用ベンダーおよびアウトソーシンググループのコードのスキャンに関する基本ガイドラインの策定などの手順が含まれます。プロジェクトのコードベースの定期的なスキャン、プロジェクトリポジトリへの入力、開発者の作業中のソフトウェアのリアルタイム検出と管理により、プロジェクト内のオープンソースソフトウェアのコンテンツが常に把握され、理解されます。また、ビルド時のスキャンにより、市場にリリースされる最終製品が、採用されているオープンソースポリシーに準拠していることが保証されます。 |