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

Spring Bootcamp(新卒研修) 2022 QA研修 座学

Avatar for honamin honamin
September 14, 2022

Spring Bootcamp(新卒研修) 2022 QA研修 座学

Moneyforwardの新卒研修2022(エンジニア向け)で利用した資料です。

更新履歴
2022/9/15-------------
60Pバグフィルター
(修正前)
上段にいくほど網目が細かい=テストの数は多い
下段にいくほど網目が荒い=テストの数は少ない
(修正後)
上三段の層について、
 上段にいくほど網目が細かい=テストの数は多い
 下段にいくほど網目が荒い=テストの数は少ない
下三段の層について、
 その逆
参考文献に以下を追加
・A Practical Guide to Testing in DevOps Japanese Edition

ご指摘感謝です…!

Avatar for honamin

honamin

September 14, 2022
Tweet

More Decks by honamin

Other Decks in Technology

Transcript

  1. • 美味しさ • 辛さ • 具の多さ • 米の銘柄 • トッピングの種類

    • 福神漬け有り/無し • 走りやすさ • ブレーキの効き • 耐久度/耐荷重 • デザイン性 • カスタマイズ性 • 電動サポート有り/ 無し • 機能の充実 • 使いやすさ • サポートの手厚さ • 導入のしやすさ • 障害の少なさ • 時間効率化 ちょっと待った!!! 何か疑問に感じませんか? QAを知る
  2. • 美味しさ • 辛さ • 具の多さ • 米の銘柄 • トッピングの種類

    • 福神漬け有り/無し • 走りやすさ • ブレーキの効き • 耐久度/耐荷重 • デザイン性 • カスタマイズ性 • 電動サポート有り/ 無し • 機能の充実 • 使いやすさ • サポートの手厚さ • 導入のしやすさ • 障害の少なさ • 時間効率化 主観的で、指標として曖昧では? ユーザーはどこに消えた? QAを知る
  3. QA今昔 デミング博士 ※画像はイメージです 第二次世界大戦敗戦後、通信状況改善のため、アメリカ軍が 品質管理技術者を招致。これが日本における品質管理の始ま りといわれている。 アメリカのデミング博士が来日。統計的品質管理 (SQC:Statistical Quality Control)の講演を行い、管理

    サイクルPDCAの概念を強調。 日本的全社的品質管理(TQC:Total Quality Control)の 発展。 第二次石油危機による問題に対し、経営層から現場、組織で の問題解決の観点から、TQCが加速。方針管理の重要性が 高まった。 1946年 1950年代 1960年代 1970年代 日本製品の品質を よくしたいなぁ・・・
  4. 1950~1960年代 EDSAC(Electronic Delay Storage Automatic Calculator) System/360 開発手法 • スーパーエンジニア(とにかくすご

    い人)が1万行のAppを2日で書く • うまくいかなかったら初めから書き 直すの繰り返し • 完全属人化
  5. プログラム品質の見える化 1950~1960年代 1968年 • Rubey & Hartwickがプログラムの 品質と評価方法に関する最初の論文 を発表 •

    プログラムコードの「属性」と「メ トリクス」を定義 ※参照 導入部 ソフトウェア品質に対するアプローチはブ ラックボックスなのが一般的だが、ユーザー は製品の品質を知りたい、目で見たいと思っ ている。宇宙航空機器は高精度な機能、か つ、あらゆる変更に対応しなければならな い。これは他ソフトウェア分野にも適用でき るのではないだろうか。
  6. 1970~1980年代 Apple I IBM PC PC用OSの普及 開発手法 ウォーターフォールモデルの登場 【メリット】 各工程が分かれていることにより、進捗管理や見積もりがし

    やすい。段階的に開発が進められる。 【デメリット】 後工程で仕様変更があった際、多大なコストがかかる。後工 程で大きな問題が出てくる可能性が高い。(謎)
  7. 品質モデルの体系化 1970~1980年代 1973年 Boehmらの品質モデル • 品質を評価するための観点を初めて 階層化して表現 1977年 McCallらの品質モデル •

    過去の論文で提案された品質要因を 集約、整理して体系化 • 品質をファクタ、クライテリア、お よびメトリクスの三階層構造で表現
  8. UIテストの自動化 1990~2000年代 2004年 Selenium の登場 • アプリケーションのUIや、 JavaScriptのテストを自動化する 目的で開発された •

    キャプチャリプレイ機能を搭載 し、コーディングの知識がなくて も自動テストを作成することが可 能 自動化が進んだ理由 開発手法のブラッシュアップに伴い、工程の 最後に配置されるテストがボトルネックにな る事例が多くなってきた。 人的コスト削減、開発フローのさらなる効率 化を求めて自動テストの導入が進んだ。 開発終わってる のにテスト長く ね?
  9. 品質モデルの標準化 1990~2000年代 1991年 • 国際標準(ISO)として出版 • 「外部および内部品質」「利用時 の品質」の二つのモデルを規定 ISO標準の目的 •

    安全で信頼性が高く、質の高い製品や サービスの創出 • 不良品の生産防止、生産性の向上 • 異なる市場の製品を直接比較可能に。企 業の新市場への参入容易度を高め、公正 な基準による世界貿易の発展を支援 • 製品・消費者・エンドユーザーを保護 し、認定製品が国際的に設定された最低 限の基準に適合していることを保証
  10. 開発手法 → 仕組み化 → DevOps with Agile DevOpsの思想 ・開発チームと運用チーム で分かれていた作業を統合  → 作業分担によるサイロ 化を防ぐ

    ・ツールを使った自動化 (CI/CDの普及)  → システムの信頼性の 向上、トイルの解消 2010年〜イマ!!
  11. 閑話休題 ソフトウェア開発の難しさ フレデリック・ ブルックス氏 2 プログラムは、規模が大きい   1人乗りのボートは簡単に作れても、1000人乗りの船は難しい。   3 プログラムは、簡単に変更できる     形のある製品の開発では、後で変更ができない。       ソフトウェアは変更が容易で物質的コストもかからない。 1 ソフトウェアは、目に見えない

      手で触れない、大きさ、重さもない。よって全体像を簡単に把握できない。    開発の難しさも実感できない。   4 制約となるものが少なく、自由に作れる     重力、磁力、電流などの法則に束縛されないため、       動くソフトウェア=正解となる。(芸術の世界)
  12. 閑話休題 DevOpsバグフィルター • 最上段の・はBugの卵 • Unit(単体テスト)・Integration(結合テ スト)・End to End(E2Eテスト)Alerting (アラート)・Monitoring(モニタリング)

    ・Logging(ログ)の層をもつ • 上三段の層について、 ◦ 上段にいくほど網目が細かい=テスト の数は多い ◦ 下段にいくほど網目が荒い=テストの 数は少ない • 下三段の層について、 ◦ その逆 • Bugは時間経過と共に育つ