ã¯ããã«
æ¬è¨äºã¯ ã½ããã¦ã§ã¢ãã¹ã Advent Calendar 2023 ããã³10X ãããã¯ãã¢ããã³ãã«ã¬ã³ãã¼2023ã®5æ¥ç®ã®è¨äºã§ã*1ã
çããã¯ãDevOpsã«é¢ããå³ãæãæµ®ãã¹ã¦ãã ãããã¨è¨ãããããã©ã®ãããªå³ãæ³åãã¾ããï¼ä¸çªæãæµ®ãã¹ã人ãå¤ãã®ããDevOpsã®ã«ã¼ãå³ã§ã¯ãªãã§ããããï¼
æ¬è¨äºã§ã¯ãDevOpsã®ã«ã¼ãå³ã®çºç«¯ãæ¢ãã¤ã¤ããã®ã«ã¼ãå³ã«å¯¾ãã¦ã®ç§ãªãã®èããè¿°ã¹ãä¸ã§ãã·ããã¬ãããã¹ã/ã·ããã©ã¤ããã¹ãã«ã¤ãã¦è©³ããè¨åãã¦ããã¾ãã
ç®æ¬¡
- ã¯ããã«
- ç®æ¬¡
- Danã®èããDevOpsã®ã«ã¼ãå³
- ã«ã¼ãå³ã®è§£é
- DevOpsã®ã«ã¼ãå³ã¨ã·ããã¬ãããã¹ã/ã·ããã©ã¤ããã¹ãã®é¢ä¿æ§
- ã·ããã¬ãããã¹ãã®å ·ä½çãªæ´»åã¯ä½ã
- ã·ããã©ã¤ããã¹ãã®å©ç¹ã¯ä½ã
- ã·ããã©ã¤ããã¹ãã®å ·ä½çãªæ´»åã¯ä½ãï¼å®£ä¼ï¼
- ãããã«ï¼ããã«å®£ä¼ï¼
Danã®èããDevOpsã®ã«ã¼ãå³
ã¾ããDevOpsã®ã«ã¼ãå³ã«ã¯ã©ã®ãããªãã®ãããã®ã§ããããï¼
â»12/5追è¨ï¼Danã®æããDevOpsã®ã«ã¼ãå³ã¯çºç«¯ã§ã¯ç¡ãã£ããããæ¬æä¸ã®è¡¨ç¾ãä¿®æ£ãã¾ãã*2ã
DevOpsã®ã«ã¼ããç¨ããå³ã®1ã¤ã¨ãã¦ãDan Ashbyã®ãContinuous Testing in DevOpsâ¦ãã¨ããè¨äº*3ãããã¾ã*4*5ã
Danã®è¨äºå ã«æããã¦ããDevOpsã®ã«ã¼ãå³ãæ¥æ¬èªè¨³ãããã®ããã¡ãã«ãªãã¾ãã
ã«ã¼ãå³ã®è§£é
Danã®DevOpsã®ã«ã¼ãå³ããã¯ãããã¤ã主張ãããé¨åãããã¨æãã¦ãã¾ãã
ãã¹ãã®æ±ãã«ã¤ãã¦
DanãæããDevOpsã®ã«ã¼ãå³ãããè¦ã¦ãã ãããâ¾ï¸ã®ä¸ã«ãTESTãã¨ããæåãåå¨ãã¦ããããå ¨ã¦ã®ãã§ã¼ãºã«ããã¹ããã®æåãåºããã¦ãã¾ãã
Danã¯å è¿°ããããã°è¨äºã®ä¸ã§ä»¥ä¸ã®ããã«è¿°ã¹ã¦ãã¾ãã
ç§ã«ã¨ã£ã¦ããã¹ãã¯ãã®ã¢ãã«ã®ããããç¹ã«é©åãã¾ãã
ã¤ã¾ããDanã«ã¨ã£ã¦â¾ï¸ã®ã«ã¼ãå³ã¯ããã¹ãã¨ããæ´»åãç¹å®ã®ãã§ã¼ãºã«çã¾ããªããã¨ã示ãããã«æããã¨ãè¨ãã¾ãã
ä¸æ¹ã§ãåé ã«è¼ãããããªå³ã®ããã«ãâ¾ï¸ã®ã«ã¼ãã®ä¸ã«ãTestããæããã¦ãããã¨ãå¤ããããã¯Danã®ç¤ºãã¦ããæå³ã¨ã¯ç°ãªããã¨ãç解ã§ããã§ããã*6ã
ã«ã¼ãã®å½¢ã«ã¤ãã¦
ãã®å³ã¯ã«ã¼ãã«ãªã£ã¦ãã¾ããããã¯ãããªãªã¼ã¹å¾ã«ã¢ãã¿ãªã³ã°(MONITOR)ããã¹ããã¦çµãããã§ã¯ãªãã次ã®ãã©ã³(PLAN)ã«ç¹ãããã¨ã®éè¦æ§ã示ãã¦ããã¨è¨ããã§ãããã
ã¾ããDanã®è¨äºå ã§ã¯ä»¥ä¸ã®ããã«gifç»åãç¨ããªããè¨è¿°ãã¦ãã¾ã*7ã
ããããå³ã«æ¬ ãã¦ãããã®ã¯ä½ã§ããããâ¦? ä½ãã足ããªãæ°ããã¦ãªãã¾ããâ¦..
ããããï¼ããã¯ããæããã§ãï¼ã¢ã¤ãã¢ããªãã¨è¨ç»ãç«ã¦ããã¾ããããï¼ï¼ãã®ã¢ãã«ã§ã¯ãè¨ç»ãç«ã¦ãåã«è¡ããããã¹ã¦ã®ä½æ¥ã«ã¤ãã¦ã¯è¨åããã¦ãã¾ãããããã«ã¤ãã¦ã®ç§ã®èãã説æããããã«ãççºçãªãµããµãé²ã® gif ã示ãã¾ãã
ãã®gifç»åã§ã¯ãã¢ã¤ãã¢ãå ã«ãããããããã¹ãªã¼ã¢ãã¼ã´ã¹ãBDDã¨ãã£ãæ´»åãè¡ã£ã¦ãã¦ã¼ã¶ã¼ã¹ãã¼ãªã¼ããã¤ã³ãããããä½ããããã«ã³ã¼ããAPIãªã©ã«è½ã¨ãè¾¼ãã§ããã¨ãããã¨ã示ãã¦ããã¨ç解ãã¦ãã¾ãã
ã¤ã¾ããã¢ãã¿ãªã³ã°ã¾ã§è¡ã£ããã¨ãå ã«ãæ°ããªã¢ã¤ãã¢ãçã¾ãããã®ã¢ã¤ãã¢ãgifç»åã§ç¤ºãã¦ãããããªæ´»åãå ã«æ¬¡ã®ãã©ã³ã«ç¹ãã£ã¦ããå½¢ã§ãããããã¦ãDevOpsãã«ã¼ããã¦ããã®ã§ãã
DevOpsã®ã«ã¼ãå³ã¨ã·ããã¬ãããã¹ã/ã·ããã©ã¤ããã¹ãã®é¢ä¿æ§
æ¸ç±ãAgile Testingï¼é¦è¨³ï¼å®è·µã¢ã¸ã£ã¤ã«ãã¹ãï¼ããMore Agile TestingããAgile Testing Condensedãã®å·çè ã®1人ã§ããJanet Gregoryã¯ãDanã®æããDevOpsã®ã«ã¼ãå³ãå ã«ãèªèº«ã®ããã°è¨äºã®ä¸ã§ãContinuous testingï¼ç¶ç¶çãã¹ãï¼ãã¨ãã¦è¡¨ç¾ãç´ãã¾ããã
ãã®å³ãè¦ãã¨åãããããã®ã§ããããããã¤ãããåã¾ã§ã®ãã¹ãæ´»åï¼â¾ï¸ã®å·¦å´ï¼ãã·ããã¬ãããã¹ãããããã¤ããã以éã®ãã¹ãæ´»åï¼â¾ï¸ã®å³å´ï¼ãã·ããã©ã¤ããã¹ãã¨è¡¨ç¾ãããã¨ãå¤ãã§ã*8*9ã
ã·ããã¬ãããã¹ãã®å ·ä½çãªæ´»åã¯ä½ã
ä¸è¿°ã§ã¯ããããã¤ãããåã¾ã§ã®æ´»åãã·ããã¬ãããã¹ãã¨è¡¨ç¾ãã¾ãããããã§ã¯ããã£ããã©ã®ãããªæ´»åãªã®ã§ããããã
ãã¹ãé§åéçºã®é©ç¨
ã·ããã¬ãããã¹ããªæ´»åã§ä¸çªã¤ã¡ã¼ã¸ãã¤ããããã®ã¯ããã¹ãé§åéçºï¼ä»¥ä¸ãTDDï¼ã®é©ç¨ã§ããããå®è£ ãçµãã£ãå¾ã ã£ããã¹ãæ´»åã®ã¿ã¤ãã³ã°ããå®è£ ãããåã«è¡ãããã«å¤ãã¾ããããããã¾ãããã·ããã¬ãããã¹ããªæ´»åã¨ããã¾ãã
TDDã®ããæ¹ã«ã¤ãã¦è©³ããã¯ã以ä¸ã®åç»ãã覧ãã ããã
å®ä¾ãããã³ã°ã®é©ç¨
ã¦ã¼ã¶ã¼ã¹ãã¼ãªã¼ãæ¸ãçµããå®è£ ãå§ããåã«è¡ãæ´»åã§ãããå®ä¾ãããã³ã°ãã¯ãTDDãããããã«ååãããã·ããã¬ãããã¹ããªæ´»åã¨è¨ããã§ãããã
å®ä¾ãããã³ã°ã®ããæ¹ã«ã¤ãã¦è©³ããã¯ã以ä¸ã®çºè¡¨è³æãã覧ãã ããã
ã¬ãã¥ã¼ã§ã®é©ç¨
ãã¹ãã§ç¢ºèªãã¦ããå 容ããè¦æ±ã»è¦ä»¶ã¬ãã¥ã¼ãè¨è¨ã¬ãã¥ã¼ã§ç¢ºèªãããã¨ã«ãã£ã¦ã·ããã¬ãããã¹ããå®ç¾ãããã¨ãã§ãã¾ãã
ããã«ã¤ãã¦è©³ããã¯ãå æ¥éå¬ãã¾ããJaSST Review'23ã®çºè¡¨è³æãã確èªãã ãããã»ãã·ã§ã³1ã®è³æã«ã¦ã以ä¸ã®ç»åã®ãããªè©±ãè¼ãã¦ãã¾ãã
ã·ããã©ã¤ããã¹ãã®å©ç¹ã¯ä½ã
ä¸è¿°ã§ã¯ããããã¤ããã以éã®ãã¹ãæ´»åãã·ããã©ã¤ããã¹ãã¨è¡¨ç¾ãã¾ãããã·ããã¬ãããã¹ããªæ´»åã«æ¯ã¹ã¦ãã·ããã©ã¤ããã¹ããªæ´»åã¯ãã¾ãç¥ããã¦ãã¾ãããããã§ããªãã·ããã©ã¤ããã¹ããè¡ãã®ãã«ã¤ãã¦èãã¦ã¿ã¾ãããã
ã·ããã©ã¤ããã¹ããªæ´»åãè¡ãçç±ã¯ä¸»ã«2ç¹ããã¨ç§ã¯èãã¦ãã¾ã*10ã
- ä¸è¬çãªãã¹ãæ´»åï¼BUILDãINTEGRATEæç¹ã§ã®ãã¹ãï¼ã§è§£æ±ºããã«ã¯ã³ã¹ããé«ããããã
- 次ã®éçºï¼PLANï¼ã®åèã«ãããã
ã·ããã©ã¤ããã¹ããªæ´»åãè¡ãçç±â ï¼ä¸è¬çãªãã¹ãæ´»åã§è§£æ±ºããã«ã¯ã³ã¹ããé«ããããã
ä¸è¬çãªãã¹ãæ´»åï¼BUILDãINTEGRATEæç¹ã§ã®ãã¹ãï¼ã§å ¨ã¦ãæããã«ãããã¨ããã¨ã³ã¹ãããããããããã®ãåå¨ãã¾ãã
ä¾ãã°ã¦ã¼ã¶ããªãã£è¦³ç¹ã§ããã¦ã¼ã¶ããªãã£ãè¯ããã©ããã«ã¤ãã¦ã¯ãå®éã®ã¦ã¼ã¶ã¼ã®å©ç¨çãå ã«å¤æãããå ´åãããã¾ããçè«çã«è¯ããå°ãåºãã³ã¹ããããå®éã«ã¦ã¼ã¶ã¼ã«ä½¿ã£ã¦ãããæ¹ãã³ã¹ããä½ãå ´åã«ã¯ãã·ããã©ã¤ããã¹ãã¨ãã¦ä»»ããããããã¾ãã*11ã
ãªãããã®ãããªãã®ãã·ããã©ã¤ããã¹ããªæ´»åã«ããéã«ã¯ãããã®ææ¨ãç¨ãã¦è¯ããå¤æãããã¨ãããã¤åã«è¨æ¸¬å 容ã確å®ãã¦ãããã¨ã大äºã§ããã¨ãããããããã¤ãã¦ã¿ã¦ããã®çµæãå¾ä»ãã§èããã¨ããã®ã¯å¾çã§ã¯ããã¾ããããã¹ãçµæã¯ã·ããã©ã¤ããã¹ããªï¼ãããã¤å¾ã«å¤æããï¼æ´»åã§ããããã¹ããã¹ãææ¨ã®æ±ºå®ã¾ã§ã·ããã©ã¤ããã¹ããªæ´»åã«ããªãããã«ãã¾ãããã
ã·ããã©ã¤ããã¹ããªæ´»åãè¡ãçç±â¡ï¼æ¬¡ã®éçºã®åèã«ãããã
ã¢ãã¿ãªã³ã°çµæãªã©ãã次ã®éçºã«ç¹ããæ´»åãã·ããã©ã¤ããã¹ããªæ´»åã¨è¨ããã§ãããã
ãã®å ´åã¯ãä½ãçããæã£ã¦ããªãã£ãã¨ãã¦ããã¦ã¼ã¶ã¼ãã©ã®ããã«ä½¿ã£ã¦ãããã観å¯ãããã¨ã§æ¬¡ã«ç¹ããããå ´åãããã¾ããããã¯ããã«ã¼ãå³ã®è§£éãã®ãã«ã¼ãã®å½¢ã«ã¤ãã¦ãã§è¼ããgifç»åã®ããã«ãã·ããã©ã¤ããã¹ããªæ´»åã次ã®ã¢ã¤ãã¢ã«ç¹ãããããã次ã®ã·ããã¬ãããªæ´»åã¸ã¨ç¶ãã¦ããã®ã§ãã
ã·ããã©ã¤ããã¹ãã®å ·ä½çãªæ´»åã¯ä½ãï¼å®£ä¼ï¼
ããã¾ã§ã§ã·ããã©ã¤ããã¹ããªæ´»åãè¡ãçç±ã«ã¤ãã¦è¿°ã¹ã¦ãã¾ãããããã§ã¯ãå ·ä½çã«ã¯ã©ã®ãããªæ´»åãããã°è¯ãã®ã§ããããã A/Bãã¹ããFeature flag(toggle)ã¨ãã£ããã©ã¯ãã£ã¹ã¯ç¥ããã¦ãã¾ãããä¸è¿°ãããã·ããã©ã¤ããã¹ããªæ´»åãè¡ãçç±ãã¨ç´ã¥ãã¦èªããã¦ããäºä¾ã¯ã¾ã ã¾ã å¤ãããã¾ããã
ã¾ã 模索段éã§ã¯ããã¾ãããç§ãç¾å¨æå±ãã¦ãã10Xã®éçºãã¼ã ã§ã¯ã·ããã©ã¤ããã¹ããªæ´»åãè¡ã£ã¦ãã¾ããããã¦ãããã§å®éã«è¡ã£ãäºä¾ãRegional Scrum Gathering Tokyo (RSGT) 2024ã«ã¦çºè¡¨ãããã¨ã«ãªãã¾ããã
çºè¡¨ä¼å ´ã§ã®è´è¬ãã±ããã¯æ¢ã«å£²ãåãã¦ãã¾ãã¾ãããããªã³ã©ã¤ã³ä¸ããã®è´è¬ãã±ããã¯ã¾ã 販売ãã¦ããã¾ãã®ã§ããèå³ã®ããæ¹ã¯ãè²·ãæ±ããã ããã¾ãï¼
ã¾ãã10X ãããã¯ãã¢ããã³ãã«ã¬ã³ãã¼2023ã®6æ¥ç®ã®è¨äºã§ããããã¡ãããå ·ä½çãªæ´»åã®1ã¤ãç´¹ä»ãã¦ãã¾ãããã¡ãããåç §ãã ããã¾ãï¼
ãããã«ï¼ããã«å®£ä¼ï¼
ä»åã¯DevOpsã®ã«ã¼ãå³ã¨ã·ããã¬ãããã¹ã/ã·ããã©ã¤ããã¹ãã«ã¤ãã¦è¿°ã¹ã¦ãã¾ããã
æ¬è¨äºã®æå¾ã«æ¸ããéãã10Xã§ã¯ã·ããã©ã¤ããã¹ããªæ´»åãåãå ¥ãã¦ãéçºãã¼ã ä¸ä¸¸ã¨ãªã£ã¦éçºãé²ãã¦ãã¾ããç§ã®æå±ãã¦ããå質管çé¨ã§ã¯ä»¥ä¸ã®è·ç¨®ã§åéããã¦ãã¾ããå°ãã§ãèå³ãæã£ã¦ãããæ¹ããã®ãå¿åããå¾ ã¡ãã¦ããã¾ãï¼
ã¨ãããã話ã ãã§ãèãã¦ã¿ããã¨ããæ¹ãããã°ã«ã¸ã¥ã¢ã«é¢è«ããªã¼ãã³ã«ãã¦ãã¾ãã®ã§ããã¡ãããã©ããã
ç§ã¨ãã¹ãã«ã¤ãã¦è©±ãããå ´åã¯ãã¡ããããå¿åãã ããã¾ãï¼
*1:ã¢ããã³ãã«ã¬ã³ãã¼ã®åæ¥ã®è¨äºã¯ããããã以ä¸ã®è¨äºã¨ãªãã¾ãã
- ã½ããã¦ã§ã¢ãã¹ã Advent Calendar 2023â¦ChatGPTãç¨ããTDD part.1 (TODOç¨æç·¨)
- 10X ãããã¯ãã¢ããã³ãã«ã¬ã³ãã¼2023â¦dbtã¨GUIã§å®ç¾ãããã¼ã¿å¦çã®æªæ¥ãèãã¦ã¿ã
*2:ããããããããã£ã¨æã«çºç«¯ãããã®ããããã¾ããããç§ã調æ»ããéãã§ã¯è¦ã¤ãããã¨ãã§ãã¾ããã§ããã
ãç·©åãDevOpsã®ã«ã¼ãå³ã®ååºãã©ããªã®ãç¥ã£ã¦ãã人ãæãã¦ãã ããï¼
— broccoli (@nihonbuson) 2023å¹´2æ9æ¥
ç¹ã«DevOpsã®ã«ã¼ãå³ã«Testãå ¥ã£ã¦ãããå ¥ã£ã¦ããªãã£ãããã¦ããã®ãé常ã«æ°ã«ãªãâ¦ã
12/5追è¨
è¾°å·³ãããããçºç«¯ã®åè£ã¨ãã¦2013å¹´ã®è¨äºãããããã§ããè¾°å·³ãããããã¨ããããã¾ããï¼
ãã®ãããªè³ªåãããæ¹ããã¾ãã
— Keizo Tatsumi (@KeizoTatsumi) 2023å¹´12æ5æ¥
Who is the author of the devops infinite loop picture?https://t.co/ONfFTLq7wi
The first occurrence I could find is by Dustin Whittle, 2013, in this blog post:https://t.co/z9Zet3miWz
2013å¹´ã¾ã§ã¯é¡ãããã§ããã
*3:æ¥æ¬èªè¨³ã®è¨äºã¯ãã¡ã
*4:ããã§ããããDevOpsã®ã«ã¼ãå³ãã¨ã¯ã
- â¾ï¸ã®å½¢ããã¦ãã
- éçºã©ã¤ããµã¤ã¯ã«ã®æåãå·¦ä¸ã«ä½ç½®ãã¦ãã
- èµ·ç¹ï¼å·¦ä¸ï¼ããåæè¨åãã§æãããå³ååã¯æè¨åãã§æããã¦ãã
ãå ¨ã¦æºããã¦ãããã®ã¨ãã¾ã
*5:ç´°ãããã¨ãè¨ãã¨ãWEBä¸ã«å ¬éããã¦ãããã®ã®ä¸ã§ã¯ãContinuous Testing in DevOpsâ¦ããçºç«¯ã§ããã¾ããããã®è¨äºãæ¸ãåããã«ã³ãã¡ã¬ã³ã¹ã§åæ§ã®ã¢ãã«ãè¨åãã¦ããããã§ãã
*6:ããã§ã¯ããã¾ã§ãDanã®æããã«ã¼ãå³ã¨ã¯æå³ãç°ãªããã¨ã示ããã ãã§ãããå¥ã®æå³ã§ã«ã¼ãå³ã使ã£ã¦ããå ´åã«ã¯æãç«ã¤ã¨ãæã£ã¦ãã¾ãã
*7:ã¡ãªã¿ã«ã翻訳è¨äºã§ã¯ãªãããã®gifç»åãã«ããããã¦ãã¾ããDanã主張ãããã£ãæ ¹å¹¹ã®1ã¤ã ã¨æãã®ã§ãå人çã«ã¯è¨è¼ãã¦ã»ãããªãâ¦ã¨æãã¦ãã¾ãã
*8:å ã ã®åèªã®æå³ãèããã¨ããã·ããã¬ãããã¨ã¯ãã¨ããæ´»åãã¿ã¤ã ã©ã¤ã³ä¸ã®æ©ã段éã«ååããããã¨ã示ãã¾ããããããä¸è¬çã«ãã¹ãæ´»åã¯ãã«ã(BUILD)ãçµ±å(INTEGRATE)ã®éã«è¡ãæ´»åã¨èªç¥ããã¦ããããããããååããã¦ããâ¾ï¸ã®å·¦å´é¨åã¯ç·ãã¦ã·ããã¬ãããã¦ããã¨è¨ããã§ããããã·ããã¬ãããã¹ãã«é¢ãã¦è©³ããã¯ãã«ãããã®çºè¡¨è³æãåèã«ããã¨è¯ãã§ãã
*9:ä»åã¯ãç¶ç¶çãã¹ããã®å³ãæ¬æã§ç´¹ä»ãã¾ããããã·ããã¬ãã/ã·ããã©ã¤ãã«å¯¾ãã誤解ãçã¾ãã¦ãããã¨ãæãã¦ããæè¿ã§ã¯Janetã¯å¥ã®å³ãç¨ãã¦ç´¹ä»ãã¦ããããã§ãã詳ããã¯ãTesting From A Holistic Point Of Viewãã®è¨äºï¼é¦è¨³è¨äºï¼ãã翻訳ãããªã¹ãã£ãã¯ã»ãã¹ãï¼ããã»ã¹å ¨ä½ãããã¹ããæããªããï¼Testing From A Holistic Point Of Viewï¼ãï¼ãã覧ãã ããã
*10:ã¡ãªã¿ã«ããããã誤解ã¨ãã¦ãããªè©±ãè³ã«ãã¾ããã
ãã·ããã©ã¤ããã¹ãï¼ç¹ã«ãªãªã¼ã¹å¾ã®ãã¹ãæ´»åï¼ãã£ã¦ãTesting in DevOpsã®ã«ã¼ãå³ãåæã«ãªã£ã¦ãããããªãã®ï¼ã¨æãå§ããã
— broccoli (@nihonbuson) 2023å¹´7æ25æ¥
ãã·ããã©ã¤ãã§ãã¹ããè¡ãã®ã§ã³ã¹ããããããã¨ããããã£ã¦ã·ããã©ã¤ãã§æ¬å½ã«ç®æããããã¨ã§ããã£ãï¼
ããã«å¯¾ããåè«ã¨ãã¦æ¬è¨äºãæ¸ãã¦ããé¢ãããã¾ãã
*11:ãã¦ã¼ã¶ããªãã£è¦³ç¹å ¨ã¦ãã·ããã©ã¤ããã¹ããªæ´»åã§å¤æãããã¨è¨ãããããã§ã¯ããã¾ãã