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
Product Management Tips for In-house tools
Search
LINE Developers
January 07, 2021
Technology
8.4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Product Management Tips for In-house tools
LINE Developers
January 07, 2021
More Decks by LINE Developers
See All by LINE Developers
LINEスタンプのSREing事例集:大きなスパイクアクセスを捌くためのSREing
line_developers
3
2.5k
Java 21 Overview
line_developers
6
1.3k
Code Review Challenge: An example of a solution
line_developers
1
1.6k
KARTEのAPIサーバ化
line_developers
1
640
著作権とは何か?〜初歩的概念から権利利用法、侵害要件まで
line_developers
5
2.3k
生成AIと著作権 〜生成AIによって生じる著作権関連の課題と対処
line_developers
3
2.5k
マイクロサービスにおけるBFFアーキテクチャでのモジュラモノリスの導入
line_developers
9
4k
A/B Testing at LINE NEWS
line_developers
3
1.1k
LINEのサポートバージョンの考え方
line_developers
2
1.5k
Other Decks in Technology
See All in Technology
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
0
130
AIに「使われる」時代のSaaS戦略 〜既存WebAPIのMCPサーバー化における開発ノウハウ〜
ekispert_api
0
300
ゼロをイチにする仕事が終わったあと
smasato
0
310
Compose 新機能総まとめ / What's New in Jetpack Compose
yanzm
0
140
product engineering with qa
nealle
0
150
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
8k
AIに障害切り分けを全部やってもらった。 。 。 。
estie
0
370
cccccc
moznion
0
1.8k
ローカルLLMとLINE Botの組み合わせ その3 / LINE DC Generative AI Meetup #8
you
PRO
0
110
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
11
3.9k
Agentic AI 時代のテスト手法: Kiro とはじめるプロパティベーステスト (AWS Summit Japan 2026 | DEV212)
ymhiroki
0
220
AWS Summit の片隅で、体育座りしながらコミュニティがにぎわう理由を考えた
k_adachi_01
2
350
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.7k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
380
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
600
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Automating Front-end Workflow
addyosmani
1370
210k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.6k
Transcript
ҏ౻ -*/&גࣜձࣾ ࣾπʔϧʹ͓͚Δ ϓϩμΫτ Ϛωδϝϯτͷצॴ
ηογϣϯͰ͓͍ͨ͜͠ͱ ։ൃऀ͕։ൃऀ͚ʹ πʔϧɾαʔϏεɾ ϓϥοτϑΥʔϜΛ ఏڙ͢Δ͜ͱͰ ؕΓ͕ͪͳ՝ͱղܾࡦ
ηογϣϯͰ͓͍ͨ͜͠ͱ ։ൃऀ͕։ൃऀ͚ʹ πʔϧɾαʔϏεɾ ϓϥοτϑΥʔϜΛ ఏڙ͢Δ͜ͱͰ ؕΓ͕ͪͳ՝ͱղܾࡦ ϓϩμΫτϚωδϝϯτͷ ؍͔Β զʑͷݱͰͷ
ܦݧɾࣦഊஊΛͱʹ
ࢲͨͪͷνʔϜͱϓϩμΫτ -*/&ͷ4&5ͱͯ͠ ࣾ։ൃऀ͚ʹ πʔϧΛఏҊɾ։ൃɾӡ༻
4FCBT ϚΠΫϩαʔϏεͷোݪҼಛఆπʔϧ &&ςετΛ࣮ߦ͠ɺ ͕͋ΔՕॴΛ ;JQLJOͰݟ͑ΔԽ
ύϑΥʔϚϯεςετ༻ϓϥοτϑΥʔϜ "ZBQFSG @Test public void xxx() { final
long startTime = System.currentTimeMillis(); try { get("http://localhost:8080/index.html") .then() .statusCode(200); Report.recordSuccess( System.currentTimeMillis() - startTime, 1); } catch (Exception e) { Report.recordFailure( System.currentTimeMillis() - startTime,"error"); } } (SBGBOBͳͲͰ ݁ՌΛදࣔ
5FTUBCMF*OGSB ΦϯσϚϯυͰ ςετڥΛෳͰ͖ΔαʔϏε
ࢲͷׂɾ Ϧʔμʔͱͯ͠ҎԼΛܾఆ • ୭ͷԿΛղܾ͢Δ͔ • Ͳͷॱ൪Ͱ͍ͭ·Ͱʹ࣮ݱ͢Δ͔ • ͦͷ݁Ռͱͯ͠ શࣾతʹͲͷΑ͏ͳՁΛఏڙ͢Δ͔
ˠ1E.࣮࣭݉
ͳͥࣾπʔϧͷ1E.ʁ ʰ5FDIOPMPHZ3BEBSʱ • ϓϩμΫτϚωδϝϯτͷ ݟɾํ๏Λࣾπʔϧ܈ʹ ద༻͢ΔτϨϯυ͕ੈքతʹ֦େ • ҰํͰɺࣾπʔϧ܈ͳΒͰͷ ݟɾํ๏·ͩ·ͩෆ
5IPVHIU8PSLTࣾͷ ͓͖ͷ ۀքτϨϯυϨϙʔτ
ݟΛཧ͠ ൃ৴͢Δ άϩʔόϧͳ νϟϯεͰʂʁ
ه ʮϢʔβʯͱʮεςʔΫϗϧμʔʯ ԼهͷΑ͏ʹ۠ผͯ͠ѻ͍·͢ Ϣʔβ ։ൃऀͳͲ ϓϩμΫτΛ ࣮ࡍʹͬͯ͘ΕΔਓ εςʔΫϗϧμʔ һ্ͳͲ
ϓϩμΫτ։ൃΛ ࢧԉͯ͘͠ΕΔਓ
ΞδΣϯμ ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ <՝ઃఆ> ࢲ͕ͨͪ ࣮ࡍʹؕͬͨ՝ͱ ؍ଌͨ͠ʮෆ٢ͳ͍ʯ
ࣾπʔϧͷલఏ • ։ൃऀͷΈͰνʔϜฤ • ϓϩμΫτϚωʔδϟʔ ʮ·ͣʯ͍ͳ͍ • ϓϩμΫτϚωδϝϯτ Λ͍ͬͯΔਓগͳ͍
։ൃʂ։ൃʂ։ൃʂ ؾ͕ͭ͘ͱ։ൃʹूத • Ϣʔβχʔζ͕໌֬Ͱͳ͍ͷʹ ։ൃλεΫͰຒ·ΔλεΫϘʔυ • ϦϦʔεΑΓϦϑΝΫλϦϯά •
ंྠͷ࠶ൃ໌ΛΓ͕ͪ
։ൃʂ։ൃʂ։ൃʂ ։ൃʹڧ͍ؔ৺ͷ͋Δϝϯόʔ͚ͩͰ ϓϩμΫτ։ൃΛ͢Δͱʜ 7BMVBCMF 6TBCMF 'FBTJCMF ࣗͨͪͷٕज़తʹ ࣗͨͪʹͱͬͯ
ࣗͨͪͷٕज़తʹ
͕ࣗͨͪϢʔβʂ Ϣʔβχʔζશͯط ͱ͍͏ࢥ͍ࠐΈ • ʮࣗͨͪʹϢʔβʯͱ͍͏ʮޡೝʯ • ϢʔβχʔζͷݕূΛ͠ͳ͍ •
৽ػೳͳͲͷσϞ͠ͳ͍
͕ࣗͨͪϢʔβʂ ຊɾຊདྷͷϢʔβ͕ ·ͳ͍ɾΘͳ͍ͷΛ࡞Γ͕ͪ 7BMVBCMF 6TBCMF 'FBTJCMF ࣗͨͪʹͱͬͯ ࣗͨͪʹͱͬͯ
ࣗͨͪʹͱͬͯ
ʮ'JYʯͷޡṩ ҙࢥܾఆɾ߹ҙ ෴Βͳ͍ͱ͍͏ࢥ͍ࠐΈ • ࠷ॳʹ߹ҙͰ͖ͨͷͷ ʮ࡞ΓࠐΈʯʹूத͢Δ • σϞใࠂΛޙճ͠ʹ͕ͪ͠
• εςʔΫϗϧμʔมΘΒͣ ࢧԉ͠ଓ͚ͯ͘ΕΔͱࢥ͍ࠐΉ
ͭΒ͍Ͱ͢ɻ
ϙΠϯτ ٕज़తʹ༏Ε͍ͯΔ㱠ϢʔβՁ ϢʔβͱεςʔΫϗϧμʔʹ ΞϯςφΛுΔ͜ͱඞਢ ϓϩμΫτϚωδϝϯτͷߟ͑ํ ඞཁ͔ͭ༗ޮ
思い込みから 一歩離れてみよう
ղܾํ ։ൃʂ։ൃʂ։ൃʂ ͕ࣗͨͪϢʔβʂ ʮ'JYʯͷޡṩ ࣾπʔϧͰ Ϣʔβத৺ εςʔΫϗϧμʔΛ ૄ͔ʹ͠ͳ͍ ϓϩϞʔγϣϯ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ • ຊͷϢʔβΛΔ • Ϣʔβχʔζͱ͖߹͏ • ͦΕͰ͕ࣗࢼ͍ͨ͠ ͜ͱ͕͋Δ߹ͷৼ͍
ຊͷϢʔβΛΔ ࣗͨͪ ϢʔβදͰͳ͍ • ͕ࣗͨͪΓ͍ͨ͜ͱΛΰϦԡ͢ ཧ༝ʹ͍͚ͯ͠ͳ͍ʢռΊʣ • ໘͕ΒͣɺϢʔβʹΛฉ͘ •
͜ΕΒΛҙࣝ͢Δ͚ͩͰ݁ߏมΘΔ
Ϣʔβχʔζͱ͖߹͏ Λ͢Δͷ͕Ұ൪ • ΠϯλϏϡʔɾςετɾσϞΛ ఆظԽɾԽ͢Δ • ৽ػೳͷσϞͰϢʔβͷؔ৺ΛߴΊΔ • ݴΘΕͨͷ͚ͩΛ࡞Δଶආ͚Δ
8IZT ͳͥ࡞Γ͍ͨͷ͔ʁ • Ϣʔβͷ՝Λղܾ͍ͨ͠ͷ͔ʁ • ͕ࣗࢼͯ͠Έ͍ͨ͜ͱ͕͋Δͷ͔ʁ • ྆ऀΛͭͳ͛ΒΕͳ͍͔ʁ ˠ8JOXJOʹͰ͖ΔͳΒͭͳ͛Α͏
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏ 4&5νʔϜͰɺ 4MBDLͰͷ௨͕ Ұൠత
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏ Ϣʔβ͔Β͋Δɺ (JU)VCͷ13ը໘Ͱ ௨ͯ͠ͱཁ͕
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏ ҰՕॴͰશ෦ݟ͍ͨ τϨϯυ͕ શࣾతʹग़͖͍ͯͯͨ
·ͱΊ • ਅ伨ʹϢʔβϑΝʔετ • ݴ͍ͳΓආ͚Δ • ͕ࣗΓ͍ͨ͜ͱͱ Ϣʔβͷ՝ղܾͱΛ ϦϯΫͤ͞Δ͜ͱΞϦ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ εςʔΫϗϧμʔͷ ࢧ࣋ɾڠྗͷऔΓ͚ͷ ඞཁੑͱͦͷํ๏
ڵຯɾؔ৺ࣦΘΕಘΔ ཁ༷݅ෆมͰ͔͢ʁ • Ұͷ߹ҙͰຬͯ͠ʢΞΧϯʣ • ڵຯɾؔ৺ৗʹมΘΔ • ۀͷ༏ઌͱಉ͡ ˠৗʹڵຯɾؔ৺ΛҾ͘Έ͕ඞཁ
ఆظతͳσϞ ಈ͘ͷͷΠϯύΫτΛϑϧ׆༻͢Δ ։ൃऀ͔ͩΒͦ͜ͷ ڧΈΛ׆͔ͦ͏ʂ
ʮਤʯͷఆظతͳڞ༗ɾߋ৽ ݱ࣌ͷΰʔϧͱͦͷಓےΛݟͤΔ
શͯͷཁٻʹԠ͑ͯμϝ /PDPEFNPOLFZ • Ϧιʔε༗ݶ • ݱঢ়࣮ݱՄೳͳ͜ͱΛઆ໌͢Δ͜ͱ ϓϩͷৼΔ͍ • ༏ઌॱҐΛ͚࣋ͬͯͭΔ
• ͋͘·Ͱύʔτφʔͱͯ͠ৼΔ͏
ࣾπʔϧͷσϞಈըΛ ϥϯνͷͰһʹհ ˣ ͦͷһ͕ଞͷһʹσϞಈըΛڞ༗ ˣ ࢲͨͪͷΒͳ͍͏ͪʹ ࣾπʔϧͷར༻ऀ͕૿͍͑ͯͨʢʂʣ ʢࣄྫʣσϞಈըΛ࡞ͬͯΈͨ
·ͱΊ • ڵຯɾؔ৺ΛҾ͘͜ͱ ཱͳࣄ • ܾఆΛෆมͱ ࢥ͍ࠐ·ͳ͍ • ݴ͍ͳΓආ͚Δ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ 1SPEVDU.BSLFUJOH • ఆϢʔβ͕ࣾ։ൃऀ Ͱ͋ͬͯඞཁ • ͨͩ͠ඞཁ
ใΦʔϓϯ͔ͭͭ͘͜͠ • ڵຯɾؔ৺Λשى͠ଓ͚Δ • ఆظతͳσϞ • ʮਤʯͷఆظతͳڞ༗ɾߋ৽ • ใৗʹΞΫηεͰ͖ΔΑ͏ʹ͢Δ
• ςϨϏ$.͘Β͍ͭ͘͜͠ • ࣗવͱݴ༿Λ͍ͭͯग़Δ·Ͱ
ςΩετͱσϞͷ྆࣠Ͱ ͲͪΒΔʂ
νϟϯωϧΛ૿͢ • ͚ͭͩͰʹ͔ͭͳ͍ • ࢹքʹೖΓࠐΜͰ ೝ·Ͱ͍࣋ͬͯ͘ • λʔήοτ͕Ή νϟϯωϧΛૂ͓͏
ࢲͷൃ৴ͷ͕ΞδϟΠϧܥʹภΓ͕ͪ ˣ ,VCFSOFUFTɾ2"ܥίϛϡχςΟʹ ൃ৴ॴΛ֦େ ˣ 5XJUUFSܦ༝Ͱ ࣾһ͔ΒίϯλΫτΛड͚ͨʢʂʣ ʢࣄྫʣൃ৴ॴͷݟ͠
·ͱΊ • ࣾπʔϧͰ ϓϩϞʔγϣϯඞਢ • Ϛϧννϟϯωϧ • ೝͤ͞Δ·Ͱଓ͚Δ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
ߦಈࢦͷTXJUDI ։ൃऀઢ͔Β ϓϩμΫτϚωδϝϯτ • ผͷࢹΛ୯७ʹΒͳ͍͚͔ͩ • ڭ͑ΕɺΩνϯͱ׆༻ͯ͘͠ΕΔ • ίʔνɺ͍ͨํ͕ྑ͍
։ൃऀͷϝϦοτΛ׆͔͢ • ࣮ࡍʹ࡞ͬͯࢼͤΔ • ΑΓݱ࣮తͳϞϊͰ σϞͰ͖Δ • ϝϦοτʹྗͯ͠ ؾ࣋ͪΑ͘ͳΓ͗͢ͳ͍
%FW0QTͰଉਧΛਧ͖ࠐΉ ΈΛ࠷ॳʹ࡞Ζ͏ • ϢʔβςετΛ͘͢͠ͳΔ • ݕূΛܧଓతʹߦ͍͘͢ͳΔ • 1JWPUΛؾ݉Ͷͳ͘Ͱ͖Δ 1E.º
%FW0QT808
ʮࣗݾ࣮ݱʯՄೳ ͕ࣗΓ͍ͨ͜ͱͱ Ϣʔβͷ՝ղܾͱΛ ϦϯΫͤ͞Δࢹͱߦಈ ͋ͬͯྑ͍
1E.ʹର͢Δ։ൃऀͷٙ೦ ίʔυͷ͍͕ ͠ͳ͍ ʢ৴༻Ͱ͖ͳ͍ʣ
྆ํͱඞཁ ϓϩμΫτ Ϛωδϝϯτ º ΤϯδχΞϦϯά
Ѫ͞ΕΔ %FW&YΛ ࢦ͠ଓ͚Α͏