Slide 1

Slide 1 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽͱ ϊ΢ϋ΢ڞ༗ͷ࢓૊Έ ໘ന๏ਓΧϠοΫ ໼ਧྒྷհ@CEDEC2017

Slide 2

Slide 2 text

Profile • ໼ਧྒྷհ a.k.a ˏKonboi • ໘ന๏ਓΧϠοΫ • ιʔγϟϧήʔϜࣄۀ෦ॴଐ • ٕज़෦ όοΫΤϯυΤϯδχΞ݉νʔϑ • Ωϯ೑ϚϯϚοεϧγϣοτͳͲΛ୲౰

Slide 3

Slide 3 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽ ͱϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 4

Slide 4 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽ ͱϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 5

Slide 5 text

ΧϠοΫͷ ։ൃମ੍ͷ঺հ

Slide 6

Slide 6 text

• ๻ΒͷߕࢠԂϙέοτ • γϦʔζྦྷܭ 600ສDL • ϓϨΠϠʔ͸̍ਓͷߴߍٿࣇ • ϓϨΠϠʔಉ࢜ͰνʔϜΛฤ੒ • ߕࢠԂग़৔/༏উΛ໨ࢦ͢ • Ωϯ೑Ϛϯ MUSCLESHOT • DeNA͞Μͱͷڠۀ • ݪ࡞Λ࠶ݱͨ͠ετʔϦʔ • ࠷େ̐ਓͷϦΞϧλΠϜ
 ڠྗότϧ

Slide 7

Slide 7 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 8

Slide 8 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ˞ήʔϜٕݚΠϯϑϥ͸ٕज़෦ॴଐ
 ϓϩϞʔγϣϯ͸اը෦ॴଐ
 Ͱ͕͢આ໌ͷͨΊ෼͚͍ͯ·͢

Slide 9

Slide 9 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 10

Slide 10 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ɾϓϩσϡʔαʔ
 ɾσΟϨΫλʔ ɾϓϥϯφʔ ɾϨϕϧσβΠφʔ ɾϓϩδΣΫτϚωʔδϟʔ

Slide 11

Slide 11 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 12

Slide 12 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ɾ6*σβΠφʔ ɾ%σβΠφʔ ɾάϥϑΟοΧʔ ɾΞχϝʔλʔ

Slide 13

Slide 13 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 14

Slide 14 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ɾόοΫΤϯυΤϯδχΞ ɾήʔϜϓϩάϥϚ ɾ6*ϓϩάϥϚ

Slide 15

Slide 15 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 16

Slide 16 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ɾΞηοτύΠϓϥΠϯߏங ɾڞ௨ϥΠϒϥϦͷ։ൃ ɾͦͷଞڞ༗ج൫ͷ։ൃӡ༻

Slide 17

Slide 17 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 18

Slide 18 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ɾαʔόʔߏஙӡ༻ ɾΠϯϑϥʹؔ͢ΔΞυόΠβʔ ɾো֐࣌ͷରԠϔϧϓ

Slide 19

Slide 19 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 20

Slide 20 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ɾ޿ࠂؔ࿈ ɾίϥϘاը

Slide 21

Slide 21 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦ ˒ d!3 ˒ ༑৘ϚʔέςΟϯάͷղઆ

Slide 22

Slide 22 text

اը෦ ҙঊ෦ ٕज़෦ ήʔϜٕݚ Πϯϑϥ ϓϩϞʔγϣϯ اը෦ ҙঊ෦ ٕज़෦

Slide 23

Slide 23 text

اը෦ ҙঊ෦ ٕज़෦ dਓఔ౓ dਓఔ౓ dਓఔ౓

Slide 24

Slide 24 text

اը෦ ҙঊ෦ ٕज़෦ dਓఔ౓ dਓఔ౓ dਓఔ౓ ͏ͪ#&d̒ਓ

Slide 25

Slide 25 text

اը෦ ҙঊ෦ ٕज़෦ dਓఔ౓ dਓఔ౓ dਓఔ౓ ͏ͪ#&d̒ਓ ߹ܭdਓ

Slide 26

Slide 26 text

ΧϠοΫͷ։ൃମ੍ • ήʔϜΤϯδϯ͸UnityΛ࢖༻ • ։ൃ؀ڥ΋ؚΊόοΫΤϯυ͸શͯAWS • GithubͷPrivateϦϙδτϦͰίʔυ؅ཧ • Ξηοτ΋GithubͰ؅ཧ • νϟοτπʔϧʹ͸Slack

Slide 27

Slide 27 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽ ͱϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 28

Slide 28 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽ ͱϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 29

Slide 29 text

Ϛελʔσʔλͷ
 ӡ༻ϑϩʔࣗಈԽ

Slide 30

Slide 30 text

• Ϛελʔσʔλ͸ߋ৽ͷස౓͕ߴ͍ • ΫΤετɺΩϟϥΫλʔɺΨνϟɺ etc ... • Ϛελʔσʔλͷߋ৽αΠΫϧ͕ૣ͍ • Ϣʔβʔ΁ఏڙͰ͖Δࢪࡦ͕૿͑Δ • ϏδωεతΠϯύΫτ͕େ͖͍ Ϛελʔσʔλӡ༻ϑϩʔͷࣗಈԽ

Slide 31

Slide 31 text

Ϛελʔσʔλӡ༻ϑϩʔͷࣗಈԽ • ΧϠοΫͰ͸Ϛελʔσʔλͷ؅ཧʹ
 Google Spreadsheets(ҎԼ GSS)Λ࢖༻ • ൓өͷେ·͔ͳྲྀΕͱͯ͠ • ϓϥϯφʔɺϨϕϧσβΠφʔ͕GSSʹೖྗ • GSS͔ΒCSVܗࣜͰμ΢ϯϩʔυ • CSV͔ΒDB΁Πϯϙʔτ • ΫϥΠΞϯτ΁഑৴͕ඞཁͳ΋ͷ͸ม׵ͯ͠഑෍

