ã¢ããªãã£ã®ãã¹ãã³ãŒã¹ãWoven Cityãã«æºãããšã³ãžãã¢ãèªãéçºã®èå°è£ââWoven City Tech Meetup "Cloud"
ããšã¿èªåè»ãCES 2020ã§çºè¡šããå®èšŒéœåžãWoven CityïŒãŠãŒãã³ã»ã·ãã£ïŒããæ®ããã®äžã®ããããã¢ãããµãŒãã¹ãæ å ±ã§ã€ãªããâãã¹ãã³ãŒã¹âã ãéæã¯2024幎ãã2025幎ãäºå®ãããé岡ç裟éåžã§ä»ãŸãã«å»ºèšãé²ããããŠããããã®éçºã®äžæ žãæ ãããšã¿åäŒç€Ÿã®ãŠãŒãã³ã»ãã©ãããã»ããŒã«ãã£ã³ã°ã¹ïŒä»¥äžãããŠãŒãã³ã»ãã©ããããïŒããããã¯ããŒãã¢ãããWoven City Tech Meetup "Cloud"ããéå¬ããã®æ§åãã¬ããŒãããã人ã"Move"ïŒæåïŒãããè¡ãWoven Cityã
ä»åã®ããŒããã¯ã©ãŠãéçºãã®ç»å£ã«å ¥ãåã«ããŠãŒãã³ã»ãã©ãããã§ããã¯ãšã³ããµãŒãã¹ãšã³ãžãã¢ãåããHunter ChenïŒãã³ã¿ãŒã»ãã§ã³ïŒæ°ããWoven Cityã®æŠèŠã説æãããã
è¡ã«äœã人ã ãã§ãªããäžçäžã®äººã®åœ¹ã«ç«ã€è£œåãéçºããããšã§ã幞ãã®éç£ããç®æãæªæ¥éœåžãçæŽ»ã®ããããåéãæ¯ããæè¡ããµãŒãã¹ãå®èšŒããéœåžã®äžã«æªæ¥ã®åœããåãçºæããŠãããšè©±ããChenæ°ã匷調ããèšèã®ã²ãšã€ããã¢ããªãã£ãã ã
ãã¢ããªãã£ã¯ã"Move"ïŒåãïŒãšããèšèã«ãã©ãŒã«ã¹ããŠããŸããâMoveâãšèããšç©ççã«åãããšã飿³ããŸãããMoveã¯äººã®æ°æã¡ã«ãåœãŠã¯ãŸããã®ã ãšèããŠããŸããè¡ãèŠããšããè¡ã«è¶³ãèžã¿å ¥ãããšããè¡ãæ©ãããšããæåãæããŠã»ããããïŒChenæ°ïŒ

第1ãã§ãŒãºã§ã¯ãæ·å°é¢ç©çŽ5äžã¡ã®è¡ã«360åã»ã©ã®å± äœè ãäœãäºå®ã ãå°æ¥çã«ã¯2,000åãŸã§å¢ããããšãèŠèŸŒãŸãããå± äœè ã¯ãã€ã³ãã³ã¿ãŒïŒèµ·æ¥å®¶ãç ç©¶è ïŒãåè²ãŠäžåž¯ãã·ãã¢ããªã©å€æ§æ§ãéèŠããæ§æã ã
ãããã®å± äœè ã察象ã«ãã¢ããªãã£ïŒèªåé転ïŒããšãã«ã®ãŒïŒã«ãŒãã³ã»ãã¥ãŒãã©ã«ïŒãç©æµïŒãããã£ã¯ã¹ïŒãé£ã蟲æ¥ãšãã£ã12é åã®æè¡ããµãŒãã¹ãå®èšŒããWoven Cityã®ã©ã€ãã¹ã¿ã€ã«ãå®çŸããŠããã

