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

開発の安定性・スループットを定量的に見る #とは / Quantitative view of development

開発の安定性・スループットを定量的に見る #とは / Quantitative view of development

開発生産性を高める〜SmartHR、SODAによるチーム起点の取り組み〜
というイベントでの登壇資料です
https://offers.connpass.com/event/284812/

■LeanとDevOpsの科学
https://book.impress.co.jp/books/1118101029

sugamasao

June 13, 2023
Tweet

More Decks by sugamasao

Other Decks in Technology

Transcript

  1. CONFIDENTIAL
    ։ൃͷ҆ఆੑɾεϧʔϓοτ
    ΛఆྔతʹݟΔͱ͸
    5VF։ൃੜ࢈ੑΛߴΊΔʙ4NBSU)3ɺ40%"ʹΑΔνʔϜى఺ͷऔΓ૊Έʙ
    ͕͢ΘΒ·͞ͷΓ
    4NBSU)3ϓϩμΫτΤϯδχΞάϧʔϓϚωʔδϟʔ

    View full-size slide

  2. CONFIDENTIAL
    ࣗݾ঺հ
    ͕͢ΘΒ·͞ͷΓ !TVHBNBTBP

    ɾ4NBSU)3ʢʙʣ
    ɾجຊػೳͱݺ͹ΕΔϓϩμΫτͷ։ൃʹैࣄ
    ɾʙϚωʔδϟʔͱͯ͠ˢͷ։ൃʹؔ͢ΔϚωδ
    ϝϯτΛߦ͏

    View full-size slide

  3. CONFIDENTIAL
    झຯͰॻ੶ͷࣥචΛগʑ
    ˞ڞஶɾ୯ஶؚΉ
    BNB[POஶऀηϯτϥϧΑΓҾ༻

    View full-size slide

  4. CONFIDENTIAL
    աڈͷొஃ
    IUUQTTQFBLFSEFDLDPNTVHBNBTBPTNBSUIS

    View full-size slide

  5. ΑΖ͓͘͠Ͷ͕͍
    ͠·͢

    View full-size slide

  6. w લఏͷڞ༗
    w ՄࢹԽ͢Δͧʂʙ࠳ંฤʙ
    w ஌ݟΛ෇͚Δͧʂ
    w ՄࢹԽ͢Δͧʂʙ΍͍ͬͯͧ͘ฤʙ
    CONFIDENTIAL

    View full-size slide

  7. w લఏͷڞ༗
    w ՄࢹԽ͢Δͧʂʙ࠳ંฤʙ
    w ஌ݟΛ෇͚Δͧʂ
    w ՄࢹԽ͢Δͧʂʙ΍͍ͬͯͧ͘ฤʙ
    CONFIDENTIAL

    View full-size slide

  8. CONFIDENTIAL
    લఏͷڞ༗

    View full-size slide

  9. CONFIDENTIAL
    ϓϩμΫτͷछྨ
    ओʹ͜ͷϓϩμΫτͷ࿩Λ͠·͢
    νʔϜͰͷ։ൃ
    ϞϊϦγοΫϓϦέʔγϣϯ

    View full-size slide

  10. CONFIDENTIAL
    ͬ͘͟Γମ੍ਤ
    νʔϑ
    Ϛωʔδϟʔ
    71P&
    Ϛωʔδϟʔ
    νʔϑ νʔϑ νʔϑ
    ϝϯόʔ ϝϯόʔ ϝϯόʔ ϝϯόʔ
    νʔϜ୯Ґ
    ϓϨΠϠʔ
    ϓϨΠϯάϚωʔδϟʔ
    ϚωʔδϟʔʢϫΠʣ

    View full-size slide

  11. CONFIDENTIAL
    ՄࢹԽɾఆྔԽʹ͍ͭͯؾʹͳ
    Γ࢝ΊͨϙΠϯτ

    View full-size slide

  12. ɾϓϩμΫτʹؔΘΔΤϯδχΞͷ਺ͷ૿Ճ
    ɾϓϩμΫτͷίʔυϕʔεͷ੒௕
    CONFIDENTIAL
    ؾʹͳΓϙΠϯτ

    View full-size slide

  13. ɾϓϩμΫτʹؔΘΔΤϯδχΞͷ਺ͷ૿Ճ
    👉೥Ͱ͓Α໊໊ͦ΁
    👉-F44Λ࢖͍νʔϜΛεέʔϧ͍ͤͯ͞Δ
    CONFIDENTIAL
    ؾʹͳΓϙΠϯτ

    View full-size slide

  14. ɾϓϩμΫτͷίʔυϕʔεͷ੒௕
    CONFIDENTIAL
    +----------------------+--------+--------+---------+---------+-----+-------+


    | Name | Lines | LOC | Classes | Methods | M/C | LOC/M |


    +----------------------+--------+--------+---------+---------+-----+-------+


    | Controllers | 30108 | 23375 | 596 | 2448 | 4 | 7 |


    | Helpers | 790 | 643 | 0 | 82 | 0 | 5 |


    | Models | 50760 | 40649 | 664 | 2851 | 4 | 12 |


    | Mailers | 435 | 349 | 15 | 36 | 2 | 7 |


    | JavaScripts | 28862 | 26 | 0 | 1 | 0 | 24 |


    | Libraries | 6344 | 5231 | 37 | 167 | 4 | 29 |


    | APIs | 10502 | 9186 | 136 | 257 | 1 | 33 |


    :


    +----------------------+--------+--------+---------+---------+-----+-------+


    | Total | 500857 | 384867 | 1484 | 6162 | 4 | 60 |


    +----------------------+--------+--------+---------+---------+-----+-------+


    Code LOC: 79459 Test LOC: 305408 Code to Test Ratio: 1:3.8


    ؾʹͳΓϙΠϯτ
    +----------------------+--------+--------+---------+---------+-----+-------+


    | Name | Lines | LOC | Classes | Methods | M/C | LOC/M |


    +----------------------+--------+--------+---------+---------+-----+-------+


    | Controllers | 32123 | 24992 | 649 | 2615 | 4 | 7 |


    | Helpers | 878 | 713 | 0 | 90 | 0 | 5 |


    | Models | 60307 | 48243 | 784 | 3261 | 4 | 12 |


    | Mailers | 416 | 336 | 15 | 34 | 2 | 7 |


    | JavaScripts | 37893 | 5889 | 0 | 125 | 0 | 45 |


    | Libraries | 12546 | 9856 | 71 | 352 | 4 | 26 |


    | APIs | 11601 | 10025 | 148 | 279 | 1 | 33 |


    :


    +----------------------+--------+--------+---------+---------+-----+-------+


    | Total | 732923 | 571320 | 1719 | 7173 | 4 | 77 |


    +----------------------+--------+--------+---------+---------+-----+-------+


    Code LOC: 100054 Test LOC: 471266 Code to Test Ratio: 1:4.7
    ͓ΑͦҰ೥ޙ

    View full-size slide

  15. ɾ4DSVN -F44
    Ͱͷ;Γ͔͑Γ΍ϕϩγςΟΛ࢖ͬͨϦϦʔε༧ଌ
    ͳͲجຊతͳ͜ͱ͸Ͱ͖͍ͯΔ
    ɾͦͷͨΊ֤νʔϜ͝ͱͷվળࢪࡦ͸ߦ͍͑ͯͯɺ֤νʔϜͷ੒௕
    ΋఻ΘΔ
    CONFIDENTIAL
    ؾʹͳΓϙΠϯτ

    View full-size slide

  16. ɾҰํͰzϓϩμΫτzͱ͍͏୯ҐͰͲ͏ͳͬͯΔ͔ଌΕ͍ͯͳ͍
    ɾνʔϜ͝ͱͷࢪࡦʹରͯ͠ఆྔతͳධՁΛߦ͑Δ΋ͷ΋͋Δ͕ɺ
    ௕ظతͳܭଌ͕Ͱ͖͍ͯΔΘ͚Ͱ͸ͳ͍
    CONFIDENTIAL
    ؾʹͳΓϙΠϯτ

    View full-size slide

  17. ௕ظతͳτϨϯυΛߟ͑Δͱఆྔతͳ؍఺Ͱ
    ͷ؍࡯͕ඞཁͳͷͰ͸🤔
    CONFIDENTIAL
    ؾʹͳΓϙΠϯτ

    View full-size slide

  18. w લఏͷڞ༗
    w ՄࢹԽ͢Δͧʂʙ࠳ંฤʙ
    w ஌ݟΛ෇͚Δͧʂ
    w ՄࢹԽ͢Δͧʂʙ΍͍ͬͯͧ͘ฤʙ
    CONFIDENTIAL

    View full-size slide

  19. CONFIDENTIAL
    ՄࢹԽ͢Δͧʂʙ࠳ંฤʙ

    View full-size slide

  20. ՄࢹԽ͢Δͧʂ

    View full-size slide

  21. νʔϜ͝ͱͷࢪࡦʹରͯ͠ఆྔతͳධՁΛߦͳ͍ͬͯΔ΋
    ͷ΋͋Δ͕ɺϝϯόʔͷ૿ݮͳͲνʔϜͷ҆ఆੑʹ͸͞·
    ͟·ͳม਺͕͋ΔͷͰɺҰఆͷࢦඪʹΑΔ௕ظతͳՄࢹԽ
    ΋ඞཁͳͷͰ͸💡
    CONFIDENTIAL
    ՄࢹԽ͢Δͧʂ

    View full-size slide

  22. ɾผϓϩμΫτͰಋೖΛݕ౼Λ࢝Ίͨ
    ɾզʑͷϓϩμΫτ΋ҰॹʹਐΊΔ
    CONFIDENTIAL
    ՄࢹԽ͢Δπʔϧͷݕ౼͢Δͧʂ

    View full-size slide

  23. ɾ'PVS,FZT.FUSJDTͷՄࢹԽ
    ɾ13ͷϦʔυλΠϜͷՄࢹԽ
    ɾFUDʜ
    CONFIDENTIAL
    'JOEZ5FBNJTʜ
    ˞0
    ff
    FST.(3Ͱ͸ͳͯ͘͢Έ·ͤΜ🙇

    View full-size slide

  24. τϥΠΞϧ͢Δͧʂ

    View full-size slide

  25. ɾ͔֬ʹ਺஋ͷྑ͠ѱ͠͸Θ͔Δ
    ɾτϨϯυϥΠϯ΋Θ͔Δ
    ɾҰํͰɺ਺஋ͷҙຯΛཧղ͠ͳ͍ͱʮ਺஋Λྑ͘͢
    ΔͨΊͷϋοΫʯ΍ʮͱΓ͋͑ͣ਺஋Λվળͤ͞Δʯ
    ͷΑ͏ͳ਺஋ʹৼΓճ͞Εͯ͠·͏ݒ೦͕͋ͬͨ
    CONFIDENTIAL
    'JOEZ5FBNͷτϥΠΞϧΛ΍ͬͯΈͯ

    View full-size slide

  26. ׆༻ํ๏ͷΠϝʔδ͸ͳΜͱͳ͘ࢥ͍ͭ͘΋ͷͷɺࣗ
    ෼͕ͨͪ਺஋ͱ޲͖߹͏ͨΊͷجૅମྗ͸ඞཁͦ͏👀
    ಛʹνʔϜ୯ҐͰվળʹ׆͔͢ͷͰ͋Ε͹νʔϜ͝ͱ
    ͷղ૾౓͕ߴ͍ํ͕ྑ͍ࢪࡦʹͭͳ͕ΔͷͰ͸🤔
    CONFIDENTIAL
    'JOEZ5FBNͷτϥΠΞϧΛ΍ͬͯΈͯ

    View full-size slide

  27. ອવͱݟͯ΋μϝͦ͏ʂΑΓޮՌతͳࢪࡦΛ
    ߟ͑Δʹ͸ࣗ෼ͨͪͷέΠύϏϦςΟΛ্͛
    ͳͯ͘͸ɺɺɺʂʂʂʂʂ̍
    CONFIDENTIAL
    'JOEZ5FBNͷτϥΠΞϧΛ΍ͬͯΈͯ

    View full-size slide

  28. w લఏͷڞ༗
    w ՄࢹԽ͢Δͧʂʙ࠳ંฤʙ
    w ஌ݟΛ෇͚Δͧʂ
    w ՄࢹԽ͢Δͧʂʙ΍͍ͬͯͧ͘ฤʙ
    CONFIDENTIAL

    View full-size slide

  29. CONFIDENTIAL
    ஌ݟΛ෇͚Δͧʂ

    View full-size slide

  30. ಡॻձ΍Δͧʂ

    View full-size slide

  31. ɾ'PVS,FZT.FUSJDTͷࠜڌ͕Θ͔͍ͬͯͳ͍
    ɾνʔϜͷ҆ఆੑɾεϧʔϓοτΛ਺஋Խ͢Δ
    ͜ͱʹର͢Δയવͱͨ͠ෆ҆ʢຊ౰ʹͦΕͰΘ
    ͔ΔΜͰ͔͢ʜʁʣ
    CONFIDENTIAL
    ஌ݟJTͳʹ

    View full-size slide

  32. ɾ·ͣ͸ݪయʹ͋ͨΔͱྑͦ͞͏
    ɾʮ-FBOͱ%FW0QTͷՊֶʯ
    ɾࣾ಺ͰಡॻձΛ։࠵͠Α͏
    CONFIDENTIAL
    ஌ݟJTͳʹ
    IUUQTCPPLJNQSFTTDPKQCPPLT

    View full-size slide

  33. ɾ֤νʔϜ͔Βʙ໊
    ɾશϓϩμΫτʹରͯ͠੠ֻ͚
    ɾ૯੎໊ˢ͕ू·ͬͨ
    CONFIDENTIAL
    ஌ݟJTͳʹ
    IUUQTCPPLJNQSFTTDPKQCPPLT

    View full-size slide

  34. ɾ֤ষΛಡΈͳ͕Β
    ɾʮͳΔ΄Ͳͱࢥͬͨ͜ͱʯ
    ɹʮࣗϓϩμΫτʹରͯ͠
    ɹɹɹͰ͖ͦ͏ͳ͜ͱʯ
    ɾ͜ΕΒΛ෇ᝦʹॻ͖ग़͠ͳ͕Βٞ࿦
    CONFIDENTIAL
    ஌ݟJTͳʹ

    View full-size slide

  35. ɾ૊৫จԽͷॏཁੑ
    ɾF/14΁ͷӨڹ
    ɾϑϩʔޮ཰ͷॏཁੑ
    ɾϦʔμʔγοϓͷॏཁੑ
    CONFIDENTIAL
    ݸਓతʹͳΔ΄Ͳͱࢥͬͨ͜ͱ

    View full-size slide

  36. ɾ૊৫จԽͷॏཁੑ
    ɾF/14΁ͷӨڹ
    ɾϑϩʔޮ཰ͷॏཁੑ
    ɾϦʔμʔγοϓͷॏཁੑ
    CONFIDENTIAL
    ݸਓతʹͳΔ΄Ͳͱࢥͬͨ͜ͱ
    ౷ܭ্ϋΠύϑΥʔϚʔͳ૊৫ͱ
    ؔ܎͕͋Δͱड़΂ΒΕ͍ͯͯྗڧ͍

    View full-size slide

  37. ɾʮ਺஋Λྑ͘͢Δ͜ͱʯͷҙຯ͕ݟ͑
    ͖ͯͨ
    ɹ👉୯ʹ։ൃ଎౓͕଎͘ͳΔɺͷΑ͏ͳ࿩Ͱ͸ͳ͔ͬͨ
    ɾࣗϓϩμΫτɾ૊৫ͷྑ͘Ͱ͖͍ͯΔ
    ෦෼΍৳ͼ୅ͷ͋Δ෦෼͕௫Ί͖ͯͨ
    CONFIDENTIAL
    ಡॻձΛܦͯ

    View full-size slide

  38. w લఏͷڞ༗
    w ՄࢹԽ͢Δͧʂʙ࠳ંฤʙ
    w ஌ݟΛ෇͚Δͧʂ
    w ՄࢹԽ͢Δͧʂʙ΍͍ͬͯͧ͘ฤʙ
    CONFIDENTIAL

    View full-size slide

  39. CONFIDENTIAL
    ՄࢹԽ͢Δͧʂ
    ʙ΍͍ͬͯͧ͘ฤʙ

    View full-size slide

  40. ՄࢹԽ͢Δͧʂʢ࠶ʣ

    View full-size slide

  41. ɾಉ͡ϓϩμΫτͰಡऀձʹࢀՃͨ͠
    ϝϯόʔΛूΊͯͲ͏͍͏؍఺͕ॏ
    ཁʹͳΓͦ͏͔ೝࣝΛἧ͑Δ
    CONFIDENTIAL
    ՄࢹԽ͢Δͧʂʢ࠶ʣ

    View full-size slide

  42. ɾ՝୊ʹײͨ͡΋ͷɺ͍·खΛଧͯ
    ͍ͯΔ΋ͷͳͲͷೝࣝΛ߹ΘͤΒΕͨ
    CONFIDENTIAL
    ՄࢹԽ͢Δͧʂʢ࠶ʣ

    View full-size slide

  43. ԿΛͲ͏ݟΔ👀

    View full-size slide

  44. ɾ࣮͸ࠓ͜͜Λ΍͍ͬͯΔ࠷தͰ͢ʼʻ
    CONFIDENTIAL
    ՄࢹԽ͢Δͧʂʢ࠶ʣ

    View full-size slide

  45. ɾ਺஋ΛݟΔҙٛ͸੔ཧͰ͖ͨ
    ɾՄࢹԽ͞Εͨ݁ՌΛͲ͏࢖͏͔Λ
    ੔ཧ͍ͯ͘͠ $4͞Μʹ͸൐૸͍ͯ͠
    ͖ͨͩେมײँ🙏

    CONFIDENTIAL
    ՄࢹԽ͢Δͧʂʢ࠶ʣ

    View full-size slide

  46. ɾϓϩμΫτͷվળ
    ɾνʔϜͱͯ͠ͷվળ
    ͜ͷ఺Ͱ෼͚ͯߟ͑ͨํ͕ྑͦ͞͏
    CONFIDENTIAL
    ԿΛͲ͏ݟΔ👀

    View full-size slide

  47. ɾσϓϩΠ΍ฏۉ෮چ࣌ؒʢ.553ʣ
    ɹ👉ϓϩμΫτͱͯ͠౤ࢿ͢Δ͔൑அ͢Δ
    ɹɹϙΠϯτʹͳΓͦ͏
    ɾத௕ظతͳτϨϯυϥΠϯ͕Ͳ͏ಈ͍͍ͯΔ͔
    ɹ👉৳ͼ୅΍վળ෦෼Λݟ͚ͭ΍͘͢ͳΓͦ͏
    CONFIDENTIAL
    ϓϩμΫτͷվળ

    View full-size slide

  48. ɾ࣮ײͱ࣮੷Ͱͷײ֮ͷζϨ͕ͳ͍͔
    ɹ👉ζϨ͕͋Δ෦෼͸Կ͔͋Γͦ͏
    ɾνʔϜͰͷվળࢪࡦ͕ఆྔతʹվળ͞Ε͍ͯΔ͔
    ɹ👉"Λվળͨ݁͠Ռ#͕ѱ͘ͳͬͨɺͳͲแׅత
    ͳ؍࡯͕Ͱ͖ͦ͏
    CONFIDENTIAL
    νʔϜͱͯ͠ͷվળ

    View full-size slide

  49. ɾ҆ఆੑ΍εϧʔϓοτΛՄࢹԽ͢Δͷ͸े
    ෼Ձ஋͕͋Γͦ͏
    ɾʮࠓʯ΍͍ͬͯΔࢪࡦ͕Ͳ͏͍͏݁Ռʹ݁
    ͼ͔ͭ͘౷ҰతͳࢦඪͰ؍࡯Ͱ͖Δͷ͸ྑ͞
    ͦ͏
    CONFIDENTIAL
    ՄࢹԽ͢Δͧʂʢ࠶ʣ

    View full-size slide

  50. ɾʮ-FBOͱ%FW0QTͷՊֶʯಡॻձ
    Λܦͯɺײ֮తʹྑ͍ͱࢥ͍ͬͯͨ
    ঢ়ଶ͕౷ܭ্ɺϋΠύϑΥʔϚʔͳ૊
    ৫ʹͱͬͯॏཁͱ͍͏͜ͱ͕ݴ͑Δ
    Α͏ʹͳͬͨͷ͸ྑ͔ͬͨ👏
    CONFIDENTIAL

    View full-size slide

  51. ɾʮՄࢹԽʯͷ໨తΛਂ΅͔ͬͯΒ
    ࠶νϟϨϯδͨ͠ͷ͸ྑ͔ͬͨ
    ɾ୹ظɾ௕ظɾνʔϜɾϓϩμΫτ
    ͦΕͧΕͷ੾ΓޱͰݟํ͕͋Γͦ͏ͱ͍͏
    ੔ཧ͕෇͍ͨͷ͸ྑ͔ͬͨ
    CONFIDENTIAL

    View full-size slide

  52. ϋΠύϑΥʔϚʔͳ૊৫ΛࢲͨͪͱҰॹʹ࡞ͬ
    ͍͖͍ͯͨʂ
    ͱࢥͬͨ͋ͳͨͷԠืΛ଴͍ͬͯ·͢ʂʂ🙇🙏
    IUUQTTNBSUISDPKQSFDSVJU
    CONFIDENTIAL
    8FBSFIJSJOH

    View full-size slide