BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース オープンソースコンポーネントの積極的管理による大幅な改善の実現をSonatypeが報告

オープンソースコンポーネントの積極的管理による大幅な改善の実現をSonatypeが報告

ブックマーク

原文(投稿日:2017/07/31)へのリンク

Sonatypeは今年7月、3回目となる“State of the Software Supply Chain”年次報告書をリリースした。その中で同社は、企業がソフトウェアアプリケーションにおけるオープンソースコンポーネントの品質を積極的に管理することにより、開発者生産性の28%向上(マニュアルガバナンスの削減による)、開発コスト全体の30%削減、アプリケーション品質の40%向上(アプリケーションの脆弱性の早期解消による製品インシデントの削減)が確認された、と結論付けている。さらに分析では、オートガバナンスツールを活用したチームによるアプリケーション開発において、不良コンポーネントの比率が63%低減したことが示されている。

SonatypeのVPでDevOpsアドボケートであるDerek Weeks氏が、InfoQに次のように説明してくれた。

データはさまざまなソースから取得しています。Maven Centralから収集したJavaに関する実証的データの他、SonatypeがNPMJS.org(Javascript)やNuGet Gallery(.Net)、PyPi.org(Python)など他のリポジトリから検索したデータも含まれています。さらに、マーケットのニュースやオープンソースコンポーネントに関するストーリ、品質、プラクティス、規制などに関しても、年間を通じて注視しています。

報告書では、ソフトウェア開発におけるオープンソースコンポーネント利用の増大についても強調されている – Javaコンポーネントのダウンロード数は前年比68%増加(2016年は520億)、JavaScriptのダウンロードは262%増加(2016年は590億)し、Dockerコンポーネントの需要は今後12ヶ月で100%の増加(120億ダウンロード)が見込まれている。

Weeks氏によると、

イノベーションとスピードが何よりも重要な現在にあって、オープンソースはその中核的な存在です。スピードを重視するため、開発者やCIO、さらにはCEOもみな、1秒で何かを行なう方法と15分で行なう方法があるならば、1秒の方を選択するべきだ、と言っています。スクラッチから開発するよりもインターネットからダウンロードする方法が選択される理由はここにあります。

企業がオープンソースコンポーネントを利用する上での問題点として報告書が指摘しているのは、オープンソースソフトウェア(OSS)プロジェクトが既知の脆弱性を修正するために平均233日を要していることと、脆弱性の修正に積極的なOSSプロジェクトが15.8%に過ぎないことだ。

Weeks氏によると、

オープンソースプロジェクトの大半は、おそらく脆弱性を認識していません – セキュリティ研究者がそのプロジェクトで発見したことを、プロジェクトに効果的に伝えられていないのかも知れません。これは私の推測ですが、脆弱性を評価して修正するために必要な、セキュアなコーディングプラクティスを理解できるような人材がプロジェクトにいないのかも知れません。

高度な能力を持つDevOps組織では、自身のソフトウェアサプライチェーンを流れるオープンソースコンポーネントの品質保証にマシンオートメーションを利用することによって、ソフトウェア衛生を改善している、とSonatypeは指摘している。

Weeks氏によると、

自分たちのソフトウェア開発でどのようなオープンソースコンポーネントを使っているのか、知っておく必要があります。認識は行動を変えます – ソフトウェアの部品表を作りましょう。部品表ができれば、何が良いかを評価することができます。こうした認識を、今よりももっと多くすることが必要です。使用しているコンポーネントの良否を理解したいのならば、これが早ければ早いほど好都合です。このインテリジェンスを開発者に提供できれば、コーディングサイクルの早い段階でセキュアなコーディングプラクティスを選択し、製品に埋め込むことが可能になります。

セキュリティに関するスキルは不足しているのだろうか。我々は氏に尋ねてみた。氏の答は、

YesとNo,両方ですね。IT産業における新たなムーブメントでは、常にスキル不足が発生しています。IT産業が進化を続けるためには、これらのことを自動化するためのツールとソリューションを見つけ出す必要があります。アプリケーションのセキュリティスキルが不足している、あるいはアプリケーションのセキュリティを評価できる担当者がいる、というような手作業で行なうのではなく、そういった分析やセキュリティの一部を自動化して、作業の一部とすることはできないのでしょうか?そうすることが、組織の人材をより生産的にしてくれます。スキル不足に対する回答はテクノロジとオートメーションです – 私たちはそのあり方を変えようとしているのです。

この記事を評価

採用ステージ
スタイル

この記事に星をつける

おすすめ度
スタイル

BT