Slide 32

Slide 32 text

Why GSS ? • ϝϦοτ • ෳ਺ਓͰૢ࡞Մೳ • Πϯλʔωοτ͑͋͞Ε͹Ͳ͔͜ΒͰ΋ฤूՄೳ • ฤूͷཤྺ͕࢒Γɺ෮ݩ΋Մೳ • JavaScriptͰϓϥάΠϯͷهड़͕Մೳ

Slide 33

Slide 33 text

Why GSS ? • σϝϦοτ • ࣜ΍ϓϥάΠϯΛ࢖༻͢Δͱ͙͢ॏ͘ͳΔ • ωοτͷ؀ڥ͕ͳ͍ͱߋ৽͕൓өͰ͖ͳ͍

Slide 34

Slide 34 text

ࣗಈԽલͷGSSͷӡ༻ϑϩʔ • ̍ͭͷγʔτΛΈΜͳͰฤू • ࡞ۀ಺༰͕িಥ • ฒߦͰͷ࡞ۀ͕೉͘͠ • ࡞ۀεϐʔυ͕ग़ͳ͍ࣄ͕໰୊ʹ

Slide 35

Slide 35 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ࡞ۀ͕িಥ (ࣄྫ) དྷिग़͢෢ثΛ
 ೖྗ͠·͢

Slide 36

Slide 36 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ࡞ۀ͕িಥ (ࣄྫ) ࠶དྷिग़͢෢ثΛ
 ೖྗ͠·͢

Slide 37

Slide 37 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ࡞ۀ͕িಥ (ࣄྫ) ࠓೖྗதͳͷͰ গ͠଴ͬͯԼ͍͞

Slide 38

Slide 38 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ ࡞ۀ͕িಥ (ࣄྫ) ։ൃ؀ڥͰ ֬ೝ͠Α͏ͬͱʂ

Slide 39

Slide 39 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ ࡞ۀ͕িಥ (ࣄྫ) ͍͢·ͤΜ

Slide 40

Slide 40 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ ࡞ۀ͕িಥ (ࣄྫ) ࣄલͷ͓஌Βͤͱ ύϥϝʔλ͕ҧ͏ͷͰ मਖ਼͠·͢

Slide 41

Slide 41 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ ࡞ۀ͕িಥ (ࣄྫ) 2"લͷσʔλൈ͍ͯ Լ͍͞

Slide 42

Slide 42 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ ࡞ۀ͕িಥ (ࣄྫ)

Slide 43

Slide 43 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ ࡞ۀ͕িಥ (ࣄྫ) ࡞ۀͰ͖Δͷ͍ͭʹ ͳΔ΍Βʜ

Slide 44

Slide 44 text

΍͹͍

Slide 45

Slide 45 text

΍͹͍ • Ϛελʔσʔλೖྗऀͷෛՙ͕ߴ͍ • ฒߦͯ͠࡞ۀ͕Ͱ͖ͳ͍ͷͰ
 ࢪࡦ̍ͭɺ̍ͭͷઃఆʹ͕͔͔࣌ؒΔ • ໰୊͕͋ͬͨ࣌ͷϦΧόϦʔʹ͕͔͔࣌ؒΔ

Slide 46

Slide 46 text

ରࡦ • ։ൃ༻ͷGSSΛຊ൪༻͔Β·Δͬͱෳ੡ • QAલͷσʔλ͸ෳ੡γʔτʹೖྗ • QA׬ྃޙʹຊ൪༻ͷγʔτʹೖྗࠩ෼ΛҠಈ • σϓϩΠ

Slide 47

Slide 47 text

·Δͬͱෳ੡ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BNF "UUBD L )1 ໦౛ ୹݋ ϋϯϚ ʔ φΠϑ

Slide 48

Slide 48 text

·Δͬͱෳ੡ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BNF "UUBD L )1 ໦౛ ୹݋ ϋϯϚ ʔ φΠϑ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BNF "UUBD L )1 ໦౛ ୹݋ ϋϯϚ ʔ φΠϑ

Slide 49

Slide 49 text

·Δͬͱෳ੡ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BNF "UUBD )1 ໦౛ ୹݋ ϋϯϚ φΠϑ ދప ଜӍ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BNF "UUBD L )1 ໦౛ ୹݋ ϋϯϚ ʔ φΠϑ

Slide 50

Slide 50 text

·Δͬͱෳ੡ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BNF "UUBD )1 ໦౛ ୹݋ ϋϯϚ φΠϑ ދప ଜӍ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BN "UUB )1 ໦౛ ୹݋ ϋϯ φΠ *% /BNF "UUBD )1 ໦౛ ୹݋ ϋϯϚ φΠϑ άϩʔ ϝϦέ

Slide 51

Slide 51 text

ղܾ

Slide 52

Slide 52 text

͠ͳ͔ͬͨ

Slide 53

Slide 53 text

• ຊ൪Խ͞Εͨσʔλ͕ະ൓өͰ
 ڍಈ͕͓͔͘͠ͳΓΤϯδχΞ͕ௐࠪ͢Δ͜ͱ͕ଟൃ • ຊ൪Խ͞ΕͨσʔλΛฤूதͷγʔτ΁
 ൓ө͢Δ࡞ۀ΋Ұۤ࿑ • मਖ਼͕Ϧόʔτͯ͠͠·͏ࣄҊ΋… • ൓өʹϛε͕͋ͬͨ৔߹ͷϦΧόϦʔ͕େม ·Δͬͱෳ੡ ݁Ռ

Slide 54

Slide 54 text

• Ϛελʔσʔλͷೖྗऀͷෛՙ͸গ͠Լ͕ͬͨ • ෆ۩߹࣌ͷௐࠪ/ϦΧόϦʔ࡞ۀʹΑΓ
 όοΫΤϯυΤϯδχΞͷෛՙ૿ ·Δͬͱෳ੡ ݁Ռ

Slide 55

Slide 55 text

