ソフトウェア・シンポジウム2017 in 宮崎

開発者の所属企業規模を考慮したソフトウェア工学の有用性評価
村上 優佳紗近畿大学大学院総合理工学研究科
m.yukasa@gmail.com

角田 雅照
近畿大学大学院総合理工学研究科
tsunoda@info.kindai.ac.jp

要旨の企業においてソフトウェア開発に従事している者の割合は 69%であり[7]，300 人未満の中小企業及びそこに所属する開発者が，日本のソフトウェアベンターのボリュームゾーンであるといえる．
ただし，ソフトウェア工学の最先端研究が，ボリュームゾーンである，これらの企業に所属する開発者のニーズに応えられているかは明らかでない．ソフトウ
ェア工学の研究の有用性や方向性について検討した研究がいくつか存在するが[8][11]，これらの企業はFacebook や Microsoft など，規模の大きなソフトウェ
ア開発会社に所属する開発者を対象としている．中小企業と大企業では，各ソフトウェアプロジェクトに従事するメンバー数や，開発対象のソフトウェアの規模が異なることが多いと考えられる．このため，所属する企業の規模が異なれば，技術者のニーズも異なる可能性がある．
本研究では，ソフトウェア工学の最先端研究が，中小企業に所属する企業のニーズに対応できているかどうかを分析する．ソフトウェア工学の最先端研究が大企業のニーズに応えることも重要であるが，ボリュームゾーンである中小企業のニーズの考慮も怠るべきでないと考える．分析では，ソフトウェア開発企業に所属する開発者に対し，ソフトウェア工学の最先端研究が自分の業務に有用であるかどうかを評価してもらった．その後，開発者が所属する企業の規模によりデータを層別して分析を行った．また，開発者による研究の有用性評価を支援するために，開発者の業務に関連する研究カテゴリとそれら属する研究の評価を，協調フィルタリングを用いて予測し，精度を評価した．

ソフトウェア工学の研究目標を設定する際，開発者の総数が多いボリュームゾーンのニーズを考慮する必要がある．日本では 300 人未満の中小企業及びそこに所属する開発者が多数を占めており，ここがボリュームゾーンといえる．ただし，ソフトウェア工学の最先端研究が，これらの企業に所属する開発者のニーズに応えられているかどうかは明らかではない．そこで本研究では，ソフトウェア工学の最先端研究が，中小企業に所属する企業のニーズに対応できているかどうかを分析した．具体的には，ソフトウェア開発企
業に所属する開発者に対し，最先端研究が自分の業務に有用であるかどうかを評価してもらった．その後，開発者が所属する企業の規模によりデータを層別して分析を行った．その結果，所属する企業の規模によって，業務に関連する研究カテゴリに差異が見られた
が，研究の有用性及び興味の評価については，規模による差異は見られなかった．

1.

はじめに

近年，ソフトウェアは企業の基幹業務システムや機器に組み込まれて広く利用されており，社会基盤として欠かせないものとなっている．このため，ソフトウ
ェアに高い信頼性が求められるようになっているが，その一方で，大規模なソフトウェアを短期間で開発することも同時に求められている．このようなソフトウ
ェア開発が成功する確率を高めるために，ソフトウェ
ア工学による開発の支援が求められる．
ソフトウェア工学による開発の支援を検討する際，開発者の総数が多いボリュームゾーンのニーズを考慮する必要がある．中小企業関連立法では，ソフトウ
ェア業・情報処理サービス業について，資本金 3 億円
以下または従業員 300 人以下を中小企業としている[2]．従業員 300 人未満の企業の割合は 99%，それら

2.

関連研究

ソフトウェア工学の研究がソフトウェア開発に対して与えた影響について分析した取り組み（Impact
Project）[9]では，プログラミング言語や構成管理ツー

95

SEA

ソフトウェア・シンポジウム2017 in 宮崎

表 1
従業員数
300 人未満
300 人以上 1000 人未満
1000 人以上

6
5
5

表 2
従業員数
300 人未満
300 人未満(経験年数 3 年以上除く)
300 人以上
1000 人未満1000 人以上

回答者の概要経験年数 3 年未満(人)

回答者数(人)4
5
5

平均経験年数(年)
6.7
1.2
1.2

