オープンソース“ロジスティクス”とは? ブラックダック代表に聞くOSS活用のポイント
選択から利用、納品までのサイクルを支える
Black Duckの主力製品は、OSSの利用を管理する「Code Center」と、コード中のOSSを検出する「Protex」の2製品だ。さらに、主に米国で輸出規制のある暗号アルゴリズムを検出する「Export」や、Black Duck Open Hubでも使われているソースコード検索エンジン「Code Sight」もあり、この4製品を統合した「Black Duck Suite」としても販売している。
プロフェッショナルサービスとしては、M&Aの際にソースコード資産をチェックする「Black Duck M&A Services」や、OSS戦略やポリシー策定のコンサルティング「Black Duck Consulting」、査定や導入、トレーニングなどの「Black Duck Professional Services」がある。
そのほか、前述したように、インターネット上のサービスとして「Black Duck Open Hub」(旧名Ohloh)も無償で公開している。
こうした製品やサービスは、OSS利用における“6つのフェーズ”のサポートをコンセプトとしている、と金氏は説明する。「Choose(選択する)」「Scan(スキャンする)」「Approve(承認する)」「Inventory(インベントリ化し、追跡する)」「Secure(セキュリティ保護する)」「Deliver(提供する)」の6つだ。
「Choose」は、どのOSSを使うかの選択だ。そのためにBlack Duckでは、100万件以上のプロジェクトを追跡する「The Black Duck KnowledgeBase」を持ち、比較やサポートに利用できるようにしている。また、Black Duck Open Hubもこのカテゴリーのサービスだ。
「Scan」は、ソースコードをスキャンして使われているOSSのコードをスキャンするものだ。社内で開発したコードや、外注先から受け取ったコードなど、さまざまなフェーズでソースコードを検査することで、利用しているOSSの管理や、ライセンスのコンプライアンス遵守を支援するという。
「Approve」は、社内のポリシーに則ったOSSのみを利用するよう、承認するプロセス。法務や知財、品質管理などの部門をまじえてポリシーを策定し、それに基づいて自動的に承認することで、開発者の作業を鈍化させずにリスクを緩和するという。
「Inventory」は、社内で利用しているOSSのカタログを作って一元管理するもの。これにより、あるOSSをどこの部署で使っているかを追跡したり、社内での標準化や再利用を促進したりするという。
「Secure」は、OSSの脆弱性などの情報と、それをInventoryと連動して影響範囲をチェックし解決するものだ。
「Deliver」は、納品などにおける情報開示だ。ライセンス義務レポートやBOM(構成表)を作る機能などがあるという。
こうしたBlack Duckの製品やサービスについて、「Protexには競合製品はありますが、総合ソリューションを提供しているのはBlack Duckだけでしょう」と金氏。なお、日本では製品の販売が中心で、サービスは代理店の一部から提供。「Black Duck M&A Servicesは、日本企業が海外でM&Aしたときに利用していただいていますが、国内については日本の法律への準拠を詰めているところです」(金氏)。
OSS開発プロジェクトのしくみを企業内に応用する「インナーソーシング」
無償サービスであるBlack Duck Open Hubも、社内で十数人のチームが担当し、SourceやGitHubのようなサイト以外は人手で情報を収集して更新しているという。さまざまなOSSの情報や開発状況などが集まっているほか、コード検索もできる。比較的新しい機能としては、3つまでプロジェクトを指定して活動状況の統計を並べて表示する機能などもある。
「OSSには啓蒙が必要です。OSSを“タダで使える”ぐらいの認識の人も多い。その啓蒙の一環としてBlack Duck Open Hubを無償公開で運営しています。また、情報公開でOSSの開発コミュニティに貢献したいというのも目的です」(金氏)。
金氏に改めて、企業にとってのOSSのメリットを聞いた。「ソフトには、スピード、コスト、機能性の3つの指標があります。この3つを満たしているのがOSSです」と金氏は答えた。
「それを支えるのが、OSSの開発コミュニティの力とスピードです。この力を企業内で活かそうという、『インナーソーシング』という取り組みも米国の一部で始まっています」と金氏は続けた。
インナーソーシングでは、企業内で開発中のプロジェクトを可視化し、ほかの部署が自分の得意な部分で困っていれば部外からコミットできるようにして、開発を効率化する。各自のコミット履歴も可視化する。ちょうど、オープンソースプロジェクトへのコミットに似たしくみを社内に作ろうというものだ。
「実際にインナーソーシングを取り入れるには、会社の文化や人事制度との整合性が必要で、会社の理解が必要になるので、まだ難しいでしょう。ただ、米国では一部始めている企業もあります」と金氏。
金氏によると、Black Duckでもインナーソーシングを支援するプラットフォームを開発中だという。「ベータ版のような形で、近く出せると思います」(金氏)。