kintone 開発の概略
▌kintoneは2011年11⽉にサービス開始
n 元々はウォーターフォール開発
n 2016年頃からスクラム開発へ移⾏
n 2022年頃まではQAはスクラムチームにジョインせず
▌チーム数が拡⼤し、LeSS(Large-Scale Scrum)を適⽤
n 現在は、4チーム
n 各チームにQAがジョイン
10
検討会で出た代表的な課題
▌品質保証のコスパ問題
n 過剰品質や⼿動/⾃動テスト設計コストが⾼い
n 機能別観点⼀覧のメンテナンスが⼤変
▌コミュニケーション
n テスターへの実施依頼によるコスト
▌リリース
n E2E⾃動テストが⼤量にありCIを遅くしている
n リリースブランチにマージ後にテストを⾏っており、
⼿戻りのコスト増の原因に
20
kintone QAマニフェスト策定に⾄った経緯
▌懸念
n kintone QA全体の課題
n チーム毎(つまり領域ごと)に個別の事情が存在するため、⼀律こうすべきと
いう施策は決めづらい
n スクラムチームの課題
n チーム毎にバラバラな対策を取ってしまうと全体最適に繋がらないおそれが
(合成の誤謬)
23
Slide 24
Slide 24 text
検討会の流れ
▌ この会のゴール
n チーム分割に備えた⼤きな⽅針を決める
24
Slide 25
Slide 25 text
kintone QAマニフェスト(概略)
▌常に振り返り、最適な⽅法を考える
n ⼈海戦術ではなく効果的に取り組む
▌品質⽂化を浸透させる
n チーム⼀体となり、品質を保つ
▌最後の砦とはならない
n 早い段階から品質を作り込む(シフトレフト)
25
Slide 26
Slide 26 text
個⼈的所感
26
Slide 27
Slide 27 text
個⼈的所感
▌と、ここまで偉そうに語りましたが、、、
n 僕個⼈としてはこのマニフェスト作成には関わっていない
n 中途⼊社のタイミングでほぼ決まっていた
▌ただし、マニフェストを⾒る限り納得感があり、⽅針には共感できた
n 前々職くらいのタイミングでアジャイルやスクラムの経験や学習を通じて
得てきた学びと親和性が⾼い
▌同じ価値観を共有しているからこそ、改善提案した際もスムーズに進ん
でいった印象
27
kintone QA共通の機能別観点⼀覧
▌機能別観点⼀覧の概要
n kintone QA全員が使⽤
n 過去に⾏ったメインテストケースのテストを機能毎にExcelでまとめたもの
n 機能追加/改修のたびに、機能別観点⼀覧を追加または改修する
n テスト設計する際には、流⽤できそうな箇所を探して利⽤する
機能A.xlsx
機能B.xlsx
・
・
・
90ファイルぐらい存在
33
Slide 34
Slide 34 text
kintoneQA共通の機能別観点⼀覧
▌課題
n テスト設計時に流⽤するのが⼤変
n 粒度やフォーマットが固定され柔軟なテストを⾏いづらい
n メンテナンスコストが⼤きい
▌⼀⽅、メリットも
n 誰でも⼀定⽔準のテストが⾏える
n kintone QA全体で連携を⾏うためには必要
34
Slide 35
Slide 35 text
kintoneQA共通の機能別観点⼀覧
▌対策
n 機能別観点⼀覧の利⽤廃⽌
▌効果
n テスト設計やメンテナンスにかかるコストの削減
n 柔軟なテストを⾏うきっかけになった
例)マインドマップによるテスト設計/実施
▌懸念
n ⼀定⽔準のテストができていたメリットへの影響
35
Slide 36
Slide 36 text
改善事例その2
⼿動回帰試験
36
Slide 37
Slide 37 text
⼿動回帰試験
▌⼿動回帰試験
n 毎⽉リリースする度に⼿動で⾏う回帰試験(296件)
▌課題
n ⾒直しが⾏われていなかった
n リードタイム改善の障害になりえる
37
Slide 38
Slide 38 text
⼿動回帰試験
▌対策
n PG/QA合同で⾒直す定例ミーティングを⾏った。
n 不要な試験の削除/⾃動化
n ⼿動回帰試験の分割
n チームが担う範囲を割り当て
n 実施する範囲はチームが判断
▌効果
n ⼿動回帰試験︓296件 -> 240件
n チーム毎に改修内容に応じた、適切な回帰試験を⾏えるように。
38
テスターとのコミュニケーション
▌対策
n スクラムチーム内で完結できる体制作り
n 採⽤活動
n テスターをスクラムチームへ
▌効果
n チーム内で完結できることにより
n コミュニケーションコストが低下
n タスク状況の透明性向上
n (副次的な効果として)PGとの連携が促進
n スクラムチーム全員で品質を考えたり、改善アクションが促進された
42
Slide 43
Slide 43 text
改善事例その4
マージ前の試験完了
43
Slide 44
Slide 44 text
マージ前の試験完了
▌リリースブランチにマージ後に試験を実施していた
n つまりリリース可能ではないものをマージしていた
▌課題
n マージ前よりマージ後に⼿戻りが発⽣するほうコストが⾼い
n 試験完了と試験中が混在するためリリース管理が煩雑になり、試験
中のものをリリースしてしまうリスクが⾼まる
44
Slide 45
Slide 45 text
マージ前の試験完了
▌対策
n 試験完了したものをリリースブランチにマージ
▌効果
n より前⼯程(マージ前)に品質を作り込めるように
n 試験中のものをリリースしてしまうリスクの低減
45
Slide 46
Slide 46 text
今後の展望
46
Slide 47
Slide 47 text
今後の展望
▌回帰試験のさらなる⾒直し
n E2E⾃動テストの整理
n テストピラミッドを再構築
▌QAムキムキ化計画
n QAが実装スキルを⾝につける
47