こんにちは。Misoca開発チームのmzpです。 長野で夏の星を見てきましたが、最高でした。
先日、ICSE 2015勉強会に参加してきたので、内容を紹介したいと思います。
ICSE 2015勉強会とは
ICSE 2015勉強会は、ソフトウェア工学のトップカンファレンスの1つであるICSE(International Conference on Software Engineering)で発表された論文を紹介していく勉強会です。1つあたりの紹介時間は3分なので、ガンガン進んでいきます。
最新の研究の動向を一日で把握できるので、大学・企業等で研究している人から、ソフトウェア工学に興味を持っている人にいたるまで多くの人が毎年参加しています。今回は全会場あわせて151人の人が参加していたそうです。
参加報告
会場の様子
ICSE 2015勉強会は毎年、東京、大阪、名古屋、九州といった各拠点をTV会議で繋いでいます。今回、私は名古屋拠点で参加しました。
東京拠点、大阪拠点は50人を越える参加者がいたそうですが、名古屋はピーク時でも11人、最終的には4人とかなり少人数でした。
私の紹介した論文
私が紹介した「Dynamic Generation of Likely Invariants for Multithreaded Programs」で、マルチスレッドプログラムの不変条件を自動生成するための研究でした。
内容も興味深かったですが、先行研究のツールの名前がDaikonで、提案されているツールの名前がUdonなのもかなり気になりました。著者の発表スライドにはうどんなのかラーメンなのかよく分からない画像が貼ってありました。
興味深かった発表
いくつか興味深かった発表を紹介します。あくまで3分での紹介のさらなる要約なので詳しいことは出典となっている論文を参照してください。
なお、以下のスライドは ICSE'15勉強会内にある資料からの引用です。
12-3 When and Why Your Code Starts to Smell Bad
ソフトウェアにおけるBad smell(不吉なにおい)は、どういうときに発生するかの研究です。
200プロジェクトから抽出した約9000コミットを手動で調査しており、迫力を感じます。また、忙しいとコードが雑になるという直感を支持する内容なのもおもしろいです。
22-1: Assert Use in GitHub Projects
Linux, gcc, mongodbといったGithub上にある有名なソフトウェア69個を調査し、assertの利用傾向を調査した研究です。。
assertの利用傾向よりも開発者と数とバグの総数の間に相関があることが興味深く感じました。
11-1: How Much Up-Front? A Grounded theory of Agile Architecture
アジャイルの設計に関する問題を、経験を詰んだアジャイル開発者44人にインタビューをし、それをまとめた研究です。
インタビューの数が膨大なことと、その結果についてかなり細かく書いてあるそうなので、ぜひ元論文を読んでみたいと感じました。
20-3: Stuck and Frustrated or In Flow and Happy: Sensing Developers’ Emotions and Progress
タスクの進捗率とそのときに抱く感情について調べるために、被験者の頭に生体センサをつけて、コーディングとかをしてもらった研究です。
テーマ自体が興味深いのと、それを生体センサで測ろうとしたのがおもしろいのです。また、当日もつっこまれていましたが、5分ごとに進捗を聞かれた被験者がとてもかわいそうですね。
その他
その他にも
- Microsoft内部の内製ツールにはどのようなものがあるかを調べた研究
- 大規模プロジェクトの会議に研究者が参加し、どのような事柄がソフトウェアの品質を悪化させるかを調べた研究
- 偉大なソフトウェア開発者に求められる資質は何かをインタビューから調べた研究
などがありました。
感想
- bad smellはリリース直前のコードで発生しがちといったソフトウェア開発者が経験的に知っていることを、根拠ある数字に基づいて述べている研究が多く、興味深かったです。
- 10:00〜18:00で87本の論文を発表をどんどん聞いていくので、終盤はかなりぐったりしてました。
- 名古屋の会場は参加者が少なく、ちょっと寂しかったです。