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
910
アジャイル開発でのソフトウェア設計
第128回PHP勉強会@東京の発表資料です。
変なこと書いてたらすいません。
言い訳がましいですが、こう考えてる人もいる程度に受け止めていただけると幸いです。
Satoshi Kawashima
July 25, 2018
Tweet
Share
More Decks by Satoshi Kawashima
See All by Satoshi Kawashima
モジュラモノリス導入から4年間の総括:アーキテクチャと組織の相互作用について / Architecture and Organizational Interaction
nazonohito51
7
3.6k
モジュラモノリスにおけるトランザクション設計の考え方 / transaction design on modular monolith
nazonohito51
16
9.7k
BASE大規模リアーキテクチャリング / base_rearchitecturing
nazonohito51
17
14k
既存サービスに後からR/W Splittingライブラリを入れる時に考えたこと / r-w-splitting
nazonohito51
1
30k
社内勉強会でOOPとCleanArchitectureとDDDを勉強し始めたというお話
nazonohito51
7
5.4k
CakePHP2でもPhpStormがコード補完してくれるようにした話 / cakephp2-ide-helper
nazonohito51
1
2.6k
PHPStanでCustomRuleを作る / Make PHPStan CustomRule
nazonohito51
6
4.4k
単方向依存を実現する静的解析ライブラリのご紹介 / Analyze PHP Dependencies
nazonohito51
3
6.1k
「SOLIDの原則って何ですか?」って質問に答えたかった / What's SOLID principle
nazonohito51
6
2.2k
Other Decks in Technology
See All in Technology
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
tarappo
4
370
データマネジメント戦略Night - 4社のリアルを語る会
ktatsuya
1
250
Phase06_ClaudeCode実践
overflowinc
0
2.1k
スピンアウト講座01_GitHub管理
overflowinc
0
1.4k
品質を経営にどう語るか #jassttokyo / Communicating the Strategic Value of Quality to Executive Leadership
kyonmm
PRO
3
1.2k
Phase03_ドキュメント管理
overflowinc
0
2.6k
AIエージェント×GitHubで実現するQAナレッジの資産化と業務活用 / QA Knowledge as Assets with AI Agents & GitHub
tknw_hitsuji
0
230
大規模ECサイトのあるバッチのパフォーマンスを改善するために僕たちのチームがしてきたこと
panda_program
1
390
非同期・イベント駆動処理の分散トレーシングの繋げ方
ichikawaken
1
110
「AIエージェントで変わる開発プロセス―レビューボトルネックからの脱却」
lycorptech_jp
PRO
0
130
契約書からの情報抽出を行うLLMのスループットを、バッチ処理を用いて最大40%改善した話
sansantech
PRO
2
270
DDD×仕様駆動で回す高品質開発のプロセス設計
littlehands
6
2.4k
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.5k
A better future with KSS
kneath
240
18k
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
91
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
A Tale of Four Properties
chriscoyier
163
24k
Faster Mobile Websites
deanohume
310
31k
So, you think you're a good person
axbom
PRO
2
2k
Leo the Paperboy
mayatellez
4
1.6k
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ϦιʔεݶΒΕ͍ͯΔͷͰΞδϦςΟߩݙͷߴ͞ Ͱ༏ઌΛ͚ͭΔ
ࢀߟॻ੶
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