Ͳ͏͔ͨ͠

Slide 56

Slide 56 text

GSSͷ෼ׂ

Slide 57

Slide 57 text

GSS෼ׂ • ϕʔεͷGSS • σϓϩΠՄೳͳσʔλ͕ೖͬͨγʔτ • ։ൃ༻ͷGSS • ৽ن௥Ճ͍ͨ͠σʔλͷΈ௥Ճͨ͠γʔτ • ͜ΕΒͷ̎ͭͷγʔτΛ݁߹ͯ͠औΓࠐΉ

Slide 58

Slide 58 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ

Slide 59

Slide 59 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ

Slide 60

Slide 60 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ *% /BNF "UUBDL )1

Slide 61

Slide 61 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ދప ଜӍ *% /BNF "UUBDL )1 άϩʔϒ ϝϦέϯ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ

Slide 62

Slide 62 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ދప ଜӍ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ

Slide 63

Slide 63 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 άϩʔϒ ϝϦέϯ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ άϩʔϒ ϝϦέϯ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ

Slide 64

Slide 64 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ

Slide 65

Slide 65 text

*% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ ދప ଜӍ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ *% /BNF "UUBDL )1 ໦౛ ୹݋ ϋϯϚʔ φΠϑ GSS෼ׂ *% /BNF "UUBDL )1 ދప ଜӍ

Slide 66

Slide 66 text

GSS෼ׂ ࣮ࡍͷӡ༻ • GSS෼ׂऔΓࠐΈͷεΫϦϓτΛ༻ҙ • ※GSSࣗମʹ͜ͷ༷ͳػೳ͸͋Γ·ͤΜ • εΫϦϓτΛchat botܦ༝Ͱ࣮ߦͰ͖Δঢ়ଶʹ • ϓϥϯφʔ/ϨϕϧσβΠφʔ͸ChatͰσʔλ ͷऔΓࠐΈΛߦ͏

Slide 67

Slide 67 text

GSS෼ׂ ࣮ࡍͷӡ༻ #BTF ෼ׂ

Slide 68

Slide 68 text

GSS෼ׂ ࣮ࡍͷӡ༻ #BTF ෼ׂ ฤू

Slide 69

Slide 69 text

GSS෼ׂ ࣮ࡍͷӡ༻ #BTF ෼ׂ CPU΁NFOUJPO

Slide 70

Slide 70 text

GSS෼ׂ ࣮ࡍͷӡ༻ #BTF ෼ׂ TDSJQUͷ࣮ߦ

Slide 71

Slide 71 text

GSS෼ׂ ࣮ࡍͷӡ༻ #BTF ෼ׂ ݁߹ͯ͠औΓࠐΈ

Slide 72

Slide 72 text

GSS෼ׂ ࣮ࡍͷӡ༻ #BTF ෼ׂ 13ͷ࡞੒

Slide 73

Slide 73 text

GSS෼ׂ ࣮ࡍͷӡ༻

Slide 74

Slide 74 text

GSS෼ׂ ࣮ࡍͷӡ༻

Slide 75

Slide 75 text

• Ϛελʔσʔλೖྗऀͷෛՙ͕ߴ͍ • ฒߦͯ͠࡞ۀ͕Ͱ͖ͳ͍ͷͰ
 ࢪࡦ̍ͭɺ̍ͭͷઃఆʹ͕͔͔࣌ؒΔ
 ˠ ඞཁͳγʔτΛࣗ෼Ͱ࡞੒͢Δ͚ͩ
 ଞࣾͷ࡞ۀΛ΄ͱΜͲҙࣝͤͣʹ࡞ۀՄೳʹ • ໰୊͕͋ͬͨ࣌ͷϦΧόϦʔʹ͕͔͔࣌ؒΔ
 ˠ ϕʔεͱͳΔγʔτΛमਖ਼͢Δ͚ͩͰOK GSS෼ׂ ࣮ࡍͷӡ༻

Slide 76

Slide 76 text

• ෆ۩߹࣌ͷௐࠪ/ϦΧόϦʔ࡞ۀʹΑΓ
 όοΫΤϯυΤϯδχΞͷෛՙ૿
 ˠ ΄ͱΜͲͷ৔߹௥Ճ͞ΕͨσʔλΛௐࠪ͢Ε͹ղܾ • chatopsͰ΄ͱΜͲΤϯδχΞͷखΛआΓͳͯ͘΋Մೳʹ • εϓϨουγʔτͷ௥Ճ • σʔλͷऔΓࠐΈ • σʔλͷߋ৽ GSS෼ׂ ࣮ࡍͷӡ༻

Slide 77

Slide 77 text

ͦΕ΋ଋͷؒ

Slide 78

Slide 78 text

৽ͨͳ՝୊

Slide 79

Slide 79 text

ෳ਺ͷ։ൃ؀ڥͷχʔζ • ฒߦͯ͠࡞ۀ͕Ͱ͖Δ؀ڥʹͳͬͨ͜ͱͰ
 σʔλͷߋ৽εϐʔυ͕UP • ֬ೝ༻ͷ؀ڥ͕ෳ਺ඞཁʹ

Slide 80

Slide 80 text

Ҏલͷ֬ೝ؀ڥ • dev01~devN ·Ͱ༻ҙ(~10) • ߋ৽/मਖ਼͍ͨ͠σʔλΛ൓өͨ͠branchΛద༻ • ࢪࡦʹΑͬͯ͸αʔόʔͷ࣌ؒΛมߋ͢ΔͨΊ
 ࢖ͬͯΔਓ͕͍ͳ͍͔֬ೝ͕ඞཁ

Slide 81

Slide 81 text

EFW EFW EFW EFW/ ʜ 8FC4FSWFS Ҏલͷ֬ೝ؀ڥ FYBNQMFHBNFDPN

Slide 82

Slide 82 text

EFW EFW EFW EFW/ ʜ 8FC4FSWFS Ҏલͷ֬ೝ؀ڥ FYBNQMFHBNFDPN HBDIB

