5分で分かる最新キーワード解説
バグは本当に金曜日に生まれるのか、分析手法「MSR」とは?(1/3 ページ)
ソースコードなど開発関連の膨大な電子化情報を分析する新たなマイニング手法「MRS」が登場した。バグ予測やコード再利用に使えるのか。
今回のテーマは「MSR(Mining Software Repositories、ソフトウェアリポジトリマイニング)」だ。ビッグデータ解析技術により、ソフトウェアの開発技術を変革する新しいトレンドが生まれようとしている。
「MSR/ソフトウェアリポジトリマイニング」とは?
MSRは、ソフトウェアのソースコードやドキュメント、開発や運用、保守プロセスで発生した議論の記録など、ソフト開発に関連して蓄積された膨大な電子化情報の中から、新しいソフトの設計、開発、保守に利用可能な知見を抽出して活用し、ソフト開発の生産性、品質、保守性の向上を目指す新しい知識再利用技術だ。
「マイニング」(Mining、採鉱)技術としてよく知られるのはデータマイニング技術だろう。小売店の販売データを分析して「ビールを買う顧客が一緒に買う商品は紙おむつ」であるという一見不思議な相関関係が見つかったという有名なエピソードが語るように、業務データを見ているだけでは分からないデータ間の相関関係や傾向を導き出し、販売予測やマーケティングに役立てる分析技術のことだ。
MSRも同様に、膨大に蓄積されたデータの中から役に立つ情報を取り出そうとする技術だ。ただし、分析の対象とするデータの種類が違う。データマイニングが業務データを対象にするのに対しMSRはソフトウェアに関連するあらゆる情報を分析する。
図1に見るように、ソースコードはもちろんのこと、CVS(Concurrent Versions System、ファイルのバージョン管理システムのデータ)やSVN(Subversion、オープンソースのバージョン管理ツールのデータ)、バグ報告(バグトラッキングシステムのデータやその他の資料)、クラッシュログ、実行履歴、メール(SNSやブログ、掲示板なども含む場合がある)などがマイニングの対象だ。
それらのデータは構造化されてデータベースに格納されるものもあれば、文書やテキストなどの非構造化データとして蓄積されるものもある。共通点は電子化されているということだけかもしれない。それらを一元的に「リポジトリ」という、いわば貯蔵庫に入れて、さまざまなアルゴリズムを駆使して分析するのがMSRの方法だ。
MSRがあらためて注目される背景
MSRは、実証的ソフトウェア工学(Empirical Software Engineering)の1つのアプローチとして、十数年前からアカデミズムの世界で研究されてきた。それが今、あらためて注目されるのは、コンピューティング能力の指数関数的な増大とともにソフトウェアに関連する電子化情報が爆発的に増大してビッグデータ化したことが背景にある。
例えば、今回取材したNTTデータでは、直近7年間で300Mステップに及ぶソースコードが蓄積され、あるプロジェクトでは開発関連ドキュメントが数千万ファイルにものぼる。これに加え、Web上には少なくとも1億ページ以上の技術情報ページがあり、数千万ファイルのオープンソースのコードが存在するといわれている。
構造化データと非構造化データが混在する多様なデータが日々生まれては蓄積される中で、一方ではビッグデータ分析技術も近年急速に成熟した。例えば、コード解析、データマイニング、テキストマイニング、統計解析、パターンマッチング、自然言語処理、ソーシャルネットワーク分析、機械学習などといった技術により、従来はITが扱い切れなかった量と種類のデータが、今のところそれぞれ限界はあるにしても、全て分析可能になった。今こそ、開発資産のマイニングが現実的なメリットを生むのではないかという期待が高まっているのだ。
Copyright © ITmedia, Inc. All Rights Reserved.
5分でわかる最新キーワード解説
この記事の著者
こんなメディアも見られています
キーマンズネットに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
アクセスランキング
-
1
ニンテンドーシステムズ開発者が明かす、通信「低遅延・安定運用」のコツ【事例集】
-
2
スクエニ開発陣が「ドラゴンクエストX」の世界観を守るのに「Gemini」が必要だったワケ
-
3
「Gemini Notebook」で利用者10倍 シニア社員をAIヘビーユーザーにした首都高の考え
-
4
“壊してもいい”が現場を変えた 岩塚製菓、生産性1.3倍を生んだDX定着の条件
-
5
こんなところに野良AIが? 事例で解説、実際にあった2つの発覚パターンと防衛策
-
6
Windowsを使い続けるのは正解か? 「Linux化」というモダナイズのもう一つの選択肢
-
7
ChatGPTに「おすすめの○○は?」 実は答えが決まっているらしい:893rd Lap
-
8
スウェーデン発、AI議事録Klangが日本上陸 無料で文字起こし無制限
-
9
ランサムウェア対策の3ステップ AWSが提唱する「3-2-1-1-0」ルールとは
キーマンズネット SNS
インフォメーション
注目情報をチェック
キーマンズネットをフォロー