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
6.5k
xpjug2019 A-4: チケットシステムの設計と実装、『あのチーム』の運用
チケットシステムの設計と実装、『あのチーム』の運用
seki at druby.org
September 21, 2019
Tweet
Share
More Decks by seki at druby.org
See All by seki at druby.org
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
320
ERB, ancient and future
m_seki
3
830
ERB Hacks
m_seki
1
1.4k
わりこまれるはなし
m_seki
0
750
ぼくのかんがえたさいきょうのけいやくによるプログラミング
m_seki
1
1.1k
Learn Ractor
m_seki
1
2.5k
How many copies did you buy the first print?
m_seki
1
690
Create my own search engine.
m_seki
1
5.2k
Rinda in the real-world embedded systems.
m_seki
0
410
Other Decks in Programming
See All in Programming
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.8k
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.4k
AIプログラミング雑キャッチアップ
yuheinakasaka
1
640
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
180
5分で理解する SOLID 原則 #phpcon_nagoya
shogogg
1
270
2024年のWebフロントエンドのふりかえりと2025年
sakito
3
260
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
Domain-Driven Transformation
hschwentner
2
1.9k
Unity Android XR入門
sakutama_11
0
170
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
160
DROBEの生成AI活用事例 with AWS
ippey
0
140
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
400
Featured
See All Featured
Statistics for Hackers
jakevdp
797
220k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Building an army of robots
kneath
303
45k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Writing Fast Ruby
sferik
628
61k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Facilitating Awesome Meetings
lara
52
6.2k
The Cult of Friendly URLs
andyhume
78
6.2k
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 ͋ͷνʔϜ͍͢͝ʂ