°³¶ËÀ̳׿¡¼­ ÆÇ¸ÅµÈ "UML ½ÇÀü¿¡¼­´Â À̰͸¸ ¾´´Ù"     Á¤°¡ 20,000¿ø   Æò±ÕÇÒÀΰ¡
Ãß°¡ °Ë»ö Çϱâ
ÃÑ 4°³ÀÇ µµ¼­°¡ ÀÖ½À´Ï´Ù.
µµ¼­À̹ÌÁö µµ¼­¸í »óÅ °¡°Ý ÆǸÅÀÚ

UML ½ÇÀü¿¡¼­´Â À̰͸¸ ¾´´Ù
Áß 
9,900¿ø

50,000 ¹Ì¸¸
¹è¼Ûºñ3,000
ÆݾغÏ
ÆǸŵµ¼­(31,581±Ç)

UML ½ÇÀü¿¡¼­´Â À̰͸¸ ¾´´Ù
»õÃ¥ 
18,000¿ø

20,000 ¹Ì¸¸
¹è¼Ûºñ3,000
Ã¥°¡¹æ
ÆǸŵµ¼­(328,774±Ç)

UML ½ÇÀü¿¡¼­´Â À̰͸¸ ¾´´Ù
»õÃ¥ 
18,000¿ø

30,000 ¹Ì¸¸
¹è¼Ûºñ5,000
¾Æ±â¿À¸®
ÆǸŵµ¼­(201,919±Ç)

UML ½ÇÀü¿¡¼­´Â À̰͸¸ ¾´´Ù
»õÃ¥ 
18,000¿ø

20,000 ¹Ì¸¸
¹è¼Ûºñ3,000
»õÃ¥Àü¹®Á¡
ÆǸŵµ¼­(360,129±Ç)
 

»ó¼¼Á¤º¸

¿Å±äÀÌÀÇ ±Û
ÃßõÀÇ ±Û
ÁöÀºÀÌÀÇ ±Û

1Àå. ÀÌ Ã¥ÀÇ °³¿ä
´ÙÀ̾î±×·¥ÀÇ À¯Çü
Ŭ·¡½º ´ÙÀ̾î±×·¥
°´Ã¼ ´ÙÀ̾î±×·¥
½ÃÄö½º ´ÙÀ̾î±×·¥
Çù·Â ´ÙÀ̾î±×·¥
»óÅ ´ÙÀ̾î±×·¥
°á·Ð

2Àå. ´ÙÀ̾î±×·¥À¸·Î ÀÛ¾÷Çϱâ
¿Ö ¸ðµ¨À» ¸¸µé¾î¾ß Çϴ°¡?
¿Ö ¼ÒÇÁÆ®¿þ¾î ¸ðµ¨À» ¸¸µå´Â°¡?
¹Ýµå½Ã ÄÚµùÀ» ½ÃÀÛÇϱ⿡ ¾Õ¼­ Æ÷°ýÀûÀÎ ¼³°è¸¦ ÇØ¾ß Çϴ°¡
UMLÀ» È¿°úÀûÀ¸·Î »ç¿ëÇϱâ
´Ù¸¥ »ç¶÷µé°ú ÀÇ»ç¼ÒÅëÇϱâ
·Îµå¸Ê
¹é¿£µå(back-end) ¹®¼­
¹«¾ùÀ» º¸°üÇÏ°í ¹«¾ùÀ» ¹ö·Á¾ß Çϴ°¡
¹Ýº¹À» ÅëÇØ ´Ùµë±â
ÇàÀ§¸¦ Á¦ÀÏ ¸ÕÀú
±¸Á¶¸¦ Á¡°ËÇϱâ
Äڵ带 ¸¶À½¼ÓÀ¸·Î ±×·Áº¸±â
´ÙÀ̾î±×·¥ÀÇ ÁøÈ­
¹Ì´Ï¸Ö¸®Áò
¾ðÁ¦ ´ÙÀ̾î±×·¥À» ±×·Á¾ß Çϸç, ¾î¶»°Ô ±×·Á¾ß Çϴ°¡
¾ðÁ¦ ´ÙÀ̾î±×·¥À» ±×·Á¾ß ÇÏ¸ç ¾ðÁ¦ ¸ØÃç¾ß Çϴ°¡
CASE µµ±¸
ÇÏÁö¸¸ ¹®¼­È­´Â ¾î¶»°Ô Çմϱî
±×·¯¸é JavadocÀº?
°á·Ð

