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
Web development without QA tester
Search
Koichi ITO
May 12, 2018
Technology
2
980
Web development without QA tester
とちぎテストの会議05
https://toruby.doorkeeper.jp/events/70679
Koichi ITO
May 12, 2018
Tweet
Share
More Decks by Koichi ITO
See All by Koichi ITO
RuboCop: Modularity and AST Insights
koic
3
4k
Carving the Way to Ruby Engineering
koic
3
870
Beyond the RuboCop Defaults
koic
3
4.2k
Minify Ruby Code
koic
2
2.3k
Permanent Agility
koic
37
9k
RuboCop: LSP and Prism
koic
3
5k
Organizational Pattern Hatching
koic
0
1.5k
A Practitioner's Journey from Ruby 1.8 to Present
koic
1
2.1k
A Story Featuring Right Hand Archetype
koic
0
1.1k
Other Decks in Technology
See All in Technology
ゆるSRE #11 LT
okaru
1
550
Data Hubグループ 紹介資料
sansan33
PRO
0
1.8k
堅牢な認証基盤の実現 TypeScriptで代数的データ型を活用する
kakehashi
PRO
1
190
脅威をモデリングしてMCPのセキュリティ対策を考えよう
flatt_security
4
1.3k
Kubernetesで作るAIプラットフォーム
oracle4engineer
PRO
2
240
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
770
医療業界に特化した音声認識モデル構築のためのアノテーションの実態
thickstem
0
530
Monorepo Error Management: Automated Runbooks and Team-Targeted Alert Distribution
biwashi
1
150
今からでも間に合う! 生成AI「RAG」再入門 / Re-introduction to RAG in Generative AI
hideakiaoyagi
1
140
メルカリにおけるデータアナリティクス AI エージェント「Socrates」と ADK 活用事例
na0
16
8.7k
マルチテナント+マルチプロダクト SaaS への AI Agent の組み込み方
kworkdev
PRO
2
230
AIエージェントの継続的改善のためオブザーバビリティ
pharma_x_tech
4
410
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
183
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
910
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
How STYLIGHT went responsive
nonsquared
100
5.6k
Site-Speed That Sticks
csswizardry
10
620
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Music & Morning Musume
bryan
46
6.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Transcript
8FCEFWFMPQNFOUXJUIPVU2"UFTUFS 4BU 2"ςελʔͷ͍ͳ͍ 8FCαʔϏε։ൃʹ͓͚Δ ςετͱ։ൃϞσϧ ҏ౻ߒҰ !LPJD FTN ͱͪ͗ςετͷձٞ
ಹਢ͕ݪϋʔϞχʔϗʔϧ
None
w044ϓϩάϥϚʔͷࢲ w3VCZ3BJMTϦʔςΟ ϯάϕϯμʔࣾһͷࢲ αϥϦʔϚϯ ࢲ
w044ϓϩάϥϚʔͷࢲ w3VCZ3BJMTϦʔςΟ ϯάϕϯμʔࣾһͷࢲ αϥϦʔϚϯ ࢲ
wίϛϡχςΟͰͷ։ൃϓϨΠϠʔ w8SJUF -JHIU $PEF&WFSZ%BZ w3VCZ3BJMTΞοϓάϨʔυͷ044 ϦϙδτϦͷద༻ wίʔυϨϏϡʔ͔Βͷ੩తղੳπʔϧ ͷࣗಈԽ 044ϓϩάϥϚʔͱͯ͠ͷࢲ
None
3VCZ,BJHJ%BZ
3VCZ,BJHJ%BZ N@TFLJ
3VCZ,BJHJ%BZ *U`TNF
w044ϓϩάϥϚʔͷࢲ w3VCZ3BJMTϦʔςΟ ϯάϕϯμʔࣾһͷࢲ αϥϦʔϚϯ ࢲ
w044ϓϩάϥϚʔͷࢲ w3VCZ3BJMTϦʔςΟ ϯάϕϯμʔࣾһͷࢲ αϥϦʔϚϯ ࢲ
None
wνʔϜͰͷαʔϏε։ൃͷಜ w৽ଔҭ ࠓ͓ٳΈ w3VCZ3BJMTΞοϓάϨʔυͷϓϩ δΣΫτΦϐχΦϯ wଧͪ߹ΘͤͰϚδοΫϋϯυΛૂ͏ ϚΠϒʔϜ%))ͬ͜͝ αϥϦʔϚϯͱͯ͠ͷࢲ
ࠓͷ
ςετͱ։ൃ ମ੍ͷ͍·ͷ ࣗͷଊ͑ํ
όσΟ ૬ ςετ ख़࿅ͱΧϯ "HFOEB
όσΟςετ
wઐͷςελʔ͕εϙοτͰ͍Δ͕࣌͋ ΔΑ͏ͳʁ w৽ن্ཱͪ͛ϓϩδΣΫτͷऴ൫͘Β͍ ʹ͍Δ͔ l2"zςελʔͳͷ͔ෆ ໌ wͦΕͰ໓ଟʹ͍ͳ͍ wઆ্ͷଘࡏʁ 2"ςελʔͷ͍ͳ͍ϓϩδΣΫτ
w2"ͱҟͳΔઐςελʔ wηΩϡϦςΟςεςΟϯά wαʔϏεʹΑͬͯ͋ͬͨΓͳ ͔ͬͨΓ wઐۀऀͷҕୗ ֎෦ൃͷ༗ແ
w࣮ΛΒͳ͍ཁٻऀˠ اըɺཁٻ࡞Γɺड͚ೖΕ ςετ w࣮ΛΔ։ൃऀˠ࣮ɺ ୯ମςετɺػೳςετ ৗࡏ͢Δେϩʔϧ
w࣮ΤϥʔͱཁٻΤϥʔͷ ୲อΛͲ͏͢Δ͔ʁ ओ
ཁٻऀडೖςελʔ ཁٻऀ اը ࣮ ཁٻ࡞Γ ୯ମςετ ػೳςετ डೖ ςετ
ϒϥοΫϘοΫε ςελʔ ։ൃऀ
ཁٻऀडೖςελʔ ཁٻऀ ։ൃऀ اը ࣮ ཁٻ࡞Γ ୯ମςετ ػೳςετ
डೖ ςετ ݪଇಉҰਓ͕ݟ͍ͯ͘
wཁٻऀ͕Ұ൪ɺϒϥοΫϘοΫεͱ ͯ͠ͷγεςϜͷظ͢ΔৼΔ ͍Λ͍ͬͯΔ wཁٻऀ͕ड͚ೖΕςελʔΛ݉ͶΔ wͪΖΜٳՋͳͲͰςετͷΈҾ͖ ܧ͙͜ͱ͋ΔɻਓͳͷͰ@П ŋ@ŋ ཁٻऀडೖςελʔ
ϗϫΠτϘοΫε ςελʔ όσΟ ૬ ཁٻऀ ։ൃऀ ϒϥοΫϘοΫε ςελʔ
wཁٻऀͱ։ൃऀͷϖΞجຊతʹϦϦʔε ·Ͱݻఆ͞ΕΔ wόσΟಉ͕࢜࠷γεςϜ֦ுʹର͢Δ؍ Λਂ͕࣋ͭ͋͘Δ wίϛϡχέʔγϣϯίετͷݮগ w*54ఆྫͳͲͰଞϝϯόʔ͔Βποί ϛͷͰ͖Δ༨Λ࡞Δ✍ όσΟ ૬
όσΟͰड͚ೖΕςετΛਐΊΔ ཁٻऀ ։ൃऀ اը ࣮ ཁٻ࡞Γ ୯ମςετ ػೳςετ
डೖ ςετ
डೖ·ͰϑΟʔυόοΫΛ܁Γฦ͢ ཁٻऀ ։ൃऀ اը ࣮ ཁٻ࡞Γ ୯ମςετ ػೳςετ
डೖ ςετ 3FKFDU "DDFQU PS
डೖ·ͰϑΟʔυόοΫΛ܁Γฦ͢ ཁٻऀ ։ൃऀ اը ࣮ ཁٻ࡞Γ ୯ମςετ ػೳςετ
डೖ ςετ 3FKFDU
डೖ·ͰϑΟʔυόοΫΛ܁Γฦ͢ ཁٻऀ ։ൃऀ اը ࣮ ཁٻ࡞Γ ୯ମςετ ػೳςετ
डೖ ςετ 3FKFDU 3FKFDU
डೖ·ͰϑΟʔυόοΫΛ܁Γฦ͢ ཁٻऀ ։ൃऀ اը ࣮ ཁٻ࡞Γ ୯ମςετ ػೳςετ
डೖ ςετ "DDFQU 3FKFDU 3FKFDU
None
wཁٻऀͱ։ൃऀ ૬ ͷϚοϐϯά w։ൃऀෳͷϑΟʔνϟʔΛ୲ ͢Δ͜ͱ͕͋Δ جຊ֤ݸܸഁ wཁٻऀෳͷϑΟʔνϟʔΛ୲ ͢Δ͜ͱ͕͋Δ ॱ࣍ड͚ೖΕ
wόσΟ ૬ ͷΈ߹Θͤ ϚϧνϥΠϯ։ൃ
ϚϧνϥΠϯ։ൃ ཁٻऀ ཁٻऀ ։ൃऀ ։ൃऀ
։ൃऀ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ
ϚϧνϥΠϯ։ൃ ཁٻऀ ཁٻऀ ։ൃऀ ։ൃऀ
։ൃऀ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ
ϚϧνϥΠϯ։ൃ ཁٻऀ ཁٻऀ ։ൃऀ ։ൃऀ
։ൃऀ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ ͓͔ΘΓ 1VMMܕ
ϚϧνϥΠϯ։ൃ ཁٻऀ ཁٻऀ ։ൃऀ ։ൃऀ
։ൃऀ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ
ϚϧνϥΠϯ։ൃ O ཁٻऀ ཁٻऀ ։ൃऀ ։ൃऀ
։ൃऀ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ
ϚϧνϥΠϯ։ൃ O ཁٻऀ ཁٻऀ ։ൃऀ ։ൃऀ
։ൃऀ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ ϑΟʔνϟʔ 'FBUVSF PQJOJPO
wେֻ͔Γ wʙΠςϨʔγϣϯͱ͍͏ൣғͰܭ ը͞ΕΔͷͰͳ͍ ϲ݄Ϩϕϧ wཁٻऀɺ։ൃऀͰ૯ग़ͷςετͩͬͨ Γɺͦ͏Ͱͳ͔ͬͨΓେֻ͔Γ w ຊτʔΫͰׂѪ ϚϧνϥΠϯ։ൃ
ON
όσΟ ૬ ςετ ख़࿅ͱΧϯ "HFOEB
όσΟ ૬ ςετ ख़࿅ͱΧϯ "HFOEB
ख़࿅ͱΧϯ
w3BJMTίϛϡχςΟϞσϧ wಹਢͷνʔϜͷΑ͏ʹҎ্ ଓ͍͍ͯΔ w2"ςελʔͱ͍͏ϩʔϧ͕͍ͳ͍ ʹ͍ͭͯಉ͡ w044ࢀরϞσϧ /PU04* ཪଆʹ͋ΔػೳͷϑΥϩʔ
IUUQSVCZPOSBJMTPSH
IUUQSVCZPOSBJMTPSHDPNNVOJUZ
IUUQSVCZPOSBJMTPSHDPNNVOJUZ
None
*U`TNF
wઈରਆ wίΞϝϯόʔɺίϛολʔ wίϯτϦϏϡʔλ ೃછ wίϯτϦϏϡʔλ ॳճ 3BJMTίϛϡχςΟϞσϧ
wઈରਆ wίΞϝϯόʔɺίϛολʔ wίϯτϦϏϡʔλ ೃછ wίϯτϦϏϡʔλ ॳճ 8FCαʔϏε։ൃϞσϧ
w͓ۚ ༧ࢉ wίΞϝϯόʔɺίϛολʔ wίϯτϦϏϡʔλ ೃછ wίϯτϦϏϡʔλ ॳճ 8FCαʔϏε։ൃϞσϧ
w͓ۚ ༧ࢉ wख़࿅ͷߴ͍ϝϯόʔ wίϯτϦϏϡʔλ ೃછ wίϯτϦϏϡʔλ ॳճ 8FCαʔϏε։ൃϞσϧ
w͓ۚ ༧ࢉ wख़࿅ͷߴ͍ϝϯόʔ wεϙοτͷϔϧϓϝϯόʔ wίϯτϦϏϡʔλ ॳճ 8FCαʔϏε։ൃϞσϧ
w͓ۚ ༧ࢉ wख़࿅ͷߴ͍ϝϯόʔ wεϙοτͷϔϧϓϝϯόʔ w৽ଔࢯ ζ 8FCαʔϏε։ൃϞσϧ
w͓ۚ ༧ࢉ wख़࿅ͷߴ͍ϝϯόʔ wεϙοτͷϔϧϓϝϯόʔ w৽ଔࢯ ζ 8FCαʔϏε։ൃϞσϧ ͜͜ʹ ӽ͑ΒΕͳ͍น
w͓ۚ ༧ࢉ wख़࿅ͷߴ͍ϝϯόʔ wεϙοτͷϔϧϓϝϯόʔ w৽ଔࢯ ζ 8FCαʔϏε։ൃϞσϧ τϐοΫͷൣғ
wཧͷςετϨϏϡʔ ͕ͩख़࿅Ϩϕϧ·ͪ ·ͪ wख़࿅ͷߴ͍ϝϯόʔ͕εϙο τͷϔϧϓϝϯόʔ৽ଔࢯ ζ ΛϨϏϡʔ͍ͯ͘͠ ख़࿅͕ߴ͍ཪଆͷΧϯ͕ڧ͍
wཁٻͷग़͠ํɺཁٻʹର͢ Δ࡞Γํ wςετͷʮΧϯʯ͕ಇ͘ϝ ϯόʔࣄલόά௵͠ό άग़্͕͠ख͍ ਓͩΜͩΜ্ख͘ͳΔ
91& OE $IBQSE IUUQXXXBNB[PODPKQEQ
l ી༵େΛ͠ ͍ͯͯઐՈͰͳ͔ͬ ͕ͨɺॅΈ͍͢Ոͷ ࡞ΓํΛ͍ͬͯͨɻ ʵࢲͷ৺ͷϊʔτΑΓ
ຊτϐοΫͷख़࿅ϝϯόʔ 2"ςελʔͰͳ͍ ͕ɺγεςϜͱͯ͠Ͳ͏ͳ Δͱྑͯ͘ɺͲ͏ͳΔͱμ ϝ͔͍ͬͯΔ ख़࿅ϝϯόʔͷຏ͔ΕͨlΧϯzͷӶ͞
wख़࿅ͷߴ͍ϝϯόʔͷʮΧϯʯͷӶ͞ w৽ػೳΛ࡞Δͱ͖ͷཪଆͷػೳӨڹʮΧ ϯʯͷಇ͘ϝϯόʔʹґଘ͢Δ wاۀϧʔϧ͔Βͷߟྀɺ࣮໘͔Βͷ ߟྀ wաڈͷܦҢͰʮԿނͦͷػೳ͕ࠓͳ͍ͷ ͔ʯͷੜ͖ূਓ ੵΈॏͶͷͷಇ͖ ख़࿅ϝϯόʔͷຏ͔ΕͨlΧϯzͷӶ͞
όσΟ ૬ ςετ ख़࿅ͱΧϯ "HFOEB
όσΟ ૬ ςετ ख़࿅ͱΧϯ "HFOEB
͓ΘΓʹ
wखॱҾ͖ܧ͛Δ͕ɺεΩϧ Ҿ͖ܧ͛ͳ͍ CZLBXBHVUJ wཁٻऀɺ։ൃऀͷख़࿅্͕͕ ΔͱνʔϜͷख़࿅্͕͕Δ wख़࿅ͷ্ৗʹ՝ ૯ྔͰͷΧόʔ
w͓ۚ ͕ΜΓ·͠ΐ͏ wؔऀͷϓϩδΣΫτͷΔؾ wϢʔβʔ͕҆৺ͯ͑͠Δγες ϜΛఏڙ͢ΔͨΊͷςετ w5IF3BJMT%PDUSJOF ख़࿅ϓϩδΣΫτͷಓ
w͓ۚ ͕ΜΓ·͠ΐ͏ wϢʔβʔ͕҆৺ͯ͑͠Δγες ϜΛఏڙ͢ΔͨΊͷςετ wؔऀͷϓϩδΣΫτͷΔؾ w5IF3BJMT%PDUSJOF ख़࿅ϓϩδΣΫτͷಓ
IUUQSVCZPOSBJMTPSHEPDUSJOF
wϓϩηεਓ CZN@TFLJ wਓʹΑΔςετͷ؍ͷॏෳͱ૬ҧ wखॱࣗಈԽͰ͖ͯεΩϧࣗಈ ԽͰ͖ͳ͍ wγεςϜͷlΧϯzlεΩϧzͱ ಉ͡ͰϨϕϧΞοϓͰ͖Δ ςϯτΛԡ্͛͠Δ४උΛ͢Δ
FOE