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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
asumikam
April 24, 2026
Programming
560
4
Share
書籍「ユーザーストーリーマッピング」が私のバイブル
PHPer Book Revue ❤️
asumikam
April 24, 2026
More Decks by asumikam
See All by asumikam
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
450
Harnessing the Power of Mocks and Stubs in PHPUnit / #laravellivejp
asumikam
0
880
委員長たちの「コシ」
asumikam
0
420
PHPUnitの「Depends」を使うと次のテストに返り値を渡せるの、なんで?読むぞ! #phpcon_odawara
asumikam
0
65
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
3
1.1k
PHPコミュニティのあるきかた & ちいさく PHPUnitをつくってみる / Tech Challenge Party 2026
asumikam
0
150
ubuntu-latest から ubuntu-slim へ移行しよう!コスト削減うれしい~!
asumikam
0
1.2k
ちいさくPHPUnitをつくり、仕組みと拡張ポイントを探る
asumikam
3
1.2k
ちいさくPHPUnitをつくってみる
asumikam
0
140
Other Decks in Programming
See All in Programming
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
150
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.5k
CSC307 Lecture 17
javiergs
PRO
0
310
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
590
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1.1k
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.9k
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.1k
Modding RubyKaigi for Myself
yui_knk
0
890
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
120
3Dシーンの圧縮
fadis
1
650
RTSPクライアントを自作してみた話
simotin13
0
490
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
190
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
ラッコキーワード サービス紹介資料
rakko
1
3.5M
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
550
Fireside Chat
paigeccino
42
3.9k
Automating Front-end Workflow
addyosmani
1370
210k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
220
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
Building Applications with DynamoDB
mza
96
7.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
280
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
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):Λڭ͑ͯ͘ΕΔຊͩͬͨ
༨ஊ
ࠓ͔ͬ͠Γӳձڭࣨʹ௨ͬͯ·͢
🍊͓ΘΓ🍊 Έͯ͘ΕͯŗžŜƄŪŤƃŝœŖ😘