Slide 83

Slide 83 text

EFW EFW EFW EFW/ ʜ 8FC4FSWFS Ҏલͷ֬ೝ؀ڥ EFWFYBNQMFHBNFDPN HBDIB

Slide 84

Slide 84 text

EFW EFW EFW EFW/ ʜ 8FC4FSWFS Ҏલͷ֬ೝ؀ڥ FYBNQMFHBNFDPN HBDIB pYXFBQPO

Slide 85

Slide 85 text

EFW EFW EFW EFW/ ʜ 8FC4FSWFS Ҏલͷ֬ೝ؀ڥ EFWFYBNQMFHBNFDPN pYXFBQPO HBDIB

Slide 86

Slide 86 text

Ҏલͷ֬ೝ؀ڥ A͞Μ: dev01࢖͍ͬͯΔͻͱ͍·͔͢ʁ B͞Μ: ͸͍ A͞Μ: ͡Ό͋ɺdev03͸Ͳ͏Ͱ͔͢ʁ C͞Μ: ࢖ͬͯ·ʔ͢

Slide 87

Slide 87 text

Ҏલͷ֬ೝ؀ڥ • ։͍͍ͯΔ؀ڥΛ୳͢ͷ͕஍ຯʹखؒ • ࠷ॳ͸֬ೝස౓͕গͳ͔͕ͬͨ
 ঃʑʹ૿͍͑ͯͬͨ • ։ൃͰ΋APIͷͭͳ͗ࠐΈ΍QAʹαʔόʔΛ
 ඞཁͱ͢ΔͨΊӨڹ͕େ͖͘ͳ͖ͬͯͨ

Slide 88

Slide 88 text

docker × mirage 
 Λ࢖༻ͨ͠։ൃ؀ڥͷߏங

Slide 89

Slide 89 text

What's docker ? • ίϯςφܕͱݴΘΕΔ
 ΞϓϦέʔγϣϯ࣮ߦ؀ڥ • Πϝʔδͱݺ͹ΕΔΞϓϦέʔγϣϯͷ਽ܗ ͔ΒΞϓϦέʔγϣϯΛߴ଎ʹىಈՄೳ
 
 ˞dockerʹؔͯ͠͸ࠓճ͸ৄ͘͠৮Ε·ͤΜ

Slide 90

Slide 90 text

What's mirage ? • ήʔϜٕݚϝϯόʔ͕։ൃͨ͠ϛυϧ΢ΣΞ • subdomainͱbranch໊ΛηοτͰϦΫΤετ • ίϯςφΛىಈ͠ɺbranch৘ใ͕؀ڥม਺ͱͯ͠౉Δ • ίϯςφ಺ʹ౉͞ΕͨbranchͰΞϓϦέʔγϣϯΛىಈ • ࢦఆͨ͠υϝΠϯ໊ͰϦΫΤετ͢Δͱ
 ର৅ͷίϯςφ΁Proxy͢Δ

Slide 91

Slide 91 text

What's mirage ? 8FC4FSWFS

Slide 92

Slide 92 text

What's mirage ? 8FC4FSWFS

Slide 93

Slide 93 text

What's mirage ? 8FC4FSWFS NJSBHF

Slide 94

Slide 94 text

What's mirage ? 8FC4FSWFS NJSBHF

Slide 95

Slide 95 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯHBDIB
 ϒϥϯνHBDIB

Slide 96

Slide 96 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯHBDIB
 ϒϥϯνHBDIB

Slide 97

Slide 97 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯHBDIB
 ϒϥϯνHBDIB HBDIB

Slide 98

Slide 98 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯXFBQPO
 ϒϥϯνpYXFBQPO HBDIB

Slide 99

Slide 99 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯXFBQPO
 ϒϥϯνpYXFBQPO HBDIB

Slide 100

Slide 100 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯXFBQPO
 ϒϥϯνpYXFBQPO HBDIB pYXFBQPO

Slide 101

Slide 101 text

What's mirage ? 8FC4FSWFS NJSBHF HBDIB pYXFBQPO HBDIBFYBNQMFDPN

Slide 102

Slide 102 text

What's mirage ? 8FC4FSWFS NJSBHF HBDIB pYXFBQPO HBDIBFYBNQMFDPN

Slide 103

Slide 103 text

What's mirage ? 8FC4FSWFS NJSBHF HBDIB pYXFBQPO HBDIBFYBNQMFDPN

Slide 104

Slide 104 text

What's mirage ? 8FC4FSWFS NJSBHF HBDIB pYXFBQPO XFBQPOFYBNQMFDPN

Slide 105

Slide 105 text

What's mirage ? 8FC4FSWFS NJSBHF HBDIB pYXFBQPO XFBQPOFYBNQMFDPN

Slide 106

Slide 106 text

What's mirage ? 8FC4FSWFS NJSBHF HBDIB pYXFBQPO XFBQPOFYBNQMFDPN

Slide 107

Slide 107 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯHBDIB
 ϒϥϯνHBDIB HBDIB pYXFBQPO

Slide 108

Slide 108 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯHBDIB
 ϒϥϯνHBDIB HBDIB pYXFBQPO

Slide 109

Slide 109 text

What's mirage ? 8FC4FSWFS NJSBHF υϝΠϯHBDIB
 ϒϥϯνHBDIB HBDIB pYXFBQPO HBDIB

Slide 110

Slide 110 text

What's mirage ? 8FC4FSWFS NJSBHF HBDIB pYXFBQPO HBDIB HBDIBFYBNQMFDPN

Slide 111

Slide 111 text

docker × mirage • ֬ೝ༻ͷ؀ڥ͕ෳ਺ඞཁʹ
 ˠඞཁͳ࣌ʹɺඞཁͳ෼͚ͩ؀ڥ͕ىಈՄೳʹ ※ϚγϯϦιʔεͷ্ݶ͸͋Δ • ։͍͍ͯΔ؀ڥΛ୳͢ͷ͕஍ຯʹखؒ
 ˠ୭͕࢖͍ͬͯΔ͔֬ೝ͢Δඞཁ΋͍Βͳ͍
 ࣗ෼ͷඞཁͳ؀ڥΛඞཁͳཱ͚ͩͯΕ͹Α͍