æ¢ææŠå¿µã«ãšããããªãã·ã¹ãã ã¢ãŒããã¯ãã£èšèš
ç¶ããŠãŠãŒãã³ã»ãã©ãããã®Stephen ShumïŒã¹ãã£ãŒãã³ã»ã·ã¥ã ïŒæ°ãç»å Žããæ¢ææŠå¿µã«ãšããããªãã·ã¹ãã ã¢ãŒããã¯ãã£èšèšããããŒãã«ç»å£ããã
Shumæ°ã¯ãã©ã€ãã¹ã¿ã€ã«ã»ãµãŒãã¹ã»ãããã¯ãã»ããŒã ã§æè¡ãªãŒããŒãåããã20幎ã»ã©åã«Javaãšã³ãžãã¢ãšããŠãã£ãªã¢ãã¹ã¿ãŒããããªãŒã¹ãã©ãªã¢ãéŠæž¯ãªã©ãèå°ã«ã°ããŒãã«ã«åããŠãããçŸåšã¯ãã·ã¹ãã èšèšã¢ãŒããã¯ãã£ã«æ³šåããŠããã

éæã®å€æ¹ã ãšããããšã§ãShumæ°ã¯äŒå Žã«ãŠã©ãŒã ã¢ããã®åé¡ãæããããããããã¬ã ã»ã¹ããŒãã¡ã³ãïŒå顿ïŒã¯ããè¡äžã®ããã€ã¹ãäºãã«è©±ãåããããªã·ã¹ãã ãã€ãããããã ãããã«ã¯å ¬å ±ãšå®¶åºã®ããã€ã¹ãå«ãŸããITæŠç¥ã¯ãã¯ã©ãŠããã¡ãŒã¹ããã ãšããã
Q. ãã®å Žåãã©ãã«ã·ã¹ãã ããã¹ãã£ã³ã°ããã¹ããã
ãa. ãããªãã¯ã¯ã©ãŠããããã€ããŒ
ãb. ããŒã«ã«ããŒã¿ã»ã³ã¿ãŒ
ãc. ãããªãã¯ã¯ã©ãŠããšããŒã«ã«ããŒã¿ã»ã³ã¿ãŒã®ãã€ããªãã

