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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
takanamito
July 24, 2017
Technology
2
3.6k
ドキュメントとテストのないプロジェクトを引き継ぐ
2017.07.24 技術的負債ナイト@Speee の発表資料です。
https://speee.connpass.com/event/60381/
takanamito
July 24, 2017
Tweet
Share
More Decks by takanamito
See All by takanamito
ActiveModel::Attributes APIとSwaggerでRailsのAPIレスポンスに型を持ち込む
takanamito
0
650
Siriに身の回りのお世話をしてもらう
takanamito
0
6.8k
PHPで運用中のサービスをRubyに切り替える
takanamito
0
5.4k
安心してフレームワークをのりかえたい
takanamito
0
1.2k
HLSでやっていく 動画ストリーミング配信
takanamito
0
2.6k
あんしん大規模リプレースサポート
takanamito
1
1.7k
Other Decks in Technology
See All in Technology
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
410
Context Engineeringの取り組み
nutslove
0
380
Agent Skils
dip_tech
PRO
0
140
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
130
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
200
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
770
22nd ACRi Webinar - 1Finity Tamura-san's slide
nao_sumikawa
0
110
旅先で iPad + Neovim で iOS 開発・執筆した話
zozotech
PRO
0
100
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.7k
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
150
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
200
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
210
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
51
Music & Morning Musume
bryan
47
7.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
The Language of Interfaces
destraynor
162
26k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
Between Models and Reality
mayunak
1
200
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
A better future with KSS
kneath
240
18k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
120
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
We Are The Robots
honzajavorek
0
170
Transcript
υΩϡϝϯτͱςετͷͳ͍ ϓϩδΣΫτΛҾ͖ܧ͙ ٕज़తෛ࠴φΠτ@Speee 7/24 2017
ࣗݾհ • id: takanamito • גࣜձࣾSpeee • ΤϯδχΞ • िʹαʔϞϯϥϯͰ͠Ό͗͗ͯ͢ͷͲ͕௧͍
• ෆಈ࢈ҰׅࠪఆαΠτ • ՈΛചΓ͍ͨϢʔβʔ͞Μͱෆಈ࢈اۀͷϚονϯά • 2014ελʔτ • 1500ࣾҎ্ͷاۀͱఏܞ͠ 20ສ݅ͷෆಈ࢈ച٫ཱαϙʔτ •
ࣄۀશମͰ40~50໊΄Ͳ
͘͡ • νʔϜjoin࣌ͷঢ়گ • Կ͕ෛ࠴ͩͬͨͷ͔ • ෛ࠴ͱͷ͖߹͍ํΛߟ͑Δ • ෛ࠴ͱ͖߹͏࣌ʹҙ͍ࣝͯͨ͜͠ͱ
νʔϜjoin࣌ͷঢ়گ 1/4
5/1 join • ։ൃνʔϜ4໊ • ͏ͪ1໊ͷୀ৬ʹ͍ɺ͕ҟಈ͖ͯͨ͠ • ಈ͍͍ͯΔͷ • ຊମαΠτ
(Ruby, PHP) • Adminπʔϧ (Java, 724class, 66,611ߦ) • ΫϥΠΞϯτاۀ͞·͚πʔϧ (Java) • όον͕41ݸ (΄ͱΜͲJava)
Կ͕ෛ࠴ͩͬͨͷ͔ 2/4
ෛ࠴ʹ͍Ζ͍Ζ Ҿ༻ ٕज़తෛ࠴ͷฦࡁϓϩδΣΫτ͕ࣦഊ͢ΔͷϫέKqVUFͷه IUUQEIBUFOBOFKQKqVUFEFQUBHBJO ٕज़తෛ࠴2JJUB IUUQRJJUBDPNFSVLJUJJUFNTDDEEF
ΠΤʔϧʹ͓͚Δෛ࠴ • υΩϡϝϯτ͕Γͯͳ͍ • ͦͦԿͷػೳ͕͋Δπʔϧͳͷ͔ • ʮ࣮͜ͷυΩϡϝϯτݹͯ͘...ʯ • ςετίʔυ͕গͳ͍ •
Adminπʔϧ 66,611ߦʹରͯ͠ 39tests • ୀ৬༧ఆͷ։ൃऀͷ಄ͷதʹ͔͠ͳ͍༷ • λΠϜϦϛοτ1ϲ݄
༧࣮ߦόον • ࣍ͰఏܞاۀͷܝࡌεςʔλεͳͲΛ Γସ͑Δ༧͕Ͱ͖Δػೳ • ༧छผʹςʔϒϧ͕͋Γɺ༧Ϩίʔυ͕1݅ͣͭ insert͞Ε͍ͯ͘ • ʮͳΜͰ͜ͷςʔϒϧ͚ͩ༧࣮ߦͯ͠ͳ͍ΜͰ͔͢ʁʯ •
ʮ͑ͬʯ • Ұੜ࣮ߦ͞ΕΔ͜ͱ͕ͳ͍༧ػೳͩͬͨ͜ͱ͕ൃ֮
୭ʹฉ͍ͯΘ͔Βͳ͘ͳΔ ঢ়گ͕ഭ͖͍ͬͯͯͨ
υΩϡϝ ϯτ ςετ ෳࡶ d ॏཁ ଐਓԽ ۓٸ "ENJO πʔϧ
º º ˕ ˚ º +BWB όον܈ º º d ˓ º ˓ ˞͋ͱͰ͏ճग़͢ͷͰɺͬ͟ͱݟͱ͍͍ͯͩ͘͞
ෛ࠴ͱͷ͖߹͍ํΛߟ͑Δ 3/4
ࢧ͏͖͔ɺࢧΘ͟Δ͖͔ • ෛ࠴ͷ͍͠: ٕज़తෛ࠴ͩͱࢥΘΕΔίʔυɺϑϨʔϜϫʔ ΫɺϓϥοτϑΥʔϜΛϦϑΝΫλϦϯά͢Δ͔ɺஔ͖͑Δ • ෛ࠴ͷస: ݱࡏͷղܾࡦΛʮᘳͰͳ͍͚ΕͲྑ͍ʯղܾ ࡦͱஔ͖͑Δɻ৽͍͠ղܾࡦɺΑΓ͍རͰ͋Γɺᘳ ͳղܾࡦΛߏங͢ΔͱඇৗʹߴՁʹͳΔͳΒɺΑ͍બࢶ͔
͠Εͳ͍ • རଉͷΈࢧ͏: ίʔυͱͱʹੜ͖ΔɻϦϑΝΫλϯϦϯά ɺͦΕ΄Ͳྑ͘ͳ͍ίʔυʹऔΓΉΑΓߴ͔ͭ͘͘Β Ҿ༻.BOBHJOH5FDIOJDBM%FCU IUUQTXXXJOGPRDPNBSUJDMFTNBOBHJOHUFDIOJDBMEFCU
Ͳ͜·Ͱฦࡁͯ͠ Ͳ͜·Ͱڞଘ͍͔ͯ͘͠
υΩϡϝ ϯτ ςετ ଐਓԽ ෳࡶ d ॏཁ ۓٸ "ENJO πʔϧ
º º ˚ ˕ º +BWB όον܈ º º º ˓ ˓ υΩϡϝ ϯτ ςετ ෳࡶ d ॏཁ ଐਓԽ ۓٸ "ENJO πʔϧ º º ˕ ˚ º +BWB όον܈ º º d ˓ º ˓ ڞ௨ͯ͠ Γͯͳ͍
υΩϡϝ ϯτ ςετ ෳࡶ d ॏཁ ଐਓԽ ۓٸ "ENJO πʔϧ
º º ˕ ˚ º +BWB όον܈ º º ˓ º ˓ υΩϡϝ ϯτ ςετ ෳࡶ d ॏཁ ଐਓԽ ۓٸ "ENJO πʔϧ º º ˕ ˚ º +BWB όον܈ º º d ˓ º ˓ "ENJOӡ༻ʹ ৯͍ࠐΜͰ͍ΔͨΊ ෳࡶߴ͍͕ɺ໘ ༷ʹৄ͍͠ਓ͕ଟ͔ͬͨ
υΩϡϝ ϯτ ςετ ෳࡶ d ॏཁ ଐਓԽ ۓٸ "ENJO πʔϧ
º º ˕ ˚ º +BWB όον܈ º º d ˓ º ˓ όον܈ΤϯδχΞ͔͠ Βͳ্͍ʹ ୀ৬༧ఆͷࣾһʹݟ͕ूத
υΩϡϝ ϯτ ςετ ෳࡶ d ॏཁ ଐਓԽ ۓٸ "ENJO πʔϧ
º º ˕ ˚ º +BWB όον܈ º º d ˓ º ˓ ୀ৬લʹͳΜͱ͔͠ͳ͍ͱ ຊʹ୭৮Εͳ͘ͳΔ
όον܈ • ୀ৬༧ఆͷ։ൃऀ͕͍ͳ͘ͳΔͱ୭༷͕Θ ͔Βͳ͍ • छྨ͕ଟ͘ࠓޙมߋͷՄೳੑ͕ߴ͍ίʔυ ૣΊʹίϯτϩʔϧͰ͖ΔΑ͏ʹ͍ͨ͠ • ଐਓԽ x
ॏཁ͕ߴ͍ͱஅ͠ ෛ࠴ͷ͍͠(RubyԽ)Λ͢Δ͜ͱʹ
Adminπʔϧ • ΠΤʔϧͷࣄۀͷίΞͱͳΔπʔϧ • ༷ʹৄ͍͠ਓ͕ΤϯδχΞҎ֎ʹ • ܹ͘͠ػೳՃվम͢Δ༧ఆͳ͍ • རଉͷΈࢧ͏ (͜ͷ··ӡ༻͢Δ)͜ͱʹ
• ৽ػೳՃ࣌ʹRailsʹΓग़͢ ෛ࠴ͷసͷબࢶ
ҙࣝͨ͠ϙΠϯτ • ଐਓԽ͍ͯͨ͠ͷΛࣗͨͪͷίϯτϩʔϧ Լʹ • શͯΛฦࡁ͠Α͏ͱ͠ͳ͍ • ͳͥฦࡁ͢Δඞཁ͕͋Δͷ͔ɺฦࡁ͢Δ͜ͱͰ Կ͕ྑ͘ͳΔͷ͔ʹ͍ͭͯࣄۀऀͱ͢
ෛ࠴ͱ͖߹͏࣌ʹ ҙ͍ࣝͯͨ͜͠ͱ 4/4
ෛ࠴ʹ͖߹͍ͳ͕Β • ӡ༻ܥͷλεΫΛੵۃతʹΔ 㱺 ࣄۀͱγεςϜ͕ಁ͚ͯݟ͑Δ • ͳͥͦ͏ͳͬͯΔ͔Θ͔Βͳ͍ͱ͜Ζฉ͍ͯΈΔ 㱺 ༧όονͷΑ͏ͳൃݟ͕ •
ୀ৬͢Δલʹɺ༷Ͱͳ͘ӡ༻ʹؔ͢ΔυΩϡϝϯτ Λ࡞ͬͯΒ͏ 㱺 εςʔΫϗϧμʔ͕Θ͔Εฉ͘૬ख͕Θ͔Δ
·ͱΊ
• ෛ࠴ͷछྨΛݟۃΊΔ • ෛ࠴Λฦࡁ͢Δ͖͔ߟ͑Δ • ෛ࠴Λฦ͢ίετΛݮΒͨ͢ΊͷΞΫγϣϯΛ
͋Γ͕ͱ͏͍͟͝·ͨ͠