Slide 112

Slide 112 text

docker × mirage • chat bot ʹ͢Δ͜ͱͰ
 ؀ڥߏங΋ΤϯδχΞ͍Βͣ ※ Software Design 2017೥2݄߸ͷಛूͰ
 mirage΍͜ͷลͷ࿩Λॻ͍͍ͯ·͢[એ఻]

Slide 113

Slide 113 text

͜ΕͰશͯղܾʂ

Slide 114

Slide 114 text

͔ͱࢥ͍͖΍

Slide 115

Slide 115 text

·ͨɺ৽ͨͳ໰୊͕ • Ϛελʔσʔλͷߋ৽εϐʔυUP • ։ൃ/֬ೝ؀ڥ΋५୔ʹ • νʔϜνΣοΫ΍QAͷ߲໨/ճ਺͕૿͑
 νΣοΫ/QAͷίετ૿ʹ

Slide 116

Slide 116 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘

Slide 117

Slide 117 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • ෳ਺ͷΞΠςϜλΠϓ͕෇༩Ͱ͖ΔΑ͏ͳ
 Ϛελʔσʔλ͕͋Γ·ͨ͠ • item_type • item_id • item_amount • item_typeͰ͸
 Ϛωʔɺਫথɺ෢ث ༷ʑͳ΋ͷ͕ઃఆͰ͖·͢

Slide 118

Slide 118 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • item_type: 1 Ϛωʔ • item_type: 2 ਫথ • item_type: 3 ෢ث • ͱఆٛ͞Ε͍ͯ·͢

Slide 119

Slide 119 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • ϚωʔΛ1000͋͛Δࢪࡦ͕ܾఆ • item_type: 1 • item_id: 0 • item_amount: 1000 • ͱઃఆ

Slide 120

Slide 120 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • ϚωʔΛ1000͋͛Δࢪࡦ͕ܾఆ • item_type: 1 • item_id: 0 • item_amount: 1000 • ͱઃఆ͢Δͱ͜ΖΛ…

Slide 121

Slide 121 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • ޡͬͯitem_typeΛ2(ਫথ)ͱࢦఆ • ೉͍͠ઃఆͰ͸ͳ͍ͷͰνʔϜνΣοΫ͚ͩͰ
 QAνΣοΫ͸εΩοϓ • ໰୊ͳ͘ΪϑτϘοΫεʹೖ͍ͬͯΔͷΛ֬ೝ • νʔϜνΣοΫ΋ແࣄ௨ա • ͦͷ··ɺσϓϩΠ͞Ε·ͨ͠

Slide 122

Slide 122 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • ࢪࡦ౰೔ • ͳ͔ͥ๭ܝࣔ൘΍twitter͕૽͕͍͠ • ֬ೝͯ͠ΞϓϦΛىಈͯ͠ϝοηʔδΛ։෧͢Δͱ • ͳ͔ͥਫথ͕1000ݸ෇༩͞ΕΔ • ճऩ͢Δͷ͔ɺͲ͏͢Δͷ͔… ϝϯςೖΕΔʁʁ

Slide 123

Slide 123 text

ා͍Ͱ͢Ͷ

Slide 124

Slide 124 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • ͳʹ͕ѱ͍ʁ • ϚελʔσʔλΛೖΕͨਓʁ • νʔϜνΣοΫΛͪΌΜͱ͠ͳ͔ͬͨ͜ͱʁ • QAʹνΣοΫͯ͠΋ΒΘͳ͔ͬͨ͜ͱʁ

Slide 125

Slide 125 text

ͱ͋ΔήʔϜӡ༻ͷҰ৔໘ • ໰୊͕ऩଋͨ͠ޙͰͷ࠶ൃ๷ࢭMTGʹͯ • ͔࣍ΒؾΛ͚ͭ·͢ • νʔϜνΣοΫͷ֬ೝ߲໨Λపఈ͠·͢ • શͯQAνʔϜʹQAͯ͠΋Β͏

Slide 126

Slide 126 text

ؓ࿩ٳ୊

Slide 127

Slide 127 text

ؓ࿩ٳ୊ • ࢪࡦ͕૿͑ΔͱQAͷίετ͕૿͑Δ • ਓ͕େྔʹ͍Ε͹QAͰ͖Δ • QAʹ͔͚ΒΕΔίετ͸༗ݶ • ͔͠͠ɺQA͠ͳ͍Θ͚ʹ͸͍͔ͳ͍

Slide 128

Slide 128 text

ϚελʔσʔλͷCI

Slide 129

Slide 129 text

ϚελʔσʔλͷCI • CI: Continuous Integration • ܧଓతΠϯςάϨʔγϣϯ • ཁ͸Ϛελʔσʔλͷࣗಈςετ

Slide 130

Slide 130 text

CIͬͯιʔείʔυʹ
 ΍Δ΋ͷ͡Όͳ͍ͷʁ

Slide 131

Slide 131 text

࣮ࡍͷςετέʔεͷҰྫ • ϦϨʔγϣϯઌͷϚελʔσʔλ͕͖ͪΜͱଘࡏ͢Δ͔ • N೔ޙ·ͰΨνϟͷࢪࡦ͕ઃఆ͞Ε͍ͯΔ͔ • ઃఆ͞ΕͨΨνϟͱରԠ͢ΔϚΠϖʔδόφʔ͕ઃఆ͞ Ε͍ͯΔ͔ • ෇༩ΞΠςϜʹਫথ͕ઃఆ͞Ε͍ͯΔ৔߹͸̑ݸҎ಺͔ • etc

Slide 132

Slide 132 text

