「STORES 決済アプリ リニューアルとQAチームの取り組み」
JaSST’22 Tokyo
ヘイ株式会社
テクノロジー部門決済本部
QAグループ©hey, Inc. All Rights Reserved.

登壇者紹介

岩原 知加

猿渡 知也

役割：テストマネージャー

役割：チームリーダー

担当業務：Web系 定期リリース 兼 ブラウザ検証

担当業務：テスト業務管理 兼 新機能リリース

勝呂 斉

山﨑 璃輝

役割：テストマネージャー

役割：テストリーダー

担当業務：アプリリリース 兼 新機能リリース

担当業務：アプリリリース 兼 新端末/OS検証

ABOUT US
提供サービスの紹介

ヘイ株式会社について
もともとCoiney / STORES.jp / Coubic という別会社がそれぞれ提供していたプロダクトが、それぞれのミッションに共感し、一緒になりました。
世の中のデジタル化の流れもあり、オーナーさんの解決したい課題は山積みですので、事業も組織もさらに拡大していってます。

STORESプラットホーム

お店のデジタルをまるっとサポート。
個人や中小事業の方々に向けて、お店のデジタル化をまるっと実現できる価値を提供しています。

ABOUT QAhey QAの紹介

QAの体制Quality Control

Test Engineering
QA
マネー
ジャ・定期リリース対応チーム

・プロダクト品質管理チーム
・プロセス品質管理チーム

・新OS/新端末対応チーム
TEチーム

QCチーム

・プロジェクトチーム
定期リリース

新OS/新端末

プロ
ジェクト

プロダクト
品質管理

プロセス
品質管理

テストマネージャ
テスト実行者
プロダクト品質担当

プロセス品質担当

QAの業務
対象プロダクト●

品質保証

STORES 決済（iOS / Android / Web / API）
品質管理
品質モニタリング

職務内容
●

●

品質維持

品質維持（TEチーム）○

プロダクトの要件分析・テスト設計・テスト実施○

不具合報告の再現確認

品質管理（QCチーム)○

不具合分析および開発品質向上の対策提案○

テストプロセスの最適化○

テスト自動化導入によるスピード・質・コスト改善

テスト計画と実施

品質向上

予防・効率化によるROI最大化
テスト
手法改善

定量的体制評価

開発支援

プロセス改善標準化

STORES 決済アプリ リニューアルとQAチームの取り組み
Agenda
1. リファクタリングのきっかけ
2. リファクタリングの計画
3. QAの活動リファクタリングのきっかけ（リファクタリング前のサービスは）コードが複雑化していて、不具合改修や新機能追加
時にコードに手を加えることはリスクがあった。影響範囲の特定など、設計開発工程に多くの工数を必要とし、品質維持が難しくなっていた。
機能追加の容易性
蓄積されてきた
技術的負債

負債

機能追加の効率性
システムの保守性
時間

iOSアプリ開発はObjective-CからSwiftへの移行も進んでいるので、今後のiOSエンジニアの確保も難しくなってくる
Objective-C
エンジニアの減少
iOSエンジニア採用
Swift
エンジニアの増加

・可読性が高く学習コストが低い
・メンテナンス性向上
・処理性能向上リファクタリングの計画
リファクタリング計画を立てたが、開発とQAのみのプロジェクト運営でリソース確保や他プロジェクトと調整が困難になった。その後、PdMが入ったことでリソース調整、タスク管理、リスクヘッジ、利害関係者との連携が円滑に進むようになり、プロジェクトが軌道に乗ってきた。

2019 / 3Q ~ 2020 / 4Q

開発

2021 / 1Q2Q

3Q

4Q

2022 / 1Q

2Q

開発インフラ開発 コア機能開発 サブ機能

システムテスト
追加機能/影響範囲テスト
リグレッションテスト

QA

開発ライフサイクルに沿ったテスト活動（サイト受入れテスト）
フィールドテスト
市場環境でのテスト活動

