Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JaSST23 Shikoku 講演資料「新たなテスト技術の導入がうまく進まないのは何故か」

JaSST23 Shikoku 講演資料「新たなテスト技術の導入がうまく進まないのは何故か」

JaSST23 Shikokuの講演資料です。

kumagawa.ican

October 18, 2023
Tweet

Other Decks in Programming

Transcript

  1. 注意事項とご案内 ◈ 本講演はあくまでも個⼈事業主( 屋号:ican.lab )としての個⼈的⾒解に基づく発表と なります。 ◈ 講演者の所属する団体等における意向などは⼀切含んでおりません。 ◈ 本講演の内容はSNS

    などのWeb に投稿しても構いません。但し、前述の2 点について注 意して投稿してください。 ◈ チャットは(使えれば)⾃由に使ってください。皆さんのコメントなども⾒ながらお 話できるとより理解しやすい話にできると思います。 (例:いまのところ良くわかんな かったです。 ) ◈ チャット欄での誹謗中傷や、誹謗中傷につながるような表現はおやめください。多い にボケていただいて構いませんがスベった際の補償はできかねます。 ◈ 講演の最後に質疑応答の時間(⽬標10 分) をとります。質問は⼝頭‧チャットの両⽅で 受け付けますが、チャットは流れてしまうかもしれませんのであしからず。
  2. ⾃⼰紹介 ◈ 熊川 ⼀平 ( くまがわ いっぺい) ◈ 国内⼤⼿SIer にて、⼤規模⾦融機関向けのシステム開

    発に従事した後、ソフトウェアテスト/ 品質保証に関す る専⾨家として様々なR&D 活動を実施。並⾏して多数 のプロジェクトの建て直しや改善を進め、その成果を 公表することで多数の表彰を獲得。 ◈ 現在は某団体に所属し、ソフトウェア品質保証のエキ スパートとして活動しながら個⼈事業主としての活動 も実施。 ◈ 連絡先 [email protected]
  3. ◈ 1 〜2 ⽇/ 週をベースに副業として活動中。 ◈ 個⼈事業主として主に以下の活動を実施。 ソフトウェアテスト‧品質保証/ 管理に関してのアドバ イザリー業務

    品質改善/ ⽣産性向上に向けたプロセス改善/ 組織変⾰の コンサルティングおよび教育業務 アジャイル開発などのモダンな開発スタイルへの移⾏⽀ 援 社員教育/ 意識改⾰に向けた研修‧講演‧ワークショッ プなど その他、ソフトウェア開発をよりよくするためのお⼿伝 い ◈ HP https://icanlab.net
  4. 受賞歴 ◈ JaSST Tokyo ( ソフトウェアテストシンポジウム東京) JaSST’14 Tokyo ベストスピーカー賞 ◈

    探索的テストを活⽤したシステム開発⼿法の提案 JaSST’19 Tokyo ベストスピーカー賞 ◈ 意図的にバグを混⼊させたソフトウェアを⽤いた研修の実践と効 果 JaSST’21 Tokyo ベストスピーカー賞 ◈ Excel ⽅眼紙を廃し,仕様書のレビュー効率‧品質を向上した事 例 JaSST’22 Tokyo ベストスピーカー賞 ( ※共同執筆者) ◈ 「34プロジェクトが⾃分の⼿で開発プロセスをモダナイズした 話」 ◈ SQiP シンポジウム ( ソフトウェア品質シンポジウム) SQiP Best Report Effective Award(2017 年) ◈ Session Based Test Management による探索的テストの実 践 SQiP Best Paper Effective Award (2019 年) ◈ SONAR Testing 効率と客観性を両⽴した新たなテスト⼿法 SQiP Best Presentation Award (2020 年) ( ※共同執筆 者) ◈ コード⾏数を⽤いない品質分析技術と開発速度を落とさな い品質管理⼿法の提案 ◈ IPA/SEC 先進的な設計‧検証技術
  5. どんな⽀援をしてきたか 下記のような依頼を受け、個別にコンサルティングしながら改善活動を推進してきた。 ◈ いままでウォーターフォールのトラディショナルな開発をしてきた ◈ 開発⽅法を変えることによって問題を解決したい 1. ⽣産性を上げたい (原価を下げたい) 2.

    品質問題を解決したい 3. 納期短縮要求に対応したい 4. アジャイル開発に挑戦したい/ うまくいかないので改善したい 5. トレンドの開発技術を追いかけたい/ トラディショナルな開発⽅法を脱却したい
  6. テストプロセス改善の例 ◈ とにかくテストケースが多い。 ◈ ⽣産性をあげたいから改善してくれない か? ◈ テスト設計以前の問題として、アーキテク チャの意図や根拠がない。 ◈

    プロセス⾃体の⾒直しをしようとすると拒 否反応が出る。 結合テストはxx するもんでしょ? (後⼯程でやることが減るとしても)単体テ ストのケース数を削減するなんて何事か!
  7. ⾃動テストの例 ◈ どこから聞いてきたのか 「⾃動テストは⼯数削減できる」 というあいまいな情報から相談開始。 ◈ 単体テストはやらなくても結合テストでカ バーできるという理論が根強く、単体テ ストの⾃動化は受け⼊れられない。 ◈

    「やってほしいことは決まっている」 「そのための⼈⼿と技術を持つ⼈が欲し い」 「新たな提案など不要」 ◈ そもそも回帰テストは良くも悪くも勘と 経験で実施しているWF 開発 ◈ ところで開発者のどんな痛みを取り除き たいのか具体的に教えてもらえますか… ?
  8. アジャイルテストの改善例 Scrum チームの責務 ベータ版として先 ⾏リリースして担 保 ◈ プロダクトが成⻑していく過程の全 体を捉えて、如何にして改善してい くかを考える。

    ◈ 例えばリリース戦略を⾒直し、リ ターンを超えるリスクが⽣まれない ように、リスク低減策を考える。 例:Developer preview や、クロー ズドベータ版として⼀部ユーザの利 ⽤によって確認をしていく。 何をどこでリスク低減するか考え る。 ◈ 開発⾃体が変わっていくのだか ら、テストや品質に関する考え⽅も 変えていかねば。
  9. 新たな技術や考え⽅を導⼊する重要性 変化を受け⼊れることによるリスク ◈ 現場作業の混乱 ◈ ⼀時的な⼯数/ 作業量増 ◈ なれない作業によるミス ◈

    導⼊反対派による抵抗/ 分断… <変化しないことによるリスク ◈ 技術者のモチベーション低下 ◈ 相対的な⽣産性低下/ 品質低下 ◈ 技術者確保の難易度増 ◈ 更なる技術発展への追従が困難 に
  10. ⽇経の調査結果 ◈ 左記の調査結果は2011 年のものと古いが 依然としてWF 開発を継続しているPJ の多 くの状況は変わっていない。 ◈ 多少贔屓⽬に⾒ても、結合テストツールの

    利⽤率はトラディショナルなWF 開発をし ていれば50% に満たないだろう。 ◈ このような結合テストツールの導⼊のよう に、なぜテストツールをはじめとして新た な技術が導⼊できないか事例をもとに考え ていきたい。 開発⽀援ツール徹底調査2011 テスト編/ ⽇経SYSTEMS https://xtech.nikkei.com/it/article/COLUMN/20110512/360286/ 結合テストのツール利⽤率(有効回答1648 )
  11. プロスペクト理論 ◈ ⻑期的な利益よりも短期的な利益 どちらがほしい? ◈ いま貰える10 万円 ◈ 1 年後にもらえる12

    万円 ◈ 損失を過⼤評価する どちらを選ぶ? ◈ 100% もらえる100 万円 ◈ 50% の確率でもらえる220 万円
  12. 新たな技術や考え⽅を導⼊する重要性 変化を受け⼊れることによるリスク ◈ 現場作業の混乱 ◈ ⼀時的な⼯数/ 作業量増 ◈ なれない作業によるミス ◈

    導⼊反対派による抵抗/ 分断… >変化しないことによるリスク ◈ 技術者のモチベーション低下 ◈ 相対的な⽣産性低下/ 品質低下 ◈ 技術者確保の難易度増 ◈ 更なる技術発展への追従が困難 に 損失は回避したい ⻑期的なリターンは評価しにくい
  13. ソフトウェアであっても腐る ◈ 雑草や害をなす植物は世話をしないでも無駄に育つが、育てたい草⽊は適切に世話を してあげなければ腐ってしまう。 ◈ 適切な運⽤、保守が⾏われなければ例えソフトウェアであっても腐ってしまうし、気 づけば雑草という名の今までの運⽤や開発スタイルが⽣い茂る状況になってしまう。 ◈ なぜ、運⽤‧保守が⾏われなかったのか?そこまで考えて⽀援してあげないと成功し ない。

    5. ⾃動テストシステムの開発は継続的におこなうものである テスト⾃動化に関わる苦労を10 とすると、⾃動テストシステムが完成するまでが3 、残りの7 は 運⽤に関するコストである。テスト対象の変化への追従、テストケース、テストタイプ⾃体の 追加、変更に対する適応、といった、今あるものが継続的に効果を発揮するための活動はもと より、⾃動テストのターンアラウンドタイムの向上、信頼性の向上、などなど、システムの価値 を向上させていくための活動など、やるべきことは多岐に亘る。テスト⾃動化システムの提供 はプロジェクトというよりサービスとしてとらえるべきである。 テスト⾃動化の8 原則 https://sites.google.com/site/testautomationresearch/test_automation_principle
  14. ⾃動テストの例 ◈ どこから聞いてきたのか 「⾃動テストは⼯数削減できる」 というあいまいな情報から相談開始。 ◈ 単体テストはやらなくても結合テストでカ バーできるという理論が根強く、単体テ ストの⾃動化は受け⼊れられない。 ◈

    「やってほしいことは決まっている」 「そのための⼈⼿と技術を持つ⼈が欲し い」 「新たな提案など不要」 ◈ そもそも回帰テストは良くも悪くも勘と 経験で実施しているWF 開発 ◈ ところで開発者のどんな痛みを取り除き たいのか具体的に教えてもらえますか… ?
  15. 現代における標準化の難しさ ◈ いわゆる前時代的な開発標準はもはや通⽤しない時代になっている。 (個⼈の感想) 開発する⼈や組織形態の多様化 (オフショア‧ニアショア‧委託‧内製‧‧‧) 開発⽅法の多様化 (Scrum ‧SAFe ‧ウォーターフォール‧‧‧) 開発環境の多様化 (Java ‧TypeScript

    ‧Python ‧ABAP ‧Low-code ‧‧‧) 開発に⽤いる製品の多様化 (Spring Boot ‧SAP ‧AWS ‧Salesforce ‧React ‧‧‧‧) 重要となる開発メトリクスの多様化 (アジリティ‧ストーリーポイント‧DDP ‧信頼度成⻑ 曲線‧‧‧) 5M の要素 ソフトウェア開発における 理解 Man 開発者‧開発組織 Method 開発⽅法 Machine 開発ツール‧⾔語 Materials ライブラリ‧製品‧サービ ス
  16. テストプロセス改善の例 ◈ とにかくテストケースが多い。 ◈ ⽣産性をあげたいから改善してくれない か? ◈ テスト設計以前の問題として、アーキテク チャの意図や根拠がない。 ◈

    プロセス⾃体の⾒直しをしようとすると拒 否反応が出る。 結合テストはxx するもんでしょ? (後⼯程でやることが減るとしても)単体テ ストのケース数を削減するなんて何事か!
  17. それでもやらない⼈がいる ◈ やらない⼈はやらない? ◈ レイトマジョリティやラガードは遅れて やってくるだろう?で、いいのだろう か。 ◈ 教育などこれまでやってきた取組み は、経営層からみると「投資」

    。果たし てこの投資はレイトマジョリティが参加 するまで持続するのだろうか。 ◈ いま取り組んでくれている⼈も、何年か 後にまた動かなくなるのではないか? https://www.utokyo-ipc.co.jp/column/innovation- theory/
  18. アジャイルテストの改善例 Scrum チームの責務 ベータ版として先 ⾏リリースして担 保 ◈ プロダクトが成⻑していく過程の全 体を捉えて、如何にして改善してい くかを考える。

    ◈ 例えばリリース戦略を⾒直し、リ ターンを超えるリスクが⽣まれない ように、リスク低減策を考える。 例:Developer preview や、クロー ズドベータ版として⼀部ユーザの利 ⽤によって確認をしていく。 何をどこでリスク低減するか考え る。 ◈ 開発⾃体が変わっていくのだか ら、テストや品質に関する考え⽅も 変えていかねば。
  19. 組織⽂化の出来上がり⽅ ◈ カルチャーは⽇々の⾏動‧⾔動のア ウトプットである。 ◈ すなわち、従業員/ 開発者の「⽇々の ⾏動‧⾔動」を変えるようなイン プットを与える必要がある。 また⾯倒なことがはじまったよ

            or ⾯⽩そうだからやってみようぜ ◈ ⽇々の⾏動‧⾔動を変えるために は、その組織のMVV が⼤事になる。 https://www.cultibase.jp/articles/12667
  20. カルチャーの重要性 ◈ ビジネスモデルだけ上⼿に考えたところ で、カルチャーモデルがついてこないと 成功に⾄らない。両輪の関係である。 EC を中⼼としたビジネスモデルにしてい た会社が、突然新たなビジネスモデルと して訪問販売を始めたとしても、営業組 織にはそんなカルチャーがないので成功

    しない。 伝統と信頼で商売してきた⼈たちが、突 然に挑戦と変⾰を旗印にしても、現場の ⼼がついていかない。 現場が1つになるカルチャーがあったと しても、それをうまく実⾏せしめるビジ ネスモデルがなければ成功しない。 https://www.cultibase.jp/articles/12667
  21. ⽂化を⽣み出す仕組み ◈ 前述の書籍ではマッキンゼーの7S を ベースとした7S フレームワークが提 案されている。 ◈ いくらMVV が素晴らしいものであっ

    たとしても、それを実⾏していく仕 組みがなければ機能しない。 ⼈事評価もされないのに取り組む意 義がない。 失敗が過度に咎められる⾵⼟があ る。 考え⽅が違う⼈ばかり⼊社してく る。 ピラミッド構造で上からの指⽰に従 わざるを得ない。
  22. エドモンドソンの 「4つの⼼理的安全性を損なう要因と特徴⾏動」 (1)無知だと思われる不安(Ignorant ) 質問や確認をしたくても「こんなことも知らないのかと思われないか」と不安になり、その 結果、気になることがあっても質問しづらくなってしまいます。 (2)無能だと思われる不安(Incompetent ) ミスや失敗した時に「仕事ができないと思われるのでは」と不安になり、⾃分の失敗や弱点 を認めなかったり、ミスを報告しなかったりするようになります。

    (3)邪魔をしていると思われる不安(Intrusive ) ⾃分が発⾔することで「話の邪魔をしていると思われないか」不安になり、提案や発⾔をし なくなっていきます。 (4)ネガティブだと思われる不安(Negative ) 改善を提案したくても「他の⼈の意⾒を批判していると否定的に捉えられるのでは」と不安 になり、現状の批判をしなくなったり、意⾒があっても⾔わなくなったりします。 https://www.recruit-ms.co.jp/glossary/dtl/0000000230/
  23. 満場⼀致のパラドックス ◈ 統計学においては、全ての意⾒が⼀致すると逆に そのデータの信頼性が下がるということが知られ ている。 ◈ 通常、⼈は多様な意⾒を持ったり、誤った判断を するものなので、⾃然な状態では満場⼀致は極め て発⽣しづらい。 ◈

    ⼼理的安全性が低く、⾃由な発⾔ができない場で あれば、全会⼀致が発⽣し、信頼性の低い判断が なされてしまう。 ◈ すなわち、組織⽂化を作るという議論すら、しっ かりできないということになる。