納得してワンステップアップのソフトウェアテスト~JaSST'18 Kansai で講演しました

最終更新日時:2021.11.11 (公開日:2018.10.24)
納得してワンステップアップのソフトウェアテスト~JaSST'18 Kansai で講演しました

2018/6/15(金)にソフトウェアテストのシンポジウム、JaSST'18 Kansaiが行われました。

私、江添も実行委員として運営に携わり、またセッションのひとつに登壇いたしました。

今回は、セッションでの講演内容を中心にレポートしていきます。

テーマ:「納得してワンステップアップのソフトウェアテスト」

今回のJaSST'18 Kansaiのテーマは「納得してワンステップアップのソフトウェアテスト」でした。

近年のソフトウェア開発に求められる要求はますます高くなり、その中で開発者、テスト担当者に求められるスキルや役割もますます高水準なものとなります。

そんな中で、私たちにできることは何かを実行委員会で話し合いました。その中で、今の現場の声として、若手から中堅のエンジニアたちが、自分たちのテストに「納得」できていないのではないか、自分たちがどうすれば、自信をもってテストを行っていけるのか、その先を見いだせていないのではないか、という意見が出てきました。

そこで、今回のテーマとして彼ら若手~中堅のエンジニアたちが「納得してワンステップアップ」できるよう、いろいろな話が聞ける場を提供するべく、講演内容を決めていきました。

基調講演:「テスト駆動開発から品質保証へと橋を架ける」

今回の基調講演は、タワーズ・クエストの和田さんによる、テスト駆動開発(TDD)についてのライブコーディングを中心に、開発と品質保証の関係についてご講演いただきました。

なんといっても圧倒されたのは、ライブコーディングの素晴らしさです。非常に高いスキルの実演を見ることができました。TDDは一度触れてみないと、その良さや勘所といったところがなかなか理解しにくいところがありますが、これまでTDDを知らなかった人、知っていたけれどやったことはなかった人にとってはすごくいい刺激になったのではないかと思います。

私個人としては、「テストを捨てる」という考え方がとても印象的でした。TDDで実装を進めていくとどうしても細かいテストコードが積みあがってしまい、「もったいない」精神からすべてを残し、ともすればその後のCIでも実施しようとしてしまいがちです。TDDで作成したテストコードはあくまでも実装上の不安を解消するためのものであり、すべてを毎回実行するのは時間的な面で無駄も多くなります。

もちろん必要なものはその後も残しておいてもいいのですが、不要なものもあるはずです。

なんとなく分かってはいるけど心理的に抵抗があるところをズバリ指摘されたようで、非常に心に残りました。

テスト管理セッション1:「老舗メーカーにアジャイル型要求開発を導入してみました」

ここからは、会場を2つに分割し「テスト管理セッション」「テスト設計セッション」として、それぞれ3つの講演が行われました。私は「テスト管理セッション」側での講演実施だったので、他2つの講演もこちら側を聴講しました。

テスト管理セッションの最初の講演は、コニカミノルタの中原さんによる、老舗製造業におけるアジャイル型開発の導入事例についてでした。

中原さんは話の進め方がとてもうまく、引き込まれながら講演を聞くことができました。「アジャイルという言葉が好きではない」とのことで、講演スライドでもアジャイルという言葉が薄い灰色で目立たなくしているところがなかなか面白いなと思いました。

もちろん、アジャイルという言葉を目立たなくしてはいるものの、今の時代に必要な「迅速に仮説を検証しながらサービスを育てていく」やり方について、アジャイルという方式がマッチしているということはおっしゃっており、手段からではなく、目的からアジャイル開発を選択しているという内容でした。

講演では、要求を「開発」するための方法としてのチーム構成から開発フロー、そしてその中で必要な品質保証という考え方について順を追ってお話いただきました。これまでのように、ビジネスを考える人、ソフトウェアを考える人、ユーザー視点で品質を考える人がそれぞれで仕事をするのではなく、組織の壁をなくしてひとつのチームとなって、要求と品質を開発していくこと大切さとその方法を教えていただきました。

テスト管理セッション2:「経験ゼロからのテスト設計エンジニア育成
~ポテンシャルを開花させるテスト設計研修~」

このセッションは私が登壇して講演を行いました。

弊社では2年ほど前から、「ポテンシャル研修」というプロジェクトを進めています。
どういうものかというと、IT業界未経験者を採用し、テスト設計についてのノウハウを2ヶ月間の研修で教えるというものです。
背景としては、テスト設計技術者が慢性的に不足し、経験者の採用だけでは追いつかないという現状があります。
ですので、少しでも早く、現場で使える、テスト設計の補助ができる人材を育成する必要性があります。
大変ハードルの高い目標ですが、これまでバルテスで培ってきたテスト設計のノウハウや技術、練習課題などをブラッシュアップし、継続的に人材の育成を進めています。