• ϦϨʔγϣϯઌͷϚελʔσʔλ͕͖ͪΜͱଘࡏ͢Δ͔ • → ͳΜ͔ಈ͔ͳ͍ΜͰ͚͢ͲΛνΣοΫ • N೔ޙ·ͰΨνϟͷࢪࡦ͕ઃఆ͞Ε͍ͯΔ͔ • → ௕ظٳՋதͷΨνϟ͕
 ઃఆ͞Εͯͳ͍ͳ͔ͬͨώϠϦɾϋοτͷ࠶ൃ๷ࢭ ϚελʔσʔλͷCI

Slide 133

Slide 133 text

• ઃఆ͞ΕͨΨνϟͱରԠ͢ΔϚΠϖʔδόφʔ͕
 ઃఆ͞Ε͍ͯΔ͔ • → Ψνϟ͚ͩ/όφʔ͚ͩ ઃఆ͞Ε͍ͯͨෆ۩߹ͷ
 ࠶ൃ๷ࢭࡦ • ෇༩ΞΠςϜʹਫথ͕ઃఆ͞Ε͍ͯΔ৔߹͸̑ݸҎ಺͔ • → QAͰൃ֮ͨ͠ItemTypeϛεͷ࠶ൃ๷ࢭࡦ ϚελʔσʔλͷCI

Slide 134

Slide 134 text

ϚελʔσʔλͷCI • ࣮ࡍͷςετίʔυ

Slide 135

Slide 135 text

ϚελʔσʔλͷCI • ؆୯ͳ΋ͷ͸ೖྗऀ͕GSS্νΣοΫΛߦ͍ͬͯΔ • ϨϕϧσβΠφʔɺϓϥϯφʔ͔Βͷཁ๬Λ্͛ ͯ΋Β͍ςετίʔυʹ൓ө • ࢪࡦʹΑͬͯ͸ྫ֎͕ൃੜ͢ΔͷͰಛఆͷέʔεͩ ͚͸εΩοϓͤ͞Δ

Slide 136

Slide 136 text

ϚελʔσʔλͷCI • ؾΛ͚ͭͯ΋ؒҧ͏࣌͸ؒҧ͏ • ๨Εͨ͜ΖʹϛεΔ • ϚελʔσʔλىҼͷϛε͕͋ͬͨ৔߹͸Մೳͳ ݶΓςετέʔεΛ௥Ճ͠࠶ൃ๷ࢭʹ౒Ί͍ͯΔ

Slide 137

Slide 137 text

ϚελʔσʔλͷCI • JenkinsͰઐ༻ͷδϣϒΛઃఆ • ϚελʔσʔλͷσϓϩΠΛ͢Δͱ͖͸
 ඞͣCI͕௨ͬͨͷΛ֬ೝͯ͠σϓϩΠ

Slide 138

Slide 138 text

ϚελʔσʔλͷCI • JenkinsͰઐ༻ͷδϣϒΛઃఆ • ϚελʔσʔλͷσϓϩΠΛ͢Δͱ͖͸
 ඞͣCI͕௨ͬͨͷΛ֬ೝͯ͠σϓϩΠ

Slide 139

Slide 139 text

ࣗಈԽͷऔΓ૊Έ ·ͱΊ • GSSΛ෼ׂ͢Δ͜ͱͰෳ਺ਓ͕ฒߦͰฤूՄೳʹ • chat botͰ֤ਓ͕ΤϯδχΞͷखΛआΓͣʹ
 & ଴ͪ࣌ؒͳ͘σʔλͷ൓ө͕Մೳʹ • docker×mirageΛ࢖༻͢Δ͜ͱͰ֤ਓ͕
 ࣗ༝ʹ։ൃ/֬ೝͰ͖Δ؀ڥΛߏஙՄೳʹ • ϚελʔσʔλΛCI͢Δ͜ͱͰ҆શͳӡ༻ج൫Λߏங

Slide 140

Slide 140 text

No content

Slide 141

Slide 141 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽ ͱϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 142

Slide 142 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽ ͱϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 143

Slide 143 text

ϊ΢ϋ΢ڞ༗ͷ࢓૊Έ • νʔϜ಺Ͱͷϊ΢ϋ΢ڞ༗ͷ࢓૊Έ • νʔϜؒͰͷϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 144

Slide 144 text

νʔϜ಺Ͱͷ
 ϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 145

Slide 145 text

νʔϑ಺Ͱͷϊ΢ϋ΢ڞ༗ • Ξνʔϒϝϯτγʔτ • όοΫΤϯυ޲͚ • ෛՙࢼݧ • ো֐ରԠه࿥

Slide 146

Slide 146 text

Ξνʔϒϝϯτγʔτ

Slide 147

Slide 147 text

Ξνʔϒϝϯτγʔτͱ͸ʁ • “୭”͕ɺ”Կ͕Ͱ͖Δͷ” ͔Λදʹͨ͠΋ͷ • ॎ࣠ʹλεΫ • ԣ࣠ʹνʔϜͷϝϯόʔ • λεΫͷଐਓੑΛແͨ͘͢ΊͷऔΓ૊ΈͷҰ؀ • ࣅͨΑ͏ͳ΋ͷʹ εΩϧϚοϓɺ੕औද ͳͲ

Slide 148

Slide 148 text

Ξνʔϒϝϯτγʔτͱ͸? • λεΫ • ॏཁ౓×ස౓ͰॏΈ෇͚͕͞Ε͍ͯΔ • ֤ϝϯόʔ͕Ͱ͖Δ/Ͱ͖ͳ͍Λೖྗ

Slide 149

Slide 149 text

Ξνʔϒϝϯτγʔτͱ͸? • λεΫ • ॏཁ౓×ස౓ͰॏΈ෇͚͕͞Ε͍ͯΔ • ֤ϝϯόʔ͕Ͱ͖Δ/Ͱ͖ͳ͍Λೖྗ

Slide 150

Slide 150 text

Ξνʔϒϝϯτγʔτͱ͸?