修士号取得者(人)2
2
1

回答者が関連する開発工程

要求分析
33%

基本設計
67%

詳細設計
67%

テスト
100%

プログラミング
83%

開発支援
33%

プロジェクト管理
17%

0%

50%

50%

100%

75%

0%

0%

20%

60%

60%

80%

80%

20%

0%

20%

60%

60%

100%

80%

0%

20%

ルなどに対して，ソフトウェア工学がそれらの発展にどのように寄与してきたかを分析している[3][12]．その結果，この取り組みでは，研究が実際の開発方法に影響を与えていることを結論づけている．ここから，
これまでのソフトウェア工学の研究に有用性がある
ことはわかるが，最先端の研究も同様に有用なのか，また，どの程度の割合の研究が有用なのかは明らかではない．
ソフトウェア工学の研究の方向性について示唆した研究として，Rubin らのもの[11]が挙げられる．
Google や Facebook などの先端のソフトウェア開発会
社に所属する開発者にインタビューし，彼らが直面する問題を明らかにするとともに，その問題に基づき，開発者が必要な情報に素早くアクセスすることをサポートする研究が望まれることなどを示している．ただし，この研究では，先端のソフトウェア開発企業以外の開発者のニーズは明らかにしていない．
本研究と類似した取り組みとして，2 つの従来研究[1][8]が挙げられる．これらは同じ研究グループによって実施されたものであり，ソフトウェア開発企業に所属する開発者が，最先端の国際会議の論文の要約（1-2 行）を読み，それに対して研究の価値があるかどうかを 5 段階で評価している．その結果，7 割前後の研究が，価値があるという結果となっている．調査方法は基本的に Zimmermann ら[1][8]と同様の方法であるが，本研究とこれらの研究との違いは 3 つある．1
つ目は各研究に対する評価の観点である．本研究では，「自分の業務に有用であるか」という観点で評価してもらっていることであり，これが従来研究との最も大きな違いである．2 つ目は，所属する企業の規模の違いに着目して分析していることである（従来研究ではマイクロソフトなど巨大企業に所属する開発者が回答者の主体となっている）．3 つ目は，個別の研究内96

容に対して，より詳細な説明資料を読んでもらった上で評価してもらったことである．その結果，後述する
ように，上記従来研究と異なり，最先端の研究に対する有用性の評価は低くなっていた．

3.

データ収集

分析で用いるデータは，ソフトウェア開発企業に所
属する開発者から，アンケートフォーム（Google フォーム）を用いて収集した．研究に対する有用性などの評価について，以下の手順に従って回答してもらった．
1. 業務に関係する研究カテゴリを最大 5 つ（3 つは必須）選ぶ．
2. 上位 3 件の研究カテゴリに関する論文の資料を読む．
3. 「業務に役立つか」，「興味を持ったか」について，それぞれ 5 段階（1 が最低，5 が最高）で評価する．
研究カテゴリの分類や，各カテゴリに含まれる研究
論文については，ソフトウェア工学の国際会議で最も権威のある ICSE (International Conference on Software
Engineering)の，2016 年開催分のものを参考にした．
具体的には，会議の各セッションを研究カテゴリとした．研究カテゴリの詳細については，4.2 節で後述する．各カテゴリ（セッション）には論文が 4 本程度含まれる．回答者の負担を減らすため，それらを直接読んでもらうのではなく，日本語の要約資料[6]を回答
者に読んでもらった．資料は一本の論文につき 2，3
ページのスライド形式となっており，比較的読みやす
い内容となっている．
また，各開発者について，以下の項目について回答してもらった．

SEA

ソフトウェア・シンポジウム2017 in 宮崎

表 3

研究カテゴリの概要及び回答者の業務に関連する割合

No.

カテゴリ名

1
2
3
4
5
6
7
8
9
10
11
12
13
15
16
17
18
19
20
21
22
23
24
25
26
27