3Àå. Ŭ·¡½º ´ÙÀ̾î±×·¥
±âº» °³³ä
Ŭ·¡½º
¿¬°ü
»ó¼Ó
¿¹Á¦ Ŭ·¡½º ´ÙÀ̾î±×·¥
¼¼ºÎ»çÇ×
Ŭ·¡½º ½ºÅ×·¹¿ÀŸÀÔ
Ãß»ó Ŭ·¡½º
ÇÁ·ÎÆÛƼ
ÁýÇÕ
ÇÕ¼º
´Ù¼ö¼º
¿¬°ü ½ºÅ×·¹¿ÀŸÀÔ
³»ºÎ Ŭ·¡½º
ÀÍ¸í ³»ºÎ Ŭ·¡½º
¿¬°ü Ŭ·¡½º
¿¬°ü ÇÑÁ¤»ç
°á·Ð

4Àå. ½ÃÄö½º ´ÙÀ̾î±×·¥
±âº» °³³ä
°´Ã¼, »ý¸í¼±, ¸Þ½ÃÁö µî
»ý¼º°ú ¼Ò¸ê
´Ü¼øÇÑ ¹Ýº¹
»ç·Ê¿Í ½Ã³ª¸®¿À
°í±Þ °³³ä
¹Ýº¹°ú Á¶°Ç
½Ã°£ÀÌ °É¸®´Â ¸Þ½ÃÁöµé
ºñµ¿±â ¸Þ½ÃÁö
´ÙÁß ½º·¹µå
È°µ¿ÀûÀÎ °´Ã¼
ÀÎÅÍÆäÀ̽º¿¡ ¸Þ½ÃÁö º¸³»±â
°á·Ð

5Àå. À¯½ºÄÉÀ̽º
À¯½ºÄÉÀ̽º Àû±â
À¯½ºÄÉÀ̽º¶õ ¹«¾ùÀΰ¡
±âº» È帧
´ëü È帧
³ª¸ÓÁö´Â?
À¯½ºÄÉÀ̽º ´ÙÀ̾î±×·¥
½Ã½ºÅÛ °æ°è ´ÙÀ̾î±×·¥
À¯½ºÄÉÀ̽º °ü°è
°á·Ð

6Àå. OOD(°´Ã¼ ÁöÇâ °³¹ß)ÀÇ ¿øÄ¢
¼³°èÀÇ Ç°Áú
³ª»Û ¼³°èÀÇ ³¿»õ
ÀÇÁ¸ °ü°è °ü¸®Çϱâ
´Ü ÇϳªÀÇ Ã¥ÀÓ ¿øÄ¢(The Single Responsibility Principle)
°³¹æ-Æó¼â ¿øÄ¢(The Open-Closed Principle)
¸®½ºÄÚÇÁ ±³Ã¼ ¿øÄ¢(Liskov Substitution Principle)
ÀÇÁ¸ °ü°è ¿ªÀü ¿øÄ¢(Dependency Inversion Principle)
ÀÎÅÍÆäÀ̽º °Ý¸® ¿øÄ¢(Interface Segregation Principle)
°á·Ð

7Àå. ½Çõ¹æ¹ý : dX
¹Ýº¹ÀûÀÎ °³¹ß(Iterative Development)
ÃÖÃÊÀÇ Å½»ç ÀÛ¾÷
°¢ ±â´ÉÀÇ ÃßÁ¤Ä¡ Àâ±â
½ºÆÄÀÌÅ©
°èȹ Â¥±â
¸±¸®½º °èȹÇϱâ
¹Ýº¹ Áֱ⸦ °èȹÇϱâ
Áß°£ ÁöÁ¡
°á°ú¸¦ ¼Óµµ¿¡ ¹Ý¿µÇϱâ
¹Ýº¹ Áֱ⸦ °ü¸® ´Ü°è·Î Á¶Á÷Çϱâ
¹Ýº¹ Áֱ⿡¼­´Â ¾î¶² ÀÏÀÌ ÀϾ´Â°¡
¦À» ÀÌ·ï °³¹ßÇϱâ
Àμö Å×½ºÆ®
´ÜÀ§ Å×½ºÆ®
¸®ÆÑÅ͸µ
°³¹æµÈ ÀÛ¾÷ °ø°£
²÷ÀÓ¾ø´Â ÅëÇÕ ÀÛ¾÷
°á·Ð

