Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ヤフーアプリの品質向上戦略
Search
mao
January 07, 2020
Programming
4
2.5k
ヤフーアプリの品質向上戦略
ヤフーアプリの実際の品質改善例について紹介します
mao
January 07, 2020
Tweet
Share
More Decks by mao
See All by mao
モダンなシステム構成を取り入れ続けることができる組織作り #iosdc
nishimao
10
4.7k
ドッグフーディングしやすい環境を整える
nishimao
15
7.3k
Other Decks in Programming
See All in Programming
Select API from Kotlin Coroutine
jmatsu
1
160
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
350
Passkeys for Java Developers
ynojima
3
860
機械学習って何? 5分で解説頑張ってみる
kuroneko2828
0
210
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
960
Claude Codeの使い方
ttnyt8701
1
120
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
220
A comprehensive view of refactoring
marabesi
0
520
Perlで痩せる
yuukis
1
690
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
720
関数型まつり2025登壇資料「関数プログラミングと再帰」
taisontsukada
2
820
複数アプリケーションを育てていくための共通化戦略
irof
10
3.9k
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
930
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
910
Done Done
chrislema
184
16k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Raft: Consensus for Rubyists
vanstee
140
7k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
KATA
mclloyd
29
14k
Optimizing for Happiness
mojombo
379
70k
Transcript
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
2020年1⽉7⽇ ⻄ 磨翁 ヤフーアプリの 品質向上戦略
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
2 ⾃⼰紹介 • CTO室アプリ統括部 部⻑ • コマース系のアプリ担当を経て、現在 はヤフーアプリ全体の技術戦略などを 担当してます ⻄ 磨翁(にし まお)
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
話したいこと 3 • ヤフーアプリの実際の品質改善例 • まずは現状把握から • コーディング時間を増やすには
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. まずは現状把握から
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
5
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
現状把握の⽬的 6 • 正しいアクションを把握するため • ゴールが明確になることで最後まで⾛りきることが できる • やるべきことの優先順位をつけることができる
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
7
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
AppAnalytics 8 • Appleが提供する分析ツール • Crash数などを把握すること ができる • あまり使わない・・
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Organizer 9
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Crashの詳細を⾒ることができる 10 • だけどCrashlyticsや SmartBeatの⽅が使いやす い
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Metricsを⾒ることができる 11 • Xcode11からの新機能 • リリース済みのメトリクスを 取得できる • ユーザの許可が必要
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
品質に関する項⽬が取得できる︕ 12 • Battery(バッテリー消費量) • Launch Time(起動時間) • Hang Rate(ハング率) • Memory(メモリ消費) • Disk Writes(ディスク書込)
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
ただし⼀覧で⾒ることができない・・・ 13
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Apple Scriptを使って⾃動取得 14 詳細処理は懇親の時間に林さん に聞いてみてください︕
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
情報を取得して⼀覧にした例 15
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
グラフ表⽰の例 16
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
最終的に可視化している値 17 • Swiftバージョンシェア • クラッシュ率 • 平均レビュー • アプリサイズ • コンテンツレーティング • OSS利⽤数(Carthage/CocoaPods) • エンジニア数 • Firebase利⽤有無 • 起動速度 • Battery(バッテリー消費量) • Launch Time(起動時間) • Hang Rate(ハング率) • Memory(メモリ消費) • Disk Writes(ディスク書込)
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. コーディング時間を 増やすには
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
コーディング時間が増えると 19 • リファクタリングに時間をかけることができる • 精神的余⼒が⽣まれる • よくないコードを⾒逃さなくなる
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
コーディング時間を増やしたいけれど 20 • バグ対応 • レビュー指摘での⼿戻り対応 • 擦り合わせMTG • 集中⼒が切れた状態での稼働 • 平⾏開発案件がたくさんある︕
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
コーディング時間を増やしたいけれど 21 • バグ対応 • レビュー指摘での⼿戻り対応 • 擦り合わせMTG • 集中⼒が切れた状態での稼働 • 平⾏開発案件がたくさんある︕
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. A
ฏߦ։ൃखΓͷϦεΫ͕͋Δ リリース⽇
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 結合テスト
B A ฏߦ։ൃखΓͷϦεΫ͕͋Δ リリース⽇
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 結合テスト
B A C ฏߦ։ൃखΓͷϦεΫ͕͋Δ リリース⽇
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. D
結合テスト 結合テスト B A C ฏߦ։ൃखΓͷϦεΫ͕͋Δ リリース⽇
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. D
結合テスト 結合テスト B A C ฏߦ։ൃखΓͷϦεΫ͕͋Δ リリース⽇ ֤ϒϥϯνͰͷ$*࠷ऴՌͰͳ͘ɺޮՌ͕ബ͍
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. खΓݮͷͨΊʹޮՌతͳ$*Λ࣮ࢪ
リリース⽇ A B C D ৗʹ࠷ऴՌͰ$*Λ࣮ࢪͰ͖ΔΑ͏ʹͳͬͨ • ϒϥϯνഇࢭ • ϖΞϓϩͰৗ࣌ϨϏϡʔίϛοτ • ॱ࣍։ൃͷͨΊҰݟ͘ݟ͑Δ͕खΓ͕ൃੜ͠ͳ ͍ͨΊ݁Ռతʹૣ͘ͳΔ
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. ։ൃ్தͰͷϦϦʔεʁ
リリース⽇ A B C D • ػೳϑϥάΛಋೖ͢Δ • Ҋ݅$Λ༗ޮʹ͢ΔϑϥάΛGBMTFͰϦϦʔε リリース⽇ 案件Cの開発中ロジックが⼊ってし まっているが、ユーザからは⾒えな い状態でリリースしている 案件C、案件Dの機能を完成させて 改めて公開される
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. ͦͷଞʹΔ͜ͱ
• υΩϡϝϯτഇࢭʢϖΞϩʔςͰঝʣ • ٿͷಋೖʢ࿈ܞྗ্ʣ • ఆ࣌ୀࣾʢපؾఢʣ • ߴεϖοΫϚγϯͷಋೖʢۚͷؙʣ ίʔσΟϯάΛ࠷༏ઌʹࣄΛߟ͑Ε0,
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. どうなったか
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved.
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
まとめ 35 • アプリ/チーム毎に最適なアクションは異なる • まず現状把握。次に改善アクション • 改善実⾏中は数値で可視化する
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. 公開
Copyright (C) 2020 Yahoo Japan Corporation. All Rights Reserved. すべての時間を コーディングに