äŒå Žã®çãã¯aãšbã«åãããããShumæ°ã¯ãWoven Cityã§ã¯ç¬¬3ã®éžæè¢ãcã®ãããªãã¯ã¯ã©ãŠããšããŒã«ã«ããŒã¿ã»ã³ã¿ãŒã®ãã€ããªãããšããéžæããšãããããšã瀺ãããæŠç¥éãã«ãã ã¯ã©ãŠãã«ä¹ããã®ã§ã¯ãªããéæ©èœèŠä»¶ãã¢ããªã±ãŒã·ã§ã³ã®ã¬ã€ãã³ã·ãŒãé«å¯çšæ§ãçœå®³åŸ©æ§ãªã©ãèæ ®ããäžã§å€æãã¹ãã ãšèª¬ããã
Shumæ°ã¯ãWoven Cityã®ã¢ãŒããã¯ãã£èšèšã«ãããå ·äœçãªèª²é¡ã䞊ã¹ãããã©ãããã°é©åãªæ å ±ããé©åãªäººã«ãé©åãªã¿ã€ãã³ã°ã§å ±æã§ãããããããŠãŒã¶ãŒã®ãã©ã€ãã·ãŒãšããŒã¿å©çšã®ãã©ã³ã¹ãã©ãåãã®ããããå€ãã®äººãå€ãã®ã¢ããªã±ãŒã·ã§ã³ã䜿ãç¶æ³ã§èªèšŒãšèªå¯ãã©ãè¡ãã®ãããªã©ã ã
ãŸã èŠãããšã®ãªã Woven Cityã§ã¯ãæ¥ã æ°ããªèª²é¡ããã£ã¬ã³ãžã蚪ãããæ¢ææŠå¿µã«ãšããããŠããŠã¯ãèªãå¶éããããŠããŸããæªæ¥ãèŠæ®ããŠãæ°ããèŠä»¶ã«å¯Ÿå¿ããæè»æ§ãèšå€§ãªãã©ãã£ãã¯ãåŠçããããã®ã¹ã±ãŒã©ããªãã£ãä»ã®å Žæã«ããµãŒãã¹ãå±éã§ããæè»æ§ãªã©ãæãããŠãããšè©±ããã
ãã¯ã©ãŠããœãªã¥ãŒã·ã§ã³ã¯æ±ºããŠäžèœè¬ã§ã¯ãããŸãããæ©èœèŠä»¶ãšéæ©èœèŠä»¶ãæºããã®ã¯åœããåã§ãããäœããããžãã¹ç®æšãéæããããšã§ãããŸããäœäºã«ãå¶çŽãéçããããŸããããªãŒã©ã³ãïŒã¿ã飯ïŒã¯ååšããããã¹ãŠã®ãã®ã«ã¯ãã¬ãŒããªãããããç¹ã«æéãšã³ã¹ãã®ãã¬ãŒããªããçè§£ããäžã§é²ããŸããããïŒShumæ°ïŒ
ã·ã¹ãã ã¢ãŒããã¯ãã£èšèšã«ãŸã€ãã質çå¿ç
ãããããChenæ°ãé²è¡åœ¹ãåãã圢ã§Shumæ°ãžã®è³ªçå¿çãè¡ããããäž»ãªãã€ã³ãããŸãšãã圢ã§ç޹ä»ããã
ãèæ ®ããªããŠã¯ãªããªãé ç®ãããããããäžãã©ãåªå é äœãã€ããŠããã®ãããšãã質åãžã®çãã¯ã·ã³ãã«ã ããæåªå ãã¹ãã¯ãããžãã¹ãŽãŒã«ã§ãããšShumæ°ãæè¡çãªåé¡ãæ©èœèŠä»¶ãšéæ©èœèŠä»¶ãªã©ãæ€èšãããããããããããžãã¹äžã®èª²é¡ã解決ããããã«ã·ã¹ãã ãæ§ç¯ããŠããããšãå¿ããŠã¯ãããªããšå¿µãæŒããã
ãã·ã¹ãã ã®å®å šæ§ãä¿¡é Œæ§ãã·ã¹ãã ã¢ãŒããã¯ãã£ã«ã©ããããã£ãŠããããã«ã€ããŠã¯ããã€ã¯ããµãŒãã¹ã䜿çšããŠã·ã¹ãã ãã§ããéãåé¢ããŠãããšåçãé¢é£ã·ã¹ãã ãåžžã«100%皌åããŠãããšã¯éãããã·ã¹ãã ã®å ±åããé²ãããã ã
æåŸã®ãã¢ãŒããã¯ãã£ãŒèšèšã§ãã£ãŠããŸããã¡ãªå€±æã¯ïŒããšãã質åã«ã¯ãã¬ã€ãã³ã·ãŒãå®è¡æéã®ãããªéæ©èœèŠä»¶ã®èæ ®äžè¶³ãæãããæ©èœèŠä»¶ãšéæ©èœèŠä»¶ãã©ã¡ããæ€èšããã¢ãžã£ã€ã«éçºã§å°ããPoCïŒæŠå¿µå®èšŒïŒãåãããšã§ãåºæ¥äžãã£ãã·ã¹ãã ãé ããããšãã£ããã©ãã«ãåé¿ã§ãããçµæãæéãšã³ã¹ãã®ç¯çŽã«ãã€ãªãããšèª¬æããã
ãããåžäŒé²è¡åœ¹ã®Chenæ°ãè£è¶³ãã

ãã¢ãŒããã¯ãã£ã¯è€éã«ããããŠã¯ãããŸãããåæã«æè»ãªèšèšã«ãããããããŒã¹ã«æ§ç¯ããŠããããšã倧åã§ãããšéå»ã®çµéšãããšã«æ¯ãè¿ã£ãã
å€åã«å¯Ÿå¿ã§ããæè»ãªæ±ºæžã·ã¹ãã ã
次ã«ãChenæ°ããããŒãã¢ãã2人ç®ã®ç»å£è ã玹ä»ãããããŠãŒãã³ãã©ãããã®ãã€ã¡ã³ããœãªã¥ãŒã·ã§ã³ããŒã ã§ãè¡ã®æ±ºæžã·ã¹ãã ã®éçºã«åãçµãå°éççµµæ°ã ããWoven Cityã®æ±ºæžã€ã³ãã© - ãµãŒããŒãµã€ãKotlinãçšããæ±ºæžã·ã¹ãã ã®ã·ã¹ãã ã¢ãŒããã¯ãã£ãã«ã€ããŠèªã£ãã