ここからは、QAの活動についてお話しいたしますシステムテストでは何が起った？
リファクタリング後に挙動が変わっていないことの検証をする目的を持って活動をしていたが、さまざまな要因でテスト活動が円滑に進まない状況がありました。
その状況を日々の改善によって乗り越えました。

マイナス要因

プラス要因
内部
環
境

外部
環境

PdM と 開発、QAチームの関係性の向上

リソースの不足

プロジェクトの情報可視化と共有

機能仕様書の不足

新たに役割が与えられメンバーが成長した

メンバーの入れ替わり

新しいテストエンジニアの参画

コロナ禍によるリモートワークへの切り替え
テストデータや機材が事前に準備できないことがあった

システムテストの課題解決
課題

リソースの不足
取組み①

取組み②

テスト設計の効率化

テスト実行の効率化
・開発計画とテスト計画を共有し機能連携テストまでのクリティ
カルパスを示す

・組合せテスト技法の活用
・リスクベースドテストの採用

効果

効果

テスト量の最適化

テスト生産性の向上

・組合せテスト技法を活用して組合せを最適化
・リスクベースドテストにより、不具合発生時の影響度や代替フローのないユースケースなどを考慮しテスト密度の見直しを実施

・テスト量に合わせてテスト実施者を流動的に配置することが可能になったことで、全体的な生産性が向上

システムテストの課題解決
課題

テスト活動の流れ

機能仕様書の不足

機能単位
spec作成取組み

機能単位
spec作成開発者とQAが一緒にspec（=仕様書）の充実を行う

テストスコープが明確
・機能別にテスト要求を詳細に記述することが可能になる

・・・

効果

テスタビリティの向上

QA資産の創出・specが可視化されたことで、テスト因子数の把握が可能になる・specがシステムテスト以後でも活用できる資料となった

機能単位
実行

機能単位
実行

機能連携テスト・因子水準の洗い出しが出来る様になったことで、同値分や境界値分析の活用
リグレッションテスト

・・・

フィールドテストを行うために実施したこと
フィールドテストの実施効果

協力体制を敷く

プラスの効果より安全なリリースが可能になる
新しいAppを利用することに積極的な加盟店（ = イノベーター）の利用により新たな問題の検知が期待できる加盟店との接点を持つことで、プロダクトをどのように認識しているか捉えることができる

マイナスの効果
ステークホルダーが多く関係するためトータルコストが多く掛かる
対策
一部の加盟店でテスト行い、小さな投資で大きな効果が得られるようにする※参考文献
ヤコブ・ニールセン「ユーザーテスト」

PdM
・ステークホルダーの特定
・成功の指標とその成功プランの策定
CS Team
・加盟店支持の獲得
Mobile Team・テスト環境構築監視と技術的評価
・出荷判定データ作成
QA Team・フィールドテストプロセスの管理
・テスト実行と加盟店管理
・ユーザビリティ問題の把握

フィールドテストの進め方は？
加盟店さまに提供していく前に、本番に近い環境で想定外の問題が起きないかどうかのチェックを行い、安定的なリリースを実現するためにフィールドテストを行いました。QAとして初めての取組みだったので全てが手探りでしたが、加盟店さまから多くのフィードバックを得ることが出来ました。

リリース計画の作成
・見守り体制・問題発生時の対応
・監視ポイント・段階リリース方針

テスト加盟店の選定
・ペルソナを設定
・加盟店抽出・加盟店への協力依頼

テスト準備
・ユーザーインタビューの作成
・切り戻し用Appの準備
・テスト用端末の準備

加盟店訪問
・テスト環境の構築
・目的と監視体制の説明
・ユーザーインタビュー実施
・利用環境調査募集中の職種

詳細はこちらで検索

hey採用
https://hello.hey.jp/

オンライン会社説明会、やってます。
ぶっちゃけどうなの？というところから、これから目指していることなど、リアルなheyについてお話します。
少しでも興味をお持ちいただけたらお気軽にご参加ください。
お待ちしております!

開催日程はこちら

https://hello.hey.jp/