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
Satoshi Kawashima
July 25, 2018
Technology
0
870
アジャイル開発でのソフトウェア設計
第128回PHP勉強会@東京の発表資料です。
変なこと書いてたらすいません。
言い訳がましいですが、こう考えてる人もいる程度に受け止めていただけると幸いです。
Satoshi Kawashima
July 25, 2018
Tweet
Share
More Decks by Satoshi Kawashima
See All by Satoshi Kawashima
モジュラモノリスにおけるトランザクション設計の考え方 / transaction design on modular monolith
nazonohito51
17
9.1k
BASE大規模リアーキテクチャリング / base_rearchitecturing
nazonohito51
18
13k
既存サービスに後からR/W Splittingライブラリを入れる時に考えたこと / r-w-splitting
nazonohito51
1
29k
社内勉強会でOOPとCleanArchitectureとDDDを勉強し始めたというお話
nazonohito51
7
5.2k
CakePHP2でもPhpStormがコード補完してくれるようにした話 / cakephp2-ide-helper
nazonohito51
1
2.4k
PHPStanでCustomRuleを作る / Make PHPStan CustomRule
nazonohito51
6
4k
単方向依存を実現する静的解析ライブラリのご紹介 / Analyze PHP Dependencies
nazonohito51
3
5.8k
「SOLIDの原則って何ですか?」って質問に答えたかった / What's SOLID principle
nazonohito51
6
2k
ドキュメントルート配下に全てのPHPファイルが置かれていた環境をindex.phpだけにした話 / document root
nazonohito51
2
3.8k
Other Decks in Technology
See All in Technology
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.2k
Lambda Web Adapterについて自分なりに理解してみた
smt7174
5
140
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
1
280
5min GuardDuty Extended Threat Detection EKS
takakuni
0
180
How Community Opened Global Doors
hiroramos4
PRO
1
130
プロダクトエンジニアリング組織への歩み、その現在地 / Our journey to becoming a product engineering organization
hiro_torii
0
140
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
26k
Connect 100+を支える技術
kanyamaguc
0
150
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
250
作曲家がボカロを使うようにPdMはAIを使え
itotaxi
0
390
OPENLOGI Company Profile
hr01
0
67k
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
230
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.1k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Facilitating Awesome Meetings
lara
54
6.4k
Done Done
chrislema
184
16k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Become a Pro
speakerdeck
PRO
28
5.4k
It's Worth the Effort
3n
185
28k
KATA
mclloyd
30
14k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
ౡܛ(.01FQBCP *OD ୈճ1)1ษڧձˏ౦ژ ΞδϟΠϧ։ൃͰͷ ιϑτΣΞઃܭ
ΞϓϦέʔγϣϯΤϯδχΞ ౡܛ!OB[POPIJUP 4)ࣄۀ෦+6(&.νʔϜ IUUQOB[POPIJUPKVHFNKQ
ιϑτΣΞ։ൃͨ͘͞Μͷ ʮྑ͍ઃܭͷͨΊͷϊϋʯ ͰᷓΕ͍ͯΔ
ΦϒδΣΫτࢦઃܭ
ςετ
ίʔσΟϯάςΫχοΫ
σʔλϕʔε
σβΠϯcΞʔΩςΫνϟ ύλʔϯ
υϝΠϯੳ
"1*
ϚΠΫϩαʔϏε
ઃܭํ๏
ݱ࣮
બͱଥڠͷੵΈॏͶ
ଥڠ͢Δʹ ͳΔ͘ྑ͍ଥڠΛ͍ͨ͠
ͦͦ ԿͷͨΊʹ ઃܭΛͯͨ͠Μ͚ͩͬ
جຊʹཱͪฦͬͯΈͨ
ΞδϟΠϧ։ൃʹ͓͚Δ ιϑτΣΞઃܭͱ
ࢲͨͪɺιϑτΣΞ։ൃͷ࣮ફ ͋Δ͍࣮ફΛखॿ͚Λ͢Δ׆ಈΛ௨ͯ͡ɺ ΑΓΑ͍։ൃํ๏Λݟ͚ͭͩͦ͏ͱ͍ͯ͠Δɻ ͜ͷ׆ಈΛ௨ͯ͠ɺࢲͨͪҎԼͷՁʹࢸͬͨɻ ϓϩηεπʔϧΑΓݸਓͱରΛɺ แׅతͳυΩϡϝϯτΑΓಈ͘ιϑτΣΞΛɺ ܖަবΑΓސ٬ͱͷڠௐΛɺ ܭըʹै͏͜ͱΑΓมԽͷରԠΛɺ Ձͱ͢Δɻ͢ͳΘͪɺࠨهͷ͜ͱ͕ΒʹՁ͕͋Δ͜ͱΛ ೝΊͳ͕Βɺࢲͨͪӈهͷ͜ͱ͕ΒʹΑΓՁΛ͓͘ɻ
ΞδϟΠϧιϑτΣΞએݴ IUUQBHJMFNBOJGFTUPPSH
υΩϡϝϯτΑΓίʔυΛ ༏ઌ͍ͤͯ͞Δ͚ͩͰ ઃܭΛ͠ͳ͍Θ͚Ͱͳ͍
ΥʔλʔϑΥʔϧͱͷൺֱ wΥʔλʔϑΥʔϧͷઃܭɿఔ QSPDFTT ͷ໊લͱͯ͠ͷʮઃܭʯ ͱ͍͏ҙຯ߹͍͕ڧ͍ wఔͷલͷ४උఔ wΞδϟΠϧͷઃܭɿιϑτΣΞΛมߋ͍͢͠ঢ়ଶʹอͭҰ࿈ͷ׆ ಈ BDUJWJUZ
͜ͷ͍͋ͩͷ1)1ͷݱ wʮʹରͯ͠ղܾࡦͱͳΔߏΛ༩ ͑ΔΞΫςΟϏςΟʯ
ΞδϟΠϧʹ͓͚Δઃܭͷൣғ wίʔυͱςετʹର͢Δ׆ಈΛத৺ʹޠΒΕΔ w$4͚ͷXJLJ·ͱΊɺίʔυ͔Β͔ΓͮΒ͍෦ͷυΩϡϝ ϯτ࡞Γͱ͔ઃܭ׆ಈʹؚ·ΕΔͱݸਓతʹࢥ͏͕ɺগͳ͘ͱ ΞδϟΠϧͰͦͷลΓ͋·Γ৮ΕΒΕͳ͍ w࠷ۙԿͰίʔυͰཧ͢ΔΑ͏ʹͳ͖ͬͯͨͷͰɺΞδϟΠϧͷ ߟ͑ํݱͷঢ়گʹॏͳΔ෦ଟ͍
ԿͷͨΊʹઃܭ͢Δͷ͔ʁ
ʢલུʣ ΞδϟΠϧŋϓϩηε࣋ଓՄೳͳ։ൃΛଅਐ͠·͢ɻ ҰఆͷϖʔεΛܧଓతʹҡ࣋Ͱ͖ΔΑ͏ʹ͠ͳ͚ΕͳΓ·ͤΜɻ ٕज़తӽੑͱ༏Εͨઃܭʹର͢Δ ෆஅͷҙ͕ػහ͞ΛߴΊ·͢ɻ γϯϓϧ͞ʢϜμͳ͘࡞ΕΔྔΛ࠷େݶʹ͢Δ͜ͱʣ͕ຊ࣭Ͱ͢ɻ ࠷ྑͷΞʔΩςΫνϟɾཁٻɾઃܭɺ ࣗݾ৫తͳνʔϜ͔ΒੜΈग़͞Ε·͢ɻ νʔϜ͕ͬͱޮΛߴΊΔ͜ͱ͕Ͱ͖Δ͔ΛఆظతʹৼΓฦΓɺ ͦΕʹج͍ͮͯࣗͨͪͷΓํΛ࠷దʹௐ͠·͢ɻ
ΞδϟΠϧએݴͷഎޙʹ͋Δݪଇ BHJMFNBOJGFTUPPSHQSJODJQMFTIUNM
ػහ͞ʢΞδϦςΟʣ ΛߴΊΔͨΊʹઃܭ͢Δ
͜͜·Ͱͷ·ͱΊ wΞδϟΠϧ͔ͩΒͱݴͬͯઃܭΛ͠ͳ͍Θ͚Ͱແ͍ wίʔυͱςετΛத৺ʹઃܭ͍ͯ͘͠ wมԽΛڐ༰͠ͳ͕ΒΛམͱ͞ͳ͍ͨΊʹɺػහ ͞ʢΞδϦςΟʣΛߴΊΔͨΊʹઃܭΛ͢Δ
ͲΜͳΞϓϩʔνͰઃܭΛ͢Δͷ͔
None
ΠϯΫϦϝϯλϧͳઃܭ
ΠϯΫϦϝϯλϧͳઃܭ w91ͷओཁϓϥΫςΟεʢʣ wຖઃܭ͠ɺͦͷ࣌·ͰͷγεςϜͷχʔζʹઃܭΛ߹ΘͤΔ wͦͷ࣌ඞཁͳ͚ͩઃܭ͢ΔɺඞཁҎ্ʹઃܭ͠ͳ͍ wܦࡁੑʢ͘͢ػೳΛಧ͚Δʣͱઃܭͷ࣭Λॏࢹ͍ͯ͠Δʢͱࢥͬ ͯΔ
ઃܭͷ࣭ͱʁ wաͳઃܭٯʹΞδϦςΟΛԼ͛Δ w༧ଌʹجͮ͘ઃܭෆඞཁͳෳࡶ͞Λট͘ wݪଇύλʔϯʹతʹै͏͚ͩͰෆඞཁͳෳࡶ͞Λট͘ wઃܭͦͷιϑτΣΞͷෳࡶ͞ʹదͨ͠ઃܭΛߦ͏ඞཁ͕͋Δ
దͨ͠ઃܭͱʁ wιϑτΣΞઃܭͷੑ࣭ͱͯ͠ɺඇܾఆ తͰ͋Δͱ͞Ε͍ͯΔ wࢼߦࡨޡϨϏϡʔ͠߹͍ɺܦݧ ͳͲΛ௨ͯ͡ਐԽ͠ɺվળ͞Ε͍ͯ͘ ͷ wຊʹదͨ͠ઃܭͩͬͨͷ͔ܦͬ ͔ͯΒৼΓฦͬͯΈͳ͍ݶΓ͔Βͳ ͍
͜͜·Ͱͷ·ͱΊ wΞδϟΠϧͷ͓͚ΔઃܭͱৗʹΞδϦςΟҡ࣋ͷ؍ ͰઃܭΛݟ͠ଓ͚Δͱ͍͏࣋ଓͨ͠׆ಈ wʮཧͷઃܭʯଘࡏͤͣɺΰʔϧͱݺΔঢ়ଶແ ͍
ଥڠͷํʹ͍ͭͯߟ͑ͯΈͨ
ଥڠͷํΛߟ͑Δ wΞδϟΠϧʹ͓͍ͯɺͦͦઃܭࣗମ͕ଥͳ ʢదͳʣམͱ͠ॴΛԆʑͱ୳͠ଓ͚Δͱ͍͏׆ಈ ͩͬͨ wʮཧͷઃܭ͕͋ͬͯɺͦͨ͜ͲΓண͚ͳ͍͔Β ଥڠ͢Δʯͱ͍͏ࢹࣗମ͕ͨͿΜҧ͏
ΕΔ͜ͱ wܧଓతʹઃܭΛݟ͠ͳ͕ΒɺࠓΑΓྑ͘͠Α͏ͱෆ அͷྗͰվળ͠ଓ͚Δ wϦιʔεݶΒΕ͍ͯΔͷͰΞδϦςΟߩݙͷߴ͞ Ͱ༏ઌΛ͚ͭΔ
ࢀߟॻ੶
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