2021幎12æã«Payment Teamã«å å ¥ããå°éæ°ã¯ãäž»ã«æ¥æ¬ã®Webæ€çŽ¢ãEã³ããŒã¹äŒç€Ÿãªã©ã§åããŠãããããã¯ãšã³ããµãŒãã¹ã®ããã¯ãªãŒããããã³ããšã³ã/ããã¯ãšã³ããšã³ãžãã¢ããã€ãã£ãã¢ããªã±ãŒã·ã§ã³ã®ãããã¯ããããŒãžã£ãŒãªã©ã®çµéšãããã
ãæ±ºæžã·ã¹ãã ã®æäŸãéããŠè¡ã®äŸ¡å€ãé«ããããããã·ã§ã³ã«æ²ãããã€ã¡ã³ããœãªã¥ãŒã·ã§ã³ããŒã ãçµæžæŽ»åã¯è¡ã®æ ¹å¹¹ãæãããã䜿ãåæããããå®å šãã€æç¶å¯èœãªã€ã³ãã©ãæ±ããããããŸãè²·ãæãšå£²ãæã ãã§ãªããè¡ã«åœ¹ç«ã€ãµãŒãã¹ãéçºããã€ã³ãã³ã¿ãŒïŒç§åŠè ãç ç©¶è ãã¹ã¿ãŒãã¢ãããèžè¡å®¶ãªã©ãæ³å®ïŒãã€ãªãã€ã³ã¿ãã§ãŒã¹ãå¿ èŠã ã
å¯çšæ§ã®é«ãã·ã¹ãã ãã€ãããããWoven Cityã®æ±ºæžã·ã¹ãã ã¯ããã€ã¯ããµãŒãã¹ã®ã¢ãŒããã¯ãã£ãæ¡çšããŠãããåå¥ã«éçºãããå°ããªãµãŒãã¹ãçµã¿åãããããšã§ãã·ã¹ãã é害ãªã©ã«ããå ±åããé²ããã¹ã±ãŒã©ãã«ãªæªæ¥ã«å¯Ÿå¿ããããšãå¯èœã«ãªãã
ãWoven Cityã¯ãŸã åžå Žã«åºãŠããŸãããããããžãã¹ãã·ã¹ãã ã®èŠä»¶ã¯ä»åŸå€§ããå€åããŠããããšãèŠèŸŒãŸããŸãããã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ãæ¡çšããããšã§ãå€åã«æè»ã«å¯Ÿå¿ã§ããã·ã¹ãã ã«ããŠãããŸããïŒå°éæ°ïŒ

ææŠããè¡ã§ã¯äœ¿ãèšèªã«ãææŠ
ãã€ã¯ããµãŒãã¹ãããŒã¿ã¢ãã«ã®èšèšã«ã¯ãEventStormingãæŽ»çšããŠãããæ¥åãããŒãæç¢ºã«ããããšã§ãçµéšå€ã«ãããããã誰ããæ¥åãããŒãçè§£ãããããªã£ããšè©±ãããŸããè€æ°ã®åå è ãšäžåºŠã«ç¥èãå ±æã§ããã¡ãªãããããããã®äžæ¹ã§æéããããããªã¢ãŒãã§ã¯ãªã察é¢ã®ã»ãã䜿ãããããšææ³ãè¿°ã¹ãã
ãã€ã¡ã³ããœãªã¥ãŒã·ã§ã³ããŒã ã®æè¡ã¹ã¿ãã¯ã«ã¯ãKotlinãKtorãªã©ã䞊ã¶ãããŒã å šå¡ãJavaã³ãŒãã£ã³ã°ã®çµéšè ã§ãããããKotlinã¯ææŠçãªéžæè¢ã ã£ããšããã