Android (android で動くソフトウェアに関する研究)
Performance (ソフトウェアの性能)
Empirical (ソフトウェア開発データの分析)
Symbolic Execution (シンボリック実行によるソフト解析)
Compilers and Emerging Trends (コンパイラ・最新トピック)
Energy and Videos (ソフトウェア省電力化・ビデオの活用)
Open Source (オープンソースソフトウェア)
Defect Prediction (ソフトウェアの欠陥予測)
Synthesis (自動プログラム生成)
API (Application Programming Interface)
Code Smells (コーディングの方法論)
Architecture (ソフトウェアの構造)
Testing (ソフトウェアのテスト)
Effort Estimation and Search (開発工数見積もり)
Product Lines (プロダクトラインによるソフト再利用)
Repair and Model Synthesis (プログラムの自動修正)
Languages (ソフトウェア開発言語)
Debugging (ソフトウェアのデバッグ)
Requirements (ソフトウェアに対する要求)
Dynamic Analysis (ソフトウェアの動的な解析)
Security (セキュリティ)Collaborative (ソフトウェア開発の人的要因)
Software Quality (ソフトウェアの品質)
Program Analysis (プログラムの解析)
Concurrency (ソフトウェアの並行実行)
Maintenance (ソフトウェアの保守)l

取得学位（学士，修士など）
実務経験年数所属する企業の従業員数（300 人未満，300 人
以上 1,000 人未満，1000 人以上）担当する開発工程

論
文
数
4
4
3
4
4
4
2
4
4
3
4
3
8
3
4
4
4
4
4
4
4
4
3
4
4
4

総計

300 人
未満

300 人
未満
3 年未満

2%
4%

4%
4%
4%
2%
4%
20%
2%

11%

8%

11%

8%

3001,000 人

1,000 人
以上

7%

8%
8%

7%

8%
8%

6%
17%
6%

17%
8%

4%
9%
7%
2%
2%
4%
9%

6%
11%
6%

8%
8%
8%

6%

13%

17%

7%
21%

23%

7%
7%
7%
7%

8%
8%

8%

7%
7%

8%
15%

25%

14%

8%

6%

分析の目的を明確にするために，以下の 4 つのリサ
ーチクエスチョンを設定した．
l
RQ1: 業務に関連する研究カテゴリに偏りはあるか?
l
RQ2: 所属する企業の規模によって，関連する研究カテゴリに差異は生じるか?
l
RQ3: 最先端研究の内容は業務に有用か?
l
RQ4: 所属する企業の規模によって，研究の有用性に差異は生じるか?

務する 16 人である．回答者の概要について，所属企業の従業員数別に層別したものを表 1 に示す．従業員数 300 人未満の会社の回答者グループでは，開発経験年数が 3 年を超える回答者が 2 名いたが，その他のグループでは経験年数が 3 年未満であった．このため，以降の分析において企業の規模別に回答傾向などを確かめる場合，経験年数が 3 年以上の回答者を除外した場合についても示す．
業務に関連する工程:回答者の業務に関連する工程について，所属企業の従業員数別に層別したものを表2 に示す．テストとプログラミングに関してはほとん
どの回答者が関連し，設計に関しても半数以上の回答
者が関連している．要求分析や開発支援などについて
は，300 人未満の従業員数の企業の場合，経験年数が浅い場合（表の 2 行目）は関連していないが，それ以外の規模の企業の場合，割合は低いが関連している場合があった．

4.1.

4.2.

l
l
l

4.

分析

回答者の概要アンケートの回答者はソフトウェア開発企業に勤業務に関連する研究カテゴリ

ICSE での研究カテゴリを表 3 に示す．会議での各

97

SEA

ソフトウェア・シンポジウム2017 in 宮崎

表 4