Slide 151

Slide 151 text

Ξνʔϒϝϯτγʔτͱ͸?

Slide 152

Slide 152 text

ϝϦοτ • ֤ϝϯόʔͷεΩϧͷݟ͑ΔԽ • ଐਓੑͷՄࢹԽ • λεΫͷৼΓ෼͚࣌ʹ୲౰ऀ͕
 ݻఆ͠ͳ͍Α͏ׂΓৼΔ • ଘࡏ͢ΔλεΫͷݟ͑ΔԽ/਺஋Խ

Slide 153

Slide 153 text

ϝϦοτ • “࢓ࣄ͕Ͱ͖Δ”ɺ”1ਓલ”Λ਺஋ͰఆٛͰ͖Δ • ໨ඪઃఆͳͲͷ “1ਓલʹͳΔ” 
 ͳͲఆྔతʹνΣοΫͰ͖Δ

Slide 154

Slide 154 text

σϝϦοτ • ࠷ॳ࡞Δ͕࣌େม • γʔτΛϝϯςφϯε͍ͯ͘͠ඞཁ͕͋Δ • ݱঢ়ͷӡ༻Ͱ͸ࣗ෼ͷओ؍Ͱ͚͍ͭͯΔ
 ΋ͷ΋͋ΔͷͰݫີͰ͸ͳ͍ • ओ໨త͕ଐਓੑͷՄࢹԽͷͨΊࠓͷͱ͜Ζ ໰୊ʹ͸ͳͬͯ͸͍ͳ͍

Slide 155

Slide 155 text

Ξνʔϒϝϯτγʔτͷӡ༻ • ৽ػೳ͕௥Ճ͞ΕͨλΠϛϯά • ৽όʔδϣϯΛϦϦʔεͨ͠λΠϛϯά • ৽͍͠ਓ͕δϣΠϯͨ͠λΠϛϯά • etc • અ໨અ໨Ͱ֤νʔϜߋ৽Λߦ͍ͬͯΔ

Slide 156

Slide 156 text

ෛՙࢼݧ

Slide 157

Slide 157 text

ෛՙࢼݧ • όοΫΤϯυΤϯδχΞ޲͚ͷऔΓ૊Έ • ຊ൪؀ڥͱ͸ผʹ
 ຊ൪؀ڥͱಉ༷ͷ؀ڥΛߏங • ຊ൪ಉ༷ͷϢʔβʔͷϑϩʔͰ
 ର৅ͷαʔόʔʹෛՙΛ͔͚Δ

Slide 158

Slide 158 text

ͳͥෛՙࢼݧʁ • ৽ػೳͷϦϦʔε௚ޙ • େܕͷྲྀೖࢪࡦͷ࣮ࢪ • etc • ٸͳΞΫηε૿ʹඋ͑Δ

Slide 159

Slide 159 text

ͳͥෛՙࢼݧʁ • ຊ൪؀ڥ͸ϦϦʔεޙ
 େ͖͘؀ڥΛม͑Δ͜ͱ͸গͳ͍ • σϓϩΠ΍ઃఆϑΝΠϧͷมߋ͚ͩͰ͸
 શ๴Λ೺Ѳ͠ʹ͍͘ • େ͖͘มߋ͠ͳ͍ͷͰ
 ຊ൪؀ڥΛ೺Ѳ͍ͯ͠Δϝϯόʔ͕ภͬͯ͠·͏

Slide 160

Slide 160 text

ͳͥෛՙࢼݧʁ • ෛՙࢼݧͷ४උΛ௨ͯ͠ຊ൪؀ڥͷશମ૾Λ೺Ѳ • ࣗ෼ͰෛՙΛ͔͚Δ͜ͱʹΑͬͯ
 Ϣʔβʔͷಈ࡞͕Ͳ͏Өڹ͕͋Δͷ͔Λཧղ͢Δ

Slide 161

Slide 161 text

ෛՙࢼݧ • ͨͩɺͲΕ͚ͩඋ͑ͯ΋ى͜Δ࣌͸ى͜Δ • ΠϯϑϥىҼ • ΦϖϨʔγϣϯϛε • etc…

Slide 162

Slide 162 text

ෛՙࢼݧ • ΧϠοΫͰ͸ো֐࣌͸جຊ
 ΠϯϑϥνʔϜͱόοΫΤϯυΤϯδχΞ͕୲౰ • ো֐ͷݪҼڀ໌/෮چ͸
 ࠷୹ͰͷରԠ͕ٻΊΒΕΔ • ΍ΕΔਓ/΍Γ׳ΕͯΔਓ͕ରԠ͢Δࣄ͕ଟ͘ͳΔ

Slide 163

Slide 163 text

ো֐ରԠه࿥

Slide 164

Slide 164 text

ো֐ରԠه࿥ • શ͘ಉ͡ݪҼͷো֐͸ຆͲແ͍ • γϛϡϨʔγϣϯ͕͠ʹ͍͘ • ϝϯόʔ͔ΒώΞϦϯά • Ͳ͏΍ͬͯো֐ରԠग़དྷΔΑ͏ʹͳͬͨͷ͔ • ো֐ରԠ͢Δ্Ͱͳʹ͕෼͔Βͳ͍ͷ͔

Slide 165

Slide 165 text

ো֐ରԠه࿥ • Ͳ͏΍ͬͯো֐ͷ͋ͨΓΛ෇͚͍ͯΔͷ͔ • ௐࠪ࣌ʹԿΛݟ͍ͯΔͷ͔ • Կͷ஋ΛΈͯΔͷ͔ • ͲΜͳίϚϯυΛ࢖͍ͬͯΔ͔ • ͲΜͳίϚϯυΛ૊Έ߹ΘͤͯΔ͔ • etc

Slide 166

Slide 166 text

