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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
asumikam
April 24, 2026
Programming
530
4
Share
書籍「ユーザーストーリーマッピング」が私のバイブル
PHPer Book Revue ❤️
asumikam
April 24, 2026
More Decks by asumikam
See All by asumikam
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
94
Harnessing the Power of Mocks and Stubs in PHPUnit / #laravellivejp
asumikam
0
790
委員長たちの「コシ」
asumikam
0
350
PHPUnitの「Depends」を使うと次のテストに返り値を渡せるの、なんで?読むぞ! #phpcon_odawara
asumikam
0
64
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
3
1.1k
PHPコミュニティのあるきかた & ちいさく PHPUnitをつくってみる / Tech Challenge Party 2026
asumikam
0
140
ubuntu-latest から ubuntu-slim へ移行しよう!コスト削減うれしい~!
asumikam
0
1.2k
ちいさくPHPUnitをつくり、仕組みと拡張ポイントを探る
asumikam
3
1.2k
ちいさくPHPUnitをつくってみる
asumikam
0
130
Other Decks in Programming
See All in Programming
RailsTokyo 2026#4: AI様があれば、 Hotwireの弱点は消えるか?
naofumi
5
1k
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
140
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
200
AI開発を加速するためにテスト戦略を言語化した
yoshihiro_shu
0
100
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.8k
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.4k
関係性から理解する"同一性"の型用語たち
pvcresin
2
620
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
250
Inspired By RubyKaigi (EN)
atzzcokek
0
460
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.2k
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
7
1.3k
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
260
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
698
190k
Making Projects Easy
brettharned
120
6.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
30 Presentation Tips
portentint
PRO
1
310
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
130
The Mindset for Success: Future Career Progression
greggifford
PRO
0
350
Google's AI Overviews - The New Search
badams
0
1k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
sira's awesome portfolio website redesign presentation
elsirapls
0
270
Scaling GitHub
holman
464
140k
Transcript
ϢʔβʔετʔϦʔϚοϐϯά ͕ࢲͷόΠϒϧ BTVNJLBN
ͲΜͳຊʁ
ϢʔβʔετʔϦʔΛ Ϛοϐϯά͢ΔͨΊͷϋπʔຊ Ͱͳ͍
ͲΜͳຊʁ
ϓϩμΫτͷʮϚδͷՁʯΛٻ͢Δ ϝϯλϧϞσϧΛܗͯ͘͠Εͨຊ
͜ΜΜ w͋͢Έ 𝕏 !BTVNJLBN wגࣜձࣾϦϯέʔδ w1)1ΧϯϑΝϨϯεখాݪ͓ͭʙ
w ϓϩμΫτλεΫʢνέοτ JTTVFʣͷॻ͖ํʹ ͬ͘͠Γ͖͍ͯͳ͍࣌ظͩͬͨ w ϓϩμΫτόοΫϩάΡʁεϓϦϯτόοΫϩάΡʁ w ͻΐΜͳλΠϛϯάͰ༁Λ͍ͯ͠Δޱ͞Μʹ ʮ͜ͷຊ͓͢͢ΊͩΑʙʯͱڭ͑ͯΒͬͨ w
BTVNJLBNʮ͓ͬྑ͍)08͕ݟ͔ͭΓͦ͏ͳຊͩͳʯ ʮϢʔβʔετʔϦʔϚοϐϯάʯͱͷग़ձ͍
ͦ͏ͯ͠ಡΈ࢝ΊͨBTVNJLBN
ϫʔοʂʂʂʂʂʂʂʂʂʂ
w ͍͔ʹʮࢹڱʯͳΤϯδχΞͰ͔͋ͬͨΛࢥ͍ͬͨ w ৗ͕ࣝͻͬ͘Γฦͬͨײ͡ w ࢹ͕͕ͬͨ͜ͱͰ໌͔ΒͷࣄɺϓϩμΫτͮ͘ ΓͰ͖Δ͜ͱ͕ͱָͬͯ͠Έʹͳͬͨ w ͦΕࠓଓ͍͍ͯͯɺձ͕ࣾมΘͬͯɺࣗͷϓϩ μΫτ͕ͱ͖ͯͰ͢
ʮ͔Βྡྷʯͳจষ͔Γͩͬͨ
ͬͯɺ͔ΒݴͬͯΔɻ l ͜ΕʔʔʔʔʔʔʔʔʔɻΘͨ͠ͷߟ͑ํΛΨϥοͱม͑ͯ͘Εͨ ɺ͋͢ΈΒͿͪຊʹηϨΫγϣϯ͢ΔຊͰ͢ɻ൪͖ͳຊ Ͱ͢ɻʢུʣ ϚδͰਓੜΛม͑ͯ͘ΕͨจষͰ͢ɻ ͋͢Έ͔Μͷ্ʹ͋͢Έ͔Μ εΫϥϜϚελʔͭͷେࡑEBZʮεϓϦϯτʹऴΘΒͳ͍ʯ؍ෆ IUUQTBTVNJLBNDPNFOUSZ
BTVNJLBNԣసूΛҾ༻͍͖ͯ͠·͢
l ༏ΕͨνʔϜɺϏδωε,1*ʹେ͖ͳΠϯύΫτΛ༩͑ΒΕͨͱ ͖ʹॕഋΛ͋͛Δɻμ ϝͳνʔϜɺԿ͔ΛϦϦʔεͨ͠ͱ͖ʹॕ ഋΛ͋͛Δɻ ϢʔβʔετʔϦʔϚοϐϯά ϚʔςΟɾέʔΨϯʹΑΔংจ
w ʮΞτΧϜʯΛग़͢͜ͱ͕Ұ൪ॏཁ w ʮσΧΊͷϦϦʔεͨ͠ਓ͕ͨͪදজʹͷΔʯ͜ͱʹ ϞϠϞϠ͍ͯͨ͠ʢͲͷνʔϜೖ͔ͬͨʹґଘ͢ΔΜʜʁΈ͍ͨͳʣ w ͜ͷจষࢲͷϞϠϞϠΛݴޠԽͯ͘͠Εͨɻ ʮϚδͷՁʯ͕ग़͔ͯΒ͡Όͳ͍͔ΒϞϠϞϠͯͨ͠Μͩͳ w ଞʹʮ༏ΕͨνʔϜʯʮμϝͳνʔϜʯͷରൺ͕ͨ͘͞ΜฒΜ
ͰͯຊʹͲΕͬ͘͠Γ͘Δɺͦͯ͜͠Ε·ͩংจͳΜͰ͢Α ʮϓϩμΫτͷՁʯϦϦʔεͰ͖ͨ͜ͱ͡Όͳ͍
l ιϑτΣΞ։ൃͷݹ͍ΓํͰɺޙͰʢ͢ͰʹϦϦʔεͷظ Λਪܭͨ͠Γɺଋͨ͠ޙͰʣͦ͏͍ͬͨ৽͍͠ࣄ͕ݟ͔ͭ ΔͱɺͦΕΒΛείʔϓΫϦʔϓͱݺͿɻ͔͠͠ɺࢲείʔϓ ʢࣄͷൣғʣ͕ΫϦʔϓʢΒͳ͍ؒʹ;͘ΒΉʣ͢Δ͜ͱ ͳ͍ͱࢥ͍ͬͯΔɻ୯ʹཧղ͕ਐΜ͚ͩͩͩɻͦͯ͠ετʔϦʔ ϚοϓΛ࡞Γͳ͕Βݟ͔ͭΔͷਓʑͷཧղʹۭ͍ͨ݀ͩɻ ϢʔβʔετʔϦʔϚοϐϯά ষɹ࡞ΔͷΛݮΒͨ͢Ίͷϓϥϯ
w ޙ͔Β৽͍༷͠ʹ͍ͭͯݴΘΕΔͱωΨςΟϒͳؾ࣋ͪʹ ͳ͍ͬͯͨ w lཧղ͕ਐΜͩzͱ͍͏ࢹɺ୯ͳΔߟྀ࿙ΕͰ͠ΐɺͱ͍ ͏ωΨςΟϒͳؾ࣋ͪΛϙδςΟϒͳؾ࣋ͪʹม͑ͯ͘Εͨ w ࢲͨͪᘳ͡Όͳ͍ɺෆશͳνʔϜ͔ͩΒͦ͜ɺ ཧղ͕ਐΉॠؒඞͣ͋ΔɻνʔϜͱͯ͠ͷͷ༨ ʮ͑ɺͦΕࠓݴ͏ʁʯ͍ͬͯ͏༷มߋ
l ࢲͨͪಉ͡υΩϡϝϯτΛಡΉ͜ͱ͕Ͱ͖Δ͕ɺ ҧ͏ཧղΛ͢Δɻ l ετʔϦʔͱ͍͏໊લɺ ͲͷΑ͏ʹॻ͖͔͘Ͱͳ͘ɺ ͲͷΑ͏ʹΘΕΔ͔ʹ͍͚ͭͯΒΕ໊ͨલͩɻ ϢʔβʔετʔϦʔϚοϐϯά ষɹετʔϦʔʹ͍ͭͯͷຊͷετʔϦʔ
w ༷ʹ͍ͭͯೝࣝζϨ͕ͳ͍Α͏ʹ͔ͬ͠ΓυΩϡϝϯτʹ͋ Δͷʹɺͳ͔ͥɺղऍ͕มΘΔ w ͦΕΛΒͳ͚Εʮ·Δ͔͍ͯͪΐΜʯͷۂΛฉ͍ͯυϥ ͑ΜΛॻ͚ͳ͍ͷͱಉ͡ w ڞ௨ೝࣝʮᘳͳυΩϡϝϯτΛॻ͘ʯ͚ͩͰங͚ͳ͍ w ͔ͩΒͱݴͬͯʮυΩϡϝϯτΛॻ͔ͳͯ͘ྑ͍ʯΘ͚͡Ό
ͳ͍ͱݴͬͯΔͷ͕͜ͷຊͷ͍͍ͱ͜Ζ ॻ͍ͯ͋Δͷʹཧղ͞Εͳ͍
l ձɺ େ͖ͳετʔϦʔΛղ͢ΔͨΊͷ࠷ྑͳπʔϧͷͻͱͭͩɻ ϢʔβʔετʔϦʔϚοϐϯά ষɹؠΛࡅ͍͍ͯ͘
w ʮձʯΛॏͶΔ͜ͱʹΑͬͯɺνϟοτ͕ɺυΩϡϝϯτ͕ɺ ͢͜ͱ͕ɺಉ͡ͷΛදݱ͢ΔΑ͏ʹͳ͍ͬͯ͘ w ʮϢʔβʔɾνʔϜϝϯόʔɾεςʔΫϗϧμʔɺશͯͷਓͱ ձΛ͢Δʯ͜ͱ͕ॏཁͩͱؾ͍ͮͨ w ʮϛʔςΟϯάޮ͕ѱ͍ʯͱ͍͏֓೦Λͻͬ͘Γฦͨ͠ ʮձʯΛͯ͠શһͷೝࣝΛͦΖ͑Δ
ͱʹ͔͘ຊʹྑ͍ຊͳΜͰ͢Α
w ϓϩμΫτͷʮϚδͷՁʯΛٻ͢ΔϝϯλϧϞσϧΛ ܗͯ͘͠Εͨຊʢ࠶ܝʣ w औΓ্͛ͯͳ͍͚Ͳʮ࠷খݶͰྑ͍ͷΛ࡞Δʯతͳͱ͜Ζ ڭ͑ͯ͘Εͨ w ͪΖΜʮϢʔβʔετʔϦʔϚοϐϯάʯͷϋπʔ͋Δ w ͳͥͦΕΛ࡞Δͷ͔ʁͲͷΑ͏ʹ࡞Δͱྑ͍ͷ͔ʁΛ͔ͬ͠Γ
ॻ͍͍ͯͯɺͦΕΒͷओு͕ʮ࡞Γखʯͷࢲʹϒοͬͨ͞ ͓͢͢ΊͰ͢
࠷ॳ)08ΛٻΊͯಡΜͩຊ ࣮ࡍ8):Λڭ͑ͯ͘ΕΔຊͩͬͨ
༨ஊ
ࠓ͔ͬ͠Γӳձڭࣨʹ௨ͬͯ·͢
🍊͓ΘΓ🍊 Έͯ͘ΕͯŗžŜƄŪŤƃŝœŖ😘