セッションを各研究カテゴリとした．カッコ内は，セッションに含まれる研究の内容を考慮して筆者らが日本語に訳したものである．Testing のみ 2 つのセッションがあったため，合わせて 1 つのセッションとして扱った．各セッションにつきおおむね 4 本程度の研究論文が含まれる．
回答者全体の傾向 (RQ1 に関する分析 ): 業務に関連すると回答のあった研究カテゴリについても表 3に示す．総計は従業員数別に層別しない場合に関連があると答えた割合を示す．3 章で説明したように，少なくとも 1 人あたり 3 つのカテゴリを選択しており，
その総選択数（少なくとも回答者 16 人×3 カテゴリ）を分母として割合を算出している．その他の列は層別して同様の方法により割合を算出している（各列で合計 100%としている）．
全体でも 36%（26 カテゴリ中 9 カテゴリ）のカテ
ゴリが業務と関連があると答えられていなかった．これは，一部の研究が現時点では一般的な開発と関連が薄いためであると考えられる．例えば Compilers andEmerging Trends (コンパイラ・最新トピック)や Energy
and Videos (ソフトウェア省電力化・ビデオの活用)などが該当する．
開発支援を業務とする回答者は若干いたにも関わらず， Empirical (ソフトウェア開発データの分析)な
どの分析関連のカテゴリは選択されていなかった．このことから，従業員数が 300 人未満の場合（このグループには経験年数が 3 年以上の回答者が含まれる），または，経験年数が 3 年未満の場合，開発支援の業務においてデータ分析は関連が弱い（優先順位が低い）
可能性がある．
上記の分析結果より，RQ1 に対する答えは，「偏りがある（業務と関連が弱い研究カテゴリがいくつか存在する）」となる．
企 業 規 模 別 の 傾 向 (RQ2 に 関 す る 分 析 ):Performance (ソフトウェアの性能)や Collaborative (ソフトウェア開発の人的要因)などについては，従業員数 300 人未満の会社の回答者グループでは，業務との関連が弱かった．なお，300 人以上の企業で上記それぞれに関連があると答えている回答者は 4 人であり，例外的な回答者 1 人が答えたわけではない．表 2 で示したように，回答者が関連する工程に大きな違いがないことから，それらがこの結果に影響している可能性は低い．300 人以上の企業に所属する回答者の経験年数は 3 年未満であるが，300 人未満の企業に所属する回答者は 3 年以上の経験を持つ開発者も含まれていることから，経験年数についても影響している可能性が低い．この結果は，開発対象とするソフトウェア

研究の有用性および興味（従業員数別）

従業員数
300 人未満
300 人未満(経験年数 3 年以上除く)
300 人以上 1000 人未満
1000 人以上

表 5

有用性
2.2

興味
3.6

2.2

3.1

2.4
2.4

2.9
2.7

研究の有用性および興味（学位別）
最終学位
学士他
修士号

有用性
2.3
2.3

興味
3.0
3.5

の性質の違いや，開発体制の違い（プロジェクトあたりの開発者数の違いなど）が影響している可能性がある．これらは企業の規模との関係が強いと思われる．
API (Application Programming Interface) や Open
Source (オープンソースソフトウェア)については，従
業員数 300 人未満の企業の回答者については業務との関連が強く，それ以外の企業の回答者の業務とは関連が弱かった．経験年数 3 年未満と 3 年以上両方の開発者がこれらを回答していたことから，経験年数が結果に影響している可能性は高くないと考えられる．また，前述のように関連する工程に大きな違いはないことから，開発対象のソフトウェアの規模が比較的小さ
く，API や OSS の影響が相対的に大きいことが，このような結果につながった可能性がある．
これらの結果より，関連する（担当する）工程に大きな差がなくても，所属する企業の規模が異なる場合，業務に関連が強い研究カテゴリが異なってくる可能性があるといえる．よって，RQ2 に対する答えは「差異が生じる」となる．
4.3.

研究の有用性などに対する評価

本節では RQ3，RQ4 に関する分析結果を述べる．
各研究カテゴリに含まれる研究論文に対して，業務に有用かどうか，研究内容に興味があるかどうかを評価してもらった結果を表 4 に示す．所属する企業の従
業員数別に層別したが，規模によって有用性の評価に大きな違いはなかった．評価の平均値は 3 を下回って
おり，ソフトウェア工学の最先端研究は，一般的なソフトウェア開発に対して業務改善などの即効性は強くない可能性がある．
表 4 において，研究の有用性と比較して，研究に対する興味は低くなかった．ただし，興味の平均値は回答グループによって異なっていた．研究に対する興味は，大学院などで研究に取り組んだ経験があるかどうかが影響している可能性がある．そこで回答者を取

98

SEA

ソフトウェア・シンポジウム2017 in 宮崎

表 6
No.
有用度
回答数

表 7
No.
興味
回答数

研究カテゴリ別の有用度の平均値

1
2
7
9
10
12
13
2.0 3.0 2.5 3.0 2.5 2.5 2.2
2
3
2
2
2
2
7

