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
xpjug2019 A-4: チケットシステムの設計と実装、『あのチーム』の運用
Search
seki at druby.org
September 21, 2019
Programming
6.8k
6
Share
xpjug2019 A-4: チケットシステムの設計と実装、『あのチーム』の運用
チケットシステムの設計と実装、『あのチーム』の運用
seki at druby.org
September 21, 2019
More Decks by seki at druby.org
See All by seki at druby.org
Programming with a DJ Controller — not vibe coding
m_seki
3
990
Agile Leadership Summit Keynote 2026
m_seki
1
1.3k
RWC2025 Ninja-testing with smart playlist
m_seki
4
1.3k
XP, Testing and ninja testing ZOZ5
m_seki
3
2.7k
XP, Testing and ninja testing
m_seki
3
1.1k
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
570
ERB, ancient and future
m_seki
3
1k
ERB Hacks
m_seki
1
1.7k
わりこまれるはなし
m_seki
0
1.1k
Other Decks in Programming
See All in Programming
AI時代だからこそ「Bloc」を採用する価値があるのかもしれない
takuroabe
0
260
OSもどきOS
arkw
0
270
Oxcを導入して開発体験が向上した話
yug1224
4
250
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
780
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
210
Oxlintはいかにしてtsgolintのlint ruleを呼び出しているのか
syumai
2
1k
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
220
RTSPクライアントを自作してみた話
simotin13
0
310
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
130
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
190
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.3k
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
140
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
330
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Abbi's Birthday
coloredviolet
2
7.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
370
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Six Lessons from altMBA
skipperchong
29
4.3k
Writing Fast Ruby
sferik
630
63k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
130
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
750
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
320
HDC tutorial
michielstock
2
680
Transcript
dRuby20प
[email protected]
ࠓͷ 20 RWiki 800 ੜ͖݁ՌʢඪͰͳ͍ʣɻࠓͷੜ͖ͷൿ݃Ͱͳ͍Αʂ ੜ͖Ͱ͖ͨͷྑ͍ͱ͜Ζ͕͔͋ͬͨΒͩͱࢥ͏ͷͰհ͠·͢ɻ
ࠓͷΦν XP ͋ͷνʔϜ͍͢͝ʂ
ࢲʹ͍ͭͯ - Ruby - XP !N@TFLJ
Rubyͷίϛολ ERB, dRuby, Rinda RubyKaigi &3#Θ͞Εͨਓ͍Δ͔͠Εͳ͍ɻ 3VCZ,BJHJຖొஃʂϥοΩʔʂ ֏
RWiki ERB dRuby WikiWikiWeb RD Ruby OODB 3%3VCZͷจॻͷͨΊͷॻࣜɻ1MBJOΛݟͳ͕ΒNBU[͕ߟ͑ͨʂʁ ֏
eXtreme Programming 2004 XP RWiki StoryCard ݱࡏΠςϨʔγϣϯ 91ࡇΓͰԿ͔ࣄྫΛհ͍ͯ͠Δ
͋ͷνʔϜͷಛ ΈࠐΈɾࣗࣾɾϛογϣϯΫϦςΟΧϧɾେنɾฒߦෳόʔδϣϯ 8JLJͷنສϖʔδɻຖϖʔδ͕ฤू͞Ε͍ͯΔɻ
RWiki StoryCard֦ு RWiki ࠓհ͢ΔγεςϜɻ νέοτΛϖʔδͰදݱ͢ΔνέοτγεςϜɻ લʹ#VH5SBDLJOH4ZTUFN֦ு͋ͬͨɻ :"31$Ͱͨ͠Α͏ͳؾ͢Δ
ද ੈل͔Βੈل ERb, dRuby 1999 RWiki 2000 2001 BTS YARPC19101
StoryCard Keynote 2004 (JaSST, XP ) 2008 ( ) 2014 XP / XP (XP ) 2017 , ruby-1.8.7 2.6 2019
࣍ ͜ͷॱͰհ͠·͢
νέοτฤ
νέοτ൪߸ prefix + 3 4 prefix 5 4
ਖ਼نԽ͞Εͯͳ໊͍લͷૢ࡞ String#succ ్தͰ໋໊نଇΛ֦ு͢Δ͜ͱʹͳͬͯগ͠য͕ͬͨ4USJOHTVDDΛࢥ͍ग़ͯ͠ηʔϑ ͩͬͨ ֏
νέοτͷstatus ͳΜ͍ͯ͏ͷʁ
छྨ story bug task UBTL91తͳUBTLͰͳ͍ɻ͜ͷνʔϜͰೖΕࢠͷTUPSZӡ༻্ېࢭɻඞͣ୯ಠ Ͱ͔݁֬͠ΊΒΕΔ୯Ґʹ͢Δɻ
ΠςϨʔγϣϯ 999 ͩΜͩΜλΠϜϘοΫεͱͯ͠ͷͩ͜ΘΓ͕ͳ͘ͳͬͯɺͨͩͷ൪ʹͳͬͨ
ঢ়ଶ open close done ཱࢹʹΑͬͯΓ͍ͨঢ়ଶมΘͬͯ͘Δ͠ɺΑΓࡉ͔͍ঢ়ଶΛൃݟ͢Δέʔε ͋ΔɻͰຖνέοτΛಡΜͰΕΘ͔ΔͷͰɺ݁ہऴΘͬͯΔ͔Ͳ͏͔͚ͩ ໌ࣔ͢Εॆͳ͜ͱ͕Θ͔ͬͨɻ
ݟੵ 1 1.0 ॱௐͳͷ͔ɺࠔ͍ͬͯΔͷ͔ɺ͍ͭࢼͤΔͷ͔ɺͦ͏͍͏͜ͱʹڵຯ͕͋Δɻ࣮ Ͳͷ͘Β͍ۤ࿑͔ͨ͠Θ͔Δ͚ͲɺࠓͰ΄ͱΜͲ͍ಓ͕ͳ͍ɻ
ݟੵ ೲظΛଋͤͨ͞ΓΛڝͬͨΓɺͦ͏͍͏͜ͱͲ͏Ͱ͍͍ɻ ʢͦ͠͏͍͏͜ͱٻΊΔͱݟੵΓ͓͔͘͠ͳΔྫ/͞ΜϕϩγςΟࣄ݅ʣ
statusมΘΓଓ͚ͯͨ ઐ༻ͷϑΥʔϜͷํ͕ϓϩάϥϚతʹ࡞Γ͍͢ σʔλͷ੍ɺਖ਼نԽͳͲϓϩάϥϚͷ߹Λԡ͚ͯ͠ͳ͍
WikiϖʔδΛͦͷ··͏ ࢴͷෆ۩߹ථཝ֎ʹϝϞॻ͍ͨΓɺෆશͩͬͨΓࣗ༝͕ͩ ཧղͰ͖Δɻ8JLJʹॻ͍ͨఆܕʗࣗ༝ͳهड़Λղऍ͢ΔΈΛ༻ҙͨ͠ɻ
จॻ͔ΒσʔλΛநग़ RD : status 3%EBUBͱ͍͏:".-Ҏલʹ3%ͷߏΛσʔλදݱʹ͏ࢼΈ͕ ͨͿΜ͋ͬͨɻ38JLJ௨ৗͷจॻʹ3%EBUBΛࠞͥͯ͏Α͏ͳײ͡ʂ ֏
จॻ͔ΒσʔλΛநग़ JSC͔ΒE3VCZͰ38JLJͷ༰ΛݟΔͱ͜Μͳͷ ֏
ऀࣜςετ Story/Bug +B445ΑΓ
ऀࣜTDDͷࣗવͳ֦ு TDD νέοτސ٬͕৮ͬͯΘ͔ΔΑ͏ͳʮγεςϜʹର͢ΔมߋʯͰ͋Δͱ͍͏͜ͱɻ ϥΠϒϥϦͳͲ෦͚ͩ࡞ͬͯ৮Εͳ͍ͷνέοτͷ୯Ґʹ͠ͳ͍ɻ
ςετͱཤྺ ݱࡏཤྺͱɺϦεΫɺ։ൃͷςʔϚ͔Βܭࢉ͓ͨ͢͢͠ΊςετεΠʔτநग़Ξ ϧΰϦζϜʹΑΓɺςετͷසΛௐ͍ͯ͠Δʢ͔Βϲ݄ʹҰʣ
நग़͞Εͨςετͷར༻ (('test:νέοτ໊')) ֏
ཤྺͷ͍ͭ͢͝ 2003 NG ৽͍༷͠աڈͷ༷Λ্ॻ͖͢ΔͷͰ͠͠ໃ६ͪ͠Ό͏ ·࣮͕ͨมԽͨ͜͠ͱͰςετ͢Δҙຯ͕ͳ͘ͳͬͨͷ͋Δ ࠷ۙɺͷνέοτͷςετ͕ෆཁʹͳ͍ͬͯΔͷʹؾ͍ͮͨ
ΠϯσοΫεฤ ͍ͭͱͲΜͳ෩ʹҧ͏͔ͻͱͰΘ͔Δɻ
ΠϯσοΫεͷ࣮ Iteration, , શͯͷνέοτ͕DMPTFʹͳͬͨΠςϨʔγϣϯΛӅ͢ ΞΫςΟϒͳΠςϨʔγϣϯ͚͕ͩදࣔ͞ΕΔ ֏
νέοτͷछྨͰྨ story bug
αΠϯͷॳͷҙਤ
ࠓɾόʔδϣϯɾ୲ऀ
ேձฤ 9:15-10:00
ேձϏϡʔ Story
ேձϏϡʔ yonezawa
yonezawaேձϏϡʔ
ேձϏϡʔ
ேձϏϡʔ
ேձϏϡʔ
yonezawaேձϏϡʔ PC visited close
yonezawaேձϏϡʔ 45 45 bug story
45ؒ 45 91͔ΒֶΜͩͷͷͻͱͭʼλΠϜϘοΫε
ᝦࢴͱน ΞΫςΟϒͳνέοτʢ͍·ͬͯΔνέοτʣʹ͍ͭͯᝦࢴෆ۩߹ථͳͲͷ ཧతνέοτʹࣅ͍ͤͯΔ
ࢴͰ͍͜͠ͱ ߋ৽͠ͳ͍ͳΒࣺͯͨ΄͏͕͍͍ɻ ຖνέοτಡΈฦͯ͠ߋ৽ͯ͠ΔͱυϦϧֶशͷΑ͏ͳޮՌ͕͋ͬͯɺϝϯόʔͷ ઢ͕ڧԽ͞ΕΔɻਓଆ͕ϓϥΠϚϦͷσʔλϕʔεʹͳΔɻ
͓·͚/͋͑ͯল͍ͨͷ ྲྀߦΓͷγεςϜʹ͍͍ͨͯ͋ΔͭɻͦΕͧΕཧ༝͕͋ͬͯল͍ͨɻ
͓·͚/͋͑ͯল͍ͨͷ ࡞͔ͬͯΒফ͞Εͨͷଟ͍ɻͨͱ͑௨ܥ༻ҙ͕ͯ͋ͬͨ͋ͬͯ͠͠ ͨํ͕͍࣮֬͠ͳͷͰӅ͞Εͨɻʢπʔϧ࡞Δํָ͍͠ʣ
ࠓͷΦν XP ͋ͷνʔϜ͍͢͝ʂ