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
モダン・ソフトウェアエンジニアリングのエッセンス / Essence of Modern So...
Search
Masanori Kado
July 21, 2020
Programming
11k
7
Share
モダン・ソフトウェアエンジニアリングのエッセンス / Essence of Modern Software Engineering
https://smartse.connpass.com/event/178626/
Masanori Kado
July 21, 2020
More Decks by Masanori Kado
See All by Masanori Kado
tokyo-tech-dtf-2019-storytelling
kdmsnr
0
770
tokyo-tech-dtf-2019-define-pov
kdmsnr
0
680
tokyo-tech-dtf-2019-ideation
kdmsnr
0
640
tokyo-tech-dtf-2019-guidance
kdmsnr
0
2.4k
tokyo-tech-dtf-2019-introduction
kdmsnr
0
580
tokyo-tech-dtf-2019-user-research
kdmsnr
0
690
大学におけるイマドキのエンジニア教育―東京工業大学EDPの事例(デブサミ2019 14-D-4)/ Modern Engineering Education at University
kdmsnr
4
3.7k
2018_EDP-BC_Final_Report_Announcement.pdf
kdmsnr
0
320
edp-toolkit on SIGED
kdmsnr
0
1k
Other Decks in Programming
See All in Programming
誰も頼んでない機能を出荷した話
zekutax
0
140
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.1k
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
380
デフォルト運用のCodeRabbit、1年で何が変わったか / How CodeRabbit Changed Our Code Review in 1 Year
bake0937
1
110
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.1k
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
290
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
200
3Dシーンの圧縮
fadis
1
430
GitHub Copilot CLIのいいところ
htkym
2
1.1k
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
770
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
400
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
450
Featured
See All Featured
Navigating Team Friction
lara
192
16k
Faster Mobile Websites
deanohume
310
31k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
170
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Un-Boring Meetings
codingconduct
0
300
HDC tutorial
michielstock
2
680
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
120
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
From π to Pie charts
rasagy
0
190
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
460
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
ϞμϯɾιϑτΣΞΤϯδχΞϦϯά ͷΤοηϯε ݄ ϫΠΫϧגࣜձࣾ ֯యʢ!LENTOSʣ
.BSUJO'PXMFSTBZTʢʣ w ݫ֨͗ͯ͢ɺՁ͕ݶΒΕΔ w "MJTUBJS$PDLCVSO͕ɺιϑτΣΞ։ൃͰਓ͕த৺తͳཁ ૉͰ͋Γɺਓຊ࣭తʹඇઢܗతͰ༧ଌෆೳͳͷͰ͋Δͱ આ໌ͯ͘͠Εͨ https://bliki-ja.github.io/Semat/
.BSUJO'PXMFSTBZTʢʣ w ݫ֨͗ͯ͢ɺՁ͕ݶΒΕΔ w "MJTUBJS$PDLCVSO͕ɺιϑτΣΞ։ൃͰਓ͕த৺తͳཁ ૉͰ͋Γɺਓຊ࣭తʹඇઢܗతͰ༧ଌෆೳͳͷͰ͋Δͱ આ໌ͯ͘͠Εͨ w ਓ͕ѻ͍͍͢ܭࢉࣜͰهड़Ͱ͖Δ༧ଌՄೳͳΤʔδΣϯτʹ ͳΕՄೳੑ͋Δ͔͠Εͳ͍
https://bliki-ja.github.io/Semat/
ཧͷ༻ w ཧͱʁ w J ݱΛʮهड़ʯ͢Δͷ w JJ ݱΛʮ༧ଌʯ͢Δͷ w
ʮ༧ଌʯ͢ΔͨΊʹʮهड़ʯ͕ඞཁͰ͋Γɺ ʮهड़ʯ͢ΔͨΊʹʮݴޠʯ͕ඞཁͰ͋Δ
ཧͷ༻ w ཧͱʁ w J ݱΛʮهड़ʯ͢Δͷ w JJ ݱΛʮ༧ଌʯ͢Δͷ w
ʮ༧ଌʯ͢ΔͨΊʹʮهड़ʯ͕ඞཁͰ͋Γɺ ʮهड़ʯ͢ΔͨΊʹʮݴޠʯ͕ඞཁͰ͋Δ w কདྷΛ༧ଌ͍͕ͨ͠ɺ·ͣͦͷͨΊͷݴޠ͕ඞཁ
&TTFODFͷΞʔΩςΫνϟ
&TTFODFͷΞʔΩςΫνϟ ᶃ ᶄ ᶅ
ᶃΤοηϯγϟϧԽ͞Εͨख๏
ͬ͘͟Γͱʮख๏ʯͱԿ͔ w ʮιϑτΣΞΛ։ൃɾҡ࣋͢Δͱ͖ʹඞཁͱͳΔͯ͢ͷ͜ͱʹରͯ͠ɺ ΞυόΠεΛఏڙ͢Δͷʯ w ʮͯ͢ͷ͜ͱʯΥʔλʔϑΥʔϧख๏͕ཧղ͍͢͠ w ͏·͍͔͘ͳ͍͜ͱΛআ͚ʢʂʣͦΜͳʹѱ͘ͳ͍ w ݱ࣮తʹɺΞδϟΠϧΛؚΉ෮తख๏ͰΔ͖
w ͱ͍͑ɺࣗݾ৫Խ͕લఏͩͱʮͯ͢ͷ͜ͱʯΛݟಀ͍͢͠ w 㱤શମͷݟऔΓਤΛผ్༻ҙ͓ͯ͘͠ͱΑ͍
ख๏ͷେ͖ͭ͋͘Δ w ཚཱʹΑΔͷҾͬுΓ߹͍ʢख๏ͷઓ૪ʣ w ࣅͨΑ͏ͳ͜ͱΛͬͯΔͷʹ໊લ͕ҧ͏ w ෦ʢϓϥΫςΟεʣ͕ϞδϡʔϧԽ͞Ε͍ͯͨΒ࠶ར༻Մೳͳͷʹʂ w ख๏ͷ࡞ऀ͕ܾΊΔઈରతͳϧʔϧ͕͋Δʢख๏ͷࠈʣ w
ʮͦΜͳͷͰࢭΊΛͤΜʯ w ॻ੶Ͱ৮Ε͍ͯͳ͍͕ɺೝఆࢿ੍֨ͷ͋Γͦ͏
ʮιϑτΣΞ͕ੈքΛ৯Δʯ࣌ʢʣ ιϑτΣΞͷख๏͚ͩΛޠͬͯΔ߹͡ΌͶ͑
৯ޙͷख๏͜͏͋Γ͍ͨ wطΛ͏ͷͰͳ͘ɺঢ়گʹ͋ΘͤͯࣗͨͪͰख๏Λ࡞Γ͍ͨ w ͨͩ͠ɺθϩ͔Βख๏Λ࡞Δͷେม͗͢Δ w 㱤طଘͷϓϥΫςΟεΛʮ߹ʯ͢Ε͍͍ʢʮख๏ϓϥΫςΟεͷ߹ʣ w ͦΕʹɺࣗͨͪͰख๏Λ࡞ͬͯ୭ཧղͯ͘͠Εͳ͍ w 㱤ʮهड़͢ΔݴޠʯΛ౷Ұͯ͠୭ͰಡΊΔΑ͏ʹ͢Ε͍͍
w ϓϩμΫτͷ6.-ʹର͢Δϓϩηεͷ&TTFODFͱ͍͏Ґஔ͚ͮͬΆ͍ʁ ʢ6.-ͱಉ͘͡Β͍ͷرͱઈΛ࣋ͭͱ͍͍ͱࢥ͏ʜʜʣ
ᶄΤοηϯγϟϧԽ͞Εͨ ϓϥΫςΟε
ϓϥΫςΟεͱԿ͔ w ख๏Λߏ͢Δ۩ମతͳ࡞ۀํ๏ͷ͜ͱ w ख๏ͱҧͬͯʮ͜ΜͳΜͳΜ΅͍͍͋ͬͯͰ͔͢ΒͶʯ w ͭͷྖҬʹӨڹΛ༩͑ΔʢΞϧϑΝͷঢ়ଶΛมԽͤ͞Δʣɿ w ސ٬ w
ιϦϡʔγϣϯʢٕज़ʣ w ׆ಈʢϓϩδΣΫτʣ
ϓϥΫςΟεΛهड़͢Δݴޠ
ϓϥΫςΟεΛهड़͢Δݴޠ ͏͖ʮͷʯ Δ͖ʮ͜ͱʯ ඞཁͳʮೳྗʯ ʢѻ͏ͷ΄͏͕Α͔ͬͨʁʣ
ʮϖΞϓϩάϥϛϯάʯΛهड़ͯ͠Έͨ
ʮϖΞϓϩάϥϛϯάʯΛهड़ͯ͠Έͨ Δ͖ʮ͜ͱʯ ඞཁͳʮೳྗʯ ͏͖ʮͷʯ
ૉͳײ w ͜ΕͬͯɺຊʹΘ͔Γ͍͢ʜʜͷ͔ʁ w 6.-ͱಉ͘͡Β͍ͷرͱઈΛ࣋ͭͱ͍͍ͱࢥ͏ʢճʣ w ͏ͪΐͬͱઆ໌Λଓ͚·͢
Δ͖ʮ͜ͱʯ͕ϓϥΫςΟεͷத৺ Δ͖ʮ͜ͱʯ
ʮ͜ͱʯͷৄࡉΛΧʔυʹهड़͢Δ
ʮ͜ͱʯʮͷʯͷঢ়ଶΛม͑Δ
༻ҙ͞ΕͨछྨͷΞϧϑΝʢͷʣ
ΞϧϑΝΧʔυԽ͞Ε͍ͯΔ
ΞϧϑΝෳͷঢ়ଶΛ࣋ͭ
ૉͳײ w ϓϥΫςΟεʹΑͬͯঢ়ଶΛมԽͤ͞ΔͷΘ͔Γ͍͢ w ঢ়ଶͳͲΛΧʔυʹ͢Δͷ͍͍ΞΠσΞͩͱࢥ͏ʂ w ్த͔Β&TTFODFͷઆ໌ʹ౿ΈࠐΜͰ͠·ͬͯͨʜʜɻ
ᶅ&TTFODF ʢΧʔωϧ ݴޠʣ
&TTFODFͱʁ &TTFODF Χʔωϧ ݴޠ ʮख๏ͷج൫ʯͱͳΔͷ
&TTFODFݴޠ
&TTFODFΧʔωϧ ͍ͭ͜Β۩ମత͗͢ΔͷͰ Χʔωϧʹೖ͍ͬͯͳ͍ ʢදݱܕ͚ͩఆٛ͞Ε͍ͯΔʣ ͕͜͜Χʔωϧ ɾͷ ɾ͜ͱ ɾೳྗ
Χʔωϧͷ ΞϧϑΝʢͷʣ
ΧʔωϧͷΞϧϑΝʢͷʣ
ΞϧϑΝෳͷঢ়ଶΛ࣋ͭ
ঢ়ଶΛਐḿͤ͞ΔͨΊʹߟ͑Δ ʮεςʔΫϗϧμʔΛר͖ࠐΉͨΊͷϛʔςΟϯάΛ։࠵ͯ͠ΈΔʁʯ
ʮঢ়ଶΛ͑ʯήʔϜ
ʮঢ়ଶΛ͑ʯήʔϜ
ঢ়ଶͷਐḿͷՄࢹԽ
ʢิʣຊޠͷΞϧϑΝঢ়ଶΧʔυͭ͘Γ·ͨ͠ IUUQTHJUIVCDPNLENTOSFTTFODFBMQIBTUBUFDBSETKB
Χʔωϧͷ ΞΫςΟϏςΟεϖʔεʢ͜ͱʣ
ΞΫςΟϏςΟεϖʔεʢ͜ͱʣ ਖ਼֬ʹϓϥΫςΟεͷΞΫςΟϏςΟʢ͜ͱʣΛೖΕΔʮ͜ͱͷೖΕʯ
ϓϥΫςΟε͕Γͳ͍ͱ͜Ζ͕Θ͔Δ
ʢิʣΧʔωϧͰΓͳ͍ͱ͖ w Χʔωϧʹ͋ΔΞϧϑΝʢͷʣΞΫςΟϏςΟεϖʔεʢ͜ ͱʣͰෆेͳ͜ͱ͕͋Δ w ϓϥΫςΟεͷ࡞࣌ʹΧʔωϧΛܧঝ֦ͯ͠ு͢Ε͍͍ w FHʦཁٻʧΛܧঝͨ͠ʦϓϩμΫτόοΫϩάΞΠςϜʧ w FHʦ࡞ۀΛ४උ͢ΔʧΛܧঝͨ͠ʦνʔϜͷΩοΫΦϑʧ
εΫϥϜͱ&TTFODF
εΫϥϜͷશମ૾
&TTFODFݴޠʹϚοϐϯά
&TTFODFݴޠͰදݱͨ͠ͷ
ૉͳײ w ͑ͬɺΊͬͪΌΘ͔Γʹ͘͘ͳͬͯʜʜͳ͍ʁ w 6.-ͱಉ͘͡Β͍ͷرͱઈΛ࣋ͭͱ͍͍ͱࢥ͏ʢճʣ w ͏ͪΐͬͱઆ໌Λଓ͚·͢
ΧʔυԽ͞Εͨͷ
ঢ়ଶ͕໌ࣔతʹͳͬͨͷ
εΫϥϜ͚ͩ͡Όෆेͳ͜ͱΘ͔Δ ʢʦ׆ಈʧྖҬ͚ͩ͡Όͳ͍ؾ͢Δ͚Ͳɺෆेͳͷಉҙʣ
εΫϥϜͷࣦഊͯ͠Δ w &TTFODFͷΧʔυΛ͑ɺͲ͜Ͱࣦഊ͍ͯ͠Δ͔͕Θ͔Δ w ࣍ͷʮঢ়ଶʯʹਐΉͨΊʹԿΛ͖͔͢ʁΛߟ͑ΒΕΔ IUUQTQBHFTTFSWJDFTTTJWBSKBDPCTPODPNFTTFOUJBMTDSVN
ʢิʣ"HJMF&TTFOUJBMT͋Δ IUUQTQSBDUJDFMJCSBSZJWBSKBDPCTPODPN
શମతͳҹ w ΞδϟΠϧ։ൃͷʮָ͠͞ʯେ෯μϯͯ͠Δؾ͕͢ΔͶ w ʮ͢ͰʹྲྀߦͬͯΔʯͦ͏͕ͩɺશવͦΜͳؾ͕͠ͳ͍ w ͋Ε΄Ͳආ͚͍ͯͨʮख๏ͷࠈʯײ͕ग़ͯͳ͍ʂʁ w 6.-ͱಉ͘͡Β͍ͷرͱઈΛ࣋ͭͱ͍͍ͱࢥ͏ʢճʣ w
Ͱɺ։ൃ͕͏·͍ͬͯ͘ͳ͍ͱ͖ʹ͏ͷΑͦ͞͏ w ʮख๏ͷج൫ʯͱͳΔ҆ఆײͳΜͱͳ͘ײ͡ΒΕΔ w Ϡίϒιϯ͕ݩؾͦ͏ͰΑ͔ͬͨͰ͢
։ൃ͕͏·͍ͬͯ͘ͳ͍ํੋඇͲ͏ͧʂ