Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
質とスピード(2020秋100分拡大版) / Quality and Speed 2020 Autumn Edition
Takuto Wada
PRO
November 20, 2020
Programming
139
140k
質とスピード(2020秋100分拡大版) / Quality and Speed 2020 Autumn Edition
質とスピード(2020秋100分拡大版)
2020/11/20 @ JaSST'20 Kyushu
Takuto Wada
PRO
November 20, 2020
Tweet
Share
More Decks by Takuto Wada
See All by Takuto Wada
組織に自動テストを書く文化を根付かせる戦略(2022秋版) / Building Automated Test Culture 2022 Autumn Edition
twada
PRO
28
11k
質とスピード(2022春版、質疑応答用資料付き) / Quality and Speed 2022 Spring Edition
twada
PRO
60
62k
予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHPerKaigi 2022
twada
PRO
68
36k
アジリティを支える品質特性 / Agility and Quality Characteristics Developers Summit 2021 Summer
twada
PRO
58
41k
Engineers in VOYAGE
twada
PRO
11
9k
組織にテストを書く文化を根付かせる戦略と戦術(2020秋版) / Strategy and Tactics of Building Automated Testing Culture into Organization 2020 Autumn Edition
twada
PRO
76
38k
質とスピード(2020春版) / Quality and Speed 2020 Spring Edition
twada
PRO
144
110k
質とスピード / Quality and Speed
twada
PRO
194
140k
組織にテストを書く文化を根付かせる戦略と戦術(2019夏版) / Strategy and Tactics of Building Automated Testing Culture into Organization 2019 Summer Edition
twada
PRO
43
20k
Other Decks in Programming
See All in Programming
Spring BootとKubernetesで実現する今どきのDevOps入門
xblood
0
390
子育てとEMと転職と
_atsushisakai
1
420
低レイヤーから始める GUI
fadis
18
9.4k
爆速の日経電子版開発の今
shinyaigeek
2
650
Swift Expression Macros: a practical introduction
kishikawakatsumi
2
740
Excelの助けを借りて楽にシナリオを作ろう
rpa_niiyama
0
330
Becoming an Android Librarian (Android World Wide 2023 Jan)
skydoves
2
220
量子コンピュータ時代のプログラミングセミナー / 20221222_Amplify_seminar _route_optimization
fixstars
0
250
OSSから学んだPR Descriptionの書き方
fugakkbn
4
140
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
7
6.5k
Amazon QuickSightのアップデート -re:Invent 2022の復習&2022年ハイライト-
shogo452
0
240
和暦を正しく扱うための暦の話
nagise
10
6.6k
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
346
17k
Designing with Data
zakiwarfel
91
4.2k
Web Components: a chance to create the future
zenorocha
304
40k
Producing Creativity
orderedlist
PRO
335
38k
Designing on Purpose - Digital PM Summit 2013
jponch
108
5.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
120
29k
Debugging Ruby Performance
tmm1
67
11k
How to name files
jennybc
47
73k
Keith and Marios Guide to Fast Websites
keithpitt
407
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
236
1.1M
jQuery: Nuts, Bolts and Bling
dougneiner
57
6.6k
Product Roadmaps are Hard
iamctodd
38
7.7k
Transcript
࣭ͱεϐʔυ ాਓ
[email protected]
ʙιϑτΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ /PW !+B445,ZVTIVجௐߨԋ ʢळόʔδϣϯʣ
t-wada t_wada twada #jasstkyushu ࣗݾհ
t-wada t_wada twada #jasstkyushu ࣗݾհ illustrated by @mty_mno
ٕज़ॻͷग़൛ʹؔΘ͍ͬͯ·͢
ΑΖ͓͘͠ئ͍͠·͢ #jasstkyushu illustrated by @mty_mno
ߥͿΔ࢛ఱԦ͕͋ΒΘΕͨʂ ༩͑ΒΕͨ࣌ؒʹରͯ͠Δ͖͜ͱ͕ଟ͗͢Δ߹ɺͲ͏͖͔͢ B είʔϓΛΔ C ͬͱਓΛ૿͢ D ϦϦʔεΛԆظ͢Δ E
࣭Λ٘ਜ਼ʹ͢Δ ʰΞδϟΠϧαϜϥΠʱQ
wظతʹಘΒΕΔ wதظతʹٯޮՌʹͳΔ wظతʹக໋ইʹͳΔ ࣭Λ٘ਜ਼ʹ͢ΕεϐʔυಘΒΕΔʁ
ʮظతதظతʯͷڥʁ ͜͜Ͱ͍͏ʮ࣭ʯͱʁ
ʮظతதظతʯͷڥʁ ͜͜Ͱ͍͏ʮ࣭ʯͱʁ
l࣭ͱ୭͔ʹͱͬ ͯͷՁͰ͋Δz (FSBME8FJOCFSH IUUQTXXXBNB[PODPKQEQ9
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
IUUQTXXXKVTFPSKQEFQBSUNFOUBMQPJOUIUNM ङϞσϧ
ʢ͓٬༷͔Βʣݟ͑Δ࣭ͱݟ͑ͳ͍࣭ w֎෦࣭ͱ෦࣭ wར༻࣌ͷ࣭ͱ࣭ wػೳཁ݅ͱඇػೳཁ݅
External Quality: Correctness, Usability, Efficiency, Reliability, Integrity, Adaptability, Accuracy, Robustness
Internal Quality: Maintainability, Flexibility, Portability, Re-usability, Readability, Testability, Understandability ֎෦࣭ͱ෦࣭
ιϑτΣΞͷ࣭Λ֎෦ࢦඪͰಛ͚ͮΔਓଟ͍ɻਖ਼͍͜͠ͱΛ͢ Δɺόά͕ͳ͍ɺ͍ɺͳͲͩɻ͕ͩɺͦΕΒΑΓਂ͍ݪҼͷঢ়ʹ ͗͢ͳ͍ɻ ຊॻͰઆ໌͢ΔιϑτΣΞͷ࣭෦࣭Ͱ͋Δɻ෦࣭Λ࡞Γ ࠐΜͩ݁Ռͱͯ͠ɺ֎෦࣭ͱͯ͠ఆٛ͞ΕΔಛੑͷ࣮ݱʹۙͮ͘͜ͱ ͕Ͱ͖Δɻ෦࣭݁ՌͰͳ͘ݪҼͰ͋Γɺྑ͍ιϑτΣΞ͕උ ͍͑ͯΔ͖ͷͩɻ ʰϨΨγʔίʔυ͔Βͷ٫ʱQ
External Quality: Correctness, Usability, Efficiency, Reliability, Integrity, Adaptability, Accuracy, Robustness
Internal Quality: Maintainability, Flexibility, Portability, Re-usability, Readability, Testability, Understandability ෦࣭ʢ*OUFSOBM2VBMJUZʣ ࣗͨͪͷࣹఔʹ͋Δ ෦࣭ͷํΛ٘ਜ਼ʹ͢Δͱ͍͏ அΛ͕ͪ͠ͳͷͰͳ͍͔
ాਓ
[email protected]
࣭ͱεϐʔυ ʙιϑτΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ
ాਓ
[email protected]
෦࣭ͱεϐʔυ ʙιϑτΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ
ͰͲͷΑ͏ͳ ɹ෦࣭Λ ٘ਜ਼ʹ๋͛ͨͷ͔
External Quality: Correctness, Usability, Efficiency, Reliability, Integrity, Adaptability, Accuracy, Robustness
Internal Quality: Maintainability, Flexibility, Portability, Re-usability, Readability, Testability, Understandability ෦࣭ʢ*OUFSOBM2VBMJUZʣ
External Quality: Correctness, Usability, Efficiency, Reliability, Integrity, Adaptability, Accuracy, Robustness
Internal Quality: Maintainability, Flexibility, Portability, Re-usability, Readability, Testability, Understandability อकੑʢ.BJOUBJOBCJMJUZʣ
อकੑ Maintainability
#PFIN #SPXO BOE-JQPXT2VBMJUZ$IBSBDUFSJTUJDT IUUQTXXXUIPNBTBMTQBVHIPSHQVCGOEJMJUZIUNM
#PFIN #SPXO BOE-JQPXT2VBMJUZ$IBSBDUFSJTUJDT IUUQTXXXUIPNBTBMTQBVHIPSHQVCGOEJMJUZIUNM
#PFIN #SPXO BOE-JQPXT2VBMJUZ$IBSBDUFSJTUJDT IUUQTXXXUIPNBTBMTQBVHIPSHQVCGOEJMJUZIUNM
.BJOUBJOBCJMJUZʢอकੑʣΛߏ͢Δͷ w5FTUBCJMJUZςετ༰қੑ w6OEFSTUBOEBCJMJUZཧղ༰қੑ w.PEJpBCJMJUZมߋ༰қੑ
w ࣮ߦԁੑʢ0QFSBCJMJUZʣ w ࣗಈ࣮ߦ͕༰қͰ͔ͭߴ w ؍ଌ༰қੑʢ0CTFSWBCJMJUZʣ w ςετ݁ՌͷऔಘɾظൺֱΛࣗಈԽ͍͢͠ w ੍ޚ༰қੑʢ$POUSPMMBCJMJUZʣ
w ࣄલঢ়ଶΛ੍ޚ͠ɺςετରΛࣗಈૢ࡞͍͢͠ w ղՄೳੑʢ%FDPNQPTBCJMJUZʣ w ςετରͷΓग़͠ɺςετڥͷ෦ஔ͕༰қ IUUQTTQFBLFSEFDLDPNHPZPLJUFTUBCJMJUZJOFNCFEEFETPGUXBSF ࣗಈςετʹ͓͚ΔςελϏϦςΟ
ాਓ
[email protected]
෦࣭ͱεϐʔυ ʙιϑτΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ
ాਓ
[email protected]
อकੑͱεϐʔυ ʙιϑτΣΞ։ൃͷయܕతͳޡղΛղ͘ʙ
อकੑΛ ٘ਜ਼ʹ๋͛Δͱ Ͳ͏ͳΔ͔
ʮ͋ͱͰΫϦʔϯʹ͢Ε͍͍Αɻઌʹࢢʹग़͞ͳ͚Εʂʯ ։ൃऀͦ͏͍ͬͯͭ͝·͔͢ɻ͕ͩɺ͋ͱͰΫϦʔϯʹ͢Δ͜ͱͳ ͍ɻࢢ͔ΒͷϓϨογϟʔࢭ·Βͳ͍͔Βͩɻʮઌʹࢢʹग़͞ͳ͚ Εʯͱ͍͏͜ͱɺޙΖʹڝ߹ଞ͕ࣾେ͍Δͱ͍͏͜ͱͰ͋Δɻڝ߹ ଞࣾʹ͍ൈ͔Εͳ͍ͨΊʹɺ͜Ε͔ΒΓଓ͚Δ͔͠ͳ͍ɻ ͦͷ݁Ռɺ։ൃऀϞʔυΛΓସ͑Δ͜ͱ͕Ͱ͖ͳ͍ɻ࣍ͷػೳɺ·ͨ ࣍ͷػೳɺ·ͨ·ͨ࣍ͷػೳΛՃ͢Δ͜ͱʹͳΓɺίʔυΛΫϦʔϯʹ ͢Δ͜ͱ·Ͱख͕ճΒͳ͍ɻ ͦͯ͠ɺ่յ͕࢝·Δɻੜ࢈ੑ͕θϩʹ͍͍ۙͮͯ͘ɻ ʰ$MFBO"SDIJUFDUVSFʱQ
IUUQTUXJUUFSDPNOFLPZBTUBUVT
IUUQTNBSUJOGPXMFSDPNBSUJDMFTJTRVBMJUZXPSUIDPTUIUNM อकੑͷ͕ͨ͞Β͢ͷ ͻͱͭͻͱͭͷมߋʹ ༨ܭͳ͕͔͔࣌ؒΔ
อकੑΛ٘ਜ਼ʹ͢ΕεϐʔυಘΒΕΔʁ wظతʹಘΒΕΔ wதظతʹٯޮՌʹͳΔ wظతʹக໋ইʹͳΔ
Ͱ εϐʔυΛམͱͤ อकੑ্͕Δʁ
IUUQTUXJUUFSDPNWPMVOUBTTUBUVT
IUUQTPTBIBUFOBCMPHDPNFOUSZ ٕज़ྗͷ͋Δਓ͋Δఔٸ͍Ͱ࡞ͬͨͱͯ͠Ұఆ Ҏ্ͷ࣭ͷίʔυΛॻ͘͠ɺҙਤతʹ࣭Λམͱ͠ ͨͱͯ͋͠·Γ্͕Βͳ͍ɻ ٯʹɺٕज़ྗ͕ߴ͘ͳ͍ਓ͕࣌ؒΛ͔͚ͯ࡞ͬͨͱ͠ ͯͦͷਓͷٕज़ྗҎ্ͷ࣭ͷίʔυॻ͚ͳ͍ɻ
ܦӦతͳཁٻʹ߹Θͤͯɺ༩͑ΒΕͨ։ൃظ͔ؒΒॊೈʹԚ͞ͱ͞Λબ͢Δͱ͍͏Α͏ ͳث༻ͳܳ΄ͱΜͲෆՄೳͩͱ͍͑·͢ɻ͜ΕɺۃΊͯجૅతͳͱ͜ΖͰ͋Εଟগ Ͱ͖Δ͔͠Ε·ͤΜ͕ɺ࣮ࡍʹɺιʔείʔυ͕Ԛ͍ͯ͘ਓ͍Εɺ៉ྷͰ͍ ਓଟ͍͘·͢ɻ ʰΤϯδχΞϦϯά৫ͷটʱQ ΫΠοΫμʔςΟͷਆ
ͭ·Γ τϨʔυΦϑͰͳ͍
IUUQTUXJUUFSDPNLBU[DIBOHTUBUVT
࣭ อकੑ εϐʔυ τϨʔυΦϑͱߟ͑Δͷయܕతͳޡղ നؙ͖ҹෛͷଓࠜݩ͕૿͑ΕઌݮΔɻࠜݩ͕ݮΕઌ૿͑Δ
࣭Λ٘ਜ਼ʹ͢ΔͷɺޮՌతͳίϯτϩʔϧํ๏Ͱͳ͍ɻ࣭ ੍ޚมͰͳ͍ɻ ࣭Λड͚ೖΕΔ͜ͱͰɺϓϩδΣΫτ͕͘ͳΔ͜ͱͳ͍ɻ ߴ࣭Λཁٻ͢Δ͜ͱͰɺϓϩδΣΫτ͕͘ͳΔ͜ͱͳ͍ɻ Ή͠Ζ࣭ΛߴΊΔ͜ͱͰɺσϦόϦʔ͕ߴʹͳΔ͜ͱ͕ଟ͍ɻ ࣭ج४ΛԼ͛ͯ͠·͏ͱɺσϦόϦʔ͕͘ͳΓɺ ༧ଌͰ͖ͳ͘ͳͬͯ͠·͏ɻ ʰΤΫετϦʔϜϓϩάϥϛϯάʱQ
ઌ΄Ͳͷ։ൃऀͷ͝·͔͠ɺ่յͨ͠ίʔυΛॻ͚ظతʹ͘ͳ Δͷͷɺظతʹ্͕͕Δͱ͍͏ߟ͑ํʹͱ͍͍ͮͯΔɻ ͜ͷ͜ͱΛ৴͍ͯ͡Δ։ൃऀɺ่յͨ͠ίʔυΛॻ͘Ϟʔυ͔Βɺ ͍ͣΕͲ͔͜ͰΫϦʔϯʹ͢ΔϞʔυʹΓସΘΕΔɺͱ͍͏ ʢαΪͱΧϝͷʣαΪͷΑ͏ͳࣗ৴Λ͍࣋ͬͯΔɻ ͕ͩɺͦΕࣄ࣮ޡೝͰ͋Δɻ ࣄ࣮ɺظతʹظతʹɺ่յͨ͠ίʔυΛॻ͘΄͏͕ ΫϦʔϯͳίʔυΛॻ͘ΑΓৗʹ͍ɻ ʰ$MFBO"SDIJUFDUVSFʱQQ
ظతʹظతʹɺ ่յͨ͠ίʔυΛॻ͘΄͏͕ ΫϦʔϯͳίʔυΛॻ͘ΑΓ ৗʹ͍ɻ #PC.BSUJO ʰ$MFBO"SDIJUFDUVSFʱQ
࠷ߴͷ։ൃऀ͕͍ͪΜ͖Ε͍͖ͳ։ൃऀͰ͋Δ͜ͱʹؾͮ ͍ͨͱ͖ɺࢲͼͬ͘Γͨ͠ɻ͍ϓϩάϥϚʔࡶͳϓϩά ϥϚʔͩͱࢥ͍͔ͬͯͨΒͩɻ ͕ͩɺ࣮ࡍਖ਼ରͩͬͨɻࢲ͕ձͬͨதͰ࠷ͷϓϩάϥ ϚʔɺίʔυΛѻ͍͍͢Α͏ʹอͭ͜ͱʹಛʹҙΛͬ ͍ͯͨɻ ʰϨΨγʔίʔυ͔Βͷ٫ʱQ
ίʔυΛॻ͘͞ͱίʔυͷ͖Ε͍͞ʹؔ࿈͕͋Δͱೝࣝͨ͠ ͋ͱͰɺࢲͦͷͭͷ͍͋ͩͷҼՌؔΛݟ͚ͭΔͷʹ࣌ ؒΛཁͨ͠ɻ ίʔυͷ࣭Λߴ͘อ͍ͬͯͨʮʹؔΘΒͣʯ͍ͷͰͳ ͍ɻίʔυͷ࣭Λߴ͘อ͍ͬͯͨʮ͔Βͦ͜ʯ͍ͷͩɻ ͜ͷ͜ͱΛཧղͨ͠ΒɺιϑτΣΞ։ൃʹର͢Δ ݟํ͕มΘͬͨɻ ʰϨΨγʔίʔυ͔Βͷ٫ʱQQ
ίʔυͷ࣭Λߴ͘อ͍ͬͯͨ ʮʹؔΘΒͣʯ͍ͷͰͳ ͍ɻίʔυͷ࣭Λߴ͘อͬͯ ͍ͨʮ͔Βͦ͜ʯ͍ͷͩɻ %BWJE4DPUU#FSOTUFJO ʰϨΨγʔίʔυ͔Βͷ٫ʱ QQ
࣭ อकੑ εϐʔυ ίʔυͷ࣭Λ٘ਜ਼ʹ͔ͨ͠Β͍ͷͰͳ͘ നؙ͖ҹෛͷଓࠜݩ͕૿͑ΕઌݮΔɻࠜݩ͕ݮΕઌ૿͑Δ
࣭ อकੑ εϐʔυ ίʔυͷ࣭Λߴ͘อ͍ͬͯͨʮ͔Βͦ͜ʯ͍ ҹਖ਼ͷଓࠜݩ͕૿͑Εઌ૿͑Δɻࠜݩ͕ݮΕઌݮΔ
Ͱ εϐʔυ͔Β࣭ͷ ӨڹͲ͏͔
࣭ อकੑ εϐʔυ Ͱεϐʔυ͔Β࣭ อकੑ ͷӨڹͲ͏͔
࣭ѱ͍ͱجຊతʹखΓΛੜΉͷͰʹͶฦΔɻखͬͯ Δֶ࣌ؒͼΛ͏·ͳ͍࣌ؒɻ࣭ΛԼ͛Δͱ͍͏அֶͼͷ ԼΛڐ༰͢Δͱ͜ͱɻ ैདྷͷమ൘ ͩͱޡղ͞Ε͍ͯͨ ࣭ͩͬͨͯͯ͋͛͢Α͏ ࣭ྼԽ͢ΕखΓ͕ൃੜ͢Δ͚ͩͰɺ݁ہϦʔυλΠϜͷ ૿ՃʹͶฦΔͷͰΊ·͠ΐ͏ɻ ࣭ྼԽ͢ΕϦʔυλΠϜͷ૿ՃʹͶฦΔ IUUQJLFZIBUFCMPKQFOUSZ
ϦʔυλΠϜ͕૿Ճ͢ΔͱԾઆݕূϓϩηε͕ճΒͳ͍ IUUQJLFZIBUFCMPKQFOUSZ
ຊͷؔ
ຊͷؔɹ w෦࣭͕εϐʔυΛੜΈ wεϐʔυֶ͕ͼͷϧʔϓΛੜΈ wֶͼͷϧʔϓ͕֎෦࣭ΛੜΈ w֎෦࣭͕ڝ૪ྗΛੜΈ wڝ૪ྗ͕ച্ΛੜΈ wച্͕෦࣭ΛҭΉ ˞ྑ͍ͷΛ࡞ΕചΕΔͱ ͍͏Θ͚Ͱͳ͍ͷͰɺ͜͜ ͦ͏؆୯Ͱ୯७Ͱͳ͍
࣭ εϐʔυ ຊͷؔɹ ҹਖ਼ͷଓࠜݩ͕૿͑Εઌ૿͑Δɻࠜݩ͕ݮΕઌݮΔ
ʮ࣭WTεϐʔυʯͱ͍͏֓೦ࠜຊతʹؒҧ͍ͬͯΔͱࢥ͏ɻ ͩͬͯૉૣ͘։ൃΛ͠ͳͯ͘ڥɺ͋Δ͍ࣗͷڥͷཧղͷม ԽʹιϑτΣΞ͕͍ͭͯ͜ΕͣɺιϑτΣΞ͕ղܾ͖͕͢ ղܾͰ͖ͳ͘ͳΓɺඞવతʹ࣭͕མͪͯ͠·͏ɻ ٯʹɺ࣭ͷߴ͍ιϑτΣΞΛॻ͔ͳͯ͘ɺͳʹ͔͋ΔʹΠϯϑ ϥ่͕յ͠ɺૉૣ͘։ൃΛ͢Δ͜ͱ͕Ͱ͖ͳ͘ͳͬͯ͠·͏ɻΠϯϑ ϥͷ่յɺΔؾΛ͙ͷͰಛʹ͕ͨͪѱ͍ɻ IUUQTLOPIKQBOTXFSTEDB Evan Priestley
࣭WTεϐʔυͱ͍͏ೋഎͷؔɺ ہॴతͳͷͰ͔͠ͳ͍ɻ େҬతʹɺยํΛ٘ਜ਼ʹͨ͠߹ɺ Β͵͏ͪʹ͏Ұͭ٘ਜ਼ʹ͍ͯ͠Δͱ ͍͏͜ͱΛ͓Εͳ͘ɻ IUUQTLOPIKQBOTXFSTEDB Evan Priestley
ݱʹ͓͚Δ࣭ͱεϐʔυͭͷΩʔϝτϦΫε wϦʔυλΠϜ wσϓϩΠස w.553 ฏۉम෮࣌ؒ wมߋࣦഊ IUUQTXXXBNB[PODPKQEQ
ϦʔυλΠϜͱσϓϩΠසԾઆݕূϓϩηεΛਝʹճ͢ IUUQJLFZIBUFCMPKQFOUSZ
IUUQJLFZIBUFCMPKQFOUSZ ϦʔυλΠϜͱσϓϩΠසϑϩʔޮͱϦιʔεޮ Ϧιʔεޮ ϑϩʔޮ
MTTR .553.FBOUJNFUP3FDPWFSZ3FQBJS IUUQTXXXTMJEFTIBSFOFUEFDPEFEPTSFTJUFSFMJBCJMJUZFOHJOFFSJOHJOB[VSFPOB[VSF Ұ෦վม
.5#'ΛࣺͯΔͷͰͳ࣭͘ΛϓϩηεͰ࡞ΓࠐΉ IUUQTXXXSZV[FFDPNDPOUFOUTCMPH
IUUQTDMPVEHPPHMFDPNEFWPQTTUBUFPGEFWPQT
ΤϦʔτ ϋΠύϑΥʔϚʔ ϛσΟΞϜ ύϑΥʔϚʔ ϩʔύϑΥʔϚʔ ϦʔυλΠϜ ະຬ ͔Βिؒ ि͔ؒΒϱ݄ ϱ݄͔Βϱ݄
σϓϩΠස ΦϯσϚϯυ ෳճ ճ͔Βिճ िճ͔Β݄ճ ϱ݄͔Βϱ݄ .553 ࣌ؒະຬ ະຬ ະຬ ि͔ؒΒϱ݄ มߋࣦഊ ͭͷΩʔϝτϦΫεͷௐࠪʢສ݅Ҏ্ͷճΛΫϥελʔੳʣ w։ൃͱ࣭τϨʔυΦϑͷؔͰͳ͍ w৫ؒͷ͔ࠩͳΓେ͖͘ɺ͞Βʹ։͍͍ͯΔʢʣ wѹతͳࠩܧଓతσϦόϦ%FW0QTͷ৫తͳࢿͷࠩ IUUQTXXXTMJEFTIBSFOFU%FW0QT8FCJOBSTBDDFMFSBUFTUBUFPGEFWPQTTVSWFZSFTVMUTBSFJO
ΤϦʔτ ΤϦʔτͱϩʔύϑΥʔϚʔͷࠩ ϩʔύϑΥʔϚʔ ϦʔυλΠϜ ະຬ ഒ ϱ݄͔Βϱ݄ σϓϩΠස ΦϯσϚϯυ ෳճ
ഒ ϱ݄͔Βϱ݄ .553 ࣌ؒະຬ ि͔ؒΒϱ݄ มߋࣦഊ ͭͷΩʔϝτϦΫεΤϦʔτΫϥελͱϩʔύϑΥʔϚʔΫϥελͷࠩ w։ൃͱ࣭τϨʔυΦϑͷؔͰͳ͍ w৫ؒͷ͔ࠩͳΓେ͖͘ɺ͞Βʹ։͍͍ͯΔʢʣ wѹతͳࠩܧଓతσϦόϦ%FW0QTͷ৫తͳࢿͷࠩ IUUQTXXXTMJEFTIBSFOFU%FW0QT8FCJOBSTBDDFMFSBUFTUBUFPGEFWPQTTVSWFZSFTVMUTBSFJO
อकੑΛ٘ਜ਼ʹ͢ΕεϐʔυಘΒΕΔʁ wظతʹಘΒΕΔ wதظతʹٯޮՌʹͳΔ wظతʹக໋ইʹͳΔ
ʮظతதظతʯͷڥʁ ͜͜Ͱ͍͏ʮ࣭ʯͱʁ
ςετࣗಈԽͷଛӹذʮճʯ IUUQTXXXBNB[PODPKQEQ ͓ΑͦճͰ खಈςετͱࣗಈԽ͞Εͨςετͷ ίετ͕ٯస͢Δ
IUUQTXXXBNB[PODPKQEQ "1IJMPTPQIZPG4PGUXBSF%FTJHO good design eventually pays for itself, and sooner
than you might think.
͜ΓͷδϨϯϚ illustrated by @mty_mno IUUQUFTUFSDIBOIBUFOBEJBSZDPNFOUSZ
෦࣭ͷࢿͷଛӹذ ޙͱ͔Ͱͳ͘ ϲ݄ҎʹݱΕΔ IUUQTNBSUJOGPXMFSDPNBSUJDMFTJTRVBMJUZXPSUIDPTUIUNM ෦࣭ͷࢿͷଛӹذϲ݄ҎʹݱΕΔ
wظతʹಘΒΕΔ wϲ݄ޙʹٯޮՌʹͳΔ wظతʹக໋ইʹͳΔ อकੑΛ٘ਜ਼ʹ͢ΕεϐʔυಘΒΕΔʁ ϲ݄ҎͰ͋Εɺ෦࣭ͷࢿͷडӹऀࣗͨͪࣗ Ͱ͋Γɺͭ·ΓಓಙᛗዟͷͰͳ͘ଛಘͷͰ͋Δ
ϦϑΝΫλϦϯά༻ͷϦιʔεΛ७૿ͨ͠༁Ͱͳ͍ɻTQSJOU ͷΛࢿ͢ΔͱܾΊͨɻ࠷ॳϕϩγςΟ͕མ͕ͪͨɺ ϲ݄ܦͬͨޙ໌֬ʹσϦόϦʔ͕ߴ·ͬͨɻʢྫΛڍ ͛Δͱɺϲ݄͔͔ΔͱݴΘΕ͍ͯͨنͷ։ൃ͕ͰऴΘΔΑ ͏ʹͳͬͨʣ ͨ·ͨ·ࢀՃͨ͠ΠϕϯτͰ
[email protected]
͞Μͷ ʮ࣭ͱεϐʔυʯʹؔ͢ΔߨԋΛฉ͖ɺ ͱͱΜͰ͍ͨϙΠϯτͩͬͨͷͰ ਧͬΔ͜ͱ͕Ͱ͖ͨɻ ΩϟσΟגࣜձ༷ࣾͷࣄྫ
IUUQTDBEEJUFDIBSDIJWFT
ߥͿΔ࢛ఱԦείʔϓΛΕ ༩͑ΒΕͨ࣌ؒʹରͯ͠Δ͖͜ͱ͕ଟ͗͢Δ߹ɺͲ͏͖͔͢ B είʔϓΛΔ C ͬͱਓΛ૿͢ D ϦϦʔεΛԆظ͢Δ E
࣭Λ٘ਜ਼ʹ͢Δ ʰΞδϟΠϧαϜϥΠʱQ
͔͜͜ΒԆઓ
Ͱεϐʔυ͓Αͼ࣭ ԿͱτϨʔυΦϑͳͷ͔
IUUQTCIBUFOBOFKQFOUSZTTQFBLFSEFDLDPNUXBEBRVBMJUZBOETQFFE Ͱεϐʔυͱ࣭ԿͱτϨʔυΦϑͳͷ͔࣍ੈͷڭҭɺ৽ٕज़ͷௐࠪɺଟ༷ੑͷ֬อ
IUUQTPTBIBUFOBCMPHDPNFOUSZ Ͱɺ࣭ͱʹ͍ͭͯͷτϨʔυΦϑ͕ҙࣝ͞ΕΔ ͱ͖ɺ࣮ࡍʹԿͱԿ͕ṝʹ͔͚ΒΕ͍ͯΔͷ͔ɻ ͦΕ֤ݸਓͰͳ͘ϓϩμΫτશମͷ࣭ͱ͕ṝ ʹ͔͚ΒΕ͍ͯΔͷͰͳ͍͔ɻݴ͍͑Εɺϓϩμ Ϋτͷ࣭Λࢧ͑ΔͨΊʹඞཁͳϝϯόʔͷͱͦͷ ͷͨΊʹඞཁͳϑΟʔυόοΫֶशͷ͕࣌ؒṝʹ ͔͚ΒΕ͍ͯΔͷͰͳ͍͔ͱࢥ͏ɻ
ຊͷྗΛ͚ͭΔʹ ͕͔͔࣌ؒΔ
ιϑτΣΞͷ։ൃʹ࠷ॳ͔Β࠷ޙ·ͰؔΘΔͱ͍͏ܦݧͱͯوॏ ͩͬͨΜ͡Όͳ͍ͩΖ͏͔ɻͳͥͳΒɺϓϩδΣΫτ։࢝࣌ͷμϝͳσβ Πϯͷͬ͠ฦ͠ΛɺޙͰࣗͰϞϩʹड͚Δ͔Βͩɻ ॳ΅͘ɺ΄ͱΜͲߟ͑ͣίʔυΛʮΞϯμʔΤϯδχΞϦϯάʯ͍ͯ͠ ͨɻޙʑ͜ΕΛաʹमਖ਼ͯ͠͠·͍ɺશͯΛʮΦʔόʔΤϯδχΞϦϯ άʯ͠࡞ΓࠐΈ͗ͯ͢͠·ͬͨɻ̎ͱ͍͏࣌ؒ͜͏͍ࣦͬͨഊΛܦ ݧ͢Δʹेͳ࣌ؒͰɺࣙΊΔ͜ΖʹγεςϜͷσβΠϯͷԘക͕ɺ ͔ͳΓΘ͔ΔΑ͏ʹͳ͍ͬͯͨͱࢥ͏ɻ IUUQTLOPIKQBOTXFSTEDB Evan
Priestley
Ұ൪ॏཁͰҰ൪͔͍ͬͳεΩϧγεςϜΛઃܭ͢ΔͨΊͷஅྗͩɻ ݶΓͳ͘γϯϓϧͳσβΠϯͱ͍͏ͷͳ͔ͳ͔ڭ͑ΒΕΔͷͰͳ ͘ɺେํܦݧΛॏͶ֮ͯ͑Δͷͩɻ ͜ͷʮஅྗʯɺϓϩάϥϚʔʹͱͬͯඇৗʹॏཁͳͷ͕ͩɺͦ͏؆୯ ʹڭ͑ΒΕΔͷͰͳ͍ɻ΅͕͘ΔݶΓɺஅྗΛ͚ͭΔ Ұ൪ͷํ๏ɺࣗͰઃܭͨ͠γεςϜΛ͍ؒϝϯς͢Δ ͜ͱͩͱࢥ͏ IUUQTLOPIKQBOTXFSTEDB Evan Priestley
࣭ͱίετ τϨʔυΦϑ͔
1IJMJQ$SPTCZ2VBMJUZJT'SFF࣭ΞοϓίετΞοϓ͔μϯ͔ ίετΞοϓઆ ίετμϯઆ
IUUQTTQFBLFSEFDLDPNTIJNBTIJNBTUBSURVBMJUZSFBMGSFFDBNQBJHO 2VBMJUZJT'SFF㲈࣭࣮࣭ແྉ
Ͳͷ͘Β͍ ઃܭʹࢿ͢Δ͔
ΞʔΩςΫςΟϯά͍ͭɺͲΕ͚ͩʁ ,4-0$ສߦͷϓϩδΣΫτͷ ઌߦઃܭͷεΠʔτεϙοτ IUUQTXXXPSFJMMZDPKQCPPLT
ιϑτΣΞͷن͕εΠʔτεϙοτʹ༩͑ΔӨڹ IUUQTXXXPSFJMMZDPKQCPPLT
ιϑτΣΞͷن͕εΠʔτεϙοτʹ༩͑ΔӨڹ w ιϑτΣΞγεςϜ͕େ͖͘ͳΕͳΔ΄Ͳɺલ͍ͷΞʔΩς Ϋνϟઃܭ͔Βड͚ΔԸܙେ͖͘ͳΔ w খنʢສߦʣͷιϑτΣΞγεςϜͰɺલ͍ͷΞʔΩς Ϋνϟࡦఆ͔Β΄ͱΜͲԸܙΛड͚ΒΕͳ͍ w ΞʔΩςΫνϟઃܭʹগ͔͠͠ࢿ͠ͳ͍ͱɺڧͳͬ͠ฦ͕͠ དྷΔ͜ͱ͕༧͞ΕΔ
w ΞʔΩςΫνϟʹࢿ͢Ε͢Δ΄Ͳɺඞཁͳख͠গͳ͘ͳΔ IUUQTXXXPSFJMMZDPKQCPPLT
ཁٻͷมಈܽؕίετ͕εΠʔτεϙοτʹ༩͑ΔӨڹ ཁٻͷมಈ͕େ͖͍߹ ɺٸͳมԽʹରԠ͢Δ ͨΊͷੳจॻԽͷख ΓͷͨΊɺઌߦઃܭͷޮՌ Լ͕Δ ߴ͍৴པੑΛٻΊΒΕܽؕ ίετ͕ߴ͍߹ɺΞʔ ΩςΫςΟϯάͷඞཁੑ͕ ߴ·Δ
IUUQTXXXPSFJMMZDPKQCPPLT
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ w ʮ࣭ͱεϐʔυτϨʔυΦϑͷؔʹ͋Δʯେ͖ͳޡղ w ʮ࣭ʯͷ໊ͷͱʹ٘ਜ਼ʹ͞ΕΔͷ෦࣭ͷಛʹอकੑ ʢςετ༰қੑɺཧղ༰қੑɺมߋ༰қੑʣ w ࣮ࡍʹอकੑΛߴΊΕεϐʔυ্͕Δ͠ɺอकੑΛམͱͤ εϐʔυԼ͕Δ w
εϐʔυΛམͱͯ͠อकੑ্͕Βͳ͍͠ɺεϐʔυΛམͱ͢ͱԾઆݕ ূϓϩηε͕ճΒͳ͍ w ෦࣭ͷࢿͷଛӹذҙ֎ͱૣ͘ ϲ݄Ҏ ͬͯ͘Δ w ϲ݄Ҏͱ͍͏͜ͱडӹऀࣗͨͪࣗͰ͋Γɺͭ·Γಓಙᛗዟ ͷͰͳ͘ଛಘͷͰ͋Δ w εϐʔυ͓Αͼ࣭ͱτϨʔυΦϑͳͷڭҭɺɺଟ༷ੑͷࢿ