8Àå. ÆÐÅ°Áö
ÀÚ¹Ù ÆÐÅ°Áö
UML ÆÐÅ°Áö
ÀÇÁ¸ °ü°è
¹ÙÀ̳ʸ® ÄÄÆ÷³ÍÆ® - .jar ÆÄÀÏ
ÆÐÅ°Áö ¼³°èÀÇ ¿øÄ¢µé
ÆÐÅ°Áö ¸±¸®½º£¯Àç»ç¿ë µî°¡ ¿øÄ¢(Release£¯Reuse Equivalency Principle)
°øÅë Æó¼â ¿øÄ¢(Common Closure Principle)
°øÅë Àç»ç¿ë ¹ýÄ¢(Common Reuse Principle)
ÀÇÁ¸ °ü°è ºñ¼øȯ ¿øÄ¢(Acyclic Dependencies Principle)
¾ÈÁ¤µÈ ÀÇÁ¸ °ü°è ¿øÄ¢(Stable Dependencies Principle)
¾ÈÁ¤µÈ Ãß»óÈ­ ¿øÄ¢(Stable Abstractions Principle)
°á·Ð

9Àå. °´Ã¼ ´ÙÀ̾î±×·¥
¾î¶² ¼ø°£ÀÇ ½º³À¼¦
È°µ¿ÀûÀÎ °´Ã¼
°á·Ð

10Àå. »óÅ ´ÙÀ̾î±×·¥
±âº» °³³ä
Ư¼ö À̺¥Æ®
»óÀ§ »óÅÂ
ÃÖÃÊ ÀÇ»ç-»óÅÂ¿Í ÃÖÁ¾ ÀÇ»ç-»óÅÂ
FSM ´ÙÀ̾î±×·¥À» »ç¿ëÇϱâ
SMC
ICE : »ç·Ê ¿¬±¸
°á·Ð

11Àå. ÈÞ¸®½ºÆ½°ú Ä¿ÇÇ
¸¶Å© IV Ư¼ö Ä¿ÇǸÞÀÌÄ¿
¸¶Å© IV Ư¼ö Ä¿ÇǸÞÀÌÄ¿
µµÀü
ÀÚÁÖ Á¦½ÃµÇ±ä ÇÏÁö¸¸, ¾û¸ÁÀÎ Ä¿ÇǸÞÀÌÄ¿ ÇØ°á ¹æ¾È
»ç¶óÁø ¸Þ¼­µå
Çã±úºñ Ŭ·¡½º
»ó»ó»ÓÀÎ Ãß»óÈ­
Çϳª´Ô Ŭ·¡½º
Ä¿ÇǸÞÀÌÄ¿ ÇØ°á ¹æ¾È
¼±À» ³Ñ¾î°£ ¿¬°á
Ä¿ÇǸÞÀÌÄ¿ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º
À¯½ºÄÉÀ̽º 1 : »ç¿ëÀÚ°¡ ²úÀÓ(Brew) ¹öÆ°À» ´©¸¥´Ù
À¯½ºÄÉÀ̽º 2 : ContainmentVesselÀÌ ÁغñµÇ¾î ÀÖÁö ¾Ê´Ù
À¯½ºÄÉÀ̽º 3 : Ä¿ÇÇ°¡ ´Ù ²ú¾ú´Ù
À¯½ºÄÉÀ̽º 4 : Ä¿ÇǸ¦ ¸ðµÎ ¸¶¼Ì´Ù
Ãß»ó ¸ðµ¨À» ½ÇÁ¦·Î ±¸ÇöÇϱâ
À¯½ºÄÉÀ̽º 1 : »ç¿ëÀÚ°¡ ²úÀÓ ¹öÆ°À» ´©¸¥´Ù
isReady() ÇÔ¼öµéÀ» ±¸ÇöÇϱâ
start() ÇÔ¼öµéÀ» ±¸ÇöÇϱâ
M4UserInterface.checkButtonÀº ¾î¶»°Ô È£ÃâµÇ´Â°¡
Ä¿ÇǸÞÀÌÄ¿¸¦ ¸¶¹«¸®Áþ±â
ÀÌ ¼³°èÀÇ ÀåÁ¡
¾î¶»°Ô ÀÌ·± ¼³°è¸¦ ¶°¿Ã¸± ¼ö ÀÖ¾úÀ»±î
°´Ã¼ÁöÇâÀÇ °úÀ×(OOverkill)