2
4.0
2

19
2.3
4

20
2.3
3

23
2.5
2

24
2.3
4

27
2.2
6

研究カテゴリ別の興味の度合いの平均値
7
4.0
2

9
10 12 1318 19 20
23 24 27
3.0 4.5 3.5 2.7 1.5 3.3 2.7 3.0 3.3 2.7
2
2
2
7
2
4
3
2
4
6

得学位別に層別した結果を表 5 に示す．修士号取得者のほうが研究に対する興味が平均的に高かった．それぞれの研究論文に対する興味の強弱は，企業規模とは関係が弱く，取得学位との関連が強いと考えられる．
これらの結果より，RQ4 に対する答えは「差異は生じない」となる．
カテゴリ別の，研究の有用度に対する評価の平均値
を表 6 に，興味の度合いの平均値を表 7 に示す．データ件数が少ないため，ここでは層別せずに平均値を算出した．表では，回答が 2 件以上あったカテゴリのみを示し，平均値が 3 以上となったものを太字で示している．表中の No.は表 3 のものに対応する．個別に見た場合でも，研究の有用性の評価は全体的に低く，Performance (ソフトウェアの性能)と Synthesis (自動プ
ログラム生成)のみ平均値が 3 以上となった．
興味の度合いについては，半数以上の研究カテゴリ
で平均値が 3 以上となっていた．ただし，Languages(ソフトウェア開発言語)に関しては，有用性，興味の度合いとも 2 を下回っており，全カテゴリで最も低い値となっていた．研究内容は C 言語に関するものが多かったが，回答者と C 言語の関連が弱かった可能性も考えられる．なお，カテゴリ別の有用度と興味の度合いについて相関係数を算出すると 0.47 となった．
このことから，有用性と興味の度合いはある程度関連があると考えられるが，回答者は有用性と興味の度合いをある程度独立して評価していると考えられる．
これらの結果より，RQ3 に対する答えは「一部の研究カテゴリを除き，有用であるとはいえない」とな
る．

5.

18
1.5
2

研究カテゴリの推薦

いくつかの最先端研究は回答者（開発者）に興味を持たれていた．開発者が興味を持ちそうな研究カテゴ
リを，あらかじめ推薦システムによって提示することができれば，開発者は読む論文を絞り込むことができる．例えば，推薦システムはある開発者に対し，「業務と関連のある研究カテゴリは保守とテストである．

99

そのうち，テストの研究に対して興味を持つと予測される」などと提示する．興味を持ちそうな研究を容易に知ることができれば，最先端研究を知ろうとする技術者も増え，そのような技術者の一部が研究者に対して有用性に対するフィードバックを行えば，それぞれの研究の有用性に対する再考察が進む可能性がある．
そこで本章では推薦システムによって，開発者が興味を持ちそうな研究カテゴリを，高い精度で推薦可能かどうかを実験により確かめた．同様の推薦システム
は文献[14]でも提案しているが，文献[14]ではソフト
ウェア開発技術を推薦しているのに対し，本研究ではソフトウェア工学の研究を推薦している．そのため，
必ずしも同様の精度が得られるかが明らかではない
ため実験により精度を確かめた．
実験では，業務に関連するカテゴリの推薦と，興味の度合いの予測を，協調フィルタリングを用いてそれぞれに行った．4.2 節で示したように，業務に関連するカテゴリは開発者によって異なるため，まず関連するかしないかを判別予測した．例えば「開発者 A の業務に関連する研究カテゴリは，保守，テストである」などと予測する．次に，興味の度合い（5 段階評価）の数値を予測した．例えば，「開発者 A は保守の研究に対する興味は低く，テストの研究に対する興味は高い」などと予測する．
上記の推薦における説明変数は，開発者のプロフィール，すなわち経験年数，関連する開発工程，所属する企業の規模とした．目的変数は関連の強い工程と，研究に対する興味の度合とした．関連する開発工程，
所属する企業の規模についてはダミー変数化した．ダ
ミー変数化とは，例えば要求工程が関連している開発者では 1，そうでない開発者では 0 となるような変数を設定することを指す．判別予測，数値予測の精度評
価時にはリーブワンアウト法を適用した．リーブワン
アウト法では，全データのうちの 1 件を予測対象とし，それ以外を過去（既知）データとすることを，繰り返
して行う．

