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

QA for Green Engineer

optim
February 15, 2021

QA for Green Engineer

Bizチーム内20新卒同士で行った勉強会の資料

optim

February 15, 2021
Tweet

More Decks by optim

Other Decks in Technology

Transcript

  1. QA for Green Engineer
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  2. ⽬的
    Bizチーム内のお互いの専⾨領域への理解を深める。
    アウトプットの場を増やす。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  3. ⽬的の⽬的
    お互いへの理解を深めて、更に協⼒しやすいチームにしていきたい。
    アウトプット駆動で成⻑したい。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  4. ⽬次
    1. 今⽇のゴール
    2. QAとは
    3. テストレベル︓ソフトウェアテストの段階
    4. テストタイプ︓品質特性
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  5. 今⽇のゴール
    QAの責務・ミッションが分かる
    ソフトウェアテストのざっくりした区分が分かる
    品質特性を知る
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  6. QA?
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  7. Quality Assuarance : 品質保証
    ユーザー視点で、プロダクトの品質を保証する。
    仕様通りに動くことを確かめる、だけではない。
    プロダクトの品質を向上させるためにできること全てを⾏う。
    実装側成果物のプロダクトだけではなく、開発プロセスそのものも対象。
    DevOps, Agileなどのソフトウェア開発の枠組みとQAは⼀⼼同体。
    QAも含めてのソフトウェア開発⼿法。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  8. Quality Assuarance : 品質保証
    ユーザー視点で、プロダクトの品質を保証する。
    仕様通りに動くことを確かめる、ではない。
    プロダクトの品質を向上させるためにできること全てを⾏う。
    実装側成果物のプロダクトだけではなく、開発プロセスそのものも対象。
    DevOps, Agileなどのソフトウェア開発の枠組みとQAは⼀⼼同体。
    QAも含めてのソフトウェア開発。
    QAの取り組みのうち、今回はソフトウェアテストを取り上げる。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  9. 今⽇のゴール
    QAの責務・ミッションが分かる
    QAの責務︓プロダクトの品質を保証し、品質向上のためにできることを全て
    やる
    QAのミッション︓プロダクトの品質向上
    ソフトウェアテストのざっくりした区分が分かる
    品質特性を知る
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  10. ⼯程に応じたテスト区分が存在する。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  11. Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  12. ⽤語︓テストレベル
    意味
    ⼯程によるテストの分類(ex.要件定義->システムテスト)を、テストレベルと呼
    ぶ。
    ⼯程=レベルに応じた⽬的、適切なアプローチがある。
    意義
    テストをマネジメントするために機能する。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  13. 単体テスト(コンポーネントテスト)
    個別にテスト可能なコンポーネントに焦点を当てる。
    ⽬的
    コンポーネント品質の積み上げ
    ⽋陥の早期検出
    対象
    コンポーネント,ユニット,モジュール
    データ構造,クラス
    コードを実装した開発担当者が⾏う。
    派⽣->テスト駆動開発
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  14. 統合テスト
    コンポーネント間,システム間の相互処理に焦点を当てる。
    ⽬的
    インターフェース品質の積み上げ
    インターフェース⾃体、またはコンポーネント,システムの⽋陥の検出
    対象
    データベース
    API,インターフェース
    コンポーネント統合テスト︓実装者が⾏う。
    システム統合テスト︓テスト担当者が⾏う。
    派⽣->継続的インテグレーション
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  15. システムテスト
    システムが実現する機能的・⾮機能的振る舞いに焦点を当てる。
    ⽬的
    システムが完成し、期待通りに動作することの妥当性確認
    システムの機能的・⾮機能的振る舞いが仕様通りであることの検証
    対象
    アプリケーション
    ハードウェア,ソフトウェアを含むシステム全体
    テスト担当者が⾏う。
    ユースケースの把握・理解、仕様の妥当性が重要。
    派⽣->W字モデル
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  16. 受け⼊れテスト
    システムやプロダクト全体の振る舞いや能⼒に焦点を当てる。
    ⽬的
    システムが完成し、期待通りに動作することの妥当性確認
    システムの機能的・⾮機能的振る舞いが仕様通りであることの検証
    受け⼊れられるかどうかが問題。⽋陥を⾒つけることは⽬的ではない。
    システムテストとの違い
    受け⼊れる⼈がいる。
    システムを実際に使うユーザー,運⽤担当者
    派⽣->実例マッピング
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  17. 今⽇のゴール
    QAの責務・ミッションが分かる
    QAの責務︓プロダクトの品質を保証し、品質向上のためにできることを全て
    やる
    QAのミッション︓プロダクトの品質向上
    ソフトウェアテストのざっくりした区分が分かる
    開発⼯程による区分がある
    品質特性を知る
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  18. ⽬的に応じたテスト区分が存在する。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  19. ⽤語︓テストタイプ
    意味
    ⽬的によるテストの分類(ex.機能の品質特性(正確性など)をテストする->機能テス
    ト)を、テストタイプと呼ぶ。
    意義
    ⽬的に合わせてテストを選択するために機能する。
    テストレベルの中で、更に具体的な分類として機能する。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  20. 機能テスト
    ⽬的
    機能の品質特性、例えば完全、正確および適切であることなどを評価する。
    プロダクトが「何を」すべきか
    ex)Wi-Fiを禁⽌する設定を割り当てたら、Wi-Fiが禁⽌されるかどうか。
    機能要件を網羅することが必要
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  21. ⾮機能テスト
    ⽬的
    ⾮機能の品質特性、例えば信頼性、性能効率性、セキュリティ、互換性、使
    ⽤性などを評価する。
    プロダクトが「どのように」振る舞うべきか
    ex)Wi-Fiを禁⽌する設定を割り当てたら、同期完了と同時にWi-Fiが禁⽌されるかどう
    か。
    開発側だけでなく、ときには企画も巻き込んで「どうあるべきか」を深堀する
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  22. ホワイトボックステスト
    ⽬的
    システムの内部構造や実装に基づいてテストを導出し、カバレッジを基にテ
    ストが⼗分かを評価する。
    ソースコードレベルでの網羅を担保する
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  23. 変更関連のテスト
    確認テスト
    ⽬的
    テストにより⾒つかった⽋陥が修正された後、その⽋陥が確実に修正された
    ことを確認する。
    ex)Wi-Fi禁⽌機能の⽋陥の修正後、Wi-Fi禁⽌機能を使えるかどうか。
    リグレッションテスト
    ⽬的
    コードの⼀部に対して⾏った変更が、他の部分に意図せず影響を与えていな
    いかを確認する。
    ex)Wi-Fi禁⽌機能の⽋陥の修正が、Bluetooth禁⽌機能に影響を与えていない
    かどうか。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  24. 今⽇のゴール
    QAの責務・ミッションが分かる
    QAの責務︓プロダクトの品質を保証し、品質向上のためにできることを全て
    やる
    QAのミッション︓プロダクトの品質向上
    ソフトウェアテストのざっくりした区分が分かる
    開発⼯程による区分がある
    ⽬的=担保したい事柄による区分がある
    品質特性を知る
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  25. 深追い︓テストタイプ -> 品質特性
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  26. ⽤語︓品質特性
    意味
    ソフトウェアの品質を評価する基準を、品質特性と呼ぶ。
    品質モデルによって体系付けられる。
    製品品質モデル・利⽤時の品質モデル・データ品質モデル
    意義
    品質作り込みの指標となり、品質観点の洗い出しをしやすくする。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  27. Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  28. 信頼性(reliability)
    明⽰された時間帯で,明⽰された条件下に,システム,製品⼜は構成要素が明⽰され
    た機能を実⾏する度合い
    成熟性(maturity)
    通常の運⽤操作の下で,システム,製品⼜は構成要素が信頼性に対するニー
    ズに合致している度合い
    可⽤性(availability)
    使⽤することを要求されたとき,システム,製品⼜は構成要素が運⽤操作可
    能及びアクセス可能な度合い
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  29. 信頼性(reliability)
    明⽰された時間帯で,明⽰された条件下に,システム,製品⼜は構成要素が明⽰され
    た機能を実⾏する度合い
    障害許容性(fault tolerance)
    ハードウェア⼜はソフトウェア障害にもかかわらず,システム,製品⼜は構
    成要素が意図したように運⽤操作できる度合い
    回復性(recoverability)
    中断時⼜は故障時に,製品⼜はシステムが直接的に影響を受けたデータを回
    復し,システムを希望する状態に復元することができる度合い
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  30. Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  31. Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  32. ⽤語︓品質特性
    ISO/IEC25010で標準化されている。
    とても沢⼭ある。
    重要なポイント
    プロダクト・要件ごとに適切な指標を⾒定め、都度⽬的を認識した上で⽤いてい
    くこと
    実装が完了してから品質特性を上げていくのは⼤変なので、上流⼯程から考慮に
    ⼊れていくこと
    この観点を持って要件レビューに⼊っていくことがQAの仕事
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  33. 今⽇のゴール
    QAの責務・ミッションが分かる
    QAの責務︓プロダクトの品質を保証し、品質向上のためにできることを全て
    やる
    QAのミッション︓プロダクトの品質向上
    ソフトウェアテストのざっくりした区分が分かる
    開発⼯程による区分がある
    ⽬的=担保したい事柄による区分がある
    品質特性を知る
    品質特性︓ソフトウェアの品質を評価する基準
    要件定義・設計段階で考えるのが超⼤事。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  34. テストを作るための武器がある。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  35. Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  36. Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  37. ⽤語︓テスト技法
    意味
    テストケースを作成したり選択したりするための技法=アルゴリズムを、テスト技
    法と呼ぶ。
    意義
    効率的にテストを作成するために機能する。
    カバレッジ(=網羅率)を導出するための指標として機能する。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  38. ご清聴ありがとうございました。
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  39. 参考1
    JSTQB関連資料
    http://jstqb.jp/dl/JSTQB-glossary.V2.3.J02.pdf
    http://jstqb.jp/dl/JSTQB-SyllabusFoundation_Version2018V31.J02.pdf
    ISO/IEC 25010関連資料
    https://www.ipa.go.jp/files/000045962.pdf
    http://kikakurui.com/x25/X25010-2013-01.html
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  40. 参考2
    V字モデル,W字モデルの説明
    https://www.qbook.jp/column/20180427_626.html
    テスト分類について
    https://www.slideshare.net/krsna_crespo/ss-11144954
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide

  41. おまけ
    今回のスライドは、marpを使ってみ
    ました。
    https://marp.app/
    https://qiita.com/tomo_makes/it
    ems/aafae4021986553ae1d8
    Bizチーム勉強会_2021_0107
    OPTiM Corp.

    View Slide