#keywords uml #title UML (Unified Modeling Language) == UMLÀº ¹¹ÇÏ´Â°Í ? == * ÀÏÁ¾ÀÇ ¼³°è¿¡ ÇÊ¿äÇÑ ¿ä¼Ò¸¦ ÅëÇÕÇÏ¿© '''ÇϳªÀÇ ¾ð¾î¼ö´Ü'''À¸·Î ´Ù¸¥ »ç¶÷°ú ³ª ÀڽŰ£ÀÇ ¼³°è±¸Á¶¸¦ »óÈ£ ÀÌÇØÇÏ°í °³¹ß¿¡ º¸´Ù Ä¡¹ÐÇÑ ¿Ï¼ºµµ¸¦ À̲ø¾î ³¾¼ö ÀÖµµ·Ï ÇÏ´Â '''¼³°è¾ð¾î'''ÀÔ´Ï´Ù. * UML(Unified Modeling Language)À̶ó´Â ¾ð¾îÀÇ ¸ñÀûÀº ´Ü¼øÇÑ ¼ÒÇÁ¿þ¾îÀÇ °³¹ß¿¡ °ü·ÃµÈ ¼³°è»Ó¸¸¾Æ´Ï¶ó ºñÁö´Ï½º ÇÁ·Î¼¼½º, ¾÷¹«Ã³¸®, ³×Æ®¿öÅ© ¼³°èµîÀÇ ´Ù¾çÇÑ ºÐ¾ß¸¦ ³ªÅ¸³¾¼ö ÀÖµµ·Ï ¸¸µé¾îÁ³½À´Ï´Ù. À̸§¿¡¼­ ¾Ë¼ö ÀÖ´Ù ½ÍÀÌ Unified¶ó´Â ´Ü¾î°¡ ¹ü¿ëÀûÀÎ ¸ñÀûÀ» ³ªÅ¸³½´Ù°í ÇÒ¼ö ÀÖ½À´Ï´Ù. == Model View Diagram(?) == : UML°ú °°Àº ¸ðµ¨ ±â¹ÝÀÇ ±¸¼º¿¡ ´ëÇÑ °£´ÜÇÑ ¼³¸íÀÔ´Ï´Ù. ÇÁ·Î±×·¡¹Ö ±â¹ýÀ¸·Î º»´Ù¸é MVC ¸ðµ¨°ú ºñ½ÁÇÏÁÒ. * '''Model Element''' : ¼ÒÇÁÆ®¿þ¾îÀÇ Á¤º¸¸¦ ´ã°í ÀÖ´Â ¿ä¼Ò¸¦ ¸»ÇÕ´Ï´Ù. * '''View Element''' : Model Element¸¦ ½Ã°¢ÀûÀ¸·Î Ç¥ÇöÇÏ´Â ¿ä¼ÒÀÔ´Ï´Ù. 1°³ÀÇ ¿ä¼Ò¸¦ »ç»óÇÏ¿© ¿©·¯°³ÀÇ View ¿ä¼Ò°¡ ¸¸µé¾î Áú¼ö ÀÖ°ÙÁÒ. * '''Diagram''' : View ElementÀÇ ÁýÇÕÀ¸·Î »ç¿ëÀÚÀÇ »ý°¢, ¼³°è¾ÈÀ» Ç¥ÇöÇÑ°ÍÀ» ÀǹÌÇÕ´Ï´Ù. http://wiki.kldp.org/pds/UML/modelViewDia.gif ÂüÁ¶ : [http://www.plasticsoftware.com/html/plastic_online.htm Plastic ¿Â¶óÀε¥¸ð] == Diagram == === Structural Modeling === * ½Ã½ºÅÛ, ¼ÒÇÁÆ®¿þ¾îÀÇ ±¸Á¶Àû Ãø¸éÀ» ³ªÅ¸³»´Â ´ÙÀ̾î±×·¥µéÀÔ´Ï´Ù. ==== Class diagram ==== * '''Package''' * '''Class''' * '''Interface''' * '''Generalization''' * '''Association''' * '''Dependency''' * '''Realization''' ==== Component diagram ==== * '''Component''' * '''Interface''' * '''Dependency''' * '''Realization''' ==== Deployment diagram ==== * '''Node''' * '''Assocation''' * '''Dependency''' === Behavior Modeling === * ½Ã½ºÅÛ, ¼ÒÇÁÆ®¿þ¾îÀÇ ÇàÀ§Àû Ãø¸éÀ» ³ªÅ¸³»´Â ´ÙÀ̾î±×·¥µéÀÔ´Ï´Ù. ==== Use case diagram ==== * ¿©·¯ °æ¿ìÀÇ ¿¹¸¦ °¡Áö°í »óÈ£ ¿¬°üÀ» Áþ´Â °ÍÀ̶ó ÇÏ°Ú½À´Ï´Ù. ¾î¶²°ÍÀÌ ÇÊ¿äÇÏ°í ¶ÇÇÑ ¾î¶²°ÍÀÌ ¹Ýµå½Ã´Â ¾Æ´ÏÁö¸¸ °æ¿ì¿¡ µû¶ó¼­ ÇÊ¿äÇÑ ÇàÀ§µéÀ» ±â¼úÇÑ´Ù°í º¸½Ã¸é µÉµí ÇÕ´Ï´Ù. * '''Actor''' : ÇàÀ§ÀÚ ÀÚü¸¦ ³ªÅ¸³»´Â °ÍÀ¸·Î ¼öÆòÀ¸·Î ¼ÕÀ» µé°í ´Ù¸®¸¦ ¹ú¸° »óÅÂÀÇ ¾ÆÀÌÄÜ(¸·´ëÀΰ£:Á¹¶ó¸Ç~)À» »ç¿ëÇÏ¿© Use case·ÎÀÇ ½ÃÀÛ°ú ±× Çൿ°á°ú¸¦ ¹Þ´Â À§Ä¡¿¡ ±×¸³´Ï´Ù. http://wiki.kldp.org/pds/UML/uml_actor.png * '''Use case''' : ¾²ÀÓ»õ¸¦ ±â¼úÇÑ´Ù°í ÇÒ¼ö Àִµ¥ ´ë»óü¿¡ ´ëÇÑ ¸í¼¼È­¸¸ Çϸç Çൿ¹æ¹ýÀº ±ÔÁ¤ÇÏÁö ¾Ê´Â°ÍÀ» ¿øÄ¢À¸·Î ÇÕ´Ï´Ù. µ¿±×¶ó¹Ì·Î Ç¥ÇöÇÕ´Ï´Ù. http://wiki.kldp.org/pds/UML/uml_usecase.png * '''System''' : Use caseÀÇ Æ¯Á¤ÇÑ ºÐ¼®À» ÅëÇÏ¿© ÇϳªÀÇ ¹­À½ÀÇ Use case¸¦ SystemÀ¸·Î ºÎ¸£¸ç »ç°¢ÇüÀ¸·Î Ç¥±âÇÏ°í ±× ¾È¿¡ º¸ÅëÀº Use caseÀÇ µ¿±×¶ó¹Ì°¡ ÀÖ½À´Ï´Ù. => Use case diagram¿¡ ³Ö´Â°Í Á» ¹®Á¦°¡ ÀÖÀ»µíÇÕ´Ï´Ù. ºÐ¼® ±â¹ýÀû ¿ä¼Ò°¡ ¾Æ´Ò±î »ý°¢ÀÌ µå´Âµ¥¿ä.. --[idlock] * '''Generalization''' : °°Àº °èÅëÀÇ ÀϹÝÀû ¿ä¼Ò¿Í ±¸Ã¼Àû ¿ä¼ÒÀÇ °ü°è¸¦ Ç¥½ÃÇÕ´Ï´Ù. ÁÖ·Î ÀϹÝÈ­¶ó°í ÇÏÁÒ. http://wiki.kldp.org/pds/UML/Use_Generalization.gif * '''Association''': 2°³ ÀÌ»óÀÇ °´Ã¼ÀÇ °ü°è¼ºÀ» Ç¥½ÃÇÏ°í, °¢ °ü°è´Â ¿¬°ü°ü°è(Assocation), ÁýÇÕ°ü°è(Aggregate), ÇÕ¼º°ü°è(Composite)·Î ³ª´©¿öÁú¼ö ÀÖ½À´Ï´Ù. http://wiki.kldp.org/pds/UML/Use_Assciation.gif * '''Include''' : Use case°¡ ´Ù¸¥ Use case¸¦ Æ÷ÇÔÇÏ´Â °ü°èÀÌ°í, º¸Åë °øÅë Use Case¸¦ ³ªÅ¸³¾¶§ ÁÖ·Î ¾¹´Ï´Ù. http://wiki.kldp.org/pds/UML/Use_Include.gif * '''Extend''' : Use case°¡ ´Ù¸¥ Use case¸¦ È®ÀåÇÏ´Â °ü°èÀÌ°í, ÀÌ°ÅÀ̶û GeneralizationÀ̶û Çò°¥¸®±â°¡ ½¬¿îµ¥, ÀϹÝÈ­¿Í ´Ù¸£´Ù°í »ý°¢µÉÁ¡Àº Ư¼öÇÑ ±â´É È®ÀåÀ¸·Î »ý°¢ÇϽøé ÁÁÀ»µíÇÕ´Ï´Ù. http://wiki.kldp.org/pds/UML/Use_Extend.gif ===== Statechart diagram ===== * ƯÁ¤¿ä¼Ò(Class, Subsystem, Component..,System)°¡ ¾î¶² »óŸ¦ °®°ÔµÇ°í, °¢ ¿ä¼ÒÀÇ »óÅÂÀüÀÌ°¡ »ý±â´ÂÁö¸¦ Ç¥ÇöÇϰԵ˴ϴÙ. Activity Diagram°ú ¸¹Àº View ¿ä¼Ò¸¦ °øÀ¯ÇÏÁö¸¸ È帧º¸´Ù °¢ °´Ã¼ÀÇ »óÅ¿¡ Áß½ÉÀ» µÓ´Ï´Ù. ===== Activity diagram ===== * ¾î¶² »ç°Ç¿¡ ÀÇÇÏ¿© 󸮵Ǵ Ȱµ¿À» ¸í½ÃÇÏ´Â °ÍÀ» ¸»ÇÏ¸ç ºñ±³ÇÏÀÚ¸é ¿ì¸®°¡ ÀϹÝÀûÀ¸·Î ¸»ÇÏ´Â Flow chart¿¡ ¸Å¿ì Èí»çÇÕ´Ï´Ù. ===== Interaction diagrams (Sequence diagram) ===== * ½Ã°£À» Áß½ÉÀ¸·Î ÀÌ·ç¾îÁö´Â ¼øÂ÷ÀûÀÎ ½ÇÇà ¶Ç´Â µ¿½ÃÀûÀÎ ½ÇÇà°ü°è¸¦ ½Ã°£¿¡ µû¸¥ ¼ø¼­·Î ±â¼úÇÑ´Ù°í º¸½Ã¸é µË´Ï´Ù. ===== Interaction diagrams (Collaboration diagram) ===== * »óÈ£ °´Ã¼°£ÀÇ ½ÅÈ£Àü´Þ¿¡ ´ëÇÑ °ÍÀ» ±â¼úÇÑ´Ù°í º¸½Ã¸é µË´Ï´Ù. == UML Tool == === ±¹»ê === * [http://www.plasticsoftware.com/ Plastic] * [http://munjong.pufs.ac.kr/ktg/english/Frame2.htm OODesigner] === ¿Ü»ê === * [http://www-306.ibm.com/software/rational/ IBM RationalRose] * [http://www.borland.com/together/ Borland Together] * [http://www.visual-paradigm.com/product/vpuml/ Visual Paradigm for UML] * [http://www.visual-paradigm.com/product/sde/ec/ SDE for Eclipse] - An UML Plugin for Eclipse === ¿ÀǼҽº === * [http://argouml.org ArgoUML] * [http://www.staruml.org StarUML] * BSD License * [http://freshmeat.net/redir/uml/18151/url_homepage/uml.sourceforge.net Umbrello] - KDE¿ë == °ü·Ã ¸µÅ© == * [http://www.omg.org] * [http://www.uml.org UML homepage] == ±âŸ == * ÀÌ ÆäÀÌÁö°¡ Ȥ½Ã UserModeLinux = UML°ú ÃßÈÄ Çò°¥¸®°Å³ª ÇÒ¼öµµ ÀÖÀ»µí... °ü¸®ÀÚ´ÔÀ̳ª ´Ù¸¥ºÐÀÇ ¸íÄèÇÑ(?) Á¶¾ð ºÎŹµå¸³´Ï´Ù. by [idlock] WikipediaÀÇ °æ¿ì¿¡´Â WikiPedia:UML ÆäÀÌÁö°¡ ÀÖ°í, °Å±â¼­ ¸µÅ©µÈ [User-mode Linux]¿Í [Unified Modeling Language] ÆäÀÌÁöµéÀÌ µû·Î ÀÖ½À´Ï´Ù. UML ÆäÀÌÁö ÇÏ´Ü¿¡´Â "ÀÌ ÆÐÀÌÁö´Â ¾Ö¸ÅÇÑ Á¡À» Ç®±â À§ÇØ ¸¸µé¾îÁø ÆäÀÌÁöÀÔ´Ï´Ù,"¶ó´Â Ç¥½Ã°¡ µÇ¾î ÀÖ½À´Ï´Ù. Ȥ½Ã ±¹³»¿¡ User-mode Linux¿¡ °ü½É ÀÖÀ¸½Å ºÐµéÀÌ °è½Ã¸é ÀÌ ÆäÀÌÁöµµ ºñ½ÁÇÏ°Ô ÆíÁýµÉ ¼ö ÀÖ°ÚÁÒ.. --[°ËÀºÇØ] * ±×³É ¸î°¡Áö »ìºÙ¿©º¾´Ï´Ù. - [minzkn] * ÀÌ ¹®¼­°¡ ´Ù·ç´Â ³»¿ëÀº ¼ÖÁ÷È÷ ±²ÀåÈ÷ Áß¿äÇÑ ºÐ¾ßÀΰÍÀº »ç½ÇÀÔ´Ï´Ù. ³ª¸§´ë·Î Á¤¸®Â÷¿ø¿¡¼­ Á¤¸®Á» Çغ¼·Á°í ÇÕ´Ï´Ù. * Àû´Ùº¸´Ï °¢ Diagramº°·Î °¢ ¿ä¼Ò º°·Î »ó´çÈ÷ ¹æ´ëÇÑ ¾çÀÌ µé¾î°¥µíÇÕ´Ï´Ù. ¾çÀÌ ´Ã¾î³ª¸é ÇϺΠºÐ¸®ÇؾßÇÒµí [idlock] === Files === [[UploadFile]]