Save 37% off PRO during our Black Friday Sale! »

戦って品質保証を勝ち取る/Fight_for_quality_assurance

 戦って品質保証を勝ち取る/Fight_for_quality_assurance

吉祥寺.pm23 でお話しする
「戦って品質保証を勝ち取る」
のスライドです

3c9c5f9a91cac73073db8bb2903bd968?s=128

mamy1326

July 21, 2020
Tweet

Transcript

  1. 戦う 兵站部隊で 品質保証 を 勝ち取る ー 僕が追求する QA (Quality Assurance)

    2020-07-21 @ 吉祥寺.pm23 まみー (@mamy1326) / Lancers
  2. Twitter Work Like ✔ 2017年の趣味:MySQL ✔ 2018年の趣味:DNS ✔ 2020年の趣味:CakePHP4 :@mamy1326(まみー)

    :Lancers,Inc. @ PHPer :cune.jp 自己紹介 2
  3. ✔ リファクタリング したい   →事業優先・予算の都合で手が出せない… ✔ 品質 を上げたい   →開発速度低下、データの劣化、etc… ✔ 経営層を納得

    させたい   →メリデメを数値で示したいが… こんな悩みありませんか? 3
  4. 僕も 似たような 悩み があります 4

  5. ✔ 品質保証に課題 がある   ・レガシー脱却したい   ・運用しんどい   ・チーム連携をもっと密にしたい ✔ QA (Quality Assurance)

    って?   ・品質保証って範囲広くない?   ・各社でやってること違くない?   ・テストを徹底すればいいの? 想定オーディエンス 5
  6. こんな 疑問 と 僕なりに 向き合った 半年の話をします 6

  7. 一般的な QA とは ✔ 開発段階での仕様の確認・評価 ✔ テストケースの設計・実行 ✔ テスト結果と不具合分析 ✔

    テスト自動化 ✔ 開発プロセスの見直し ✔ チーム横断で品質マネジメント 7
  8. 一般的な QA とは ✔ 開発段階での仕様の確認・評価 ✔ テストケースの設計・実行 ✔ テスト結果と不具合分析 ✔

    テスト自動化 ✔ 開発プロセスの見直し ✔ チーム横断で品質マネジメント 8 ちょっと待って!
  9. 一般的な QA とは ✔ 開発段階での仕様の確認・評価 ✔ テストケースの設計・実行 ✔ テスト結果と不具合分析 ✔

    テスト自動化 ✔ 開発プロセスの見直し ✔ チーム横断で品質マネジメント 9 全ての組織・ サービスに 同じこと言える?
  10. 一般的な QA とは ✔ 開発段階での仕様の確認・評価 ✔ テストケースの設計・実行 ✔ テスト結果と不具合分析 ✔

    テスト自動化 ✔ 開発プロセスの見直し ✔ チーム横断で品質マネジメント 10 段階が あるよね
  11. じゃあ サービスの 段階とは 11

  12. 1 → 100 サービスが 軌道に乗る ✔ パフォーマンスが気になり始める   →想定のトラフィックを超え始める ✔ インフラ増強を考え始める

      →インスタンスを大きくしてみようか アプリもデータも まだ大丈夫 12
  13. 100 → 10000 サービスで 利益が出る ✔ 人員拡大を進める   →チームで役割分担を考え始める。開発・SRE・etc ✔ 重たい処理が出始める

      →サーバーの台数が増えていく データ量が問題 になってくる 13
  14. 10000 → 1000000 サービスが 社会に影響 を与える ✔ 事業が多角化する   →サービスの種類が増える。チームがさらに分かれる ✔

    システムの問題が見過ごせなくなる   →データ肥大化によるスロークエリ、処理の複雑さ、etc リファクタリング が必要になる 14
  15. 10000 → 1000000 サービスが 社会に影響 を与える ✔ 事業が多角化する   →サービスの種類が増える。チームがさらに分かれる ✔

    システムの問題が見過ごせなくなる   →データ肥大化によるスロークエリ、処理の複雑さ、etc リファクタリング が必要になる 15 この段階の お話をします
  16. 起きていたこと - 1 / 2 ✔ コードに無理 が生じている   →10年以上戦い肥大化 ✔

    バージョンアップが 困難 に   →FW含め、新しい技術の追従が遅れる 16
  17. 起きていたこと - 2 / 2 ✔ スロークエリ 多発   →想定しなかったデータの肥大化 ✔

    役割ごとのチームに 距離 が   →なんとなく齟齬を感じる 17
  18. 誰もが通る道 でも… 18

  19. 乗り越えるには 覚悟 が必要 19

  20. 覚悟すること - 1 / 2 事業拡大の 痛み を ポジティブ に

    ✔ 役割分担=᫁轢・摩擦は当たり前   →事業・サービスの成長痛 ✔ 摩擦はコミュニケーションのチャンス   →迂回すればするほど痛みだけが増していく 問題の顕在化=改善のチャンス! 20
  21. 覚悟すること - 2 / 2 道具 (FW) に 熟達する ✔

    武器を誰よりも良く知る   →選択した技術を突き詰める ✔ 最新に追従   →常に更新し、自分たちも変化を続ける 変化の積み重ね=開発効率の維持 21
  22. 22 常に 変化し続ける 覚悟

  23. 23 変化し続ける = 品質保証

  24. 品質保証に必要なこと - 1 / 2 ✔ 戦略的に考える   ・両輪:[戦闘] 事業拡大 +

    [兵站] 後ろ支え   ・勝利のない戦闘に補給無用   ・補給のない戦闘に勝利なし ✔ 事業拡大の先が本番   ・戦って得たモノを 盤石化・維持発展   ・本当の意味で勝利 24
  25. 品質保証に必要なこと - 2 / 2 ✔ 第一線での戦闘力=開発力   ・継続した 武器の熟練、最新への追従   ・アプリ・インフラ・RDB

    を၆ᛌ ✔ チーム同士の連携   ・役割分担=チーム   ・結果ベースで信頼、妥協のない相互理解 25
  26. 26 必要なことを 踏まえて…

  27. 27 僕が考える 最強の QA

  28. 僕が考える最強の QA - 1 / 2 戦う兵站部隊 ✔ 最前線でも戦える戦闘力を持つ   →技術者として最強を目指し続ける

    ✔ 変化への柔軟さを維持   →最新への追従を続ける 戦って品質保証を 勝ち取る 28
  29. 僕が考える最強の QA - 2 / 2 フェーズ に合わせる ✔ 組織・サービスは変化し続ける

      →フェーズを意識し目標を合わせる ✔ 現状に満足しない   →地道で確実なチャレンジを積み重ねる 多彩な戦略 を選択可能にする 29
  30. 終わりに ✔ 品質とは 永遠の課題 ✔ 現状に満足したら死 ✔ コスト計算とメリデメを明確に ✔ 楽しく品質保証

    ✔ 地道な改善・確実な追求 30
  31. 575 品質は 歴史という名の ノウハウだ 31

  32. しっかり 地面を見定めて 32

  33. 蓄積された 業務・実装を 33

  34. 歴史という名の ノウハウに していきましょう! 34

  35. 35

  36. 最強のQA #424242 #F0F0F0 #E6855E #5EC84E #F0F0F0  あいうえおかきくけこさしすせそ #E6855E   あいうえおかきくけこさしすせそ #5EC84E

     あいうえおかきくけこさしすせそ