HOME > 活動報告 > 国際調査活動 > InSTA 2018 参加レポート

国際調査活動
 InSTA 2018 参加レポート


報告者 / 坂 静香, 記事協力 中岫 信

5th International Workshop on Software Test Architecture (InSTA 2018) が2018年4月13日に開催されました。

InSTAはその名のとおり「テストアーキテクチャ」に関心を持つ研究者や実務家が集まり、テストアーキテクチャという概念について国際的に議論する場で、ASTERが開催しています。2011年12月にISSRE 2011(第22回IEEEソフトウェア信頼性工学国際シンポジウム)の併設ワークショップとして第一回が開催され、その後は2015年から毎年ICSTの併設ワークショップとして開催されています。
InSTA 2018 にて、智美塾有志メンバーにより執筆した論文を投稿、採択されましたのでし、発表を行いました。このレポートでは昨年度の智美塾の活動と論文執筆の模様、そして当日のInSTAの模様と、海外で発表してみたことにより得たことをお伝えします。

昨年度の智美塾の活動

智美塾は、産官学を問わず、テストエキスパートや研究者が集まり、各々の先進的テスト開発方法を開示&共有し、議論を重ねながら研鑽しあう場です。

これまで、テスト要求分析、テストアーキテクチャ、テストのリバースエンジニアリングなどについて議論を行い、JaSST Tokyoで発表を行ってきました。

昨年度はUTP2(UML TestingProfile 2.0)を扱うことになりました。昨年の3月に開催されたICST 2017の基調講演でUTP2についての解説がありました。UTP2ではテストシステムのモデリングに対する表記は充実していることがわかりましたが、智美塾で議論されているようなテスト観点のデザインやモデリングに対しては不十分なのではないか?という印象を受けました。そこで昨年度の智美塾では、UTP2とはそもそもどういうものか?UTP2でテストをモデリングするとどうなるのか?というところから学びました。学んだ結果として、どうにもこうにも表現できないものが存在する、ということを実感しました。Test Requirement でもなく、Test Objective でもなく、Test Case でもない、だけどそれらに結びつくなにか、つまりテスト観点に該当する概念がないのです。私たちはこれを「テストエンジニアが抱く気がかり」というキーワードから「Test Concern」と呼ぼう、と決めました。

今回の研究内容と論文執筆活動

UTP2に対して追加提案をするには、国内のカンファレンスに対して投稿してもUTP2の関係者には届きません。そこで有志で論文執筆を行い、InSTA 2018に投稿することにしました。

(投稿時の論文の概要:後述のとおり「Test Concern」は後に「Test Aspect」になりました。)

テストエンジニアが気がかりを抱くのはなぜか?それは開発モデル(Development Model)が不完全なものであるからだ。開発モデルは、開発者がソフトウェアをつくりやすくする目的で、つくるために必要な情報に絞り込む。したがってテストを考えるために必要な情報は暗黙な状態になってしまう。テスト設計者はテスト設計の成果物としてテストベースとなるモデル(Test Project Model)を作成するが、その前に Development Model で省かれた情報を補ったモデルを作ろうとする。その際にテスト設計者は自身が開発モデルに対して抱く「気がかり(Concern)」を頼りに不足している情報を補っていくことから、このモデルを「Test Concern Model」と呼ぶ。補う箇所は欠陥を招きやすい箇所であり、レビューによる欠陥の予防やテストによる欠陥の摘出に利用する。補う情報に対する概念を「Test Concern」と呼ぶ。Test Concern Model は開発モデルを包含するが、Test Concern だけでモデルを作成することがある(具体的な例として「Viewpoint Diagram」や「Test Conglomeration」がある)。また、Test Concern は既存のUTPの要素である Test Requirement や Test Objective や Test Case を導く要素となる。この論文では、UTP2に対して「Test Concern」という概念と記法の追加提案、および、UTP2の記法による「Test Concern Model」の例を示す。

論文投稿のために有志で議論を始めたのが12月中旬、投稿締切が1月中旬という状況だったことから、年末年始の時間を利用してオンラインで議論を重ねることになりました。所属も普段の業務内容も異なるメンバーが集まって短期間で論文にまとめ上げられた理由のひとつに、このオンライン環境の充実が挙げられます。また、オンラインだけでなく、オフラインでも何度か集まってホワイトボードに図を描きながら議論を重ねていきました。その結果、なんとか期日までに投稿することができ、査読結果はボーダーラインに近いものではありましたが、なんとか採択され、発表できることになりました。

査読者からのフィードバックはいずれも「ConcernではなくAspectである」という見解でした。確かに、気がかりを抱くのは人ですが、表しているものはテスト対象の側面(Aspect)になります。このフィードバックを受け入れ、概念を「Test Aspect」、モデルを「Test Aspect Model」に変更しました。

プレゼンテーションに向けた活動と当日の発表

写真/当日発表の様子
[写真1] 当日発表の様子