ãã®ã»ããããã±ãŒãžç®¡çã«ã¯GradleããŠããããã¹ããšã«ãã¬ããžã®æž¬å®ã«ã¯JUnit5ãšJaCoCoãããŒã¿ãªããžã§ã¯ãã®äœæã«ã¯OpenAPIãžã§ãã¬ãŒã¿ã䜿çšããŠããã
ãWoven Cityã¯æ°ããªããšã«åãçµãææŠã®è¡ãªã®ã§ã䜿çšããæè¡ã«ã€ããŠããã£ã¬ã³ãžããããšã«ããŸãããïŒå°éæ°ïŒ
次ã«ãKotlinã§éçºããã¡ãªããã»ãã¡ãªãããå ±æãããããã€ã¡ã³ãã»ãœãªã¥ãŒã·ã§ã³ããŒã ã®ã¡ã³ããŒã¯æ®ã©ãJavaã®éçºçµéšè ã§ãKotlinã䜿ã£ãéçºã«ã¯ãããæŽ»ãããç¹ãã¡ãªããã§ããã ãŸããéçºã«ã¯Intellijã䜿ããã¢ããªã±ãŒã·ã§ã³ãã¬ãŒã ã¯ãŒã¯ã«ã¯Ktorãå©çšããããšãªã©ãKotlinéçºãšèŠªåæ§ã®é«ãéçºç°å¢ãå®çŸã§ããŠããã
ä»åŸã¯ãKubernetesäžã§ã®ã¢ããªã±ãŒã·ã§ã³åäœãªã©ãæè¡é¢ã§ã®ææŠãç¶ããŠããäºå®ã ã

決æžã·ã¹ãã ã«ãŸã€ãã質çå¿ç
å°éæ°ã®ç»å£ãçµãããšåã³Chenæ°ãç»å ŽããWoven Cityã®æ±ºæžã·ã¹ãã ã«é¢ããŠäŒå Žãã質åãåãä»ããã
ãªã³ã©ã€ã³åå ã®ãªãŒãã£ãšã³ã¹ããã¯ã決æžã·ã¹ãã ã®æµ·å€å¯Ÿå¿ã«ã€ããŠè€æ°ã®è³ªåãå¯ãããããFelicaã®ãããªæ¥æ¬ç¬èªã®ããŒããŠã§ã¢ã«äŸåããã®ãããããšãæµ·å€ã®ã¹ããŒããã©ã³ã«ã察å¿ããã®ãããŸããæ±ºæžã¯ã°ããŒãã«ãªå©çšãæ³å®ããŠèšèšãããŠããããªã©ã ã
Woven Cityã§ã¯ãQRã³ãŒããFelicaãNFCãªã©ããŸããŸãªæè¡ã«ãªãŒãã³ã§ãããã€ã¹å¶éã®ãªãæè»ãªæ±ºæžã·ã¹ãã ãç®æããŠãããã°ããŒãã«å©çšãæ³å®ããŠãããã®ã®ããŸãã¯æ¥æ¬ã§ã®å°å ¥ãå æ±ºã ã
æ¢åã®æ±ºæžã·ã¹ãã ã䜿ããã«ç¬èªéçºããçç±ã«ã€ããŠã¯ãWoven Cityã§è¡ãããåãµãŒãã¹ã®å®èšŒã«éããæ±ºæžã«é¢ããæ©èœã®æäŸããã®ããŒã¿ã®é©åãªç®¡çãè¡ããããšèª¬æãã¡ãªã¿ã«ãå± äœè ã ãã§ãªãããžã¿ãŒïŒèšªåè ïŒãå°çšã¢ã«ãŠã³ããäœæããããšã§æ±ºæžã·ã¹ãã ãå©çšã§ããããã«ãªãäºå®ã