講演内では、どのように研修を進めていったのか、研修で使用しているフォーマット、またテストエンジニアとして必要な素養は何か、といった点についてもお話させていただきました。

テスト管理セッション3:「お互いが納得感を得られるソフトウェアテスト思考の因子」

テスト管理セッションの最後は、京セラドキュメントソリューションズの杉本さんによる、テストエンジニアに必要なスキルや心構えについてのお話でした。

さまざまな視点から、テストエンジニアに要求される資質を整理し、その理想に近づくための取り組み、育てる立場や上司への要望、そして講演者杉本さんのこだわりなど、本当に幅広いお話をお聞きすることができました。

たとえば、開発者に対してどのような資質が必要であるべきか、については、テストエンジニアに「大丈夫」と言ってもらいたいのが開発者なので、テストの一般化や客観的事実の積み上げることができるエンジニアであれば、お互いに信頼しあい、納得して自信が持てるようになります。あるいは設計者とは違った視点でテストを行うことで、より的確なテストを実施することができます。こういった要素をたくさんお教えいただきました。

講演の中では、実行委員の武林さんからの質問が随所に挟み込まれ、インタラクティブなやりとりの中で内容を深めることができたのも印象的でした。

テスト設計セッション

前述の通り、私は聴講することができませんでしたが、別会場にて、

  • ・「「超」やさしいレビュー ~開発とQAに壁はない!~」風間 裕也(ワークスアプリケーションズ)
  • ・「ロジックツリーによる不具合分析からのテストの補強」吉川 努(ベリサーブ)
  • ・テスコンからの納得できるテスト設計への挑戦」大段 智広(てすにゃん)

という3つの講演が行われました。

招待講演:「ニューノーマル時代のテストエンジニアへの"food for thought"
~ ソフトウェアテストの60年を振り返り、ニューノーマルの背景を考える ~」

最後の招待講演は、長年品質保証の世界をけん引してこられた辰巳敬三さんによる、ソフトウェア業界およびテスト業界の60年の歴史を振りかえり、今後のソフトウェアテストのトレンドを俯瞰する講演でした。「ニューノーマル」という言葉は、「以前には考えもしなかったことが当たり前の状態になる」ということを意味し、まさに今の時代を象徴する言葉だと思いました。

さまざまな内容をお聞きしましたが、特に印象的だったのは、今後「シフト・レフト・テスト」「シフト・ライト・テスト」という考えが広まっていくだろう、ということです。これはテストエンジニアとして押さえておくべき内容だと思いました。「シフト・レフト・テスト」というものは、テスト工程以前、たとえば開発や設計段階からテストをやっていこう、という考え方で、W字モデルと呼ばれる開発モデルと同様の考え方です。あるいは、開発完了後のテスト実施を、より早い段階から自動的に、継続的に実施していくというW字モデルとは別のアプローチも含まれます。「シフト・ライト・テスト」は逆に、本番環境に近いところや本番稼働中にテストを実施する、という考え方で、古くからあるA/Bテストや、最近使われているカオスエンジニアリングなどが該当します。

講演の後半では、今起こりつつある社会的な変化について紹介し、次のニューノーマルに備えて、テストエンジニアとしてどういったことを考えていくべきか、という内容でした。

終わりに

今年のJaSST'18 Kansaiは非常に多くの講演があり、幅広い内容で行われました。AIやIoT、アジャイル開発などの新しい概念や開発技術の進歩に伴い、テスト業界も変化を余儀なくされます。「シフト・レフト」「シフト・ライト」が進んでいくとすれば、あとに何が残るのか、テストという工程自体いつまでも存在するとも限りません。ただ、そんな中でも普遍的に大事にしなければならないことがある、そういったことを実感して身につけることこそが、テストエンジニアとしてのステップアップにつながるのではないか、そんなことを感じました。

関連サイト

JaSSTソフトウェアテストシンポジウム

資料ダウンロード

執筆者:江添 智之

バルテス株式会社 クロス・ファンクショナル事業部 R&C部 マネージャー

WEB系、エンタープライズ系、医療系など様々な開発業務にプログラマ、システムエンジニア、プロジェクトリーダーとして携わった後、バルテスにてテストエンジニア・コンサルタント業務に従事。現職では主にテスト業務に関する研究開発および人材育成を担当。Scrum Alliance認定スクラムマスター、ディープラーニング検定(G資格)、ネットワークスペシャリスト、データベーススペシャリスト、JSTQB Adv...