XP祭り2021で使用したスライドです。 https://xpjug.connpass.com/event/218516/
https://confengine.com/conferences/xp2021/proposal/15813/108
ͱ͋ΔΞδϟΠϧϓϩδΣΫτ108ؒͷه@color_box
View Slide
@color_box• Twitter: @color_box• GitHub: @colorbox• ESM, inc
͢͜ͱ• 108΄ͲϦʔμʔͱͯ͠ಈ͍ͨϓϩδΣΫτʹ͍ͭͯ• ΤϯδχΞ*4໊
ϓϩδΣΫτͷେ·͔ͳྲྀΕ• ϓϩδΣΫτͷ࢝ಈ• ࠷ॳͷݟੵΓ• ։ൃ• τϥϒϧ• ։ൃྃ
ϓϩδΣΫτͷ࢝ಈɺ༷ͷੜ• ৽ͨͳΔ༷• اըͷ༷͕େࡶʹࡦఆ͞ΕɺΤϯδχΞʹڞ༗͞ΕΔ
࠷ॳͷݟੵΓ• ೲظΛ΄Ͳ΄Ͳͷ֬Ͱग़ͨ͢ΊͷݟੵΓΛߦ͏• ༷ॻͷػೳΛશ෦ݟੵΓɺͦΕʹֻ͔Δ࣌ؒΛࢉग़͢Δ
ϢʔβʔετʔϦʔ• ༷(ϑΟʔνϟ)Λͦͷ··ݟੵΓͷ͍͠• ݟੵΓ͍͢୯Ґ(ϢʔβʔετʔϦʔ)ʹղ͢Δ• ༷ΛϢʔβʔετʔϦʔͷू߹ʹղ͢Δ
ϢʔβʔετʔϦʔ• ϢʔβʔετʔϦʔ֓ͶʮAͱͯ͠ɺBΛ͍ͨ͠ɺͳͥͳΒC͔ͩΒͩʯ• ͱ͍͏ܗࣜʹ͢Δɻ• ࡞͖͢ػೳ͕໌֬ͰɺݟੵΓ͕͘͢͠ͳΔ
ϢʔβʔετʔϦʔ• ྫ͑• ʮϢʔβʔهࣄΛߘͯ͠ҰཡͰ͖Δػೳʯ• ͱ͍͏༷
ϢʔβʔετʔϦʔ• ʮϢʔβʔͱͯࣗ͠ͷߘͨ͠هΛҰཡ͍ͨ͠ɺͳͥͳΒ͕ࣗԿΛߘ͔ͨ͠ݟ͍͔ͨΒͩʯ• ʮϢʔβʔͱͯ͠هΛߘ͍ͨ͠ɺͳͥͳΒͦͷͷهΛ͚͍͔ͭͨΒͩʯ• ʮϢʔβʔͱͯ͠هΛमਖ਼͍ͨ͠ɺͳͥͳΒؒҧ͍Λݟ͚͔ͭͨΒͩʯ• ͱ͍͏ετʔϦʔʹղ͢Δ
ݟੵΓ• ݟੵΓϓϥχϯάϙʔΧʔͰɺ૬ରϙΠϯτͰݟੵΔɻ• શͯͷ༷Λղͨ͠ϢʔβʔετʔϦʔ͕͋ͬͯɺͦΕʹର͢ΔݟੵΓ͕͋ΕɺϓϩδΣΫτͷن͕Θ͔Δ• ϓϩδΣΫτن͕͔ΕաڈͷνʔϜ࣮͔Βɺͦͷنͷ࣮ʹඞཁͳ࣌ؒେࡶʹѲՄೳ
ݟੵΓ• ༷ॻʹશͯͷใࡌ͍ͬͯͳ͍• ݟੵΓΛ͓͜ͳ͏தͰɺෆ໌͕ݟ͔ͭΔ• ෆ໌POʹ࣭• ࣭ͷճΛݩʹ͞ΒʹݟੵΔ• ݟੵΓˠ࣭ˠݟੵΓ• ͜ͷ܁Γฦ͠
༷ͷ͗མͱ͠• ඞཁ࠷ݶΛͯ͠ɺՄೳͳݶΓ༷Λ͗མͱ͢• ʮͰ͖ΕೖΕ͍ͨʯ• ʮ༨༟͕͋ΕೖΕ͍ͨʯ• ͳͲͷWANTܥ͗མͱ͢
༷ͷ͗མͱ͠• ༷ॻΛݟͨ࣌Ͱɺن͕େ͖͘ͳΔ͜ͱ໌ന• ଟ͘ͷ࣮͕ඞཁʹͳΔͱޙʑਏ͍• ࠷ॳʹམͱͤΔͷམͱ͢அ
ॳظݟੵΓͷऴΘΓ• ݟ͍͑ͯΔൣғͰશͯͷ༷Λղ͠ɺͦͷݟੵΓ͕ऴΘͬͨΒॳظݟੵΓ͕ྃ• ࢉग़ͨ͠ϙΠϯτ89pt
ॳظݟੵΓͷऴΘΓ• ͜Ε·Ͱͷܦݧ͔ΒνʔϜͷग़ͤΔ։ൃ• Ұਓʹ2.5pt/week• ࢛ਓͰ 10pt/week
ॳظݟੵΓͷऴΘΓ• 9िؒͰྃ͢ΔϓϩδΣΫτ• ...ͷͣͩͬͨ
ݟੵΓͷऴΘΓɺೲظͷੜ• ݟੵΓ͕ऴΘΓೲظͷࢉग़͕ྃ• ͜ͷʮೲظʯ্෦ͱͷଋʹ༻͞Εɺ༰қʹಈ͔ͤͳ͍
։ൃͷ࢝·Γ
ϓϩδΣΫτং൫• ༷Ճ• ༷ޡೝ• ༷ᴥᴪ
༷Ճ• ։ൃ։࢝ॳʮෆཁʯͱ͞Ε͍͕ͯͨɺ࣌ؒܦաʹΑͬͯʮඞཁʯʹมͨ͡ͷ
༷ޡೝ• ϢʔβʔετʔϦʔͷม࿙Ε• ༷ʹॻ͔Ε͍ͯͳ͍͕ɺͦͷػೳΛ࣮͢ΔͳΒඞཁͱͳΔΑ͏ͳػೳͷݟੵΓ͕࿙Εͨ• ྫ͑ʮϢʔβʔ͕هΛߘͰ͖ΔͳΒɺཧऀͦΕΛҰཡͰݟΕΔΑ͏ʹ͠ͳ͍ͱ͍͚ͳ͍ʯΈ͍ͨͳͷ
༷ᴥᴪ• ʮ͑ʁͦΕ࣮͞Εͳ͍ͬͯͷฉ͍ͯͳ͍Ͱ͚͢Ͳʁʯ
༷ᴥᴪ• ։ൃऀͱPOͱͰ࣮ରʹର͢Δᴥᴪ
༷ᴥᴪ• ػೳAͱ΄΅ಉ͡ͷΛ࣮ͯ͠΄͍͠ͱ͍͏༷ॻ• ػೳA4͔͚ͯঃʑʹ֦ு͞Ε͖ͯͨͷͳͷͰɺશ࣮ͯ͠Α͏ͱ͢Δͱ͕ലେʹͳΔɺඞཁ࠷ݶͷͷ͚࣮ͩ͢Δ• ඞཁ࠷ݶͷఆ͕ٛϢʔβʔετʔϦʔΛநग़ͨ͠ਓؒͱɺPOͱͰҟͳΔɻ• ։ൃऀʮ͜ͷػೳAʹ࠷ݶඞཁͳ෦XͱY͚ͩʂZෆཁͩʂʯ• POʮ࣮ࡍͷӡ༻ঢ়گΛߟ͑ΔͱػೳAʹX,YʹՃ͑ͯZͳ͍ͱͩΊʂʯ
༷ᴥᴪ• ࠷ݶͷ༷Λͯ͠શ෦͗མͱ͢աఔͰ͗མͱ͞Εͨɻ
༷Ճ/༷ᴥᴪͱ༷ޡೝͷ༧• ༷ॻΛॻ͍ͨPOʹநग़ͨ͠ϢʔβʔετʔϦʔΛϨϏϡʔͯ͠Β͑͜ͷϦεΫݮͰ͖ͨ
ϨϏϡʔ͕Ͱ͖ͳ͔ͬͨཧ༝• ैདྷͷΓํͱͷίϯϑϦΫτ
ͲͷΑ͏ͳίϯϑϦΫτ͔• ैདྷ• ༷ॻΛϕʔεʹΤϯδχΞͱPO͕ͬ͘͡Γࡉ෦Λ٧Ί͍ͯ͘Γํ• ࠓճ• ༷Λղͨ͠ϢʔβʔετʔϦʔΛϕʔεʹ͢͢Ί͍ͯ͘Γํ
ͲͷΑ͏ͳίϯϑϦΫτ͔• ࠓ·Ͱ༷ϕʔεͰΓऔΓ͍ͯͨ͠ͱ͜ΖʹɺϢʔβʔετʔϦʔϕʔεͷ֓೦Ͱ࣮ΛਐΊΔΑ͏ʹٸʹํసͨ͠ͷ͕ݪҼ
ϙΠϯτ• ैདྷͷΓํΛগ͠Ͱม͑Δ߹ɺࣄલʹඞཁͳڞ༗Λ
ൃੜͨ͠ᴥᴪ/ޡೝ/ՃͷରԠ• ϓϩδΣΫτͰΔ͜ͱ૿͑Δ͕ɺೲظಈ͔ͤͳ͍
ߥͿΔ࢛ఱԦ• ࣌ؒ -> ೲظͣΒͤͳ͍• είʔϓ -> ʮඞཁ࠷ݶͷػೳʯͳͷͰ͜ΕҎ্Εͳ͍ʮΞδϟΠϧαϜϥΠʯp.86
ߥͿΔ࢛ఱԦ• ༧ࢉΛ૿Ճͤ͞Δ = ਓһΛ૿͢
ਓһΛ૿͢ͷѱखʁ• ༨༟͕গͳ͍ϓϩδΣΫτʹ͓͍ͯɺઓྗͷஞ࣍ೖԼࡦ• ৽͍͠ਓ͕ϓϩδΣΫτʹೖͬͨ࣌ʹɺϓϩδΣΫτʹ͍ͭͯͬͯΒ͏ͷʹ͕͔͔࣌ؒΔ• ϓϩδΣΫτʹೖͬͨޙαϙʔτ͕ඞཁ• ͦͷαϙʔτʹطଘͷਓ͕ೖΔඞཁ͕͋Δ• ৽͍͠ਓ͕։ൃΛ͜ͳͯ͘͠ΕΔ·Ͱ͕͔͔࣌ؒΔͷͰɺਓΛೖͯ͠։ൃεϐʔυ্͙͕͢Βͳ͍
ਓһΛ૿͢ͷѱखʁ• ͳ͔ͥͬͨʁ• ӡΑ͘લड़ͷίετΛ౿Έͤͨ• ৽ϝϯό͜ͷϓϩδΣΫτͷܦݧऀɺϓϩδΣΫτࢀઓޙ͔Β։ൃεϐʔυΛԡ্͛ͯͯ͘͠͠Εͨ• αϙʔτͦ͜·Ͱඞཁͳ͔ͬͨ
ਓһΛ૿͢ͷѱखʁ• ࠓճӡྑ͘ਓΛ૿͢͜ͱͰରԠͰ͖͕ͨɺͦΕ͕Ͱ͖ͳ͍ͱ͖ଞ3ͭ(࣭,࣌ؒ,είʔϓ)ͷ͍ͣΕ͔Λ٘ਜ਼ʹͤ͟ΔΛಘͳ͍
ࣄޙରԠ• ༷ᴥᴪɺ༷ޡೝ͕ൃੜ͍ͯ͠ͳ͍͔ͷݕূΛߦ͏ɻ
ࣄޙରԠ• ϢʔβʔετʔϦʔ͕༷Λղͨ͠ͷͰ͋Δɺͱ͍͏͜ͱΛڞ༗• ϢʔβʔετʔϦʔ͕༷Λॆ͍ͯ͠Δ͔ΛϨϏϡʔͯ͠Β͏
ࣄޙରԠ• ϢʔβʔετʔϦʔͱɺͦͷղݩͷ༷ͱͷؔ࿈Λ໌ࣔͯ͠ϨϏϡʔͯ͠Β͏• ࠓճɺϢʔβʔετʔϦʔBacklogͷνέοτͰཧ͍ͯͨ͠ɺνέοτʹ༷ॻͷϦϯΫΛՃɻ• ͲͷϢʔβʔετʔϦʔ͕Ͳͷ༷Λղͨ͠ͷͳͷ͔ɺνέοτΛݟΕΘ͔ΔΑ͏ʹͯ͠ɺϨϏϡʔͯ͠Βͬͨ
ϙΠϯτ• ϢʔβʔετʔϦʔΛղͨ͠ͱ͖• ༷Λॆ͍ͯ͠Δ͔ΛʮඞͣʯϨϏϡʔͯ͠Β͓͏• ࡉ෦·ͰؚΊͨᘳͳ༷POͷ಄ͷதʹ͔͠ແ͍• ։ൃऀ͕ͦΕΛਖ਼֬ʹಡΈऔΔ͜ͱ͍͠
ϓϩδΣΫτத൫• ༷มߋ
༷มߋ• ༷ॻࣗମͷؒҧ͍͕͋ΓɺͦΕΛमਖ਼͢Δඞཁ͕ग़ͯ͘Δ• σʔλߏΛमਖ਼͠ͳͯ͘ͳΒͳ͘ͳͬͨ• ༷มߋલͷσʔλߏΛલఏʹଟ͘ͷػೳΛ࡞ΓࠐΜͰ͍ͨ• ࡞ΓࠐΜͩػೳͷमਖ਼ඞཁ• ࠷େ͖ͳՃͱͳͬͨ
ରԠ• ϓϩδΣΫτͰΔ͜ͱ૿͑Δ͕ɺೲظಈ͔ͤͳ͍
ߥͿΔ࢛ఱԦ• ࣌ؒΛ৳͢ = ೲظΛޙΖʹͣΒ͢ʮΞδϟΠϧαϜϥΠʯp.86
ಈ͔ͤͳ͔ͬͨͣͰʁ• PO্͕෦ͱֻ͚߹ͬͯͳΜͱ͔ͯ͘͠Ε·ͨ͠• ඞਢػೳͷमਖ਼͋ΔͷͰɺείʔϓͷௐ͕͍͠• ͜ΕҎ্ਓΛ૿͢ͷແཧ• ࣭Λམͱ͢ͷͬͱμϝ• ্هͷཧ༝͔Βͷ༨͕ͳ͍ͨΊɺೲظΛͣΒ͢͜ͱʹͳͬͨ
ରࡦ• ॏཁػೳͷ༷มߋӨڹਙେ• طଘػೳʹؔΘΔॴͩͱɺӨڹճආ͍͠• ೲظείʔϓͷௐͰͳΜͱ͔͍ͨ͠
։ൃऴྃ• ࠷ऴతʹݟੵΒΕͨϓϩδΣΫτن• 136pt• ͱͳͬͨ
ϓϩδΣΫτͷϙΠϯτͷཤྺ
·ͱΊ• ϓϩδΣΫτͰૺ۰͍͔ͨͭ͘͠ͷࣄྫʹ͍ͭͯڞ༗• օ༷ͷͲ͔͜ͰͷҰॿͱͳΕ͍Ͱ͢• ߥͿΔ࢛ఱԦͷओʹ༧ࢉɺ࣌ؒɺείʔϓΛͳΜͱ͔͍ͬͯ͡Γൈ͚Α͏