´º·¼¸¯ÄÚ¸®¾Æ(Áö»çÀå ÀÌÇü±Ù)´Â 16ÀÏ º»»ç ¹ßÇ¥¸¦ Àοë, °³¹ßÀÚµéÀÌ Äڵ巹º§¿¡¼ºÎÅÍ ¸ðµç ¼ÒÇÁÆ®¿þ¾î ÆÛÆ÷¸Õ½º¿¡ ´ëÇÑ ÀλçÀÌÆ®¸¦ ÃßÃâÇÒ ¼ö ÀÖ´Â ‘Äڵ彺Ʈ¸²(CodeStream) ÄÚµå ·¹º§ ¸ÞÆ®¸¯’ ¹× ‘¼ºñ½º ·¹º§ÀÇ ÅÚ·¹¸ÞÆ®¸®’¸¦ °ø°³Çß´Ù.
À̸¦ ÅëÇØ °³¹ßÀÚµéÀº ÇÁ·Î´ö¼Ç ¹× ¿£Áö´Ï¾î¸µ ÁøÇà Àü ´õ¿í ºü¸£°Ô ¹®Á¦¸¦ ÆÄ¾ÇÇÒ ¼ö ÀÖ°Ô µÆ´Ù.
ÅÚ·¹¸ÞÆ®¸® µ¥ÀÌÅ͸¦ °³¹ßÀÚµéÀÌ ÀÛ¾÷ÇÏ´Â °÷À¸·Î ¹Ù·Î °¡Á®¿Í ÅëÇÕ°³¹ßȯ°æ(Integrated Development Environment, IDE)À» ¹þ¾î³ªÁö ¾ÊÀ¸¸é¼µµ, ¿î¿µÆÀ¿¡ ÀÇÁ¸Çϰųª °í°´µéÀÌ ¹®Á¦¸¦ ½Å°íÇÒ ¶§±îÁö ±â´Ù¸± ÇÊ¿ä¾øÀÌ ÀÇ¹Ì ÀÖ´Â µ¥ÀÌÅÍ¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù.
´º·¼¸¯Àº ÅÚ·¹¸ÞÆ®¸® µ¥ÀÌÅ͸¦ IDE ³» ¿¬°ü ÄÚµå·Î Á÷Á¢ ¿¬°áÇØÁÙ ¼ö ÀÖ´Â ¿ÉÀú¹öºô¸®Æ¼ Ç÷§ÆûÀ¸·Î, À̸¦ Ȱ¿ëÇØ °³¹ßÀÚµéÀº ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸ð´ÏÅ͸µÇÏ°í µð¹ö±× ÇØ ´õ¿í °³¼±ÇÒ ¼ö ÀÖ°Ô µÆ´Ù.
ƯÈ÷, ‘´º·¼¸¯ Äڵ彺Ʈ¸²’Àº ´å³Ý(Net), ÀÚ¹Ù(Java), PHP, ÆÄÀ̽ã(Phyton), Ruby, Go ¹× Node.js µî ¸ðµç ÇÙ½É ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ Áö¿øÇϰí ÀÖ´Ù.
¿ÉÀú¹öºô¸®Æ¼°¡ ¼ÒÇÁÆ®¿þ¾î °³¹ß °úÁ¤¿¡¼ ¿À·ù¸¦ ÃÖ´ëÇÑ »¡¸® °¨ÁöÇϰí ÇØ°áÇÏ´Â ¹æ¹ýÀÎ ¿øÁ¡ ȸ±Í(shift-left)¹æ½ÄÀ» ÃëÇϰí ÀÖ°í, °³¹ßÀÚµéÀº ¼ÒÇÁÆ®¿þ¾î ½Å·Úµµ¿¡ ´ëÇÑ ÀüÀûÀΠåÀÓÀ» ¸Ã°í ÀÖ´Ù.
ÀÌ¿¡ µû¶ó ÃÖ±Ù °³¹ß ºÎ¼µéÀº ¼ÒÇÁÆ®¿þ¾î »ý¸íÁÖ±âÀÇ ¸ðµç ´Ü°è¿¡¼ ÃÖÀûÀÇ Äڵ带 ¾µ ¼ö ÀÖµµ·Ï ¾ÆÁÖ ¸Å²ô·¯¿î ÆÛÆ÷¸Õ½º µ¥ÀÌÅÍ Á¢±ÙÀ» ÇÊ¿ä·Î Çϰí ÀÖ´Ù.
¹Ý¸é, µµ±¸È, Çù¾÷ ¹× µð¹ö±×¸¦ Çϱâ À§ÇÑ ¿öÅ©Ç÷οì´Â °³¹ßÀÚµéÀÌ ¸¹ÀÌ »ç¿ëÇϰí ÀÖ´Â Åø°ú´Â ¼·Î ºÐ¸®µÈ °æ¿ì°¡ ¸¹´Ù.
ÀÌ¿Í °°Àº Çö»óÀº ½Ã½ºÅÛ Áß´ÜÀ» ÃÊ·¡Çϰųª ±â¾÷ÀÇ ¼öÀÍ¿¡ ¾Ç¿µÇâÀ» ¹ÌÄ¥ ¼ö ÀÖ´Â ºñÈ¿À²ÀûÀÌ°í ¹®Á¦ ´ëÀÀ¼öÁØÀÇ µð¹ö±ë °úÁ¤À» ³º°Ô µÈ´Ù.
IT¾÷°è ÁÖ¿ä Àλçµé·Î ±¸¼ºµÈ IT ¼ÒÇÁÆ®¿þ¾î ǰÁú ÄÁ¼Ò½Ã¾ö(Consortium of Information & Software Quality, CISQ)¿¡ µû¸£¸é ¹Ì±¹ ³»¿¡¼ À̰°Àº ÀúǰÁú ¼ÒÇÁÆ®¿þ¾î¿¡ µû¸¥ ºñ¿ëÀº 2Á¶ 4100¾ï ´Þ·¯(ÇÑÈ ¾à 3143Á¶¿ø)·Î Áõ°¡Çß´Ù.
´º·¼¸¯ Äڵ彺Ʈ¸²Àº ¿£Áö´Ï¾îµéÀÌ ¼ÒÇÁÆ®¿þ¾î »ý¸íÁÖ±â Àü¹Ý¿¡ ¿ÉÀú¹öºô¸®Æ¼ È®º¸ÇØ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß ½Ã ÆÛÆ÷¸Õ½º¸¦ ÃÖÀûÈ, À̰°Àº ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇϰí ÀÖ´Ù.
ÇÇÅÍ ÆäÀÚ¸®½º(Peter Pezaris) ´º·¼¸¯ Àü·« ¹× °æÇè ÃѰýºÎ»çÀå(SVP)Àº “¿£Áö´Ï¾î¸µÀÇ ÀϺημ ¿ÉÀú¹öºô¸®Æ¼´Â µ¥ÀÌÅ͸¦ Ȱ¿ëÇØ ÇÙ½É ¿öÅ©Ç÷ο쿡 ¹ÚÂ÷¸¦ °¡ÇÏ´Â ¹Ì·¡ÀÇ ¸ð½ÀÀ» ¼±º¸À̰í ÀÖ´Ù. ´º·¼¸¯ Äڵ彺Ʈ¸²À» Ȱ¿ëÇØ IDE ³» ÇÁ·Î´ö¼Ç ÅÚ·¹¸ÞÆ®¸® µ¥ÀÌÅ͸¦ °áÇÔ½ÃÄÑ, °í°´Àº ÇâÈÄ Çǵå¹é ¼ö·Å °úÁ¤À» ´õ¿í ´ÜÃà½ÃŰ°í ±âÁ¸ ¿öÅ©Ç÷ο쿡 ¿µÇâÀ» ÁÖÁö ¾ÊÀ¸¸é¼ °ªºñ½Ñ ¹®¸Æ ±³È¯(context switch) ÀÛ¾÷À» ÁøÇàÇÒ ÇÊ¿ä ¾øÀÌ ´õ ³ªÀº ¼º´ÉÀÇ ¼ÒÇÁÆ®¿þ¾î¸¦ »ý»êÇÒ ¼ö ÀÖ´Ù. ´º·¼¸¯Àº ¿øÁ¡È¸±Í ¹æ½ÄÀ» ÁÖ¸ñÇϰí ÀÖÀ¸¸ç Äڵ彺Ʈ¸²Àº ¿£Áö´Ï¾îµéÀÌ »ý»êÀ» ½ÃÀÛÇÏ°í °³¹ßÁֱ⸦ °¡¼ÓÈÇϱâ Àü¿¡ ¹Ì¸® ¹®Á¦µéÀ» ÆÄ¾ÇÇÔÀ¸·Î½á ½Ã°£°ú ºñ¿ëÀ» Àý¾àÇÒ ¼ö ÀÖµµ·Ï µµ¿ÍÁÙ °Í”À̶ó°í ¸»Çß´Ù.
´º·¼¸¯ Äڵ彺Ʈ¸²Àº ¸ðµç ¸ÞÆ®¸¯¿¡ °¡½Ã¼ºÀ» Ç×»ó È®º¸Çϰí, ½ÉÃþ ºÐ¼®, Æò±ÕŽÁö½Ã°£(Mean time to detection, MTTD), Æò±ÕÇØ°á½Ã°£(Mean time to resolution, MTTR) ¹× °³¹ßÁֱ⸦ ´ÜÃà½ÃÄÑ ÁÙ °ÍÀÌ´Ù.
´º·¼¸¯ Äڵ彺Ʈ¸²ÀÇ Ãß°¡ÀûÀÎ ÀåÁ¡Àº…
¡ß¸ðµç ÇÙ½É ÇÁ·Î±×·¡¹Ö ¾ð¾î Ȱ¿ë °¡´É = ´º·¼¸¯ Äڵ彺Ʈ¸²Àº Net, Java, PHP, Phyton, Go ¹× Node.js µî ¸ðµç ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ Áö¿øÇÑ´Ù.
¡ßÄÚµå ·¹º§¿¡¼ÀÇ ¼º´É ¸ð´ÏÅÍ = ´õ¿í ºü¸£°Ô ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖµµ·Ï, ÅÚ·¹¸ÞÆ®¸® ¸ÞÆ®¸¯ÀÌ µµ±¸ÈµÈ ¹æ¹ý ÀÁÙ¿¡ °¢°¢ ÇÑ ÁÙÀÇ ÅØ½ºÆ®·Î Ç¥½ÃµÈ´Ù.
¡ß¼ºñ½º ·¹º§ ¼º´É¿¡ ´ëÇÑ Á¢±Ù = ¼ºñ½º ¹× °ü·Ã ¼ºñ½º¿ë °ñµç ¸ÞÆ®¸¯Àº ¹®Á¦¸¦ ´õ¿í ºü¸£°Ô È®ÀÎÇÒ ¼ö ÀÖµµ·Ï ½±°Ô Ç¥¸éÈ(surfaced)µÉ ¼ö ÀÖ´Ù.
¡ß¼ºñ½º·¹º§ ¸ñÇ¥ ´ëºñ ¼º´É ÃßÀû = Àü¹ÝÀûÀÎ ¼ºñ½º ǰÁúÀ» º¸ÀåÇϱâ À§ÇØ ±âÁ¸¿¡ ¼³Á¤Çß´ø ¸ñÇ¥ ´ëºñ ÇöÀç ¼ºñ½º ¼º´É ¼öÁØÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.
¡ßµ¥ÀÌÅÍ ±â¹Ý ÄÚµå ¸®ºä = ÇÙ½ÉÀûÀÎ ÅÚ·¹¸ÞÆ®¸® µ¥ÀÌÅͰ¡ Ç® ¸®Äù½ºÆ®(Pull request) ¹× Çǵå¹é ¸®Äù½ºÆ®¿¡ Ç¥½ÃµÇ¾î ÇÁ·Î´ö¼Ç °úÁ¤¿¡ ÀÖ´Â Äڵ带 ´õ °³¼±ÇÒ ¼ö ÀÖ´Ù.
ÀÌÇü±Ù ´º·¼¸¯ÄÚ¸®¾Æ ´ëÇ¥´Â “´º·¼¸¯Àº Áö³ 2021³â °³¹ßÀÚµéÀÌ µ¥ÀÌÅ͸¦ ±â¹ÝÀ¸·Î ´õ¿í °£ÆíÇÏ°í ½±°Ô Äڵ带 ÀÛ¼ºÇϰí, °ËÅä, È®ÀÎÇÒ ¼ö ÀÖ´Â °³¹ßÀÚ Çù¾÷ Ç÷§ÆûÀÎ ´º·¼¸¯ Äڵ彺Ʈ¸²À» Ãâ½ÃÇÑ ¹Ù ÀÖ´Ù. ´õ ³ª¾Æ°¡ À̹ø¿¡ ¹ßÇ¥µÈ ÄÚµå ·¹º§ ¸ÞÆ®¸¯Àº ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÀÇ Ã¹ ¾ÆÁÖ ±âÃÊ ´Ü°è¿¡¼ºÎÅÍ °³¹ßÀÚµéÀÌ ´õ¿í Á¤È®ÇÑ Äڵ带 ÀÛ¼ºÇϰí, À¯¿¬ÇÏ°Ô ¼öÁ¤ÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÑ´Ù. À̸¦ ÅëÇØ ±â¾÷µéÀº ÆÒµ¥¹ÍÀ» Áö³ª ±× ¾î´À ¶§º¸´Ùµµ ´õ ±Þ°ÝÇÏ°Ô º¯ÈÇϰí ÀÖ´Â ±¹³» IT ¼ºñ½º ½ÃÀå¿¡ ´õ¿í ¹ÎøÇÏ°Ô ´ëÀÀÇÒ ¼ö ÀÖ´Â IT ȯ°æÀ» ±¸ÃàÇÒ ¼ö ÀÖ°Ô µÉ °Í”À̶ó°í ¸»Çß´Ù.
Äڵ彺Ʈ¸² ÄÚµå ·¹º§ ¸ÞÆ®¸¯ ¹× ¼ºñ½º ·¹º§ ¸ÞÆ®¸¯Àº Ãß°¡ ºñ¿ë ¾øÀÌ ¸ðµç ´º·¼¸¯ Ç÷§Æû¿¡¼ »ç¿ë °¡´ÉÇÏ´Ù.
<±èµ¿±â ±âÀÚ>kdk@bikorea.net < ÀúÀÛ±ÇÀÚ © BI KOREA ¹«´ÜÀüÀç ¹× Àç¹èÆ÷±ÝÁö > |