Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ユースケース駆動開発で自社プロダクトを作ってみた!

大塚真言
December 08, 2021

 ユースケース駆動開発で自社プロダクトを作ってみた!

大塚真言

December 08, 2021
Tweet

More Decks by 大塚真言

Other Decks in Programming

Transcript

  1. Ϣʔεέʔεۦಈ։ൃͰ


    ࣗࣾϓϩμΫτΛ࡞ͬͯΈͨʂ
    2021/12/08


    ߹ಉձࣾϊϚυϦ େ௩

    View Slide

  2. ࣗݾ঺հ

    View Slide

  3. ࣗݾ঺հ

    View Slide

  4. ձࣾ঺հ
    ߹ಉձࣾϊϚυϦ
    ૑ۀظ໨
    ϝϯόʔ໊
    8FCडୗ։ൃɾ4&4
    ʢ-BSBWFMɺ7VFKTʣ
    ࣗࣾϓϩμΫτ։ൃ
    िҊ݅ɾिࣗݾֶश

    View Slide

  5. Ϣʔεέʔεۦಈ։ൃΛ


    ࠾༻ͨ͠ཧ༝
    • ษڧձͰ஌ΓɺࣗࣾͰ΋࢖ͬͯΈ͍ͨ


    • อकੑ͕ߴ͘ཁٻΛຬͨ͢ίʔυ͕ॻ͖΍͘͢ͳΔͷ͕
    ຊ౰ͳͷ͔͔֬Ί͍ͨ


    • ػೳҰཡɾը໘࢓༷ॻɾDBఆٛॻΛ࡞੒͢Δجຊઃܭ
    ͔Β୤٫͍ͨ͠


    • Ҋ݅ͷಛੑ্ɺฐࣾϝϯόʔ͕ཁ݅ఆٛɾجຊઃܭΛܦ
    ݧ͢Δػձ͕গͳ͍

    View Slide

  6. ։ൃͨ͠ϓϩμΫτ

    View Slide

  7. ListoreʢϦετΞʣ

    View Slide

  8. ListoreʢϦετΞʣ

    View Slide

  9. ListoreʢϦετΞʣ

    View Slide

  10. ϓϩδΣΫτ֓ཁ
    • ։ൃن໛͸7ਓ݄ʢϑΣʔζ1ϦϦʔε·Ͱʣ


    • ࢖༻ٕज़͸GoɾNext.js


    • ։ൃମ੍͸ฐࣾϝϯόʔ4໊

    +֎෦ސ໰1໊ʢϢʔεέʔεۦಈ։ൃ༗ࣝऀʣ

    View Slide

  11. εέδϡʔϧ
    ݄ ݄ ݄ ݄ ݄ ݄
    ཁٻఆٛ
    ɾػೳཁٻ
    ɾυϝΠϯϞσϦϯά
    ɾϢʔεέʔεਤ
    ٕज़બఆ
    ༧උઃܭɾৄࡉઃܭ
    ɾϢʔεέʔεهड़
    ɾϩόετωεਤ
    ɾΫϥεਤ
    ࣮૷
    ɾϑϩϯτϞοΫίʔσΟϯά
    ɾ"1*࣮૷
    ɾϑϩϯτ"1*ܨ͗͜Έ
    ɾσβΠϯίʔσΟϯά
    ɾ݁߹ςετ
    ɾϦϦʔε
    ɾ%%%ϦϑΝΫλϦϯά

    View Slide

  12. εέδϡʔϧ
    ݄ ݄ ݄ ݄ ݄ ݄
    ཁٻఆٛ
    ɾػೳཁٻ
    ɾυϝΠϯϞσϦϯά
    ɾϢʔεέʔεਤ
    ٕज़બఆ
    ༧උઃܭɾৄࡉઃܭ
    ɾϢʔεέʔεهड़
    ɾϩόετωεਤ
    ɾΫϥεਤ
    ࣮૷
    ɾϑϩϯτϞοΫίʔσΟϯά
    ɾ"1*࣮૷
    ɾϑϩϯτ"1*ܨ͗͜Έ
    ɾσβΠϯίʔσΟϯά
    ɾ݁߹ςετ
    ɾϦϦʔε
    ɾ%%%ϦϑΝΫλϦϯά

    View Slide

  13. ཁٻఆٛ
    • ࣗࣾϓϩμΫτͷͨΊϝϯόʔશһ͕υϝΠϯ
    ΤΩεύʔτɾϓϩμΫτΦʔφʔ


    • ཁٻʹϒϨ͕͋Δ৔߹͸શһͰٞ࿦ܾͯ͠Ί
    Δ

    View Slide

  14. ػೳཁٻ

    View Slide

  15. υϝΠϯϞσϦϯά

    View Slide

  16. Ϣʔεέʔεਤ

    View Slide

  17. εέδϡʔϧ
    ݄ ݄ ݄ ݄ ݄ ݄
    ཁٻఆٛ
    ɾػೳཁٻ
    ɾυϝΠϯϞσϦϯά
    ɾϢʔεέʔεਤ
    ٕज़બఆ
    ༧උઃܭɾৄࡉઃܭ
    ɾϢʔεέʔεهड़
    ɾϩόετωεਤ
    ɾΫϥεਤ
    ࣮૷
    ɾϑϩϯτϞοΫίʔσΟϯά
    ɾ"1*࣮૷
    ɾϑϩϯτ"1*ܨ͗͜Έ
    ɾσβΠϯίʔσΟϯά
    ɾ݁߹ςετ
    ɾϦϦʔε
    ɾ%%%ϦϑΝΫλϦϯά

    View Slide

  18. ٕज़બఆ
    • ϝϯόʔશһͰϞνϕʔγϣϯɾকདྷੑɾҊ
    ݅਺ɾ೉қ౓ͳͲ૯߹తʹධՁܾ͠ఆͨ͠

    View Slide

  19. εέδϡʔϧ
    ݄ ݄ ݄ ݄ ݄ ݄
    ཁٻఆٛ
    ɾػೳཁٻ
    ɾυϝΠϯϞσϦϯά
    ɾϢʔεέʔεਤ
    ٕज़બఆ
    ༧උઃܭɾৄࡉઃܭ
    ɾϢʔεέʔεهड़
    ɾϩόετωεਤ
    ɾΫϥεਤ
    ࣮૷
    ɾϑϩϯτϞοΫίʔσΟϯά
    ɾ"1*࣮૷
    ɾϑϩϯτ"1*ܨ͗͜Έ
    ɾσβΠϯίʔσΟϯά
    ɾ݁߹ςετ
    ɾϦϦʔε
    ɾ%%%ϦϑΝΫλϦϯά

    View Slide

  20. ༧උઃܭ
    • Ϣʔεέʔε͝ͱʹϢʔεέʔεهड़ɾϩόε
    τωεਤΛ࡞੒


    • ϝϯόʔશһͰ࣮ࢪ

    View Slide

  21. Ϣʔεέʔεهड़ɾϩόετωεਤ

    View Slide

  22. ༧උઃܭ
    • ϩόετωεਤ͸Ϣʔεέʔεͱৄࡉઃܭͷ
    ΪϟοϓΛຒΊΔ΋ͷɻϢʔεέʔεͷݟ௚͠
    ΍ৄࡉઃܭ࣌ʹߟྀ͢΂͖఺Λચ͍ग़ͤΔ

    View Slide

  23. ৄࡉઃܭʢΫϥεਤʣ

    View Slide

  24. εέδϡʔϧ
    ݄ ݄ ݄ ݄ ݄ ݄
    ཁٻఆٛ
    ɾػೳཁٻ
    ɾυϝΠϯϞσϦϯά
    ɾϢʔεέʔεਤ
    ٕज़બఆ
    ༧උઃܭɾৄࡉઃܭ
    ɾϢʔεέʔεهड़
    ɾϩόετωεਤ
    ɾΫϥεਤ
    ࣮૷
    ɾϑϩϯτϞοΫίʔσΟϯά
    ɾ"1*࣮૷
    ɾϑϩϯτ"1*ܨ͗͜Έ
    ɾσβΠϯίʔσΟϯά
    ɾ݁߹ςετ
    ɾϦϦʔε
    ɾ%%%ϦϑΝΫλϦϯά

    View Slide

  25. ࣮૷
    • όοΫΤϯυɺϑϩϯτΤϯυͲͪΒ΋׳Εͳ͍ٕज़ͰΩϟο
    νΞοϓ࣮ͭͭ͠૷ΛਐΊͨ


    • ϞσϧఆٛΛυϝΠϯϞσϧͰ͸ͳ͘ΤϯςΟςΟͱ͍ͯͨ͠
    ʢΫϥεਤ࡞੒ͨ͠ͷʹ...ߟྀෆ଍ʣ


    • ϑΣʔζ1ϦϦʔεޙʹผ్࣌ؒΛઃ͚ͯϦϑΝΫλϦϯά࣮ࢪ


    • ࣮૷ஈ֊ͰͷઃܭϨϕϧͷมߋ͕͕͋ͬͨɺϢʔεέʔεهड़
    ΍ϩόετωεਤͷߋ৽࿙Ε͕ൃੜ

    View Slide

  26. εέδϡʔϧ
    ݄ ݄ ݄ ݄ ݄ ݄
    ཁٻఆٛ
    ɾػೳཁٻ
    ɾυϝΠϯϞσϦϯά
    ɾϢʔεέʔεਤ
    ٕज़બఆ
    ༧උઃܭɾৄࡉઃܭ
    ɾϢʔεέʔεهड़
    ɾϩόετωεਤ
    ɾΫϥεਤ
    ࣮૷
    ɾϑϩϯτϞοΫίʔσΟϯά
    ɾ"1*࣮૷
    ɾϑϩϯτ"1*ܨ͗͜Έ
    ɾσβΠϯίʔσΟϯά
    ɾ݁߹ςετ
    ɾϦϦʔε
    ɾ%%%ϦϑΝΫλϦϯά

    View Slide

  27. ݁߹ςετɺϦϦʔε
    • ෆ۩߹मਖ਼ɺϢʔβϏϦςΟ޲্Λ࣮ࢪ


    • 10݄த०ʹϑΣʔζ1ϦϦʔε׬ྃ

    View Slide

  28. εέδϡʔϧ
    ݄ ݄ ݄ ݄ ݄ ݄
    ཁٻఆٛ
    ɾػೳཁٻ
    ɾυϝΠϯϞσϦϯά
    ɾϢʔεέʔεਤ
    ٕज़બఆ
    ༧උઃܭɾৄࡉઃܭ
    ɾϢʔεέʔεهड़
    ɾϩόετωεਤ
    ɾΫϥεਤ
    ࣮૷
    ɾϑϩϯτϞοΫίʔσΟϯά
    ɾ"1*࣮૷
    ɾϑϩϯτ"1*ܨ͗͜Έ
    ɾσβΠϯίʔσΟϯά
    ɾ݁߹ςετ
    ɾϦϦʔε
    ɾ%%%ϦϑΝΫλϦϯά

    View Slide

  29. DDDϦϑΝΫλϦϯά
    • ΫϥεਤΛ΋ͱʹυϝΠϯϞσϧΛ࣮૷


    • ΤϯςΟςΟ͸ϦϙδτϦ૚ͷDBΞΫηεͷ
    ΈͰ࢖༻͢ΔΑ͏ʹมߋ

    View Slide

  30. ৼΓฦΓ
    • ػೳҰཡɾը໘࢓༷ॻɾDBఆٛॻΛ࡞੒͢Δجຊઃܭ
    ͔Β୤٫Ͱ͖ͦ͏


    • ϝϯόʔͷཁٻఆٛɺجຊઃܭεΩϧ͕޲্ͨ͠


    • Ϣʔεέʔεۦಈ։ൃΛਖ਼͘͠ద༻ͤ͞Δͷ͸೉͍͠
    ʢࠓճ͸࢖༻ٕज़͕ෆ׳ΕͰͦ͜΋೉қ౓͕ߴ͔ͬͨʣ


    • Ϣʔεέʔεهड़ɺϩόετωεਤΛॻ͚ΔΑ͏ʹͳΔ
    ͚ͩͰઃܭεΩϧ͸্͕Δ

    View Slide

  31. ৼΓฦΓ
    • फڭ্ɺϢʔεέʔεۦಈ։ൃͷಋೖ͕೉͍͠৔߹ɺ·
    ͣ͸Ϣʔεέʔεهड़ͱϩόετωεਤΛ࡞ͬͯࣗ෼ͷ
    ಄Λ੔ཧ͢Δͷ͕͓͢͢Ί


    • ༧උઃܭظؒͰ๞͖͕ൃੜͨ͠ɻ࣍ճ͸Ϣʔεέʔε୯
    ҐͰ༧උઃܭˠ࣮૷ˠςετͷαΠΫϧΛΠςϨʔςΟ
    ϒʹճ͍͖͍ͯͨ͠ʢICONIXϓϩηεʹ͸ϓϩδΣΫ
    τͷϥΠϑαΠΫϧ͸ఆٛ͞Ε͍ͯͳ͍ͷͰΞδϟΠϧ
    Ͱ΋΢ΥʔλʔϑΥʔϧͰ΋ͲͪΒͰ΋ྑ͍ʣ

    View Slide

  32. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ

    View Slide