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

質とスピード(2020秋100分拡大版) / Quality and Speed 2020 Autumn Edition

質とスピード(2020秋100分拡大版) / Quality and Speed 2020 Autumn Edition

質とスピード(2020秋100分拡大版)
2020/11/20 @ JaSST'20 Kyushu

Takuto Wada
PRO

November 20, 2020
Tweet

More Decks by Takuto Wada

Other Decks in Programming

Transcript

  1. ࣭ͱεϐʔυ
    ࿨ా୎ਓ [email protected]

    ʙιϑτ΢ΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ
    /PW !+B445,ZVTIVجௐߨԋ
    ʢळόʔδϣϯʣ

    View Slide

  2. t-wada
    t_wada
    twada

    #jasstkyushu
    ࣗݾ঺հ

    View Slide

  3. t-wada
    t_wada
    twada

    #jasstkyushu
    ࣗݾ঺հ
    illustrated by @mty_mno

    View Slide

  4. ٕज़ॻͷग़൛ʹؔΘ͍ͬͯ·͢

    View Slide

  5. ΑΖ͓͘͠ئ͍͠·͢
    #jasstkyushu
    illustrated by @mty_mno

    View Slide

  6. ߥͿΔ࢛ఱԦ͕͋ΒΘΕͨʂ
    ༩͑ΒΕͨ࣌ؒʹରͯ͠΍Δ΂͖͜ͱ͕ଟ͗͢Δ৔߹ɺͲ͏͢΂͖͔
    B
    είʔϓΛ࡟Δ
    C
    ΋ͬͱਓΛ૿΍͢
    D
    ϦϦʔε೔ΛԆظ͢Δ
    E
    ඼࣭Λ٘ਜ਼ʹ͢Δ

    ʰΞδϟΠϧαϜϥΠʱQ

    View Slide

  7. w୹ظతʹ͸ಘΒΕΔ
    wதظతʹ͸ٯޮՌʹͳΔ
    w௕ظతʹ͸க໋ইʹͳΔ
    ඼࣭Λ٘ਜ਼ʹ͢Ε͹εϐʔυ͸ಘΒΕΔʁ

    View Slide

  8. ʮ୹ظతதظతʯͷڥ໨͸ʁ
    ͜͜Ͱ͍͏ʮ඼࣭ʯͱ͸ʁ

    View Slide

  9. ʮ୹ظతதظతʯͷڥ໨͸ʁ
    ͜͜Ͱ͍͏ʮ඼࣭ʯͱ͸ʁ

    View Slide

  10. l඼࣭ͱ͸୭͔ʹͱͬ
    ͯͷՁ஋Ͱ͋Δz
    (FSBME8FJOCFSH
    IUUQTXXXBNB[PODPKQEQ9

    View Slide

  11. Accessibility
    Adaptability
    Administrability
    Analyzability
    Auditability
    Availability
    Calibrability
    Changeability
    Compatibility
    Configurability
    Exploitability
    Extensibility
    Flexibility
    Functionality
    Installability
    Integrability
    Internationalizab
    ility
    Interoperability
    Learnability
    Maintainability
    Marketability
    Maturity
    Modifiability
    Operability
    Personalizability
    Portability
    Recoverability
    Reliability
    Replaceability
    Reusability
    Scalability
    Security
    Sensitivity
    Stability
    Suitability
    Supportability
    Testability
    Traceability
    Transactionality
    Understandability
    Upgradeability
    Usability
    ... and lots
    more!
    JMJUJFT

    View Slide

  12. IUUQTXXXKVTFPSKQEFQBSUNFOUBMQPJOUIUNM
    ङ໺Ϟσϧ

    View Slide

  13. ʢ͓٬༷͔Βʣݟ͑Δ඼࣭ͱݟ͑ͳ͍඼࣭
    w֎෦඼࣭ͱ಺෦඼࣭
    wར༻࣌ͷ඼࣭ͱ੡඼඼࣭
    wػೳཁ݅ͱඇػೳཁ݅

    View Slide

  14. External Quality:
    Correctness, Usability, Efficiency, Reliability,
    Integrity, Adaptability, Accuracy, Robustness
    Internal Quality:
    Maintainability, Flexibility, Portability,
    Re-usability, Readability, Testability,
    Understandability
    ֎෦඼࣭ͱ಺෦඼࣭

    View Slide

  15. ιϑτ΢ΣΞͷ඼࣭Λ֎෦ࢦඪͰಛ௃͚ͮΔਓ͸ଟ͍ɻਖ਼͍͜͠ͱΛ͢
    Δɺόά͕ͳ͍ɺ଎͍ɺͳͲͩɻ͕ͩɺͦΕΒ͸ΑΓਂ͍ݪҼͷ঱ঢ়ʹ
    ͗͢ͳ͍ɻ
    ຊॻͰઆ໌͢Διϑτ΢ΣΞͷ඼࣭͸಺෦඼࣭Ͱ͋Δɻ಺෦඼࣭Λ࡞Γ
    ࠐΜͩ݁Ռͱͯ͠ɺ֎෦඼࣭ͱͯ͠ఆٛ͞ΕΔಛੑͷ࣮ݱʹۙͮ͘͜ͱ
    ͕Ͱ͖Δɻ಺෦඼࣭͸݁ՌͰ͸ͳ͘ݪҼͰ͋Γɺྑ͍ιϑτ΢ΣΞ͕උ
    ͍͑ͯΔ΂͖΋ͷͩɻ
    ʰϨΨγʔίʔυ͔Βͷ୤٫ʱQ

    View Slide

  16. External Quality:
    Correctness, Usability, Efficiency, Reliability,
    Integrity, Adaptability, Accuracy, Robustness
    Internal Quality:
    Maintainability, Flexibility, Portability,
    Re-usability, Readability, Testability,
    Understandability
    ಺෦඼࣭ʢ*OUFSOBM2VBMJUZʣ
    ࣗ෼ͨͪͷࣹఔ಺ʹ͋Δ
    ಺෦඼࣭ͷํΛ٘ਜ਼ʹ͢Δͱ͍͏
    ൑அΛ͕ͪ͠ͳͷͰ͸ͳ͍͔

    View Slide

  17. ࿨ా୎ਓ [email protected]

    ࣭ͱεϐʔυ
    ʙιϑτ΢ΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ

    View Slide

  18. ࿨ా୎ਓ [email protected]

    ಺෦඼࣭ͱεϐʔυ
    ʙιϑτ΢ΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ

    View Slide

  19. Ͱ͸ͲͷΑ͏ͳ
    ɹ಺෦඼࣭Λ
    ٘ਜ਼ʹ๋͛ͨͷ͔

    View Slide

  20. External Quality:
    Correctness, Usability, Efficiency, Reliability,
    Integrity, Adaptability, Accuracy, Robustness
    Internal Quality:
    Maintainability, Flexibility, Portability,
    Re-usability, Readability, Testability,
    Understandability
    ಺෦඼࣭ʢ*OUFSOBM2VBMJUZʣ

    View Slide

  21. External Quality:
    Correctness, Usability, Efficiency, Reliability,
    Integrity, Adaptability, Accuracy, Robustness
    Internal Quality:
    Maintainability, Flexibility, Portability,
    Re-usability, Readability, Testability,
    Understandability
    อकੑʢ.BJOUBJOBCJMJUZʣ

    View Slide

  22. อकੑ
    Maintainability

    View Slide

  23. #PFIN #SPXO BOE-JQPXT2VBMJUZ$IBSBDUFSJTUJDT

    IUUQTXXXUIPNBTBMTQBVHIPSHQVCGOEJMJUZIUNM

    View Slide

  24. #PFIN #SPXO BOE-JQPXT2VBMJUZ$IBSBDUFSJTUJDT

    IUUQTXXXUIPNBTBMTQBVHIPSHQVCGOEJMJUZIUNM

    View Slide

  25. #PFIN #SPXO BOE-JQPXT2VBMJUZ$IBSBDUFSJTUJDT

    IUUQTXXXUIPNBTBMTQBVHIPSHQVCGOEJMJUZIUNM

    View Slide

  26. .BJOUBJOBCJMJUZʢอकੑʣΛߏ੒͢Δ΋ͷ
    w5FTUBCJMJUZςετ༰қੑ
    w6OEFSTUBOEBCJMJUZཧղ༰қੑ
    w.PEJpBCJMJUZมߋ༰қੑ

    View Slide

  27. w ࣮ߦԁ׈ੑʢ0QFSBCJMJUZʣ
    w ࣗಈ࣮ߦ͕༰қͰ͔ͭߴ଎
    w ؍ଌ༰қੑʢ0CTFSWBCJMJUZʣ
    w ςετ݁Ռͷऔಘɾظ଴஋ൺֱΛࣗಈԽ͠΍͍͢
    w ੍ޚ༰қੑʢ$POUSPMMBCJMJUZʣ
    w ࣄલঢ়ଶΛ੍ޚ͠ɺςετର৅Λࣗಈૢ࡞͠΍͍͢
    w ෼ղՄೳੑʢ%FDPNQPTBCJMJUZʣ
    w ςετର৅ͷ੾Γग़͠ɺςετ؀ڥ΁ͷ෦෼ஔ׵͕༰қ
    IUUQTTQFBLFSEFDLDPNHPZPLJUFTUBCJMJUZJOFNCFEEFETPGUXBSF
    ࣗಈςετʹ͓͚ΔςελϏϦςΟ

    View Slide

  28. ࿨ా୎ਓ [email protected]

    ಺෦඼࣭ͱεϐʔυ
    ʙιϑτ΢ΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ

    View Slide

  29. ࿨ా୎ਓ [email protected]

    อकੑͱεϐʔυ
    ʙιϑτ΢ΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ

    View Slide

  30. อकੑΛ
    ٘ਜ਼ʹ๋͛Δͱ
    Ͳ͏ͳΔ͔

    View Slide

  31. ʮ͋ͱͰΫϦʔϯʹ͢Ε͹͍͍Αɻઌʹࢢ৔ʹग़͞ͳ͚Ε͹ʂʯ
    ։ൃऀ͸ͦ͏΍͍ͬͯͭ΋͝·͔͢ɻ͕ͩɺ͋ͱͰΫϦʔϯʹ͢Δ͜ͱ͸ͳ
    ͍ɻࢢ৔͔ΒͷϓϨογϟʔ͸ࢭ·Βͳ͍͔Βͩɻʮઌʹࢢ৔ʹग़͞ͳ͚
    Ε͹ʯͱ͍͏͜ͱ͸ɺޙΖʹڝ߹ଞ͕ࣾେ੎͍Δͱ͍͏͜ͱͰ͋Δɻڝ߹
    ଞࣾʹ௥͍ൈ͔Εͳ͍ͨΊʹ͸ɺ͜Ε͔Β΋૸Γଓ͚Δ͔͠ͳ͍ɻ
    ͦͷ݁Ռɺ։ൃऀ͸ϞʔυΛ੾Γସ͑Δ͜ͱ͕Ͱ͖ͳ͍ɻ࣍ͷػೳɺ·ͨ
    ࣍ͷػೳɺ·ͨ·ͨ࣍ͷػೳΛ௥Ճ͢Δ͜ͱʹͳΓɺίʔυΛΫϦʔϯʹ
    ͢Δ͜ͱ·Ͱख͕ճΒͳ͍ɻ
    ͦͯ͠ɺ่յ͕࢝·Δɻੜ࢈ੑ͕θϩʹ͍͍ۙͮͯ͘ɻ
    ʰ$MFBO"SDIJUFDUVSFʱQ

    View Slide

  32. IUUQTUXJUUFSDPNOFLPZBTUBUVT

    View Slide

  33. IUUQTNBSUJOGPXMFSDPNBSUJDMFTJTRVBMJUZXPSUIDPTUIUNM
    อकੑͷ௿͕͞΋ͨΒ͢΋ͷ
    ͻͱͭͻͱͭͷมߋʹ
    ༨ܭͳ͕͔͔࣌ؒΔ

    View Slide

  34. อकੑΛ٘ਜ਼ʹ͢Ε͹εϐʔυ͸ಘΒΕΔʁ
    w୹ظతʹ͸ಘΒΕΔ
    wதظతʹ͸ٯޮՌʹͳΔ
    w௕ظతʹ͸க໋ইʹͳΔ

    View Slide

  35. Ͱ͸
    εϐʔυΛམͱͤ͹
    อकੑ͸্͕Δʁ

    View Slide

  36. IUUQTUXJUUFSDPNWPMVOUBTTUBUVT

    View Slide

  37. IUUQTPTBIBUFOBCMPHDPNFOUSZ
    ٕज़ྗͷ͋Δਓ͸͋Δఔ౓ٸ͍Ͱ࡞ͬͨͱͯ͠΋Ұఆ
    Ҏ্ͷ඼࣭ͷίʔυΛॻ͘͠ɺҙਤతʹ඼࣭Λམͱ͠
    ͨͱͯ͠΋଎౓͸͋·Γ্͕Βͳ͍ɻ
    ٯʹɺٕज़ྗ͕ߴ͘ͳ͍ਓ͕࣌ؒΛ͔͚ͯ࡞ͬͨͱ͠
    ͯ΋ͦͷਓͷٕज़ྗҎ্ͷ඼࣭ͷίʔυ͸ॻ͚ͳ͍ɻ

    View Slide

  38. ܦӦతͳཁٻʹ߹Θͤͯɺ༩͑ΒΕͨ։ൃظ͔ؒΒॊೈʹԚ͞ͱ଎͞Λબ୒͢Δͱ͍͏Α͏
    ͳث༻ͳܳ౰͸΄ͱΜͲෆՄೳͩͱ͍͑·͢ɻ͜Ε͸ɺۃΊͯجૅతͳͱ͜ΖͰ͋Ε͹ଟগ
    ͸Ͱ͖Δ͔΋͠Ε·ͤΜ͕ɺ࣮ࡍʹ͸ɺιʔείʔυ͕Ԛͯ͘஗͍ਓ΋͍Ε͹ɺ៉ྷͰ଎͍
    ਓ΋ଟ͍͘·͢ɻ
    ʰΤϯδχΞϦϯά૊৫࿦΁ͷট଴ʱQ
    ΫΠοΫμʔςΟͷਆ࿩

    View Slide

  39. ͭ·Γ
    τϨʔυΦϑͰ͸ͳ͍

    View Slide

  40. IUUQTUXJUUFSDPNLBU[DIBOHTUBUVT

    View Slide

  41. ࣭ อकੑ

    εϐʔυ
    τϨʔυΦϑͱߟ͑Δͷ͸యܕతͳޡղ
    നؙ෇͖໼ҹෛͷ઀ଓࠜݩ͕૿͑Ε͹ઌ͸ݮΔɻࠜݩ͕ݮΕ͹ઌ͸૿͑Δ

    View Slide

  42. ඼࣭Λ٘ਜ਼ʹ͢Δͷ͸ɺޮՌతͳίϯτϩʔϧํ๏Ͱ͸ͳ͍ɻ඼࣭
    ͸੍ޚม਺Ͱ͸ͳ͍ɻ
    ௿඼࣭Λड͚ೖΕΔ͜ͱͰɺϓϩδΣΫτ͕଎͘ͳΔ͜ͱ͸ͳ͍ɻ
    ߴ඼࣭Λཁٻ͢Δ͜ͱͰɺϓϩδΣΫτ͕஗͘ͳΔ͜ͱ΋ͳ͍ɻ
    Ή͠Ζ඼࣭ΛߴΊΔ͜ͱͰɺσϦόϦʔ͕ߴ଎ʹͳΔ͜ͱ͕ଟ͍ɻ
    ඼࣭ج४ΛԼ͛ͯ͠·͏ͱɺσϦόϦʔ͕஗͘ͳΓɺ
    ༧ଌͰ͖ͳ͘ͳͬͯ͠·͏ɻ
    ʰΤΫετϦʔϜϓϩάϥϛϯάʱQ

    View Slide

  43. ઌ΄Ͳͷ։ൃऀͷ͝·͔͠͸ɺ่յͨ͠ίʔυΛॻ͚͹௕ظతʹ͸஗͘ͳ
    Δ΋ͷͷɺ୹ظతʹ͸଎౓্͕͕Δͱ͍͏ߟ͑ํʹ΋ͱ͍͍ͮͯΔɻ
    ͜ͷ͜ͱΛ৴͍ͯ͡Δ։ൃऀ͸ɺ่յͨ͠ίʔυΛॻ͘Ϟʔυ͔Βɺ
    ͍ͣΕͲ͔͜ͰΫϦʔϯʹ͢ΔϞʔυʹ੾ΓସΘΕΔɺͱ͍͏
    ʢ΢αΪͱΧϝͷʣ΢αΪͷΑ͏ͳࣗ৴Λ͍࣋ͬͯΔɻ
    ͕ͩɺͦΕ͸ࣄ࣮ޡೝͰ͋Δɻ
    ࣄ࣮͸ɺ୹ظతʹ΋௕ظతʹ΋ɺ่յͨ͠ίʔυΛॻ͘΄͏͕
    ΫϦʔϯͳίʔυΛॻ͘ΑΓ΋ৗʹ஗͍ɻ
    ʰ$MFBO"SDIJUFDUVSFʱQQ

    View Slide

  44. ୹ظతʹ΋௕ظతʹ΋ɺ
    ่յͨ͠ίʔυΛॻ͘΄͏͕
    ΫϦʔϯͳίʔυΛॻ͘ΑΓ΋
    ৗʹ஗͍ɻ
    #PC.BSUJO
    ʰ$MFBO"SDIJUFDUVSFʱQ

    View Slide

  45. ࠷ߴͷ։ൃऀ͕͍ͪ͹Μ͖Ε͍޷͖ͳ։ൃऀͰ͋Δ͜ͱʹؾͮ
    ͍ͨͱ͖ɺࢲ͸ͼͬ͘Γͨ͠ɻ଎͍ϓϩάϥϚʔ͸ࡶͳϓϩά
    ϥϚʔͩͱࢥ͍͔ͬͯͨΒͩɻ
    ͕ͩɺ࣮ࡍ͸ਖ਼൓ରͩͬͨɻࢲ͕ձͬͨதͰ࠷଎ͷϓϩάϥ
    Ϛʔ͸ɺίʔυΛѻ͍΍͍͢Α͏ʹอͭ͜ͱʹಛʹ஫ҙΛ෷ͬ
    ͍ͯͨɻ
    ʰϨΨγʔίʔυ͔Βͷ୤٫ʱQ

    View Slide

  46. ίʔυΛॻ͘଎͞ͱίʔυͷ͖Ε͍͞ʹؔ࿈͕͋Δͱೝࣝͨ͠
    ͋ͱͰ΋ɺࢲ͸ͦͷͭͷ͍͋ͩͷҼՌؔ܎Λݟ͚ͭΔͷʹ࣌
    ؒΛཁͨ͠ɻ
    ίʔυͷ඼࣭Λߴ͘อ͍ͬͯͨʮʹ΋ؔΘΒͣʯ଎͍ͷͰ͸ͳ
    ͍ɻίʔυͷ඼࣭Λߴ͘อ͍ͬͯͨʮ͔Βͦ͜ʯ଎͍ͷͩɻ
    ͜ͷ͜ͱΛཧղͨ͠Βɺιϑτ΢ΣΞ։ൃʹର͢Δ
    ݟํ͕มΘͬͨɻ
    ʰϨΨγʔίʔυ͔Βͷ୤٫ʱQQ

    View Slide

  47. ίʔυͷ඼࣭Λߴ͘อ͍ͬͯͨ
    ʮʹ΋ؔΘΒͣʯ଎͍ͷͰ͸ͳ
    ͍ɻίʔυͷ඼࣭Λߴ͘อͬͯ
    ͍ͨʮ͔Βͦ͜ʯ଎͍ͷͩɻ
    %BWJE4DPUU#FSOTUFJO
    ʰϨΨγʔίʔυ͔Βͷ୤٫ʱ
    QQ

    View Slide

  48. ࣭ อकੑ

    εϐʔυ
    ίʔυͷ඼࣭Λ٘ਜ਼ʹ͔ͨ͠Β଎͍ͷͰ͸ͳ͘
    നؙ෇͖໼ҹෛͷ઀ଓࠜݩ͕૿͑Ε͹ઌ͸ݮΔɻࠜݩ͕ݮΕ͹ઌ͸૿͑Δ

    View Slide

  49. ࣭ อकੑ

    εϐʔυ
    ίʔυͷ඼࣭Λߴ͘อ͍ͬͯͨʮ͔Βͦ͜ʯ଎͍
    ໼ҹਖ਼ͷ઀ଓࠜݩ͕૿͑Ε͹ઌ΋૿͑Δɻࠜݩ͕ݮΕ͹ઌ΋ݮΔ

    View Slide

  50. Ͱ͸
    εϐʔυ͔Β࣭΁ͷ
    Өڹ͸Ͳ͏͔

    View Slide

  51. ࣭ อकੑ

    εϐʔυ
    Ͱ͸εϐʔυ͔Β࣭ อकੑ
    ΁ͷӨڹ͸Ͳ͏͔

    View Slide

  52. ඼࣭͸ѱ͍ͱجຊతʹख໭ΓΛੜΉͷͰ଎౓ʹ௓ͶฦΔɻख໭ͬͯ
    Δ࣌ؒ͸ֶͼΛ͏·ͳ͍࣌ؒɻ඼࣭ΛԼ͛Δͱ͍͏൑அ͸ֶͼͷ଎
    ౓௿ԼΛڐ༰͢Δͱ͜ͱɻ
    ैདྷͷమ൘ ͩͱޡղ͞Ε͍ͯͨ
    ͩͬͨ඼࣭ͯͯ͢଎౓͋͛Α͏͸
    ඼࣭͸ྼԽ͢Ε͹ख໭Γ͕ൃੜ͢Δ͚ͩͰɺ݁ہ͸ϦʔυλΠϜͷ
    ૿Ճʹ௓ͶฦΔͷͰ΍Ί·͠ΐ͏ɻ
    ඼࣭͸ྼԽ͢Ε͹ϦʔυλΠϜͷ૿Ճʹ௓ͶฦΔ
    IUUQJLFZIBUFCMPKQFOUSZ

    View Slide

  53. ϦʔυλΠϜ͕૿Ճ͢ΔͱԾઆݕূϓϩηε͕ճΒͳ͍
    IUUQJLFZIBUFCMPKQFOUSZ

    View Slide

  54. ຊ౰ͷؔ܎

    View Slide

  55. ຊ౰ͷؔ܎ɹ
    w಺෦඼࣭͕εϐʔυΛੜΈ
    wεϐʔυֶ͕ͼͷϧʔϓΛੜΈ
    wֶͼͷϧʔϓ͕֎෦඼࣭ΛੜΈ
    w֎෦඼࣭͕ڝ૪ྗΛੜΈ
    wڝ૪ྗ͕ച্ΛੜΈ
    wച্͕಺෦඼࣭ΛҭΉ
    ˞ྑ͍΋ͷΛ࡞Ε͹ചΕΔͱ
    ͍͏Θ͚Ͱ͸ͳ͍ͷͰɺ͜͜
    ͸ͦ͏؆୯Ͱ΋୯७Ͱ΋ͳ͍

    View Slide


  56. εϐʔυ
    ຊ౰ͷؔ܎ɹ
    ໼ҹਖ਼ͷ઀ଓࠜݩ͕૿͑Ε͹ઌ΋૿͑Δɻࠜݩ͕ݮΕ͹ઌ΋ݮΔ

    View Slide

  57. ʮ࣭WTεϐʔυʯͱ͍͏֓೦͸ࠜຊతʹؒҧ͍ͬͯΔͱࢥ͏ɻ
    ͩͬͯૉૣ͘։ൃΛ͠ͳͯ͘͸؀ڥɺ͋Δ͍͸ࣗ෼ͷ؀ڥͷཧղͷม
    Խʹιϑτ΢ΣΞ͕͍ͭͯ͜Εͣɺιϑτ΢ΣΞ͕ղܾ͢΂͖໰୊͕
    ղܾͰ͖ͳ͘ͳΓɺඞવతʹ࣭͕མͪͯ͠·͏ɻ
    ٯʹɺ࣭ͷߴ͍ιϑτ΢ΣΞΛॻ͔ͳͯ͘͸ɺͳʹ͔͋Δ౓ʹΠϯϑ
    ϥ่͕յ͠ɺૉૣ͘։ൃΛ͢Δ͜ͱ͕Ͱ͖ͳ͘ͳͬͯ͠·͏ɻΠϯϑ
    ϥͷ่յ͸ɺ΍ΔؾΛ࡟͙ͷͰಛʹ͕ͨͪѱ͍ɻ
    IUUQTLOPIKQBOTXFSTEDB
    Evan Priestley

    View Slide

  58. ࣭WTεϐʔυͱ͍͏ೋ཯എ൓ͷؔ܎͸ɺ
    ہॴతͳ΋ͷͰ͔͠ͳ͍ɻ
    େҬతʹ͸ɺยํΛ٘ਜ਼ʹͨ͠৔߹ɺ஌
    Β͵͏ͪʹ΋͏Ұͭ΋٘ਜ਼ʹ͍ͯ͠Δͱ
    ͍͏͜ͱΛ͓๨Εͳ͘ɻ
    IUUQTLOPIKQBOTXFSTEDB
    Evan Priestley

    View Slide

  59. ݱ୅ʹ͓͚Δ࣭ͱεϐʔυͭͷΩʔϝτϦΫε
    wϦʔυλΠϜ
    wσϓϩΠස౓
    w.553 ฏۉम෮࣌ؒ

    wมߋࣦഊ཰
    IUUQTXXXBNB[PODPKQEQ

    View Slide

  60. ϦʔυλΠϜͱσϓϩΠස౓ԾઆݕূϓϩηεΛਝ଎ʹճ͢
    IUUQJLFZIBUFCMPKQFOUSZ

    View Slide

  61. IUUQJLFZIBUFCMPKQFOUSZ
    ϦʔυλΠϜͱσϓϩΠස౓ϑϩʔޮ཰ͱϦιʔεޮ཰
    Ϧιʔεޮ཰
    ϑϩʔޮ཰

    View Slide

  62. MTTR
    .553.FBOUJNFUP3FDPWFSZ3FQBJS
    IUUQTXXXTMJEFTIBSFOFUEFDPEFEPTSFTJUFSFMJBCJMJUZFOHJOFFSJOHJOB[VSFPOB[VSF Ұ෦վม

    View Slide

  63. .5#'ΛࣺͯΔͷͰ͸ͳ͘඼࣭ΛϓϩηεͰ࡞ΓࠐΉ
    IUUQTXXXSZV[FFDPNDPOUFOUTCMPH

    View Slide

  64. IUUQTDMPVEHPPHMFDPNEFWPQTTUBUFPGEFWPQT

    View Slide

  65. ΤϦʔτ ϋΠύϑΥʔϚʔ
    ϛσΟΞϜ
    ύϑΥʔϚʔ
    ϩʔύϑΥʔϚʔ
    ϦʔυλΠϜ ೔ະຬ ೔͔Βिؒ ि͔ؒΒϱ݄ ϱ݄͔Βϱ݄
    σϓϩΠස౓
    ΦϯσϚϯυ
    ೔ෳ਺ճ

    ೔ճ͔Βिճ िճ͔Β݄ճ ϱ݄͔Βϱ݄
    .553 ࣌ؒະຬ ೔ະຬ ೔ະຬ ि͔ؒΒϱ݄
    มߋࣦഊ཰
    ͭͷΩʔϝτϦΫε೥ͷௐࠪʢສ݅Ҏ্ͷճ౴ΛΫϥελʔ෼ੳʣ
    w։ൃ଎౓ͱ඼࣭͸τϨʔυΦϑͷؔ܎Ͱ͸ͳ͍
    w૊৫ؒͷࠩ͸͔ͳΓେ͖͘ɺ͞Βʹ։͍͍ͯΔʢʣ
    wѹ౗తͳࠩ͸ܧଓతσϦόϦ΍%FW0QT΁ͷ૊৫తͳ౤ࢿͷࠩ
    IUUQTXXXTMJEFTIBSFOFU%FW0QT8FCJOBSTBDDFMFSBUFTUBUFPGEFWPQTTVSWFZSFTVMUTBSFJO

    View Slide

  66. ΤϦʔτ ΤϦʔτͱϩʔύϑΥʔϚʔͷࠩ ϩʔύϑΥʔϚʔ
    ϦʔυλΠϜ ೔ະຬ ഒ ϱ݄͔Βϱ݄
    σϓϩΠස౓
    ΦϯσϚϯυ
    ೔ෳ਺ճ

    ഒ ϱ݄͔Βϱ݄
    .553 ࣌ؒະຬ ि͔ؒΒϱ݄
    มߋࣦഊ཰
    ͭͷΩʔϝτϦΫεΤϦʔτΫϥελͱϩʔύϑΥʔϚʔΫϥελͷࠩ
    w։ൃ଎౓ͱ඼࣭͸τϨʔυΦϑͷؔ܎Ͱ͸ͳ͍
    w૊৫ؒͷࠩ͸͔ͳΓେ͖͘ɺ͞Βʹ։͍͍ͯΔʢʣ
    wѹ౗తͳࠩ͸ܧଓతσϦόϦ΍%FW0QT΁ͷ૊৫తͳ౤ࢿͷࠩ
    IUUQTXXXTMJEFTIBSFOFU%FW0QT8FCJOBSTBDDFMFSBUFTUBUFPGEFWPQTTVSWFZSFTVMUTBSFJO

    View Slide

  67. อकੑΛ٘ਜ਼ʹ͢Ε͹εϐʔυ͸ಘΒΕΔʁ
    w୹ظతʹ͸ಘΒΕΔ
    wதظతʹ͸ٯޮՌʹͳΔ
    w௕ظతʹ͸க໋ইʹͳΔ

    View Slide

  68. ʮ୹ظతதظతʯͷڥ໨͸ʁ
    ͜͜Ͱ͍͏ʮ඼࣭ʯͱ͸ʁ

    View Slide

  69. ςετࣗಈԽͷଛӹ෼ذ఺͸ʮճʯ
    IUUQTXXXBNB[PODPKQEQ
    ͓ΑͦճͰ
    खಈςετͱࣗಈԽ͞Εͨςετͷ
    ίετ͕ٯస͢Δ

    View Slide

  70. IUUQTXXXBNB[PODPKQEQ
    "1IJMPTPQIZPG4PGUXBSF%FTJHO
    good design eventually pays for itself,
    and sooner than you might think.

    View Slide

  71. ໦͜ΓͷδϨϯϚ
    illustrated by @mty_mno
    IUUQUFTUFSDIBOIBUFOBEJBSZDPNFOUSZ

    View Slide

  72. ಺෦඼࣭΁ͷ౤ࢿͷଛӹ෼ذ఺͸
    ೥ޙͱ͔Ͱ͸ͳ͘
    ϲ݄Ҏ಺ʹݱΕΔ
    IUUQTNBSUJOGPXMFSDPNBSUJDMFTJTRVBMJUZXPSUIDPTUIUNM
    ಺෦඼࣭΁ͷ౤ࢿͷଛӹ෼ذ఺͸ϲ݄Ҏ಺ʹݱΕΔ

    View Slide

  73. w୹ظతʹ͸ಘΒΕΔ
    wϲ݄ޙʹ͸ٯޮՌʹͳΔ
    w௕ظతʹ͸க໋ইʹͳΔ
    อकੑΛ٘ਜ਼ʹ͢Ε͹εϐʔυ͸ಘΒΕΔʁ
    ϲ݄Ҏ಺Ͱ͋Ε͹ɺ಺෦඼࣭΁ͷ౤ࢿͷडӹऀ͸ࣗ෼ͨͪࣗ਎
    Ͱ͋Γɺͭ·Γಓಙ΍ᛗዟͷ࿩Ͱ͸ͳ͘ଛಘͷ࿩Ͱ͋Δ

    View Slide

  74. ϦϑΝΫλϦϯά༻ͷϦιʔεΛ७૿ͨ͠༁Ͱ͸ͳ͍ɻTQSJOU಺
    ͷΛ౤ࢿ͢ΔͱܾΊͨɻ࠷ॳ͸ϕϩγςΟ͕མ͕ͪͨɺ
    ϲ݄ܦͬͨޙ͸໌֬ʹσϦόϦʔ଎౓͕ߴ·ͬͨɻʢྫΛڍ
    ͛Δͱɺϲ݄͔͔ΔͱݴΘΕ͍ͯͨن໛ͷ։ൃ͕೔ͰऴΘΔΑ
    ͏ʹͳͬͨʣ
    ͨ·ͨ·ࢀՃͨ͠ΠϕϯτͰ[email protected]͞Μͷ
    ʮ࣭ͱεϐʔυʯʹؔ͢ΔߨԋΛฉ͖ɺ
    ΋ͱ΋ͱ೰ΜͰ͍ͨϙΠϯτͩͬͨͷͰ
    ਧͬ੾Δ͜ͱ͕Ͱ͖ͨɻ
    ΩϟσΟגࣜձ༷ࣾͷࣄྫ
    IUUQTDBEEJUFDIBSDIJWFT

    View Slide

  75. ߥͿΔ࢛ఱԦ͸είʔϓΛ࡟Ε
    ༩͑ΒΕͨ࣌ؒʹରͯ͠΍Δ΂͖͜ͱ͕ଟ͗͢Δ৔߹ɺͲ͏͢΂͖͔
    B
    είʔϓΛ࡟Δ
    C
    ΋ͬͱਓΛ૿΍͢
    D
    ϦϦʔε೔ΛԆظ͢Δ
    E
    ඼࣭Λ٘ਜ਼ʹ͢Δ

    ʰΞδϟΠϧαϜϥΠʱQ

    View Slide

  76. ͔͜͜ΒԆ௕ઓ

    View Slide

  77. Ͱ͸εϐʔυ͓Αͼ࣭͸
    ԿͱτϨʔυΦϑͳͷ͔

    View Slide

  78. IUUQTCIBUFOBOFKQFOUSZTTQFBLFSEFDLDPNUXBEBRVBMJUZBOETQFFE
    Ͱ͸εϐʔυͱ࣭͸ԿͱτϨʔυΦϑͳͷ͔࣍ੈ୅΁ͷڭҭɺ৽ٕज़ͷௐࠪɺଟ༷ੑͷ֬อ

    View Slide

  79. IUUQTPTBIBUFOBCMPHDPNFOUSZ
    Ͱ͸ɺ඼࣭ͱ଎౓ʹ͍ͭͯͷτϨʔυΦϑ͕ҙࣝ͞ΕΔ
    ͱ͖ɺ࣮ࡍʹ͸ԿͱԿ͕ṝʹ͔͚ΒΕ͍ͯΔͷ͔ɻ
    ͦΕ͸֤ݸਓͰ͸ͳ͘ϓϩμΫτશମͷ඼࣭ͱ଎౓͕ṝ
    ʹ͔͚ΒΕ͍ͯΔͷͰ͸ͳ͍͔ɻݴ͍׵͑Ε͹ɺϓϩμ
    Ϋτͷ඼࣭Λࢧ͑ΔͨΊʹඞཁͳϝϯόʔͷ੒௕ͱͦͷ
    ੒௕ͷͨΊʹඞཁͳϑΟʔυόοΫ΍ֶशͷ͕࣌ؒṝʹ
    ͔͚ΒΕ͍ͯΔͷͰ͸ͳ͍͔ͱࢥ͏ɻ

    View Slide

  80. ຊ෺ͷྗΛ͚ͭΔʹ͸
    ͕͔͔࣌ؒΔ

    View Slide

  81. ιϑτ΢ΣΞͷ։ൃʹ࠷ॳ͔Β࠷ޙ·ͰؔΘΔͱ͍͏ܦݧ͸ͱͯ΋وॏ
    ͩͬͨΜ͡Όͳ͍ͩΖ͏͔ɻͳͥͳΒɺϓϩδΣΫτ։࢝࣌ͷμϝͳσβ
    Πϯͷͬ͠΃ฦ͠ΛɺޙͰࣗ෼ͰϞϩʹड͚Δ͔Βͩɻ
    ౰ॳ΅͘͸ɺ΄ͱΜͲߟ͑ͣίʔυΛʮΞϯμʔΤϯδχΞϦϯάʯ͍ͯ͠
    ͨɻޙʑ͜ΕΛա౓ʹमਖ਼ͯ͠͠·͍ɺશͯΛʮΦʔόʔΤϯδχΞϦϯ
    άʯ͠࡞ΓࠐΈ͗ͯ͢͠·ͬͨɻ̎೥൒ͱ͍͏࣌ؒ͸͜͏͍ࣦͬͨഊΛܦ
    ݧ͢Δʹ͸े෼ͳ࣌ؒͰɺࣙΊΔ͜Ζʹ͸γεςϜͷσβΠϯͷԘക͕ɺ
    ͔ͳΓΘ͔ΔΑ͏ʹͳ͍ͬͯͨͱࢥ͏ɻ
    IUUQTLOPIKQBOTXFSTEDB
    Evan Priestley

    View Slide

  82. Ұ൪ॏཁͰҰ൪΍͔͍ͬͳεΩϧ͸γεςϜΛઃܭ͢ΔͨΊͷ൑அྗͩɻ
    ݶΓͳ͘γϯϓϧͳσβΠϯͱ͍͏ͷ͸ͳ͔ͳ͔ڭ͑ΒΕΔ΋ͷͰ͸ͳ
    ͘ɺେํܦݧΛॏͶ֮ͯ͑Δ΋ͷͩɻ
    ͜ͷʮ൑அྗʯ͸ɺϓϩάϥϚʔʹͱͬͯඇৗʹॏཁͳͷ͕ͩɺͦ͏؆୯
    ʹڭ͑ΒΕΔ΋ͷͰ΋ͳ͍ɻ΅͕͘஌ΔݶΓɺ൑அྗΛ͚ͭΔ
    Ұ൪ͷํ๏͸ɺࣗ෼Ͱઃܭͨ͠γεςϜΛ௕͍ؒϝϯς͢Δ
    ͜ͱͩͱࢥ͏
    IUUQTLOPIKQBOTXFSTEDB
    Evan Priestley

    View Slide

  83. ඼࣭ͱίετ͸
    τϨʔυΦϑ͔

    View Slide

  84. 1IJMJQ$SPTCZ2VBMJUZJT'SFF඼࣭Ξοϓ͸ίετΞοϓ͔μ΢ϯ͔
    ίετΞοϓઆ ίετμ΢ϯઆ

    View Slide

  85. IUUQTTQFBLFSEFDLDPNTIJNBTIJNBTUBSURVBMJUZSFBMGSFFDBNQBJHO
    2VBMJUZJT'SFF㲈඼࣭࣮࣭ແྉ

    View Slide

  86. Ͳͷ͘Β͍
    ઃܭʹ౤ࢿ͢Δ͔

    View Slide

  87. ΞʔΩςΫςΟϯά͍ͭɺͲΕ͚ͩʁ
    ,4-0$ສߦͷϓϩδΣΫτͷ
    ઌߦઃܭͷεΠʔτεϙοτ
    IUUQTXXXPSFJMMZDPKQCPPLT

    View Slide

  88. ιϑτ΢ΣΞͷن໛͕εΠʔτεϙοτʹ༩͑ΔӨڹ
    IUUQTXXXPSFJMMZDPKQCPPLT

    View Slide

  89. ιϑτ΢ΣΞͷن໛͕εΠʔτεϙοτʹ༩͑ΔӨڹ
    w ιϑτ΢ΣΞγεςϜ͕େ͖͘ͳΕ͹ͳΔ΄Ͳɺલ෷͍ͷΞʔΩς
    Ϋνϟઃܭ͔Βड͚ΔԸܙ͸େ͖͘ͳΔ
    w খن໛ʢສߦʣͷιϑτ΢ΣΞγεςϜͰ͸ɺલ෷͍ͷΞʔΩς
    Ϋνϟࡦఆ͔Β͸΄ͱΜͲԸܙΛड͚ΒΕͳ͍
    w ΞʔΩςΫνϟઃܭʹগ͔͠͠౤ࢿ͠ͳ͍ͱɺڧ྽ͳͬ͠΃ฦ͕͠
    དྷΔ͜ͱ͕༧૝͞ΕΔ
    w ΞʔΩςΫνϟʹ౤ࢿ͢Ε͹͢Δ΄Ͳɺඞཁͳख௚͠͸গͳ͘ͳΔ
    IUUQTXXXPSFJMMZDPKQCPPLT

    View Slide

  90. ཁٻͷมಈ΍ܽؕίετ͕εΠʔτεϙοτʹ༩͑ΔӨڹ
    ཁٻͷมಈ͕େ͖͍৔߹
    ͸ɺٸ଎ͳมԽʹରԠ͢Δ
    ͨΊͷ෼ੳ΍จॻԽͷख໭
    ΓͷͨΊɺઌߦઃܭͷޮՌ
    ͸Լ͕Δ
    ߴ͍৴པੑΛٻΊΒΕܽؕ
    ίετ͕ߴ͍৔߹͸ɺΞʔ
    ΩςΫςΟϯάͷඞཁੑ͕
    ߴ·Δ
    IUUQTXXXPSFJMMZDPKQCPPLT

    View Slide

  91. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠
    w ʮ඼࣭ͱεϐʔυ͸τϨʔυΦϑͷؔ܎ʹ͋Δʯ͸େ͖ͳޡղ
    w ʮ඼࣭ʯͷ໊ͷ΋ͱʹ٘ਜ਼ʹ͞ΕΔͷ͸಺෦඼࣭ͷಛʹอकੑ
    ʢςετ༰қੑɺཧղ༰қੑɺมߋ༰қੑʣ
    w ࣮ࡍʹ͸อकੑΛߴΊΕ͹εϐʔυ͸্͕Δ͠ɺอकੑΛམͱͤ͹
    εϐʔυ͸Լ͕Δ
    w εϐʔυΛམͱͯ͠΋อकੑ͸্͕Βͳ͍͠ɺεϐʔυΛམͱ͢ͱԾઆݕ
    ূϓϩηε͕ճΒͳ͍
    w ಺෦඼࣭΁ͷ౤ࢿͷଛӹ෼ذ఺͸ҙ֎ͱૣ͘ ϲ݄Ҏ಺
    ΍ͬͯ͘Δ
    w ϲ݄Ҏ಺ͱ͍͏͜ͱ͸डӹऀ͸ࣗ෼ͨͪࣗ਎Ͱ͋Γɺͭ·Γಓಙ΍ᛗዟ
    ͷ࿩Ͱ͸ͳ͘ଛಘͷ࿩Ͱ͋Δ
    w εϐʔυ͓Αͼ࣭ͱτϨʔυΦϑͳͷ͸ڭҭɺ੒௕ɺଟ༷ੑ΁ͷ౤ࢿ

    View Slide