ো֐ରԠه࿥ • ͲͷΑ͏ʹͯ͠ো֐ΛରԠ͔ͨ͠Λه࿥ • ͍ͭ • Կ͕ى͖ͨ • Өڹ͸ • Ͳ͏΍ͬͯݪҼΛಛఆͨ͠ • ͲͷΑ͏ʹͯ͠ରԠͨ͠

Slide 167

Slide 167 text

ো֐ରԠه࿥

Slide 168

Slide 168 text

ো֐ରԠه࿥ • ϝϯόʔ͔ΒͷFB • ԿΛݟͯ൑அ͍ͯ͠Δͷ͔ཧղͰ͖ͨ • ͲͷΑ͏ͳॱংΛܦͯো֐ͷݪҼΛಛఆ͍ͯ͠Δ ͷ͕෼͔ΔΑ͏ʹͳͬͨ • ਖ਼௚ɺΞϥʔτͷ಺༰͚ͩͰݪҼΛಛఆ
 Ͱ͖Δಛघೳྗతͳ෺͕ඞཁͩͱࢥ͍ͬͯ·ͨ͠

Slide 169

Slide 169 text

νʔϜؒͰͷ
 ϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 170

Slide 170 text

νʔϜؒͰͷϊ΢ϋ΢ڞ༗ • ৬ೳ͝ͱͷि࣍KPT • ͬ͘͟͹ΒΜձ

Slide 171

Slide 171 text

৬ೳ͝ͱͷि࣍KPT • िʹ̍࣌ؒ ৬ೳϦʔμˍر๬ऀ͕ग़੮ • લिʹ͋ͬͨ͜ͱΛڞ༗ • ࠓि͋ΔΠϕϯτ/ࢪࡦͷڞ༗ • ௚ۙ͋Δେ͖ΊͷΠϕϯτ/ࢪࡦͷڞ༗ • ෆ۩߹ͷ಺༰ͱରԠ಺༰ͷڞ༗

Slide 172

Slide 172 text

৬ೳ͝ͱͷि࣍KPT • ಉ͡Α͏ͳ໰୊/՝୊ʹ௚໘͢Δࣄ͕… • ंྠͷ࠶ൃ໌Λ๷͙ • ଞνʔϜ΁ͷܯࠂ

Slide 173

Slide 173 text

ͬ͘͟͹ΒΜձ • ि࣍KPT͚ͩͰ͸͕࣌ؒ଍Γͳ͍େ͖Ίͷ
 τϐοΫΛ֤νʔϜͲͷΑ͏ʹ΍͍ͬͯΔ͔Λڞ༗ • ৽نλΠτϧ্ཱͪ͛࣌΍ӡ༻։࢝௚ޙʹ։͔ΕΔࣄ͕ଟ͍ • ֎෦αʔϏεͷ࿈ܞํ๏ • AssetBundleͷӡ༻ํ๏ • KPTͷ΍Γํ • etc

Slide 174

Slide 174 text

ϊ΢ϋ΢ڞ༗ ·ͱΊ • ΞνʔϒϝϯτγʔτΛ࡞ͬͯଐਓੑͷՄࢹԽ • ଐਓੑΛແ͘͢Α͏λεΫͷׂΓৼΓ • ෛՙࢼݧͱো֐ରԠه࿥Ͱ
 ࣮ફͰͷܦݧ͕ੵΈͮΒ͍஌ࣝͷڞ༗ • ि࣍KPTɺͬ͘͟͹ΒΜձ౳Λߦ͍
 νʔϜؒͰ΋ϊ΢ϋ΢Λڞ༗

Slide 175

Slide 175 text

·ͱΊ • தن໛νʔϜͷߏ੒ • Ϛελʔσʔλӡ༻ͷͨΊͷࣗಈԽͷ࢓૊Έ • νʔϜ಺/νʔϜؒͰͷϊ΢ϋ΢ڞ༗ͷ࢓૊Έ

Slide 176

Slide 176 text

தن໛νʔϜΛࢧ͑ΔࣗಈԽͱ ϊ΢ϋ΢ڞ༗ͷ࢓૊Έ ໘ന๏ਓΧϠοΫ ໼ਧྒྷհ@CEDEC2017

Slide 177

Slide 177 text

͝੩ௌ͋Γ͕ͱ͏
 ͍͟͝·ͨ͠

Slide 178

Slide 178 text

Q&A

Slide 179

Slide 179 text

ࢀߟURL • ๻ΒͷߕࢠԂϙέοτ ެࣜαΠτ • https://koshien-pocket.kayac.com/ • Ωϯ೑Ϛϯ Ϛοεϧγϣοτ ެࣜαΠτ • http://muscleshot.jp/ • ΧϠοΫืू ৬छ • https://www.kayac.com/recruit/career • FINAL FANTASY Record KeeperͷϚελʔσʔλΛࢧ͑Δٕज़ • https://www.slideshare.net/dena_study/final-fantasy-record-keeper • ϞόΠϧήʔϜʹ͓͚ΔϚελʔσʔλӡ༻ࣄྫ • http://labs.gree.jp/blog/2015/12/15368/

Slide 180

Slide 180 text

ࢀߟURL • docker • https://www.docker.com/ • acidlemon/mirage • https://github.com/acidlemon/mirage • DockerͰඇΤϯδχΞͰ΋։ൃ؀ڥΛ্͛Լ͛Ͱ͖Δɺmirageͱ͍͏πʔϧΛ࡞Γ·ͨ͠ • http://techblog.kayac.com/mirage • ιϑτ΢ΣΞσβΠϯ 2017೥ 02 ݄߸ • https://www.amazon.co.jp/exec/obidos/ASIN/B01NBDY5L2 • ιʔείʔυҎ֎΋ͱʹ͔͘ςετ͢Δɻ΋͘͠͸ΧόϨοδ͚ͩͰ͸μϝͩͱ͍͏࿩ • http://www.songmu.jp/riji/entry/2014-12-25-test-anything.html • εΩϧϚοϓ࡞੒ͷ͢͢Ί • http://www.ryuzee.com/contents/blog/7065