12Àå. SMC ¿ø°Ý ¼­ºñ½º : »ç·Ê ¿¬±¸
µ¶ÀÚ¿¡°Ô º¸³»´Â °æ°í
´ÜÀ§ Å×½ºÆ®
SMCRemote ½Ã½ºÅÛ
SMCRemoteClient
SMCRemoteClient ¸í·ÉÁÙ
SMCRemote Åë½Å ÇÁ·ÎÅäÄÝ
SMCRemoteClient(SMC ¿ø°Ý Ŭ¶óÀ̾ðÆ®)
¸Þ½ÃÁö ·Î°Å
¿ø°Ý ¼¼¼Ç
RemoteSessionBase(¿ø°Ý ¼¼¼Ç º£À̽º)
RemoteRegistrar(¿ø°Ý µî·ÏÀÚ)
RemoteCompiler(¿ø°Ý ÄÄÆÄÀÏ·¯)
FileCarrier(ÆÄÀÏ ¿î¹ÝÀÚ)
SMCRemoteClient¿¡ ´ëÇÑ °á·Ð
SMCRemoteServer
SocketService(¼ÒÄÏ ¼­ºñ½º)
SMCRemoteService(SMC ¿ø°Ý ¼­ºñ½º)
SMCRemoteServer
ServerSession(¼­¹ö ¼¼¼Ç)
THREE-LEVEL FSM
UserRepository(»ç¿ëÀÚ ÀúÀå¼Ò)
OReillyEmailSender(¿À¶óÀϸ® ÀüÀÚ¿ìÆí Àü¼ÛÀÚ)
PasswordGenerator(ºñ¹Ð¹øÈ£ »ý¼º±â)
°á·Ð
SMCRemoteClient¸¦ À§ÇÑ Å×½ºÆ®
SocketService¸¦ À§ÇÑ Å×½ºÆ®
SMCRemoteServer¸¦ À§ÇÑ Å×½ºÆ®
³ª¸ÓÁö Å×½ºÆ®
(SMC°¡ ÀÚµ¿ »ý¼ºÇÑ) ¼­¹ö ÄÁÆ®·Ñ·¯(ServerController)

ºÎ·Ï 1. ºÐ·Î(ÝÂÖØ) ´ÜÀ§ Å×½ºÆà ÆÐÅÏ
¿ª»ç
À̸§ÀÇ À¯·¡

ºÎ·Ï 2. ÇÁ·Î¼¼½º(RUP vs. dX)
±Ç¸®
¸ñÇ¥
°¡Ä¡ ½Ã½ºÅÛ
RUP(Rational Unified Process)
dX : °¡Àå ÀÛÀº RUP °øÁ¤
¿ä¾à

Âü°í¹®Çå
¿ë¾î´ë¿ªÇ¥

ÀÌ Ã¥Àº UMLÀ» °øºÎÇÏ·Á´Â »ç¶÷À» À§ÇÑ Ã¥ÀÌ ¾Æ´Ï´Ù.

ÀÌ Ã¥Àº UMLÀ» »ç¿ëÇÏ·Á´Â »ç¶÷À» À§ÇÑ Ã¥ÀÌ´Ù. ÀÌ Ã¥ÀÇ Ã¶Çп¡ ±×³ª¸¶ °¡±î¿î UML ¼­ÀûÀ» ²Å´Â´Ù¸é ¸¶Æ¾ ÆÄ¿ï·¯°¡ ¾´ [UML Distilled] Á¤µµ°¡ ÀÖ°Ú´Ù. ÇÏÁö¸¸ À̸¶Àúµµ °¡±î¿î °ÍÀÌÁö, ÀÌÅä·Ï ½Ç¿ëÀûÀÌ°í ½ÇÀüÀûÀ̸鼭 ÃÖ¼ÒÁÖÀÇ(minimalism)ÀûÀÎ UML ¼­ÀûÀº º»ÀÎÀÌ ¾Æ´Â ÇÑ ¾ø´Ù.