SEA

ソフトウェア・シンポジウム2017 in 宮崎

表 8

u1
u2
…
ui
…
um

5.1.

表 9

協調フィルタリングで用いるデータ
p1
v11
v21
…
vi1
…
vm1

p2
v12
v22
…
vi2
…
vm2

…
…
…
…
…
…
…

pj
v1j
v2j
…
vij
…
vmj

tk
r1k
r2k
…
rik
…
rmk

協調フィルタリングによる判別予測精度

ユーザベース
アイテムベース

表 10

適合率
30%
20%

再現率
24%
22%

F1 値
27%
21%

協調フィルタリングによる数値予測精度
ユーザベース
アイテムベース

絶対誤差平均値
1.16
1.23

協調フィルタリングの概要

協調フィルタリングは，ユーザにとって好ましい，または役立つと考えられるアイテム（書籍，音楽など）を推薦するための手法として用いられている[4][10][13]．
「協調」とは，ユーザの知識を利用することを意味し，「フィルタリング」とは，大量のアイテ
ムの中から，役立つアイテムだけを選び出して推薦することを意味する．一般的な協調フィルタリングで推薦を行う場合，各ユーザが各アイテムを（5 段階の数
値などで）評価していることが前提となる（システム
によっては，ユーザがそのアイテムを閲覧したかどうかを評価の代わりに用いることもある）．あるユーザが未評価のアイテムが，そのユーザにとって役立つと考えられる場合，そのアイテムを推薦する．
協調フィルタリングの主なアルゴリズムとして，ユーザベース手法とアイテムベース手法の 2 つがある．
ユーザベース手法は，「アイテムの評価（好み）が似たユーザは，どのアイテムに対しても似た評価を行う」と仮定し，推薦を行う．具体的には，各ユーザの各ア
イテムに対する評価を要素とするベクトルを，ユーザごとに作成し，そのベクトルのなす角をユーザの類似度とする．そして推薦対象のユーザが未評価で，かつ類似したユーザの評価が高いアイテムを推薦する．ユーザベース手法を用いた推薦システムとして，
Resnick ら[10]の GroupLens が挙げられる．GroupLens
は，Usenet にある多数のニュース記事から，ユーザの好みに合うと予測される記事を選び出して推薦するシステムである．
アイテムベース手法は Sarwar ら[13]によって提案されたアルゴリズムであり，アイテム間の類似度に基づいて推薦を行う．アイテムベース手法の場合も，各ユーザの各アイテムに対する評価を要素としてベクトルを作成するが，ユーザごとにベクトルを作成するのではなく，アイテムごとに作成し，類似度を計算する．すなわち，「あるグループのユーザに高評価されるアイテムは，類似の性質を持っている」と仮定し，推薦対象のユーザが高い評価を行っているアイテムと類似度の高いアイテムを推薦する．
協調フィルタリングを用いた推薦では，表 8 のよ100

うな m×n のマトリクス形式のデータを想定する．ui∈{u1, u2, ..., um}は i 番目の開発者を表し，pj∈{p1, p2, ...,pj}は開発者のプロフィール（経験年数など）を表す．
また，tk∈{r1k, r2k, ..., rmk}はある研究カテゴリ k の評価
結果を表す．
5.2.

評価尺度

判別予測の評価尺度として，適合率，再現率，F1値を用いた．これらは，推薦システムの評価尺度として広く用いられているものである[5]．適合率は，「業
務に関連がある」と予測されたうち，実際に関連があった割合を示す．再現率は，全ての関連があった研究
カテゴリのうち，「関連がある」と予測されたものの割合を指す．F1 値は，適合率と再現率のバランスを考慮して一つの指標としたものである．これらの値が大きいほど，判別予測の精度が高いことを示す．
数値予測の評価尺度には絶対誤差を用いた．絶対誤差は予測値と実測値（実際の評価値）との差の絶対値
であり，値が小さいほど数値予測の精度が高いことを
示す．
5.3.

予測結果

