会社では教えてくれない「ちょっと先進的な」組み込み開発技法を習得 ―― LED-Camp実行委員の高瀬 英希氏,細合 晋太郎氏に聞く
―― 実習の教材や具体的な内容について教えてください.
細合氏:実習では,Kobukiという研究用移動ロボットを使います(写真2).掃除機ロボットのルンバに似ているので「掃除機型」と言っていますが,掃除の機能はありません(笑).Kobukiにはタイヤが二つついていて,シリアル・ポート経由でモータの制御やセンサ値の取得が行えます.Kobukiにはジャイロ・センサや衝突を検知するバンパー・センサ,IRセンサがついており,これらのセンサ値を利用して自律走行させることも可能です.
実習では,Arduino基板をシリアル・ポート経由でKobukiに接続して制御します.Arduinoの制御プログラムをUML(Unified Modeling Language)によるモデル駆動開発で,アジャイル手法を使って開発します.なお,Arduino基板は,参加者の人数分用意してあり,参加者の方はそれぞれ持ち帰ることができます.
高瀬氏:このような仕様のKobukiを使ってどんな実習をするのかは,当日のお楽しみ! ということで...(笑).
写真2 実習教材である研究用移動ロボット「Kobuki」と制御に使うArduino基板
(写真提供:LED-Camp実行委員会)

―― 今後,モデル駆動開発やアジャイル開発が組み込みソフトウェア開発でも主流になっていくと思われますか?
細合氏:はい.そうしていかないと,増え続ける開発要求にいずれ追いつかなくなります.オフショアでは技術力を維持しえません.
高瀬氏:歴史的にも,設計の抽象度は上がっていくものですから,当然そうなると思います.
細合氏:もちろん,モデル駆動開発でもソース・コードを書く部分は残ります.抽象度の高いところだけでなく,しくみを支える裏側の部分を理解する人も必要です.LED-Campに参加する方には,裏側の部分まで作れる人になってもらいたいですね.
●チームで正しく議論できるためのコミュニケーション能力を磨く
―― 個別の技術だけでなく,チーム開発,チーム・ビルディング,成果発表会といった,コミュニケーション・スキルの向上も重視されているようですね.
高瀬氏:LED-Campの一番の特色は,ここで初めて出会った人がチームを組む,ということです.実際,しごとの現場でもそういうことはあり,初めて顔を合わせたメンバが打ち解ける間もなく仕様を決めたりします.そういうことを意識して,コミュニケーション能力を高めるカリキュラムを意図的に取り入れています.
―― コミュニケーション能力とは,何だと思いますか?
高瀬氏:実行委員であるコーワメックスの星野 利夫さんの受け売りなのですが,一例として挙げると「上の人に対して,この仕様が間違っているよ,ということを正確に伝えられる能力」だと思います.
細合氏:自分の思ったことをきちんと言えて,チームで合意がとれる能力だと思います.
高瀬氏:調整能力もコミュニケーション能力として重要ですね.
―― 実行委員の皆さんはどんな方々なのでしょうか?
高瀬氏:半分が,サマー・スクール経験者です.あとは,SWESTの実行委員の方にもご協力いただいています.できそうな人に声をかけて実行委員になっていただいており,各セッションの講師も実行委員やつながりのある方にお願いしています.
細合氏:講師それぞれが,自分のセッション枠でやりたいことが多くて,時間の取り合いになっています(笑).