ÀÌ Ã¥ÀÇ ÃÊ°í¸¦ óÀ½ º¼ ¶§ ¡®UMLÀ» ¾ðÁ¦ »ç¿ëÇϴ°¡¡¯¶ó´Â Áú¹®¿¡ ÀúÀÚ°¡ ´äÇÑ °ÍÀ» Àаí´Â µÚÅë¼ö¸¦ Á׺ñ·Î ¾ò¾î¸Â´Â ´À³¦À» ¹Þ¾Ò´Ù. ¡®¹º°¡ ²À Å×½ºÆ®ÇØ¾ß ÇÒ °ÍÀÌ ÀÖ°í ±×°ÍÀ» Å×½ºÆ®ÇÏ´Â µ¥ ÄÚµå·Î ÇÏ´Â °Íº¸´Ù UML·Î ÇÏ´Â °ÍÀÌ ´õ °ª½Ñ °æ¿ì¿¡ UMLÀ» »ç¿ëÇÑ´Ù¡¯. µû¾Ç!

½Ç¹«¿¡¼­ UMLÀ» »ç¿ëÇغ» »ç¶÷Àº ÀÌ Ã¥À» ÀÐÀ¸¸é¼­ ³Ê¹« Áñ°Å¿î ³ª¸ÓÁö ¹Ú¼ö¸¦ Ä¡°í ¹ßÀ» ±¸¸£°Ô µÉÁöµµ ¸ð¸£°Ú´Ù. UMLÀ» »ç¿ëÇغ¸Áö ¸øÇÑ »ç¶÷Àº ¹«¸²ºñ°øÀ» °ÅÀú ÁÖ¿î ´À³¦À» ¹ÞÀ» °Í °°´Ù. Ȥ ÁÖº¯ÀÇ ÁúÅõ¿Í ½Ã±âÀÇ ´«Ãʸ®¸¦ ¹ÞÀ»Áöµµ ¸ð¸£°Ú´Ù. ±º´ë ´Ù³à¿Â »ç¶÷ÀÌ º°´Ù¸¥ ÀÌÀ¯ ¾øÀÌ ¸éÁ¦µÈ »ç¶÷À» º¸°í ÁúÅõ½ÉÀ» ´À³¢´Â °Íó·³.
ÀÌ Ã¥Àº »ç½Ç UML¸¸ °¡¸£ÃÄÁÖÁö´Â ¾Ê´Â´Ù. XP¿Í °´Ã¼ ÁöÇâ ¼³°èÀÇ ¿øÄ¢±îÁöµµ ´ýÀ¸·Î ¾Ë·ÁÁØ´Ù. »ç½Ç ÀÌ·± ºÎ°¡ Áö½Ä ¾øÀÌ´Â UMLÀ» È¿°úÀûÀ¸·Î »ç¿ëÇϱ⠾î·Æ´Ù°í »ý°¢ÇÑ´Ù. ƯÈ÷ µÞºÎºÐÀÇ »ç·Ê ¿¬±¸¸¦ ÅëÇØ ±¸Ã¼ÀûÀÎ »ç·Ê¿¡¼­ UMLÀÌ ¾î¶»°Ô »ç¿ëµÇ´ÂÁö, ¼³°è´Â ¾î¶»°Ô ÇÏ´ÂÁö µîÀ» µû¶ó°¡´Ù º¸¸é ¾î´À»õ ÁÖº¯ÀÇ ½Ã±â¿Í ÁúÅõ¸¦ ÇÑ ¸ö¿¡ ¹Þ´Â ÀÚ½ÅÀ» ¹ß°ßÇÏ°Ô µÉ °ÍÀÌ´Ù.

- ±èâÁØ(¾ÖÀÚÀÏ ÄÁ¼³Æà ´ëÇ¥)
 

¼­Æòº¸±â

´ÜÇົ BEST µµ¼­

³ªÀǼîÇÎ

  • Ä«µå³»¿ªÁ¶È¸
  • ¸¸Á·µµº¸±â
  • ÆǸÅÀÚº¸±â

ÃÖ±Ùº»»óÇ°

Àå¹Ù±¸´Ï

TOP