判別予測の結果を表 9 に示す．アイテムベースよりもユーザベースのほうの精度が高かったが，F1 値
が 27%と非常に低い判別予測精度となった．数値予測の結果を表 10 に示す．こちらについてもユーザベ
ースの予測精度がわずかではあるが高かった．ただし，絶対誤差の平均値が 1 を少し超えており，高い精度であるとまではいえなかった．
この結果より，業務との関連が強い研究カテゴリを判別予測することは容易ではないといえる．ただし，データの件数が増えれば予測精度が高まる可能性もある．実験で用いたデータにおいては，業務に関連する研究カテゴリの絞り込みについては，各開発者で行う必要があるといえる．それらに対する興味の度合いの高低については，ある程度は協調フィルタリングにより予測可能であるといえる．また，推薦に用いるアSEA

ソフトウェア・シンポジウム2017 in 宮崎

ルゴリズムにはユーザベースが適しているといえる．

6.

考察

ソフトウェア工学は特に他の工学分野と比べて開発現場と密に関わっているため，理論中心で現場への適用が想定されていないような研究は，あまり推奨されない． ICSE はソフトウェア工学の理論中心というよりも，実験を考慮した研究が比較的多いとみなし，本研究の実験題材として採用した．
研究論文のグルーピングを行う際には，以下の 3
点をクリアできるよう考慮する必要がある．
lグループの定義が正しいl
論文が所属するグループが正しいl
論文数に偏りが出ない
研究論文を分類するために，著者らで新たなグループを考慮することもできたが，論文によってはどのカ
テゴリに何が属するのかの判断が難しく，論文の数にも偏りが出る可能性があり，上記 3 点が満たせない可能性があった．各セッションに基づいて論文を分類しても特に違和感はなかったため，やや乱暴ではあるが会議のセッションを研究カテゴリとして用いた．
Zimmermann ら[1][8]の研究では，「研究の方向性が正しいか」を聞いており，この観点からは各研究の評価は高かった．それに対し本研究では，実際の業務でソフトウェア工学が有用であるかどうかが重要であると考え，評価してもらった．一部の回答者は業務経験年数が長かったが，有用性の評価は低かった．このことから，業務経験の短さが必ずしも有用性の評価につながっていないと考える．また，研究内容に対する興味については低くなかったため，回答者が内容を理解していないとはいえないと考える．
著者の一人の実務経験に基づくと，実務経験が 1
年ほどあれば，技術の有用性が理解できる程度の知識は習得しており，少なくとも，自分が担当する業務に関しては，研究の有用性に対する判断はある程度正しく行えると考える．ただし，経験年数が少ないと，自分が担当している工程が少ないため，担当した経験の少ない分野については有用性が低くなる可能性がある．特に上流工程に関する研究の評価については，経験年数のより長い被験者を対象に調査をする必要があると考える．

7.

トウェア開発者に対し，業務に関係する研究カテゴリを最大で 5 つ選択してもらい，そのカテゴリに属する研究（1 カテゴリにつき 4 つ程度の研究）が自分の業務に有用かどうか，興味を持ったかどうかを 5 段階で評価してもらった．その結果，以下の傾向が見られた．
l
業務と関連が弱い研究カテゴリがいくつか存在した．例えば Compilers and Emerging Trends (コンパイラ・最新トピック)や Energy and Videos (ソフトウェア省電力化・ビデオの活用)などのカテゴ
リは関連があるとの回答がなかった．
l
所属する企業の規模によって，関連する研究カ
テゴリに差異が見られた．例えば API や OSS は，
従業員数 300 人未満の企業に所属する開発者の業務と関連が強く，それ以外の関連が弱かった．
lPerformance (ソフトウェアの性能)と Synthesis(自動プログラム生成)に関する研究を除き，最先
端の研究は業務に有用であるとはいえなかった．
l
開発者が所属する企業の規模によって，研究の有用性及び興味の評価に差異は生じなかった．
ただし，興味については開発者の取得学位が影響している可能性がある．
l
業務に関連する研究カテゴリを予測した場合の精度が低かった．ただし，研究に対する興味の度合いについては，ある程度の精度で予測可能であった．
今後さらに分析を行う必要があるが，今回の分析では有用性の評価が高くなく，ソフトウェア工学の最先端研究が中小企業のニーズに応えられているとは必ずしもいえなかった．今後の予定は，回答者を増やすとともに，入社年数の長い回答者を増やして分析結果の信頼性を高めることである．
謝辞 本研究の一部は，文部科学省科学研究補助費（基盤 C：課題番号 16K00113）による助成を受けた．