JavaããKotlinãžã®ç§»è¡æã«èŠåŽããç¹ã«ã€ããŠèããããšãå°éæ°ã¯ãµãŒããŒãµã€ãã®KotlinãåŠã¶ããã®è³æãå°ãªãããšãæãããCI/CDãã€ãã©ã€ã³ãšãã«ãã®éçºãããŒãªã³ã°ã«æºããChenæ°ã¯ãããŒã«åšãã®éããšãã«ãã®åæã®é£ãããææããã
ãJavaãKotlinãªã©ã®JVMãšã³ã·ã¹ãã ã§ã¯MavenãGradleãªã©ãå©çšããŠäŸåé¢ä¿ãèªåçã«è§£æ±ºããŸããããã¯äŸ¿å©ã§ã¯ãããŸãããäžæ¹ã§è£åŽã§èªåçã«è¡ãããŠããããšãã³ã³ãããŒã«ããããšã¯é£ãããã©ã®ããã«ç®¡çããããŠããã®ãã«ã¯æ³šæãæãå¿ èŠãããã§ããããïŒChenæ°ïŒ
ãã€ã¡ã³ããœãªã¥ãŒã·ã§ã³ããŒã ã¯ããã¯ãšã³ãã«Kotlinã䜿çšããŠããããWoven Cityã§ã¯åããŒã ãããããåŸæãŸãã¯æ £ã芪ããã èšèªã掻çšããŠããã瀟å ã§äººæ°ã®èšèªã¯GolangãJavaãKotlinã§ãäžéšNodeãšRustã䜿ãããŠãããšããã
ãŠãŒãã³ã»ãã©ãããã100以äžã®ããžã·ã§ã³ã§äººæåé
ããŒãã¢ããã®æåŸã«ã¯ãåžäŒé²è¡åœ¹ã®Chenæ°ãããŠãŒãã³ã»ãã©ãããã®æ¡çšæ å ±ãå ±æããããçŸåšã100以äžã®ããžã·ã§ã³ããã®ãã¡ã40%以äžãå ãããšã³ãžãã¢è·çš®ã®ããžã·ã§ã³ãåéäžã ã
Stephen Shumæ°çããã©ã€ãã¹ã¿ã€ã«ã»ãµãŒãã¹ã»ãããã¯ãããŒã ã§ã¯ãããã³ããšã³ããšã³ãžãã¢ãæ©æ¢°åŠç¿ãšã³ãžãã¢ãããŒã¿ãšã³ãžãã¢ãæ©æ¢°åŠç¿ãã€ãã©ã€ã³ãšã³ãžãã¢ãããã¯ãšã³ããšã³ãžãã¢ããã¹ã/ãªãŒãã¡ãŒã·ã§ã³ãšã³ãžãã¢ãªã©ãã»ãŒãã¹ãŠã®è·çš®ãåéããŠããã
ãã€ã¡ã³ããœãªã¥ãŒã·ã§ã³ããŒã ã¯ã決æžãµãŒãã¹ã®ããã¯ãšã³ãããœãããŠã§ã¢ãšã³ãžãã¢ãæ¢ããŠããããŸããå瀟ã§ã¯åããŠã€ã³ã¿ãŒã³ã·ããã宿œããäºå®ããããšããã
Woven Cityãå«ããŠãŒãã³ã»ãã©ãããã®æ¡çšæ
å ±ã¯ãã¡ãã«æ²èŒãããŠããã
â»Woven Cityã«ã€ããŠã®è©³çްã¯ãã¡ãã
ããããã€ãã³ã
é¢é£ããã€ãã³ã

[Offline] Woven City Software Engin...
2022幎04æ22æ¥ (é)ããããã®èšäº

ã¢ãããŒãã®ç€Ÿå ã¡ã€ã«ãœã³ã§åªåïŒé§ãåºããšã³ãžãã¢ã1é±éã§ã¢ããªéçºãããå¿åãã£ããã¢ããªãã玹ä»

TISã®å€§èп𡿡件ãã¢ãžã£ã€ã«éçºäºäŸããèãã SIerã«ããããããžã§ã¯ããããŒãžã£ãŒã®æé·æŠç¥






