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

ヤフーアプリの品質向上戦略

mao
January 07, 2020

 ヤフーアプリの品質向上戦略

ヤフーアプリの実際の品質改善例について紹介します

mao

January 07, 2020
Tweet

More Decks by mao

Other Decks in Programming

Transcript

  1. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    2020年1⽉7⽇
    ⻄ 磨翁
    ヤフーアプリの
    品質向上戦略

    View full-size slide

  2. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    2
    ⾃⼰紹介
    • CTO室アプリ統括部 部⻑
    • コマース系のアプリ担当を経て、現在
    はヤフーアプリ全体の技術戦略などを
    担当してます
    ⻄ 磨翁(にし まお)

    View full-size slide

  3. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    話したいこと
    3
    • ヤフーアプリの実際の品質改善例
    • まずは現状把握から
    • コーディング時間を増やすには

    View full-size slide

  4. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    まずは現状把握から

    View full-size slide

  5. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    5

    View full-size slide

  6. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    現状把握の⽬的
    6
    • 正しいアクションを把握するため
    • ゴールが明確になることで最後まで⾛りきることが
    できる
    • やるべきことの優先順位をつけることができる

    View full-size slide

  7. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    7

    View full-size slide

  8. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    AppAnalytics
    8
    • Appleが提供する分析ツール
    • Crash数などを把握すること
    ができる
    • あまり使わない・・

    View full-size slide

  9. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Organizer
    9

    View full-size slide

  10. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Crashの詳細を⾒ることができる
    10
    • だけどCrashlyticsや
    SmartBeatの⽅が使いやす

    View full-size slide

  11. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Metricsを⾒ることができる
    11
    • Xcode11からの新機能
    • リリース済みのメトリクスを
    取得できる
    • ユーザの許可が必要

    View full-size slide

  12. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    品質に関する項⽬が取得できる︕
    12
    • Battery(バッテリー消費量)
    • Launch Time(起動時間)
    • Hang Rate(ハング率)
    • Memory(メモリ消費)
    • Disk Writes(ディスク書込)

    View full-size slide

  13. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    ただし⼀覧で⾒ることができない・・・
    13

    View full-size slide

  14. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Apple Scriptを使って⾃動取得
    14
    詳細処理は懇親の時間に林さん
    に聞いてみてください︕

    View full-size slide

  15. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    情報を取得して⼀覧にした例
    15

    View full-size slide

  16. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    グラフ表⽰の例
    16

    View full-size slide

  17. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    最終的に可視化している値
    17
    • Swiftバージョンシェア
    • クラッシュ率
    • 平均レビュー
    • アプリサイズ
    • コンテンツレーティング
    • OSS利⽤数(Carthage/CocoaPods)
    • エンジニア数
    • Firebase利⽤有無
    • 起動速度
    • Battery(バッテリー消費量)
    • Launch Time(起動時間)
    • Hang Rate(ハング率)
    • Memory(メモリ消費)
    • Disk Writes(ディスク書込)

    View full-size slide

  18. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    コーディング時間を
    増やすには

    View full-size slide

  19. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    コーディング時間が増えると
    19
    • リファクタリングに時間をかけることができる
    • 精神的余⼒が⽣まれる
    • よくないコードを⾒逃さなくなる

    View full-size slide

  20. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    コーディング時間を増やしたいけれど
    20
    • バグ対応
    • レビュー指摘での⼿戻り対応
    • 擦り合わせMTG
    • 集中⼒が切れた状態での稼働
    • 平⾏開発案件がたくさんある︕

    View full-size slide

  21. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    コーディング時間を増やしたいけれど
    21
    • バグ対応
    • レビュー指摘での⼿戻り対応
    • 擦り合わせMTG
    • 集中⼒が切れた状態での稼働
    • 平⾏開発案件がたくさんある︕

    View full-size slide

  22. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    A
    ฏߦ։ൃ͸ख໭ΓͷϦεΫ͕͋Δ
    リリース⽇

    View full-size slide

  23. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    結合テスト
    B
    A
    ฏߦ։ൃ͸ख໭ΓͷϦεΫ͕͋Δ
    リリース⽇

    View full-size slide

  24. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    結合テスト
    B
    A C
    ฏߦ։ൃ͸ख໭ΓͷϦεΫ͕͋Δ
    リリース⽇

    View full-size slide

  25. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    D
    結合テスト 結合テスト
    B
    A C
    ฏߦ։ൃ͸ख໭ΓͷϦεΫ͕͋Δ
    リリース⽇

    View full-size slide

  26. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    D
    結合テスト 結合テスト
    B
    A C
    ฏߦ։ൃ͸ख໭ΓͷϦεΫ͕͋Δ
    リリース⽇
    ֤ϒϥϯνͰͷ$*͸࠷ऴ੒Ռ෺Ͱ͸ͳ͘ɺޮՌ͕ബ͍

    View full-size slide

  27. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    ख໭ΓݮͷͨΊʹޮՌతͳ$*Λ࣮ࢪ
    リリース⽇
    A B C D
    ৗʹ࠷ऴ੒Ռ෺Ͱ$*Λ࣮ࢪͰ͖ΔΑ͏ʹͳͬͨ
    • ϒϥϯνഇࢭ
    • ϖΞϓϩͰৗ࣌ϨϏϡʔίϛοτ
    • ॱ࣍։ൃͷͨΊҰݟ஗͘ݟ͑Δ͕ख໭Γ͕ൃੜ͠ͳ
    ͍ͨΊ݁Ռతʹૣ͘ͳΔ

    View full-size slide

  28. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    ։ൃ్தͰͷϦϦʔε͸ʁ
    リリース⽇
    A B C D
    • ػೳϑϥάΛಋೖ͢Δ
    • Ҋ݅$Λ༗ޮʹ͢ΔϑϥάΛGBMTFͰϦϦʔε
    リリース⽇
    案件Cの開発中ロジックが⼊ってし
    まっているが、ユーザからは⾒えな
    い状態でリリースしている
    案件C、案件Dの機能を完成させて
    改めて公開される

    View full-size slide

  29. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    ͦͷଞʹ΍Δ͜ͱ
    • υΩϡϝϯτഇࢭʢϖΞϩʔςͰ఻ঝʣ
    • ୎ٿͷಋೖʢ࿈ܞྗ޲্ʣ
    • ఆ࣌ୀࣾʢපؾ͸ఢʣ
    • ߴεϖοΫϚγϯͷಋೖʢۚͷ஄ؙʣ
    ίʔσΟϯάΛ࠷༏ઌʹ෺ࣄΛߟ͑Ε͹0,

    View full-size slide

  30. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    どうなったか

    View full-size slide

  31. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.

    View full-size slide

  32. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.

    View full-size slide

  33. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.

    View full-size slide

  34. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.

    View full-size slide

  35. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    まとめ
    35
    • アプリ/チーム毎に最適なアクションは異なる
    • まず現状把握。次に改善アクション
    • 改善実⾏中は数値で可視化する

    View full-size slide

  36. Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    公開
    Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
    すべての時間を
    コーディングに

    View full-size slide