参考文献
[1]

[2]

おわりに

本研究では，最先端のソフトウェア工学の有用性に対するソフトウェア開発者の評価を，開発者が所属する企業規模に着目して分析した．企業に所属するソフ

[3]

101

Carver, J., Dieste, O., Kraft, N., Lo, D., andZimmermann, T.: How Practitioners Perceive theRelevance of ESEM Research, In Proc. ofInternational Symposium on Empirical Software
Engineering and Measurement (ESEM), no.56,
10pages, 2016.
中小企業庁：中小企業の定義について，http://
www.chusho.meti.go.jp/pamflet/g_book/h22/teigi.ht
ml.
Estublier, J., Leblang, D., Hoek, A., Conradi, R.,
Clemm, G., Tichy, W., and Wiborg-Weber, W.:

SEA

ソフトウェア・シンポジウム2017 in 宮崎

[4]

[5]

[6]

[7]
[8]

[9]

[10]

[11]

[12]

[13]

[14]

実験参加協力のお願い

Impact of software engineering research on thepractice of software configuration management,
ACM Transactions on Software Engineering andMethodology (TOSEM), vol.14, no.4, pp.383-430,
2015.
Goldberg, D., Nichols, D., Oki, B., and Terry, D.:
Using Collaborative Filtering to Weave an
Information Tapestry, Communications of the ACM,
vol.35, no.12, pp.61-70, 1992.
Herlocker, J., Konstan, J., Terveen, L., and Riedl, J.:
Evaluating collaborative filtering recommendersystems, ACM Transactions on Information Systems(TOIS), vol.22, No.1, pp.5-53, 2004.
情報処理学会 ソフトウェア工学研究会 国際的研
究 活 動 活 性 化 WG ： ICSE2016 勉 強 会 ,https://sites.google.com/site/sereadings/icse2016.
経済産業省：平成 27 年特定サービス産業実態調
査，2016.
Lo, D., Nagappan, N., and Zimmermann, T.: Howpractitioners perceive the relevance of software
engineering research, In Proc. of Joint Meeting on
Foundations of Software Engineering (ESEC/FSE),
pp. 415-425, 2015.
Osterweil, L., Ghezzi, C., Kramer, J., and Wolf A.:
Determining the Impact of Software Engineering
Research on Practice, Computer, vol.41, no.3,
pp.39-49, 2008.
Resnick, P. Iacovou, N., Suchak, M., Bergstrom, P.,
and Riedl, J.: GroupLens: An Open Architecture forCollaborative Filtering of Netnews, In Proc. ofConference on Computer Supported Cooperative
Work (CSCW), pp.175-186, 1994.
Rubin, J., and Rinard, M.: The Challenges of
Staying Together While Moving Fast: An
Exploratory Study, In Proc. of International
Conference on Software Engineering (ICSE),
pp.982-993, 2016.
Ryder, B., Soffa, M., and Burnett, M.: The impact ofsoftware engineering research on modern
programming languages, ACM Transactions on
Software Engineering and Methodology (TOSEM),
vol.14, no.4, pp.431-477, 2005.
Sarwar, B., Karypis, G., Konstan, J., and Riedl, J.:
Item-BasedCollaborative
Filtering
Recommendation Algorithms, In Proc. ofInternational World Wide Web Conference (WWW),
pp.285-295, 2001.
秋永知宏，大杉直樹，柿元健，角田雅照，門田暁
人，松本健一:協調フィルタリングに基づくソフトウェ
ア開発技術の推薦，電子情報通信学会技術報告,
ソフトウェアサイエンス研究会, SS2005-13, pp.7-13,
June 2005.

我々は，ソフトウェア開発企業で開発業務に従事したことのある方で実験参加の協力をしていただける方を募集しています．詳細は以下 google フォームのサイトに記載しております．お問い合わせは，本研究の著者までお願いします．
https://goo.gl/forms/n5UKrffJRAfkKFXz1

102

SEA