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
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
110
ソフトウェアテスト徹底指南書の紹介
goyoki
1
150
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
120
はじめてのMaterial3 Expressive
ym223
2
250
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
640
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
230
私の後悔をAWS DMSで解決した話
hiramax
4
210
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
510
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
380
Design Foundational Data Engineering Observability
sucitw
3
190
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
Featured
See All Featured
How to Ace a Technical Interview
jacobian
279
23k
Scaling GitHub
holman
463
140k
GraphQLとの向き合い方2022年版
quramy
49
14k
Gamification - CAS2011
davidbonilla
81
5.4k
A Tale of Four Properties
chriscoyier
160
23k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
KATA
mclloyd
32
14k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
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. すべての時間を コーディングに