HOME > 活動報告 > イベント報告 > JaSST'16 Tokyo
2016年3月8日(火)~9日(水) 於 日本大学理工学部 駿河台校舎1号館
今回のJaSST Tokyoは初めての日本大学理工各部での開催となった。例年に比べ会場が手狭なようだったが、サテライト会場が別途設けられるなどの対応がなされていた。
JaSST Tokyoは例年2日間開催されており、60~120分程のセッションを1日5つ程度聴講できる。最大6セッションが同時間帯で並列に開催されることもあり、聴講するセッションを決定するのに苦労したが、それもJaSST Tokyoの楽しみのひとつである。それ以外にも、ツールベンダーやコミュニティなどのブースも出展されており、セッションの合間にも多くの参加者で賑わっていた。
今回、数多くのセッションから、筆者が参加したセッションについてレポートする。
まず、JaSST'16 Tokyo共同実行委員長の片山 徹郎氏により、開幕の挨拶が行われた。主催団体であるNPO法人ASTERの紹介や、ここ数年における開催場所や日程の変更の経緯などを話してくれた。実行委員の努力や苦労が伺われる内容だった。
Jon氏はシステム・ソフトウェアのテスターである。またIoTや組み込みなどを専門にソフトウェア製品の安全性、検証や妥当性確認をサポートするコンサルタントでありトレーナーでもある。そのJon氏が、今までの豊富な経験からIoTデバイスにおけるテストについて話してくれた。
IoTについては、標準の定義はまだない。Jon氏が考えているところのIoTの説明と以下の話をしてくれた。
まず(1)について。IoTはハードとソフトの両方に関わってくるため、両方を見ていく必要がある。しかし、残念ながらそのような時間はないのが現状である。また、IoTのテストにおける課題についてはまだ解決しておらず、1年後は話が違っている可能性が高い。それほど、IoTの分野の標準化については進んでいないのが現状であるようだ。
しかし、そのような状況でもIoTのテストにとりかからなければならない状況になり得る。そのとき、どう進めていったら良いのか?Jon氏は「デバイスの数」や「ビックデータとそのアナリティクス」などのいくつかの課題があると考えている。そしてそれらの課題に対しては、モデルベースドテストを行ったり、数学ベースのテストでテストケースを減らしたり、探索的テストをパターン化して使用したり、標準ベースのテストを自分の環境で使えるように調整したりと、様々な工夫をしてテストを行っている。
続いて(2)IoTのビッグデータとアナリティクスについて話してくれた。これはまだ始まったばかりだが、IoTで扱うデータは膨大なためビッグデータとして処理する必要があり、これをテストしていかなければならないが、一体どうテストしていくのか?Jon氏はこれまでテストにおいて出た様々なエラーをカテゴリに分けることでエラーパターンを見出し、テストしやすくしている。IoT テスターにはself-organizing data analytics (SODA)を取り巻いて構築されたユビキタスな全体論的データが必要になる。
最後に(3)IoTのプライバシー、セキュリティの問題について。IoTにおける個人情報などのセキュリティ対策の必要性は10年前から言われてはいたものの、最近やっと注目されてきた。しかし、例えば、どこまでいったら政府は介入していいのかなど、まだ別の問題や議論が残っている。
以上、IoTのテストにはたくさんの課題があるが、それと同時に大きなチャンスでもある。車にはすでにIoTデバイスが搭載されており、IoTデバイスは今後あらゆる機器に搭載される。基調講演を聴講して、私も今後IoTのテストに対応できるように、日々成長していかなければいけないと感じた。
ここでは、以下の2つの事例が発表された。一方は「レビュー」もう一方は「テスト設計」に関する事例発表である。
レビューには多くの問題があり、効果が実感できないというのもその一つだ。それが、レビューに対してのモチベーションを下げる要因となっている。そこで、安達氏は自身が提唱するSaPIDを使って、過去に様々なシンポジウムなどの場で収集したデータを元に、レビューにおける問題分析をした。その結果、レビューの運営に問題があるのではないかと考え、目的と観点を持ったレビューをすることで改善されるのではないかという仮説をたてた。
安達氏は単にアドホックにレビューした結果と目的や観点を設定してレビューした結果を比べて、どれだけ効率が変わったかを確認できるワークを行った。これは、単にデータを取るだけではなく、評価の仕方も考案し、レビューの価値を見える化できるようなものにしたため、参加者の満足度も相当高かったようだ。そのワークの結果、アドホックにレビューした場合に比べ、観点を持ってレビューした場合では、要件抜けや誤りのような、早い段階で見つけると効果の高い指摘件数が大幅に増える結果が得られた。目的・観点を設定したレビュー運営にすることで、今後のレビューの効果やレビューに対するモチベーションが高まることが期待できる。しかし、まだ観点の設定がバラつくなどの問題点も残っているようなので、今後の展開に大きく期待したい。
ソフトウェアの開発規模は年々大きくなっており、テストもそれに併せて複雑なものになってきている。テストケースは、プログラム開発におけるFP総計の1.3-1.5倍と言われており、とてもやりきれない。その問題を解決するため、湯本氏は、適切なテストケースを効率よく作ることと、テスト設計を周囲に効率よく教えることが重要と考えた。また、現状として、テスト技術者のテスト設計へのスキルが不足しているのではないかとも考え、そのスキルの計測に着目し、効果的に実践教育を確立できるのではないかと仮説を立てた。
その仮説を検証するために、湯本氏は自身が提唱している「ゆもつよメソッド」を使用して、その技法を教える前と教えた後で洗い出すテストケースの数がどう変わるかを計測した。結果は、経験年数によって大きく変わる傾向が見られた。経験年数が1~2年目と、経験が浅いテスターにとっては高い効果が出た結果となった。私はこの結果を聞いて、早い段階で基礎をしっかりと教育していくことが大事なのだと感じた。ただ、質疑応答で「モチベーションの低い人」に対する言及が出てきたが、テスト設計のスキル以外の要因もありそうなので、この続きをぜひまた聞きたいと思う。
レビューとテストは相互補完の関係にあると言われており、安達氏と湯本氏の事例を両方実践するとプロジェクトの運営がスムーズに進行するようになるのではないかと思った。
このセッションでは、ユーザテスト(ユーザビリティテスト、ユーザ体験テストとも言われる)についての紹介の後、講演者の樽本氏が、普段行っているユーザテストの様子をスクリーンに映してライブで見せてくれた。本講演でのユーザテストとは、ユーザが思ったことを口に出しながらタスクを実行することであり、ユーザに意見を聞くことではない。ユーザの意見は聞かずに、ただユーザの行動を横で見ているだけで、その後そこで何が起きたかを分析するのである。かつてこれは、マジックミラーがついた専用ラボで行われており、約4週間の期間と高いコストがかかっていたようだが、アジャイルへの流れに合わせて、部屋の片隅、身近な道具を使って手軽に分析する流れに変わってきているようだ。その様子を、実際にライブで見せてくれた。2人のユーザに対してモバイルのアプリを操作してもらい、それぞれ5つのタスクを実行する様子をスクリーンに映してくれた。気になったところについて時折質問を入れるものの、基本的にユーザが主体的に操作している様子だった。
ユーザテストは、Measure, Learn, Build(計測,学習,構築)を1週間程度で回す。そしてそれを繰り返す。繰り返さないと検証ができないということを教えてくれた。かつて専用ラボで行われていたことが、このように身近にできることを知り、もっともっと普及すべきだと思った。
シンポジウムの1日目はこれにて終了し、この後情報交換会で大いに盛り上がった。
今年で6回目を迎えたテスト設計コンテスト。全国の予選を勝ち抜いたチームが「テスト設計」の良さを競った。決勝戦出場チームは全部で5組。チームごとに様々な工夫をして臨んだようだ。チームごとに特色が異なり、一つのテストベースに対して様々な見方ができるということが分かる内容だった。すべてを伝えることは困難であるため、このレポートでは、各チームが工夫した点を中心に紹介したい。(発表順, <>内はチーム名とする)
テストの目的に対して、一気に達成しようとせずにアプローチを分けて段階を踏んで解決できるようにした。
今回のテストの要素がすべてつながるように工夫した。
魅力、満足度の評価方法を検討したこと。
自分たちの実務に取り入れられる流れを作れるように進めたこと。
カラオケへの期待や機能要件をモデル化して認識合わせに利用し、ユースケース図などルールの平易な図を利用することで、資料が読み手にとって読みやすいものとなるようにしたこと。
このように、各チームそれぞれ着目点が異なっているのがわかる。目指すものによって結果が大きく変わることに改めて気づかせてくれるようなコンテストの内容であった。各チームには来年度もさらなる飛躍を見せてチャレンジしてほしいと思う。
これから必ず電気自動車の時代が来る、そうなるとその後自動運転の時代が来る。その時代がくることで生活そのものが変わると講演者の清水氏は様々な未来予想図を見せてくれた。清水氏は30年以上電気自動車の開発を進めており、これまで15台の試作を作ってきた。特に加速感を重要視して開発を進めてきたそうだ。その代表例を動画や静止画で見せてくれた。
では、どうすればもっと電気自動車が普及するのか?こういった新しい物が普及する最大の要因は「人間にとって使いやすいこと」「効率がよいこと」「原理は難しくても作るのが簡単なこと」の3つ。残念ながらまだ世の中の制度整備が整っていないなどの技術以外の問題も含め「人間にとって使いやすいこと」がクリアされていないと清水氏は言う。だが、この問題がクリアされると電気自動車の普及が急速に進む。また電気自動車もまもなくOSの概念が出てくる。そうなると今後、さらにテストが複雑で難しい物になってくるだろうことが予想される。そのとき、テスターとの協力が必要になってくるとも言っていた。清水氏の話を聞いて、その日はそう遠くないのではないかと感じた。今からその日に備えて、私も今できることをしておかなければならないと感じた。
クロージングパネルでは、今回の基調講演の内容にも関係する「これからのIoT世界でどうテストしていかなければならないか」という点についてディスカッションが行われた。基調講演の箇所でも書いたとおり、IoTについては、まだ標準的な定義はない。今回のパネルでは、IoTを「インターネット上のサービスと接続されたデバイスあるいは相互接続されたデバイスによって実現されるサービス」と定義し、IoTのテストをうまく組み立てる方法やIoTのテストに求められることなどについて語られた。 パネリストから以下のような意見がでた。
今回のパネルでは、どこまでテストするのかという明確な答えは出なかった。その中で、例えば標準を自分たちの組織で使えるように調整するように、システムの規模などに合わせてテストも随時変えていく必要があるのであろうと感じた。
シンポジウムの終わりに、毎年恒例となっている「テスト設計コンテスト」の結果発表と「善吾賞」「ベストスピーカー賞」の発表が行われた。その結果を紹介する。
優勝 : SASADAN Go
準優勝 : しなてす
マレーシア賞 : FSTWG
※マレーシア賞は、Malaysian Software Testing Boardメンバーによる今期限りの特別賞である。
「テストケースのクラスタリングと0-1計画モデルを組み合わせた回帰テストの効率化」
阿萬 裕久氏, 佐々木 愛美氏, 中野 隆司氏, 小笠原 秀人氏, 佐々木 隆志氏, 川原 稔氏
「レビュー目的・観点設定の効果と課題」
安達 賢二氏 (HBA)
この後、JaSST'16 Tokyo共同実行委員長の中山 裕貴氏の挨拶で締めくくられ、終了した。
以上、2日間の多くのセッションの内容から、「ソフトウェアテストは難しく複雑になってきていて今後さらに難しくなる」という変化の波を感じた。ということは、私も現状のままの知識やスキルのままでいてはいけない。このようなシンポジウムに参加するなどして、常に新しい知識を習得し、自身のスキルを磨いていかなければならないと改めて気付かされるような有意義な2日間だった。
記:小楠 聡美(JaSST Hokkaido 実行委員会)