µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ÀÌÇØÇÏ°í Àû¿ëÇÏ´Â µ¥ ÇÊ¿äÇÑ À̷аú »ç·Ê¸¦ ´ãÀº ½ÇÁúÀûÀÎ Áöħ¼!¼ÒÇÁÆ®¿þ¾î °³¹ßÀº ¿¹Àüº¸´Ù ¾î·Æ´Ù. °³¹ßÀڷμ Áö¼ÓÀûÀ¸·Î º¯ÈÇÏ´Â ±â¼ú Æ®·»µå¸¦ µû¶óÀâ¾Æ¾ß ÇÒ »Ó ¾Æ´Ï¶ó ¼ÒÇÁÆ®¿þ¾î À̸éÀÇ ºñÁî´Ï½º µµ¸ÞÀεµ ÀÌÇØÇØ¾ß ÇÑ´Ù. ÀÌ ½Ç¿ë¼´Â ºñÁî´Ï½º µµ¸ÞÀÎÀ» ºÐ¼®ÇÏ°í ºñÁî´Ï½º Àü·«À» ÀÌÇØÇÏ´Â °ÍÀº ¹°·ÐÀÌ°í, ¹«¾ùº¸´Ù ºñÁî´Ï½º ¿ä°Ç¿¡ ¸ÂÃç ¼ÒÇÁÆ®¿þ¾î ¼³°è¸¦ Á¶Á¤Çϱâ À§ÇÑ ÀÏ·ÃÀÇ ÇÙ½É ÆÐÅÏ, ¿ø¸®, ½Çõ¹ýÀ» ¾Ë¾Æº»´Ù. ÀúÀÚ´Â ½Ç¹«¸¦ ÅëÇØ °ß°íÇÑ ºñÁî´Ï½º ·ÎÁ÷ÀÌ ¾î¶»°Ô ±¸ÇöµÇ´ÂÁö, ±×¸®°í ¾î¶»°Ô ¹Ì·¡ÁöÇâÀûÀÎ ¼ÒÇÁÆ®¿þ¾î ¼³°è¿Í ¾ÆÅ°ÅØó°¡ µÇ´ÂÁö¸¦ º¸¿©ÁØ´Ù. µ¶ÀÚ´Â ºñÁî´Ï½º ¿ä±¸»çÇ×À» ÃæÁ·ÇÏ´Â ¾ÆÅ°ÅØó ÀÇ»ç°áÁ¤À» ³»¸®±â À§ÇÑ µµ¸ÞÀÎ ÁÖµµ ¼³°è(DDD: Domain-Driven Design)¿Í ´Ù¸¥ ¹æ¹ý·Ð°úÀÇ °ü°è¸¦ °ËÅäÇÏ°Ô µÉ °ÍÀÌ´Ù. ¶ÇÇÑ ½ºÅ¸Æ®¾÷¿¡¼ DDD¸¦ ±¸ÇöÇÑ ½ÇÁ¦ ½Ç¹« »ç·Ê¸¦ »ìÆ캼 °ÍÀÌ´Ù.
ºí¶óµå ÄÚ³ë³ëÇÁ´Â ¿©·¯ ±Ô¸ðÀÇ È¸»ç¿¡¼ À¥ ¸¶½ºÅͺÎÅÍ ÃÖ°í ¾ÆÅ°ÅØÆ®±îÁö ´Ù¾çÇÑ ¿ªÇÒÀ» ¼öÇàÇÑ 20³â ÀÌ»óÀÇ °æ·ÂÀ» °¡Áø ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î´Ù. ºí¶óµå´Â ÁÖ¿ä ¹Ìµð¾î¿¡¼ ¿¬¼³ÀÚ, ºí·Î°Å, ±×¸®°í ÀúÀÚ·Î È°µ¿ÇÏ°í ÀÖ´Ù. ¼¼°è¸¦ ¹«´ë·Î µµ¸ÞÀÎ ÁÖµµ ¼³°è, ¸¶ÀÌÅ©·Î¼ºñ½º, ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó Àü¹Ý¿¡ ´ëÇØ ÄÁ¼³Æðú °¿¬À» ÇÑ´Ù. ºí¶óµå´Â ±â¾÷ÀÌ ±× ºñÁî´Ï½º µµ¸ÞÀÎÀ» ÀÌÇØÇÏ°í º¹ÀâÇÑ ¾ÆÅ°ÅØó ¹®Á¦¸¦ ´Ù·ê ¼ö ÀÖ°Ô µµ¿òÀ» ÁÖ°í ÀÖ´Ù. ±×´Â À̽º¶ó¿¤ ºÏºÎ¿¡¼ ¾Æ³»¿Í °í¾çÀ̵é°ú ÇÔ²² »ì°í ÀÖ´Ù.
[Part 1] Àü·«Àû ¼³°è ¢Ã 01Àå: ºñÁî´Ï½º µµ¸ÞÀÎ ºÐ¼®Çϱ⠺ñÁî´Ï½º µµ¸ÞÀÎÀ̶õ? ÇÏÀ§ µµ¸ÞÀÎÀ̶õ? __ÇÏÀ§ µµ¸ÞÀÎÀÇ À¯Çü __ÇÏÀ§ µµ¸ÞÀÎ ºñ±³ __ÇÏÀ§ µµ¸ÞÀÎ °æ°è ½Äº° µµ¸ÞÀÎ ºÐ¼® ¿¹Á¦ __Gigmaster __BusVNext µµ¸ÞÀÎ Àü¹®°¡´Â ¾î¶² »ç¶÷Àΰ¡? °á·Ð ¿¬½À¹®Á¦ ¢Ã 02Àå: µµ¸ÞÀÎ Áö½Ä ã¾Æ³»±â ºñÁî´Ï½º ¹®Á¦ µµ¸ÞÀÎ Áö½Ä ã¾Æ³»±â Ä¿¹Â´ÏÄÉÀÌ¼Ç À¯ºñÄõÅͽº ¾ð¾î¶õ ¹«¾ùÀΰ¡? ºñÁî´Ï½º ¾ð¾î __½Ã³ª¸®¿À __ÀÏ°ü¼º ºñÁî´Ï½º µµ¸ÞÀÎ ¸ðµ¨ __¸ðµ¨À̶õ ¹«¾ùÀΰ¡? __È¿°úÀûÀÎ ¸ðµ¨¸µ __ºñÁî´Ï½º µµ¸ÞÀÎ ¸ðµ¨¸µ __Áö¼ÓÀûÀÎ ³ë·Â __µµ±¸ __µµÀü°úÁ¦ °á·Ð ¿¬½À¹®Á¦ ¢Ã 03Àå: µµ¸ÞÀÎ º¹À⼺ °ü¸® ÀÏ°ü¼º ¾ø´Â ¸ðµ¨ ¹Ù¿îµðµå ÄÁÅؽºÆ®¶õ ¹«¾ùÀΰ¡? __¸ðµ¨ °æ°è __Á¤Á¦µÈ À¯ºñÄõÅͽº ¾ð¾î __¹Ù¿îµðµå ÄÁÅؽºÆ®ÀÇ ¹üÀ§ ¹Ù¿îµðµå ÄÁÅؽºÆ® ´ë ÇÏÀ§ µµ¸ÞÀÎ __ÇÏÀ§ µµ¸ÞÀÎ __¹Ù¿îµðµå ÄÁÅؽºÆ® __ÇÏÀ§ µµ¸ÞÀΰú ¹Ù¿îµðµå ÄÁÅؽºÆ® »çÀÌÀÇ »óÈ£ÀÛ¿ë °æ°è __¹°¸®Àû °æ°è __¼ÒÀ¯±Ç °æ°è ½Ç»ýÈ°ÀÇ ¹Ù¿îµðµå ÄÁÅؽºÆ® __½Ã¸Çƽ µµ¸ÞÀÎ __°úÇÐ __³ÃÀå°í ±¸ÀÔ °á·Ð ¿¬½À¹®Á¦ ¢Ã 04Àå: ¹Ù¿îµðµå ÄÁÅؽºÆ® ¿¬µ¿ Çù·ÂÇü ÆÐÅÏ ±×·ì __ÆÄÆ®³Ê½Ê ÆÐÅÏ __°øÀ¯ Ä¿³Î ÆÐÅÏ »ç¿ëÀÚ-Á¦°øÀÚ ÆÐÅÏ ±×·ì __¼øÀÀÁÖÀÇÀÚ ÆÐÅÏ __Ãæµ¹ ¹æÁö °èÃþ ÆÐÅÏ __¿ÀÇ ȣ½ºÆ® ¼ºñ½º ÆÐÅÏ ºÐ¸®Çü ³ë¼± __Ä¿¹Â´ÏÄÉÀÌ¼Ç À̽´ __ÀÏ¹Ý ÇÏÀ§ µµ¸ÞÀÎ __¸ðµ¨ÀÇ Â÷ÀÌ ÄÁÅؽºÆ® ¸Ê __À¯Áöº¸¼ö __ÇÑ°è °á·Ð ¿¬½À¹®Á¦ [Part 2] Àü¼úÀû ¼³°è ¢Ã 05Àå: °£´ÜÇÑ ºñÁî´Ï½º ·ÎÁ÷ ±¸Çö Æ®·£Àè¼Ç ½ºÅ©¸³Æ® __±¸Çö __±×·¸°Ô ½±Áø ¾Ê´Ù! __Æ®·£Àè¼Ç ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ´Â °æ¿ì ¾×Ƽºê ·¹ÄÚµå __±¸Çö __¾×Ƽºê ·¹Äڵ带 »ç¿ëÇÏ´Â °æ¿ì ½Ç¿ëÀûÀÎ Á¢±Ù ¹æ½Ä °á·Ð ¿¬½À¹®Á¦ ¢Ã 06Àå: º¹ÀâÇÑ ºñÁî´Ï½º ·ÎÁ÷ ´Ù·ç±â ¹è°æ µµ¸ÞÀÎ ¸ðµ¨ __±¸Çö __±¸¼º¿ä¼Ò __º¹À⼺ °ü¸® °á·Ð ¿¬½À¹®Á¦ ¢Ã 07Àå: ½Ã°£ Â÷¿øÀÇ ¸ðµ¨¸µ À̺¥Æ® ¼Ò½Ì __°Ë»ö __ºÐ¼® __¿øõ µ¥ÀÌÅÍ __À̺¥Æ® ½ºÅä¾î À̺¥Æ® ¼Ò½Ì µµ¸ÞÀÎ ¸ðµ¨ __ÀåÁ¡ __´ÜÁ¡ ÀÚÁÖ ¹¯´Â Áú¹® __¼º´É __µ¥ÀÌÅÍ »èÁ¦ __ÀÌ·¸°Ô ÇÏ¸é ¾ÈµÉ±î¿ä¡¦? °á·Ð ¿¬½À¹®Á¦ ¢Ã 08Àå: ¾ÆÅ°ÅØó ÆÐÅÏ ºñÁî´Ï½º ·ÎÁ÷°ú ¾ÆÅ°ÅØó ÆÐÅÏ °èÃþÇü ¾ÆÅ°ÅØó __ÇÁ·¹Á¨Å×ÀÌ¼Ç °èÃþ __ºñÁî´Ï½º ·ÎÁ÷ °èÃþ __µ¥ÀÌÅÍ Á¢±Ù °èÃþ __°èÃþ °£ Ä¿¹Â´ÏÄÉÀÌ¼Ç __º¯Á¾(variation) __°èÃþÇü ¾ÆÅ°ÅØó¸¦ »ç¿ëÇÏ´Â °æ¿ì Æ÷Æ®¿Í ¾î´ðÅÍ __¿ë¾î __ÀÇÁ¸¼º ¿ªÀü ¿øÄ¢ __ÀÎÇÁ¶ó ±¸¼º¿ä¼ÒÀÇ ¿¬µ¿ __º¯Çü __Æ÷Æ®¿Í ¾î´ðÅ͸¦ »ç¿ëÇÏ´Â °æ¿ì CQRS __Æú¸®±Û¶ù ¸ðµ¨¸µ __Àб⠸ðµ¨ÀÇ ÇÁ·ÎÁ§¼Ç __µµÀü°úÁ¦ __¸ðµ¨ ºÐ¸® __CQRS¸¦ »ç¿ëÇØ¾ß ÇÏ´Â °æ¿ì ¹üÀ§ °á·Ð ¿¬½À¹®Á¦ ¢Ã 09Àå: Ä¿¹Â´ÏÄÉÀÌ¼Ç ÆÐÅÏ ¸ðµ¨ º¯È¯ __½ºÅ×ÀÌÆ®¸®½º ¸ðµ¨ º¯È¯ __½ºÅ×ÀÌƮǮ ¸ðµ¨ º¯È¯ ¾Ö±×¸®°ÔÀÌÆ® ¿¬µ¿ __¾Æ¿ô¹Ú½º __»ç°¡ __ÇÁ·Î¼¼½º °ü¸®ÀÚ °á·Ð ¿¬½À¹®Á¦ [Part 3] µµ¸ÞÀÎ ÁÖµµ ¼³°è Àû¿ë ½Ç¹« ¢Ã 10Àå: ÈÞ¸®½ºÆ½ ¼³°è ÈÞ¸®½ºÆ½ ¹Ù¿îµðµå ÄÁÅؽºÆ® ºñÁî´Ï½º ·ÎÁ÷ ±¸Çö ÆÐÅÏ ¾ÆÅ°ÅØó ÆÐÅÏ Å×½ºÆ® Àü·« __ÇǶó¹ÌµåÇü Å×½ºÆ® __´ÙÀ̾ƸóµåÇü Å×½ºÆ® __¿ªÀüµÈ ÇǶó¹ÌµåÇü Å×½ºÆ® Àü¼úÀû ¼³°è ÀÇ»ç°áÁ¤ Æ®¸® °á·Ð ¿¬½À¹®Á¦ ¢Ã 11Àå: ÁøÈÇÏ´Â ¼³°è ÀÇ»ç°áÁ¤ µµ¸ÞÀÎ º¯°æ __Çٽɿ¡¼ ÀϹÝÀ¸·Î __ÀϹݿ¡¼ ÇÙ½ÉÀ¸·Î __Áö¿ø¿¡¼ ÀϹÝÀ¸·Î __Áö¿ø¿¡¼ ÇÙ½ÉÀ¸·Î __Çٽɿ¡¼ Áö¿øÀ¸·Î __ÀϹݿ¡¼ Áö¿øÀ¸·Î Àü·«Àû ¼³°è ¹®Á¦ Àü¼úÀû ¼³°è ¹®Á¦ __Æ®·£Àè¼Ç ½ºÅ©¸³Æ®¿¡¼ ¾×Ƽºê ·¹ÄÚµå·Î __¾×Ƽºê ·¹Äڵ忡¼ µµ¸ÞÀÎ ¸ðµ¨·Î __µµ¸ÞÀÎ ¸ðµ¨¿¡¼ À̺¥Æ® ¼Ò½Ì µµ¸ÞÀÎ ¸ðµ¨·Î __Àüȯ¿¡ ÇÊ¿äÇÑ °ú°Å ÀÌ·Â »ý¼º __¸¶À̱׷¹ÀÌ¼Ç À̺¥Æ® ¸ðµ¨¸µ Á¶Á÷ º¯È __ÆÄÆ®³Ê½Ê¿¡¼ »ç¿ëÀÚ-Á¦°øÀÚ·Î __»ç¿ëÀÚ-Á¦°øÀÚ¿¡¼ ºÐ¸®Çü ³ë¼±À¸·Î µµ¸ÞÀÎ Áö½Ä ¼ºÀå __ÇÏÀ§ µµ¸ÞÀÎ __¹Ù¿îµðµå ÄÁÅؽºÆ® __¾Ö±×¸®°ÔÀÌÆ® °á·Ð ¿¬½À¹®Á¦ ¢Ã 12Àå: À̺¥Æ®½ºÅä¹Ö À̺¥Æ®½ºÅä¹ÖÀ̶õ? ´©°¡ À̺¥Æ®½ºÅä¹Ö¿¡ Âü¼®Çϳª? À̺¥Æ®½ºÅä¹Ö¿¡ ¹«¾ùÀÌ ÇÊ¿äÇÑ°¡? À̺¥Æ®½ºÅä¹Ö °úÁ¤ __1´Ü°è: ÀÚÀ¯·Î¿î Ž»ö __2´Ü°è: ŸÀÓ¶óÀÎ __3´Ü°è: °íÃæÁ¡ __4´Ü°è: Áß¿ä À̺¥Æ® __5´Ü°è: Ä¿¸Çµå __6´Ü°è: Á¤Ã¥ __7´Ü°è: Àб⠸𵨠__8´Ü°è: ¿ÜºÎ ½Ã½ºÅÛ __9´Ü°è: ¾Ö±×¸®°ÔÀÌÆ® __10´Ü°è: ¹Ù¿îµðµå ÄÁÅؽºÆ® º¯Çü À̺¥Æ®½ºÅä¹ÖÀ» »ç¿ëÇÏ´Â °æ¿ì ÁøÇà ÆÁ __È°·Âµµ »ìÇDZâ __¿ø°Ý À̺¥Æ®½ºÅä¹Ö °á·Ð ¿¬½À¹®Á¦ ¢Ã 13Àå: ½Ç¹«¿¡¼ÀÇ µµ¸ÞÀÎ ÁÖµµ ¼³°è Àü·«Àû ºÐ¼® __ºñÁî´Ï½º µµ¸ÞÀÎ ÀÌÇØÇϱâ __ÇöÀç ¼³°è Ž»ö Çö´ëÈ Àü·« __Àü·«Àû Çö´ëÈ __Àü¼úÀû Çö´ëÈ __À¯ºñÄõÅͽº ¾ð¾î À°¼º ½Ç¿ëÀûÀÎ µµ¸ÞÀÎ ÁÖµµ ¼³°è µµ¸ÞÀÎ ÁÖµµ ¼³°è È®»ê __½Ç¹«¿¡ È°¿ëÇÏ´Â µµ¸ÞÀÎ ÁÖµµ ¼³°è °á·Ð ¿¬½À¹®Á¦ [Part 4] ´Ù¸¥ ¹æ¹ý·Ð ¹× ÆÐÅÏ°úÀÇ °ü°è ¢Ã 14Àå: ¸¶ÀÌÅ©·Î¼ºñ½º ¼ºñ½º¶õ ¹«¾ùÀΰ¡? ¸¶ÀÌÅ©·Î¼ºñ½º¶õ ¹«¾ùÀΰ¡? __¼ºñ½ºÇü ¸Þ¼µå: ¿Ïº®ÇÑ ¸¶ÀÌÅ©·Î¼ºñ½º? __¼³°è ¸ñÇ¥ __½Ã½ºÅÛÀÇ º¹À⼺ __±íÀº ¼ºñ½º·Î¼ÀÇ ¸¶ÀÌÅ©·Î¼ºñ½º __±íÀº ¸ðµâ·Î¼ÀÇ ¸¶ÀÌÅ©·Î¼ºñ½º µµ¸ÞÀÎ ÁÖµµ ¼³°è¿Í ¸¶ÀÌÅ©·Î¼ºñ½ºÀÇ °æ°è __¹Ù¿îµðµå ÄÁÅؽºÆ® __¾Ö±×¸®°ÔÀÌÆ® __ÇÏÀ§ µµ¸ÞÀÎ ¸¶ÀÌÅ©·Î¼ºñ½ºÀÇ ÆÛºí¸¯ ÀÎÅÍÆäÀ̽º ¾ÐÃàÇϱâ __¿ÀÇ ȣ½ºÆ® ¼ºñ½º __Ãæµ¹ ¹æÁö °èÃþ °á·Ð ¿¬½À¹®Á¦ ¢Ã 15Àå: À̺¥Æ® ÁÖµµ ¾ÆÅ°ÅØó À̺¥Æ® ÁÖµµ ¾ÆÅ°ÅØó À̺¥Æ® __À̺¥Æ®, Ä¿¸Çµå, ¸Þ½ÃÁö __±¸Á¶ __À̺¥Æ® À¯Çü À̺¥Æ® ÁÖµµ ¿¬µ¿ ¼³°è __ºÐ»êµÈ Ä¿´Ù¶õ ÁøÈë µ¢¾î¸® __½Ã°£ °áÇÕ __±â´É °áÇÕ __±¸Çö °áÇÕ __À̺¥Æ® ÁÖµµ ¿¬µ¿ÀÇ ¸®ÆÑÅ͸µ __À̺¥Æ® ÁÖµµ ¼³°è ÈÞ¸®½ºÆ½ °á·Ð ¿¬½À¹®Á¦ ¢Ã 16Àå: µ¥ÀÌÅÍ ¸Þ½Ã ºÐ¼® µ¥ÀÌÅÍ ¸ðµ¨°ú Æ®·£Àè¼Ç µ¥ÀÌÅÍ ¸ðµ¨ÀÇ ºñ±³ __ÆÑÆ® Å×À̺í __µð¸àÀü Å×À̺í __ºÐ¼® ¸ðµ¨ ºÐ¼® µ¥ÀÌÅÍ °ü¸® Ç÷§Æû __µ¥ÀÌÅÍ ¿þ¾îÇϿ콺 __µ¥ÀÌÅÍ ·¹ÀÌÅ© __µ¥ÀÌÅÍ ¿þ¾îÇϿ콺¿Í µ¥ÀÌÅÍ ·¹ÀÌÅ© ¾ÆÅ°ÅØóÀÇ µµÀü°úÁ¦ µ¥ÀÌÅÍ ¸Þ½Ã __µµ¸ÞÀÎ ±âÁØÀÇ µ¥ÀÌÅÍ ºÐ¸® __Á¦Ç° °üÁ¡¿¡¼ µ¥ÀÌÅÍ ´Ù·ç±â __ÀÚÀ²¼º È°¼ºÈ __¿¡ÄڽýºÅÛ ±¸Ãà µ¥ÀÌÅÍ ¸Þ½Ã¿Í µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ¿«±â °á·Ð ¿¬½À¹®Á¦ ¢Ã ¸ÎÀ½¸» ¹®Á¦ ¼Ö·ç¼Ç ±¸Çö Ãß°¡ ÀÚ·á __°í±Þ µµ¸ÞÀÎ ÁÖµµ ¼³°è __¾ÆÅ°ÅØó ¹× ÅëÇÕ ÆÐÅÏ __·¹°Å½Ã ½Ã½ºÅÛ Çö´ëÈ __À̺¥Æ®½ºÅä¹Ö °á·Ð ¢Ã ºÎ·ÏA: DDD Àû¿ë: »ç·Ê ¿¬±¸ ´Ù¼¸ °¡Áö ¹Ù¿îµðµå ÄÁÅؽºÆ® __ºñÁî´Ï½º µµ¸ÞÀÎ __¹Ù¿îµðµå ÄÁÅؽºÆ® #1: ¸¶ÄÉÆà __¹Ù¿îµðµå ÄÁÅؽºÆ® #2: CRM __¹Ù¿îµðµå ÄÁÅؽºÆ® #3: À̺¥Æ® Å©·±Ã³ __¹Ù¿îµðµå ÄÁÅؽºÆ® #4: º¸³Ê½º __¹Ù¿îµðµå ÄÁÅؽºÆ® #5: ¸¶ÄÉÆà Çãºê ³íÀÇ __À¯ºñÄõÅͽº ¾ð¾î __ÇÏÀ§ µµ¸ÞÀÎ __¹Ù¿îµðµå ÄÁÅؽºÆ®ÀÇ °æ°è °á·Ð ¢Ã ºÎ·ÏB: ¿¬½À¹®Á¦ Á¤´ä