採択されたからには誰かが発表しなければなりません。共著メンバーの中には過去のInSTAでの発表経験者もいましたが、今回は海外発表経験のないメンバー(中岫)が発表に挑戦することになりました。(発表者の立場としては、北海道からリモートで議論に参加していて「スウェーデンは(旅行として)行ってみたい」と言っただけなのに、気づいたら「スウェーデンに行って発表することになっていた」のですが、最終的に行くことを決意しました。)

海外発表経験もなければ英語力もないという状況の中で、発表スライドに対して、いくつか工夫した点がありました。

  • 発表原稿を作成する際に、スライドに対して文が長いと声に出して読むことが難しくなるため、スライドの枚数を増やして説明する文章を短く区切ることにした
  • 文章表現について、国内の発表では自分らしさを出した発表にしているが、今回はAbstractの記述が誤解なく伝わることを優先して、表現を選ぶようにした
  • 説明が伝わらなくてもスライドを見ることで理解してもらえるように以下の工夫を行った
    • 文章で伝わらなくてもイラストで伝わるように心がけた
    • 文化の違いにより受け取られかたが変わるため、日本でブラックジョークとして通用している過激表現などは控えて、無難なイメージを選択した
    • 過去の他の人の英語のプレゼン資料を参考にした

当日のスライドはInSTA2018のサイトに掲載しています。
( https://aster.or.jp/workshops/insta2018/img/InSTA2018-Proposal_for_Enhancing_UTP2_with_Test_Aspects.pdf )

また、発表にあたり以下のことを試してみました。上から2つの試行については効果を感じましたが、スウェーデンアーティストの曲についてはあまり効果がなかったように思いました。

  • 翻訳サイトを利用して発表原稿を音声にしたものをポータブルプレーヤーに入れて、繰り返し聞きながら発音した
  • 会話がスムーズにできなくても、せめて相手の言葉が聞き取れるように、英語教材やTEDをひたすら聞いた
  • スウェーデンのなまりがあるという話を聞いたため、慣れておこうと思い、スウェーデンアーティストの曲を積極的に聞いた

しかしながら、スライドの仕上げや発表練習については不足したまま現地に向かうことになり、前日もホテルで発表練習をしていました。不安な気持ちを落ち着かせるのに役立ったのは、PCケースの中にたまたま入っていたムックリ(アイヌ民族に伝わる竹製の口琴楽器)でした。鳴らしてみると気持ちが落ち着くことがわかり、かくして発表直前まで会場の外でムックリを鳴らして気持ちを落ち着かせていました(笑)。

そんな不安を抱いたままの発表でしたが、実際発表をしてみると、どんなに下手な英語でも参加している人は聞いてくれるということを強く実感しました。聞く姿勢が目に見えてわかりました。発表後に質問も寄せられ、同行メンバー水野氏の協力を得て以下のとおり回答しました。

Q:
プレゼンのポイントはどこか?
A:
スライドの27,28ページが該当する。テストエンジニアが抱く気がかりによりTestAspectを見出すところ。
Q:
Test Conditionとの違いはなにか?
A:
Test Conditionは必ずテストケースに表現されるもの。Test Aspectはテストにするためのモデル。テストしないものも含まれると考えている。
Q:
Development Modelにすべて書かれるべきではないか?
A:
その通り。ただ、Development Modelの検討の際にはソフトウェアの開発を優先するので、発表で表現したものは抜けやすい。そのため、テストフェーズで考えることは有効。
理想はDevelopment Modelにフィードバックされるべきなので、検討された結果は将来Development Modelとして表現される方がよい。

また、Jon Hagar氏から、UTPに対して提案するなら協力するというありがたいお声がけもいただきました。

InSTA 2018の模様

InSTAはICST本会議の翌日、つまりICST全体の最終日に開催されました。
基調講演「From hacking to product - Our journey from ad hoc tool development to an organized test system」(Dr. Kristian Wiklund) は、テスト自動化のためのツール開発における障壁(障害となる要因)の分類および相互作用の話が主でした。よく挙げられるスキルとトレーニングの問題やコストの問題だけでなく、テストケースの再利用ができない問題やツールが使い捨てになってしまう問題なども語られ、スライドを見ながらうなずきたくなる、共感することが多い講演でした。確かに障壁となるものは把握しているけれど、その障壁を単独でみてしまう傾向はあるかもしれません。どこかを改善すればよい話ではなく、全体を把握して改善をしていく必要があることを学びました。

投稿された論文の発表は8本ありました。その内訳は、Research papers が3本、Industrial experience reports が2本、Emerging idea proposals が3本でした。
Research papers は、大規模なデータ分析システムのベンチマークテストに対する方法と戦略の提案、データベースアプリケーションのためのペアワイズカバレッジベースのテスト方法「Join-based Pairwise Coverage Testing」の提案、セキュリティ問題の定義およびセキュリティ問題分析モデルを用いたセキュリティテストモデルの導出の提示、といった内容の論文が発表されました。Industrial experience reports は、IoTシステムに対するテストアーキテクチャやテスト環境に対する必要性や現状の問題点の提示および施策例の紹介、UTP2のテストロギングの概念に対する拡張提案、といった内容の論文が発表されました。Emerging idea proposals は、私達の論文の他に、機械学習を利用したプロダクトに対する品質保証フレームワークの提案、機械学習アプリケーションのためのソフトウェア品質の調査と考察、といった内容の論文が発表されました。

これまでのInSTAは多くが日本からの参加者だったそうです。筆者(坂)はInSTA 2011にも参加していますが、そのときは日本人の参加者がほとんどを占め、論文発表後のディスカッションは日本語で議論しても問題がない状態になっていました。しかし今回のInSTAでは半分以上が日本以外の参加者で、国際ワークショップとして本格的になってきた印象を持ちました。

InSTAに限らずICST全般を通して、参加するからには少しでも事例を聞き取らねば損だ!と思ったことから、英語の論文を翻訳しながらなんとか読み取ろうとしました。そのうえで生で発表を聞くことにより、理解度が増しました。昨年は東京で開催されましたが、そのときは同時通訳に頼りがちになっていました。同じ国際カンファレンスでも海外で参加するほうが本気になれることを実感しました。

また、ワークショップでは論文発表者が発表枠以外の Session Chair (セッション進行役)を担当することになっているということで、坂がChairの体験をしてきました。こちらも初めての体験で、原稿を読みながらというお粗末な進行となりましたが、機会を与えていただいたことで、ICSTの中でChairの皆さんの振る舞いや言動についても観察し学ぶことができました。

国際カンファレンスへの論文執筆活動・発表・聴講を行って感じたこと

簡潔にまとめると以下の2点になると思います。

  • 英語に慣れていなくてもやってみようと思えばなんとかなる
  • 普段考えていることや活動している「たいしたことはない」と思うようなことでも投稿する価値はある

今回の論文執筆メンバーは、多くが英語に慣れていませんでした。それでも英語にする必要があるならば、なんとかしようと英語と向き合います。結果的には英語の論文執筆経験のあるメンバーに負荷がかかってしまいましたが、それでも挑戦しなければ上達もしないので、英語で論文を書く機会は逃さずに挑戦したほうがよいと思いました。
また、今回は論文執筆メンバーを絞り込まない方針としたことで、大人数での議論となり、活発ではあるけれど落としどころを見つけることが難しく、論文としては主張が弱いふわっとした内容になりました。それでも、ただ宿題を考えて共有して議論するだけの活動よりも、集中した議論ができた点がとてもよかったと思います。論文のかたちにすることで、自分たちがなにを解決したいのか、その提案でどう嬉しくなるのか、ということをより意識することができるのを実感しました。

発表体験としては、まず海外で発表するという貴重な経験を得られたことは大きいと思いました。今回の開催地は北欧であり、海外旅行に行くには費用の面でも移動距離の面でも敷居が高く感じますが、発表するというモチベーションにより重い腰をあげて行くことができました。その結果として、スウェーデンの美しい町並みや風景を楽しむことができ、海外旅行という点でも大いに楽しめました。
そして、実際に英語でプレゼンテーションをする必要があるため、本気になって英語と向き合うしかなくなります。しかしながら、サポートしてくれる仲間がいれば発表だけなら何とかなるものだと実感しました。今回は想定質問を考える余裕がなくて、質問内容を聞き取ることで精一杯になってしまったときにサポートしてくれる仲間がいたことを心強く思いました。
また、海外カンファレンスの投稿は内容も高度なものを求められる印象がありましたが、ICST全般で感じたことは、国内でも発表されているような身近な事例でも投稿すれば採択されるのではないか、ということでした。海外の投稿内容を目の当たりにして、投稿できそうな身近な事例で発表できそうなものを探すようになりました。

また、海外のカンファレンスは日本のカンファレンスよりも聴講者が積極的に質問や意見を返し、その場で議論が活発になることがあります。より多くのフィードバックを得られる点で、大きな収穫になると思います。コーヒーブレイクやランチが開催期間中毎日会場内に用意され、夜にはバンケットも開催されるため、たくさんの海外の技術者と気軽に交流する時間がありました。英語力が不足していて満足に議論ができず、悔しい思いもたくさんしましたが、これを糧に今後につなげていこうと思います。

今後の智美塾の活動

今年度は、Test Aspect および Test Aspect Model がテスト要求分析からテスト設計の過程におけるユースケース、および他のUTPの概念との関係性について論文執筆しました。採択されれば InSTA 2019 で発表することになります。
今後は 様々なドメインを対象としてより詳細な実例の作成を試みようとしています。

次回のICSTとInSTAの開催について

次回のICSTは4月22日から27日まで中国(西安)で開催されます。
http://icst2019.xjtu.edu.cn/index.htm
InSTAは22日に開催されます。
https://aster.or.jp/workshops/insta2019/

[ページトップへ]