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
830
アジャイル開発でのソフトウェア設計
第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
8.7k
BASE大規模リアーキテクチャリング / base_rearchitecturing
nazonohito51
17
12k
既存サービスに後からR/W Splittingライブラリを入れる時に考えたこと / r-w-splitting
nazonohito51
1
29k
社内勉強会でOOPとCleanArchitectureとDDDを勉強し始めたというお話
nazonohito51
7
5.1k
CakePHP2でもPhpStormがコード補完してくれるようにした話 / cakephp2-ide-helper
nazonohito51
1
2.3k
PHPStanでCustomRuleを作る / Make PHPStan CustomRule
nazonohito51
5
3.8k
単方向依存を実現する静的解析ライブラリのご紹介 / Analyze PHP Dependencies
nazonohito51
2
5.6k
「SOLIDの原則って何ですか?」って質問に答えたかった / What's SOLID principle
nazonohito51
5
1.9k
ドキュメントルート配下に全てのPHPファイルが置かれていた環境をindex.phpだけにした話 / document root
nazonohito51
1
3.7k
Other Decks in Technology
See All in Technology
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.6k
The Future of SEO: The Impact of AI on Search
badams
0
190
白金鉱業Meetup Vol.17_あるデータサイエンティストのデータマネジメントとの向き合い方
brainpadpr
5
740
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.2k
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
6.2k
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
2
240
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.5k
プロセス改善による品質向上事例
tomasagi
2
2.5k
急成長する企業で作った、エンジニアが輝ける制度/ 20250214 Rinto Ikenoue
shift_evolve
3
1.3k
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
130
ビジネスモデリング道場 目的と背景
masuda220
PRO
9
520
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Building Adaptive Systems
keathley
40
2.4k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Building an army of robots
kneath
303
45k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Typedesign – Prime Four
hannesfritz
40
2.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
GitHub's CSS Performance
jonrohan
1030
460k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
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ϦιʔεݶΒΕ͍ͯΔͷͰΞδϦςΟߩݙͷߴ͞ Ͱ༏ઌΛ͚ͭΔ
ࢀߟॻ੶
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