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

Product Management Tips for In-house tools

Product Management Tips for In-house tools

LINE Developers
PRO

January 07, 2021
Tweet

More Decks by LINE Developers

Other Decks in Technology

Transcript

  1. ҏ౻ ޺޾
    -*/&גࣜձࣾ
    ࣾ಺πʔϧʹ͓͚Δ
    ϓϩμΫτ
    Ϛωδϝϯτͷצॴ

    View Slide

  2. ౰ηογϣϯͰ͓࿩͍ͨ͜͠ͱ

    ։ൃऀ͕։ൃऀ޲͚ʹ
    πʔϧɾαʔϏεɾ
    ϓϥοτϑΥʔϜΛ
    ఏڙ͢Δ͜ͱͰ
    ؕΓ͕ͪͳ՝୊ͱղܾࡦ

    View Slide

  3. ౰ηογϣϯͰ͓࿩͍ͨ͜͠ͱ

    ։ൃऀ͕։ൃऀ޲͚ʹ
    πʔϧɾαʔϏεɾ
    ϓϥοτϑΥʔϜΛ
    ఏڙ͢Δ͜ͱͰ
    ؕΓ͕ͪͳ՝୊ͱղܾࡦ
    ϓϩμΫτϚωδϝϯτͷ
    ؍఺͔Β
    զʑͷݱ৔Ͱͷ
    ܦݧɾࣦഊஊΛ΋ͱʹ

    View Slide

  4. ࢲͨͪͷνʔϜͱϓϩμΫτ

    -*/&ͷ4&5ͱͯ͠
    ࣾ಺։ൃऀ޲͚ʹ
    πʔϧΛఏҊɾ։ൃɾӡ༻

    View Slide


  5. 4FCBT

    ϚΠΫϩαʔϏεͷো֐ݪҼಛఆπʔϧ
    &&ςετΛ࣮ߦ͠ɺ
    ໰୊͕͋ΔՕॴΛ
    ;JQLJOͰݟ͑ΔԽ

    View Slide

  6. ύϑΥʔϚϯεςετ༻ϓϥοτϑΥʔϜ

    "ZBQFSG

    @Test
    public void xxx() {
    final long startTime = System.currentTimeMillis();
    try {
    get("http://localhost:8080/index.html")
    .then()
    .statusCode(200);
    Report.recordSuccess(
    System.currentTimeMillis() - startTime, 1);
    } catch (Exception e) {
    Report.recordFailure(
    System.currentTimeMillis() - startTime,"error");
    }
    }
    (SBGBOBͳͲͰ
    ݁ՌΛදࣔ

    View Slide


  7. 5FTUBCMF*OGSB

    ΦϯσϚϯυͰ
    ςετ؀ڥΛෳ੡Ͱ͖ΔαʔϏε

    View Slide

  8. ࢲͷ໾ׂɾ੹຿

    Ϧʔμʔͱͯ͠ҎԼΛܾఆ
    • ୭ͷԿΛղܾ͢Δ͔
    • Ͳͷॱ൪Ͱ͍ͭ·Ͱʹ࣮ݱ͢Δ͔
    • ͦͷ݁Ռͱͯ͠
    શࣾతʹͲͷΑ͏ͳՁ஋Λఏڙ͢Δ͔
    ˠ1E.΋࣮࣭݉೚

    View Slide

  9. ͳͥࣾ಺πʔϧͷ1E.ʁ

    ʰ5FDIOPMPHZ3BEBSʱ
    • ϓϩμΫτϚωδϝϯτͷ
    ஌ݟɾํ๏࿦Λࣾ಺πʔϧ܈ʹ
    ద༻͢ΔτϨϯυ͕ੈքతʹ֦େ
    • ҰํͰɺࣾ಺πʔϧ܈ͳΒͰ͸ͷ
    ஌ݟɾํ๏࿦͸·ͩ·ͩෆ଍
    5IPVHIU8PSLTࣾͷ
    ൒೥͓͖ͷ
    ۀքτϨϯυϨϙʔτ

    View Slide

  10. ஌ݟΛ੔ཧ͠
    ൃ৴͢Δ
    άϩʔόϧͳ
    νϟϯεͰ͸ʂʁ

    View Slide

  11. ஫ه

    ʮϢʔβʯͱʮεςʔΫϗϧμʔʯ͸
    ԼهͷΑ͏ʹ۠ผͯ͠ѻ͍·͢
    Ϣʔβ
    ։ൃऀͳͲ
    ϓϩμΫτΛ
    ࣮ࡍʹ࢖ͬͯ͘ΕΔਓ
    εςʔΫϗϧμʔ
    ໾һ΍্௕ͳͲ
    ϓϩμΫτ։ൃΛ
    ࢧԉͯ͘͠ΕΔਓ

    View Slide

  12. ΞδΣϯμ

    ࣾ಺πʔϧΏ͑ʹؕΓ͕ͪͳ՝୊
    ஌ݟɿࣾ಺πʔϧͰ΋Ϣʔβத৺
    ஌ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍
    ஌ݟɿϓϩϞʔγϣϯ
    ·ͱΊ

    View Slide


  13. ࣾ಺πʔϧΏ͑ʹؕΓ͕ͪͳ՝୊
    ஌ݟɿࣾ಺πʔϧͰ΋Ϣʔβத৺
    ஌ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍
    ஌ݟɿϓϩϞʔγϣϯ
    ·ͱΊ

    View Slide

  14. ͜ͷষͷϙΠϯτ

    <՝୊ઃఆ>
    ࢲ͕ͨͪ
    ࣮ࡍʹؕͬͨ՝୊ͱ
    ؍ଌͨ͠ʮෆ٢ͳ೏͍ʯ

    View Slide

  15. ࣾ಺πʔϧͷલఏ

    • ։ൃऀͷΈͰνʔϜฤ੒
    • ϓϩμΫτϚωʔδϟʔ
    ͸ʮ·ͣʯ͍ͳ͍
    • ϓϩμΫτϚωδϝϯτ
    Λ஌͍ͬͯΔਓ͸গͳ͍

    View Slide


  16. ։ൃʂ։ൃʂ։ൃʂ

    ؾ͕ͭ͘ͱ։ൃʹूத
    • Ϣʔβχʔζ͕໌֬Ͱͳ͍ͷʹ
    ։ൃλεΫͰຒ·ΔλεΫϘʔυ
    • ϦϦʔεΑΓ΋ϦϑΝΫλϦϯά
    • ंྠͷ࠶ൃ໌Λ΍Γ͕ͪ

    View Slide


  17. ։ൃʂ։ൃʂ։ൃʂ

    ։ൃʹڧ͍ؔ৺ͷ͋Δϝϯόʔ͚ͩͰ
    ϓϩμΫτ։ൃΛ͢Δͱʜ
    7BMVBCMF
    6TBCMF
    'FBTJCMF
    ࣗ෼ͨͪͷٕज़తʹ
    ࣗ෼ͨͪʹͱͬͯ
    ࣗ෼ͨͪͷٕज़తʹ

    View Slide


  18. ࣗ෼͕ͨͪϢʔβʂ

    Ϣʔβχʔζ͸શͯط஌
    ͱ͍͏ࢥ͍ࠐΈ
    • ʮࣗ෼ͨͪʹϢʔβʯͱ͍͏ʮޡೝʯ
    • ϢʔβχʔζͷݕূΛ͠ͳ͍
    • ৽ػೳͳͲͷσϞ΋͠ͳ͍

    View Slide


  19. ࣗ෼͕ͨͪϢʔβʂ

    ຊ౰ɾຊདྷͷϢʔβ͕
    ๬·ͳ͍ɾ࢖Θͳ͍΋ͷΛ࡞Γ͕ͪ
    7BMVBCMF
    6TBCMF
    'FBTJCMF
    ࣗ෼ͨͪʹͱͬͯ
    ࣗ෼ͨͪʹͱͬͯ
    ࣗ෼ͨͪʹͱͬͯ

    View Slide


  20. ʮ'JYʯͷޡṩ

    ҙࢥܾఆɾ߹ҙ͸
    ෴Βͳ͍ͱ͍͏ࢥ͍ࠐΈ
    • ࠷ॳʹ߹ҙͰ͖ͨ΋ͷͷ
    ʮ࡞ΓࠐΈʯʹूத͢Δ
    • σϞ΍ใࠂΛޙճ͠ʹ͕ͪ͠
    • εςʔΫϗϧμʔ͸มΘΒͣ
    ࢧԉ͠ଓ͚ͯ͘ΕΔͱࢥ͍ࠐΉ

    View Slide

  21. ͭΒ͍Ͱ͢ɻ

    View Slide

  22. ϙΠϯτ

    ٕज़తʹ༏Ε͍ͯΔ㱠ϢʔβՁ஋
    ϢʔβͱεςʔΫϗϧμʔʹ
    ΞϯςφΛுΔ͜ͱ͸ඞਢ
    ϓϩμΫτϚωδϝϯτͷߟ͑ํ͸
    ඞཁ͔ͭ༗ޮ

    View Slide

  23. 思い込みから
    一歩離れてみよう

    View Slide

  24. ղܾํ਑

    ։ൃʂ։ൃʂ։ൃʂ
    ࣗ෼͕ͨͪϢʔβʂ
    ʮ'JYʯͷޡṩ
    ࣾ಺πʔϧͰ΋
    Ϣʔβத৺
    εςʔΫϗϧμʔΛ
    ૄ͔ʹ͠ͳ͍
    ϓϩϞʔγϣϯ

    View Slide


  25. ࣾ಺πʔϧΏ͑ʹؕΓ͕ͪͳ՝୊
    ஌ݟɿࣾ಺πʔϧͰ΋Ϣʔβத৺
    ஌ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍
    ஌ݟɿϓϩϞʔγϣϯ
    ·ͱΊ

    View Slide

  26. ͜ͷষͷϙΠϯτ

    • ຊ౰ͷϢʔβΛ஌Δ
    • Ϣʔβχʔζͱ޲͖߹͏
    • ͦΕͰ΋ࣗ෼͕ࢼ͍ͨ͠
    ͜ͱ͕͋Δ৔߹ͷৼ෣͍

    View Slide

  27. ຊ౰ͷϢʔβΛ஌Δ

    ࣗ෼ͨͪ͸
    Ϣʔβ୅දͰ͸ͳ͍
    • ࣗ෼͕ͨͪ΍Γ͍ͨ͜ͱΛΰϦԡ͢
    ཧ༝ʹͯ͠͸͍͚ͳ͍ʢռΊʣ
    • ໘౗͕ΒͣɺϢʔβʹ࿩Λฉ͘
    • ͜ΕΒΛҙࣝ͢Δ͚ͩͰ΋݁ߏมΘΔ

    View Slide

  28. Ϣʔβχʔζͱ޲͖߹͏

    ௚઀࿩Λ͢Δͷ͕Ұ൪
    • ΠϯλϏϡʔɾςετɾσϞΛ
    ఆظԽɾ࢓૊Խ͢Δ
    • ৽ػೳͷσϞͰϢʔβͷؔ৺ΛߴΊΔ
    • ݴΘΕͨ΋ͷ͚ͩΛ࡞Δଶ౓͸ආ͚Δ

    View Slide

  29. 8IZT

    ͳͥ࡞Γ͍ͨͷ͔ʁ
    • Ϣʔβͷ՝୊Λղܾ͍ͨ͠ͷ͔ʁ
    • ࣗ෼͕ࢼͯ͠Έ͍ͨ͜ͱ͕͋Δͷ͔ʁ
    • ྆ऀΛͭͳ͛ΒΕͳ͍͔ʁ
    ˠ8JOXJOʹͰ͖ΔͳΒ͹ͭͳ͛Α͏

    View Slide

  30. ʢࣄྫʣϏϧυ݁Ռͷ௨஌ํ๏

    View Slide

  31. ʢࣄྫʣϏϧυ݁Ռͷ௨஌ํ๏

    4&5νʔϜͰ͸ɺ
    4MBDLͰͷ௨஌͕
    Ұൠత

    View Slide

  32. ʢࣄྫʣϏϧυ݁Ռͷ௨஌ํ๏

    Ϣʔβ͔Β͋Δ೔ɺ
    (JU)VCͷ13ը໘Ͱ
    ௨஌ͯ͠ͱཁ๬͕

    View Slide

  33. ʢࣄྫʣϏϧυ݁Ռͷ௨஌ํ๏

    ҰՕॴͰશ෦ݟ͍ͨ
    τϨϯυ͕
    શࣾతʹग़͖͍ͯͯͨ

    View Slide

  34. ·ͱΊ

    • ਅ伨ʹϢʔβϑΝʔετ
    • ݴ͍ͳΓ͸ආ͚Δ
    • ࣗ෼͕΍Γ͍ͨ͜ͱͱ
    Ϣʔβͷ՝୊ղܾͱΛ
    ϦϯΫͤ͞Δ͜ͱ͸ΞϦ

    View Slide


  35. ࣾ಺πʔϧΏ͑ʹؕΓ͕ͪͳ՝୊
    ஌ݟɿࣾ಺πʔϧͰ΋Ϣʔβத৺
    ஌ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍
    ஌ݟɿϓϩϞʔγϣϯ
    ·ͱΊ

    View Slide

  36. ͜ͷষͷϙΠϯτ

    εςʔΫϗϧμʔͷ
    ࢧ࣋ɾڠྗͷऔΓ෇͚ͷ
    ඞཁੑͱͦͷํ๏

    View Slide

  37. ڵຯɾؔ৺͸ࣦΘΕಘΔ

    ཁ݅΍࢓༷͸ෆมͰ͔͢ʁ
    • Ұ౓ͷ߹ҙͰຬ଍ͯ͠͸ʢΞΧϯʣ
    • ڵຯɾؔ৺͸ৗʹมΘΔ
    • ۀ຿ͷ༏ઌ౓ͱಉ͡
    ˠৗʹڵຯɾؔ৺ΛҾ͘࢓૊Έ͕ඞཁ

    View Slide

  38. ఆظతͳσϞ

    ಈ͘΋ͷͷΠϯύΫτΛϑϧ׆༻͢Δ
    ։ൃऀ͔ͩΒͦ͜ͷ
    ڧΈΛ׆͔ͦ͏ʂ

    View Slide

  39. ʮ஍ਤʯͷఆظతͳڞ༗ɾߋ৽

    ݱ࣌఺ͷΰʔϧͱͦͷಓےΛݟͤΔ

    View Slide

  40. શͯͷཁٻʹԠ͑ͯ΋μϝ

    /PDPEFNPOLFZ
    • Ϧιʔε͸༗ݶ
    • ݱঢ়࣮ݱՄೳͳ͜ͱΛઆ໌͢Δ͜ͱ͸
    ϓϩͷৼΔ෣͍
    • ༏ઌॱҐ͸੹೚Λ͚࣋ͬͯͭΔ
    • ͋͘·Ͱύʔτφʔͱͯ͠ৼΔ෣͏

    View Slide

  41. ࣾ಺πʔϧͷσϞಈըΛ
    ϥϯνͷ৔Ͱ໾һʹ঺հ
    ˣ
    ͦͷ໾һ͕ଞͷ໾һʹσϞಈըΛڞ༗
    ˣ
    ࢲͨͪͷ஌Βͳ͍͏ͪʹ
    ࣾ಺πʔϧͷར༻ऀ͕૿͍͑ͯͨʢʂʣ
    ʢࣄྫʣσϞಈըΛ࡞ͬͯΈͨ

    View Slide

  42. ·ͱΊ

    • ڵຯɾؔ৺ΛҾ͘͜ͱ
    ཱ೿ͳ࢓ࣄ
    • ܾఆΛෆมͱ͸
    ࢥ͍ࠐ·ͳ͍
    • ݴ͍ͳΓ͸ආ͚Δ

    View Slide


  43. ࣾ಺πʔϧΏ͑ʹؕΓ͕ͪͳ՝୊
    ஌ݟɿࣾ಺πʔϧͰ΋Ϣʔβத৺
    ஌ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍
    ஌ݟɿϓϩϞʔγϣϯ
    ·ͱΊ

    View Slide

  44. ͜ͷষͷϙΠϯτ

    1SPEVDU.BSLFUJOH
    • ૝ఆϢʔβ͕ࣾ಺։ൃऀ
    Ͱ͋ͬͯ΋ඞཁ
    • ͨͩ͠޻෉΋ඞཁ

    View Slide

  45. ৘ใ͸Φʔϓϯ͔ͭͭ͘͜͠

    • ڵຯɾؔ৺Λשى͠ଓ͚Δ
    • ఆظతͳσϞ
    • ʮ஍ਤʯͷఆظతͳڞ༗ɾߋ৽
    • ৘ใ͸ৗʹΞΫηεͰ͖ΔΑ͏ʹ͢Δ
    • ςϨϏ$.͘Β͍ͭ͘͜͠
    • ࣗવͱݴ༿Λ͍ͭͯग़Δ·Ͱ

    View Slide

  46. ςΩετͱσϞͷ྆࣠Ͱ

    ͲͪΒ΋΍Δʂ

    View Slide

  47. νϟϯωϧΛ૿΍͢

    • ͚ͭͩͰ͸໨ʹ͔ͭͳ͍
    • ࢹքʹೖΓࠐΜͰ
    ೝ஌·Ͱ͍࣋ͬͯ͘
    • λʔήοτ͕޷Ή
    νϟϯωϧΛૂ͓͏

    View Slide

  48. ࢲͷൃ৴ͷ৔͕ΞδϟΠϧܥʹภΓ͕ͪ
    ˣ
    ,VCFSOFUFTɾ2"ܥίϛϡχςΟʹ
    ൃ৴৔ॴΛ֦େ
    ˣ
    5XJUUFSܦ༝Ͱ
    ࣾһ͔ΒίϯλΫτΛड͚ͨʢʂʣ
    ʢࣄྫʣൃ৴৔ॴͷݟ௚͠

    View Slide

  49. ·ͱΊ

    • ࣾ಺πʔϧͰ΋
    ϓϩϞʔγϣϯ͸ඞਢ
    • Ϛϧννϟϯωϧ
    • ೝ஌ͤ͞Δ·Ͱଓ͚Δ

    View Slide


  50. ࣾ಺πʔϧΏ͑ʹؕΓ͕ͪͳ՝୊
    ஌ݟɿࣾ಺πʔϧͰ΋Ϣʔβத৺
    ஌ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍
    ஌ݟɿϓϩϞʔγϣϯ
    ·ͱΊ

    View Slide

  51. ߦಈࢦ਑ͷTXJUDI

    ։ൃऀ໨ઢ͔Β
    ϓϩμΫτϚωδϝϯτ΁
    • ผͷࢹ఺Λ୯७ʹ஌Βͳ͍͚͔ͩ΋
    • ڭ͑Ε͹ɺΩνϯͱ׆༻ͯ͘͠ΕΔ
    • ίʔν͸ɺ͍ͨํ͕ྑ͍

    View Slide

  52. ։ൃऀͷϝϦοτΛ׆͔͢

    • ࣮ࡍʹ࡞ͬͯࢼͤΔ
    • ΑΓݱ࣮తͳϞϊͰ
    σϞͰ͖Δ
    • ϝϦοτʹ஫ྗͯ͠
    ؾ࣋ͪΑ͘ͳΓ͗͢ͳ͍

    View Slide

  53. %FW0QTͰଉਧΛਧ͖ࠐΉ

    ࢓૊ΈΛ࠷ॳʹ࡞Ζ͏
    • ϢʔβςετΛ͠΍͘͢ͳΔ
    • ݕূΛܧଓతʹߦ͍΍͘͢ͳΔ
    • 1JWPUΛؾ݉Ͷͳ͘Ͱ͖Δ
    1E.º %FW0QT808

    View Slide

  54. ʮࣗݾ࣮ݱʯ͸Մೳ

    ࣗ෼͕΍Γ͍ͨ͜ͱͱ
    Ϣʔβͷ՝୊ղܾͱΛ
    ϦϯΫͤ͞Δࢹ఺ͱߦಈ͸
    ͋ͬͯ΋ྑ͍

    View Slide

  55. 1E.ʹର͢Δ։ൃऀͷٙ೦

    ίʔυͷ೏͍͕
    ͠ͳ͍
    ʢ৴༻Ͱ͖ͳ͍ʣ

    View Slide

  56. ྆ํͱ΋ඞཁ

    ϓϩμΫτ
    Ϛωδϝϯτ
    º
    ΤϯδχΞϦϯά

    View Slide

  57. Ѫ͞ΕΔ
    %FW&YΛ
    ໨ࢦ͠ଓ͚Α͏

    View Slide