Ò»¡¢Ð×÷ͼ¼òÊö
Ð×÷ͼÊÇÒ»ÖÖ½»»¥Í¼£¨interaction diagram£©£¬Ç¿µ÷µÄÊÇ·¢ËͺͽÓÊÕÏûÏ¢µÄ¶Ô¶ÔÏóÖ®¼äµÄ×éÖ¯½á¹¹¡£Ò»¸öÐ×÷ͼÏÔʾÁËһϵÁеĶÔÏóºÍÔÚÕâЩ¶ÔÏóÖ®¼äµÄÁªÏµÒÔ¼°¶ÔÏó¼ä·¢ËͺͽÓÊÕµÄÏûÏ¢¡£¶ÔÏóͨ³£ÊÇÃüÃû»òÄäÃûµÄÀàµÄʵÀý£¬Ò²¿ÉÒÔ´ú±íÆäËûÊÂÎïµÄʵÀý£¬ÀýÈçÐ×÷¡¢×é¼þºÍ½Úµã¡£Ê¹ÓÃÐ×÷ͼÀ´ËµÃ÷ϵͳµÄ¶¯Ì¬Çé¿ö¡£
Ð×÷ͼ(Collaboration Diagram)ÏÔʾij×é¶ÔÏóÈçºÎΪÁËÓÉÒ»¸öÓÃÀýÃèÊöµÄÒ»¸öϵͳʼþ¶øÓëÁíÒ»×é¶ÔÏó½øÐÐÐ×÷µÄ½»»¥Í¼¡£Ê¹ÓÃÐ×÷ͼ¿ÉÒÔÏÔʾ¶ÔÏó½Çɫ֮¼äµÄ¹ØÏµ£¬ÈçΪʵÏÖij¸ö²Ù×÷»ò´ïµ½Ä³ÖÖ½á¹û¶øÔÚ¶ÔÏó¼ä½»»»µÄÒ»×éÏûÏ¢¡£Èç¹ûÐèҪǿµ÷ʱ¼äºÍÐòÁУ¬×îºÃÑ¡ÔñÐòÁÐͼ£»Èç¹ûÐèҪǿµ÷ÉÏÏÂÎÄÏà¹Ø£¬×îºÃÑ¡ÔñÐ×÷ͼ¡£
Ð×÷ͼÓÃÓÚÏÔʾ¶ÔÏóÖ®¼äÈçºÎ½øÐн»»¥ÒÔÖ´ÐÐÌØ¶¨ÓÃÀý»òÓÃÀýÖÐÌØ¶¨²¿·ÖµÄÐÐΪ¡£Éè¼ÆÔ±Ê¹ÓÃÐ×÷ͼºÍÐòÁÐͼȷ¶¨²¢²ûÃ÷¶ÔÏóµÄ½ÇÉ«£¬ÕâЩ¶ÔÏóÖ´ÐÐÓÃÀýµÄÌØ¶¨Ê¼þÁ÷¡£ËüÃÇÊÇÖ÷ÒªµÄÐÅÏ¢À´Ô´£¬ÓÃÓÚÈ·¶¨ÀàµÄÖ°ÔðºÍ½Ó¿Ú¡£
ÓëÐòÁÐͼ²»Í¬£¬Ð×÷ͼÏÔʾÁ˶ÔÏóÖ®¼äµÄ¹ØÏµ¡£ÐòÁÐͼºÍÐ×÷ͼ±íÊöµÄÊÇÏàËÆµÄÐÅÏ¢£¬µ«±íÊöµÄ·½Ê½È´²»Í¬¡£Ð×÷ͼÏÔʾ¶ÔÏóÖ®¼äµÄ¹ØÏµ£¬Ëü¸üÓÐÀûÓÚÀí½â¶Ô¸ø¶¨¶ÔÏóµÄËùÓÐÓ°Ï죬Ҳ¸üÊʺϹý³ÌÉè¼Æ¡£
Ð×÷ͼµÄ¸ñʽ¾ö¶¨ÁËËüÃǸüÊʺÏÔÚ·ÖÎö»î¶¯ÖÐʹÓã¨Çë²Î¼û»î¶¯£ºÓÃÀý·ÖÎö£©¡£ËüÃÇÌØ±ðÊʺÏÓÃÀ´ÃèÊöÉÙÁ¿¶ÔÏóÖ®¼äµÄ¼òµ¥½»»¥¡£Ëæ×ŶÔÏóºÍÏûÏ¢ÊýÁ¿µÄÔö¶à£¬Àí½â
Ð×÷ͼ½«Ô½À´Ô½À§ÄÑ¡£´ËÍ⣬Ð×÷ͼºÜÄÑÏÔʾ²¹³äµÄ˵Ã÷ÐÔÐÅÏ¢£¬ÀýÈçʱ¼ä¡¢Åж¨µã»òÆäËû·Ç½á¹¹»¯µÄÐÅÏ¢£¬¶øÔÚÐòÁÐͼÖÐÕâЩÐÅÏ¢¿ÉÒÔ·½±ãµØÌí¼Óµ½×¢ÊÍÖС£
Ð×÷ͼǿµ÷²ÎÓëÒ»¸ö½»»¥¶ÔÏóµÄ×éÖ¯£¬ËüÓÉÒÔÏ»ù±¾ÔªËØ×é³É£º»î¶¯Õߣ¨Actor£©¡¢¶ÔÏó£¨Object£©¡¢Á¬½Ó£¨Link£©ºÍÏûÏ¢£¨Message£©¡£ÔÚUMLÖУ¬Ê¹ÓÃʵÏß±ê¼ÇÁ½¸ö¶ÔÏóÖ®¼äµÄÁ¬½Ó£¬
Ð×÷ͼÖеÄÏûÏ¢£¬Óɱê¼ÇÔÚÁ¬½ÓÉÏ·½µÄ´øÓбê¼ÇµÄ¼ýÍ·±íʾ¡£Ð×÷ͼ°üº¬ÀàÔª½ÇÉ«ºÍ¹ØÁª½ÇÉ«£¬¶ø²»½ö½öÊÇÀàÔªºÍ¹ØÁª¡£ÀàÔª½ÇÉ«ºÍ¹ØÁª½ÇÉ«ÃèÊöÁ˶ÔÏóµÄÅäÖú͵±
Ò»¸öÐ×÷µÄʵÀýÖ´ÐÐʱ¿ÉÄܳöÏÖµÄÁ¬½Ó¡£µ±Ð×÷±»ÊµÀý»¯Ê±£¬¶ÔÏóÊÜÏÞÓÚÀàÔª½ÇÉ«£¬Á¬½ÓÊÜÏÞÓÚ¹ØÁª½ÇÉ«¡£¹ØÁª½ÇɫҲ¿ÉÒÔ±»¸÷ÖÖ²»Í¬µÄÁÙʱÁ¬½ÓËùµ£µ±£¬ÀýÈç¹ý³Ì
²ÎÁ¿»ò¾Ö²¿¹ý³Ì±äÁ¿¡£Á¬½Ó·ûºÅ¿ÉÒÔʹÓù¹ÔìÐͱíʾÁÙʱÁ¬½Ó£¨¡¶parameter¡·»ò¡¶local¡·£©»òµ÷ÓÃͬһ¸ö¶ÔÏ󣨡¶self¡·£©¡£ËäÈ»Õû¸öϵͳÖÐ
¿ÉÄÜÓÐÆäËûµÄ¶ÔÏ󣬵«Ö»ÓÐÉæ¼°µ½Ð×÷µÄ¶ÔÏó²Å»á±»±íʾ³öÀ´¡£»»¶øÑÔÖ®£¬Ð×÷ͼֻ¶ÔÏ໥֮¼ä¾ßÓн»»¥×÷ÓõĶÔÏóºÍ¶ÔÏó¼äµÄ¹ØÁª½¨Ä££¬¶øºöÂÔÁËÆäËû¶ÔÏóºÍ¹ØÁª¡£
¶þ¡¢Ð×÷ͼµÄÄÚÈÝ
Ð×÷ͼÖпÉÒÔÓжÔÏóºÍÖ÷½ÇʵÀý£¬ÒÔ¼°ÃèÊöËüÃÇÖ®¼ä¹ØÏµºÍ½»»¥µÄÁ¬½ÓºÍÏûÏ¢¡£Í¨¹ý˵Ã÷¶ÔÏó¼äÈçºÎͨ¹ý»¥Ïà·¢ËÍÏûÏ¢À´ÊµÏÖͨÐÅ£¬Ð×÷ͼÃèÊöÁ˲ÎÓë¶ÔÏóÖз¢ÉúµÄÇé¿ö¡£Äú¿ÉÒÔΪÓÃÀýʼþÁ÷µÄÿһ¸ö±ä»¯ÐÎÊ½ÖÆ×÷Ò»¸öÐ×÷ͼ¡£Èçͼ2-1

ͼ 2-1
ÃèÊö»ØÊÕ»úϵͳµÄ½ÓÊÕ´¢´æÏîÓÃÀýÖв¿·ÖʼþÁ÷µÄÐ×÷ͼ¡£
ÔÚÐ×÷ͼÖУ¬Äú¿ÉÒÔ°´ÕÕÒÔÏ·½Ê½Ê¹ÓöÔÏó£º
1£®¿ÉÒÔ²»Ö¸¶¨¶ÔÏóµÄÀࡣͨ³£ÏÈÖÆ×÷Ö»´øÓжÔÏóµÄÐ×÷ͼ£¬¶øºóÔÙÖ¸¶¨ËüÃǵÄÀà¡£
2£®¿ÉÒÔ¸ø¶ÔÏóÃüÃû£¬µ«Èç¹ûÄú񻂿·Öͬһ¸öÀàµÄ²»Í¬¶ÔÏó£¬ÔòÓ¦¸ø¶ÔÏóÃüÃû¡£
3£®Èç¹û¶ÔÏóµÄÀàÖ÷¶¯²ÎÓëÁËÐ×÷£¬Ôò¿ÉÒÔ½«Àà±¾ÉíÔÚÐ×÷ͼÖбíÏÖ³öÀ´¡£
Èý¡¢Ð×÷ͼʹÓÃ
Ð×÷ͼÓÃÓÚÏÔʾ×é¼þ¼°Æä½»»¥¹ØÏµµÄ¿Õ¼ä×éÖ¯½á¹¹£¬Ëü²¢²»²àÖØÓÚ½»»¥µÄ˳Ðò¡£Ð×÷ͼÏÔʾÁ˽»»¥Öи÷¸ö¶ÔÏóÖ®¼äµÄ×éÖ¯½»»¥¹ØÏµÒÔ¼°¶ÔÏó±Ë´ËÖ®¼äµÄÁ´½Ó¡£ÓëÐòÁÐͼ²»Í¬£¬Ð×÷ͼÏÔʾµÄÊǶÔÏóÖ®¼äµÄ¹ØÏµ¡£ÁíÒ»·½Ã棬Ð×÷ͼûÓн«Ê±¼ä×÷Ϊһ¸öµ¥¶ÀµÄά¶È£¬Òò´ËÐòÁкž;ö¶¨ÁËÏûÏ¢¼°²¢·¢Ï̵߳Ä˳Ðò¡£Ð×÷ͼÊÇÒ»¸ö½éÓÚ·ûºÅͼºÍÐòÁÐͼ֮¼äµÄ½»²æ²úÎËüÓôøÓбàºÅµÄ¼ýÍ·À´ÃèÊöÌØ¶¨µÄ·½°¸£¬ÒÔÏÔʾÔÚÕû¸ö·½°¸¹ý³ÌÖÐÏûÏ¢µÄÒÆ¶¯Çé¿ö¡£
Ð×÷ͼ¾ßÓÐÒÔÏÂÓÃ;£º
1£©¡¢Í¨¹ýÃè»æ¶ÔÏóÖ®¼äÏûÏ¢µÄÒÆ¶¯Çé¿öÀ´·´Ó³¾ßÌåµÄ·½°¸¡£
2£©¡¢ÏÔʾ¶ÔÏó¼°Æä½»»¥¹ØÏµµÄ¿Õ¼ä×éÖ¯½á¹¹£¬¶ø·Ç½»»¥µÄ˳Ðò¡£
3.1¡¢´´½¨Ð×÷ͼ
3.1.1Éú³ÉÐ×÷ͼ
1)¡¢Æô¶¯ IDE£¨Èç¹ûÐèÒª£©¡£
2)¡¢ÔÚ¡°ÏîÄ¿¡±´°¿ÚÖУ¬Õ¹¿ª "UMLTutorialProject"
>¡°Ä£ÐÍ¡±½Úµã¡£
3)¡¢Ñ¡ÔñÒÔÏÂÀà½Úµã£º
ATM
Branch
Consortium
×¢Ò⣺ͨ¹ý°´×¡ Ctrl ¼ü²¢µ¥»÷ÿ¸öÀà½Úµã¿ÉÒÔÑ¡Ôñ¶à¸öÀà¡£
4)¡¢ÓÒ¼üµ¥»÷×îºóÑ¡¶¨µÄÀ࣬Ȼºó´Óµ¯³öʽ²Ëµ¥ÖÐÑ¡Ôñ¡°Í¨¹ýÑ¡¶¨µÄÔªËØ´´½¨Í¼¡±¡£½«´ò¿ªÐ½¨Ïòµ¼£¬ÆäÖÐÏÔʾ¡°´´½¨ÐÂͼ¡±Ò³¡£
5)¡¢ÔÚ¡°Í¼ÀàÐÍ¡±ÁбíÖУ¬Ñ¡Ôñ¡°Ð×÷ͼ¡±¡£
6)¡¢ÔÚ¡°Í¼Ãû³Æ¡±×Ö¶ÎÖУ¬¼üÈë CollaborationDiagram¡£
7)¡¢±£Áô¡°Ãû³Æ¿Õ¼ä¡±×Ö¶ÎÖеÄȱʡÉèÖã¬È»ºóµ¥»÷¡°Íê³É¡±¡£
IDE ½«Ö´ÐÐÒÔϲÙ×÷£º
ÔÚ¡°ÏîÄ¿¡±´°¿ÚµÄ¡°Ä£ÐÍ¡±½ÚµãÏ´´½¨ CollaborationDiagram
½Úµã
ÔÚͼ±à¼Æ÷ÖÐÏÔʾÐÂͼ£¨¸ÃͼÓÉÈý¸ö±íʾΪÉúÃüÏßÔªËØµÄÀ๹³É£©
´ò¿ª½¨Ä£×é¼þÃæ°å
3.1.2¡¢ÍêÉÆÉú³ÉµÄͼ
1£©¡¢µ¥»÷²¢Í϶¯ÔªËØÒÔÖØÐÂÅÅÁÐͼ£¬Ê¹ÆäÓëÏÂÃæµÄͼ3-1ÀàËÆ¡£

ͼ 3-1
2£©¡¢ÔÚ¡°ÏîÄ¿¡±´°¿ÚÖУ¬Ñ¡Ôñ±ê¼ÇΪ User µÄÀà½Úµã¡£
3£©¡¢½«Ñ¡¶¨µÄÀàÍϷŵ½Í¼±à¼Æ÷ÖУ¬Ê¹ÆäλÓÚ ATM ÉúÃüÏßÔªËØµÄÉÏ·½£¬
ÈçÏÂͼ3-2Ëùʾ¡£

ͼ 3-2
3.2¡¢Ìí¼ÓÁ¬½ÓÆ÷Á´½Ó
Ð×÷ͼÖеÄÿ¸öÔªËØ¾ù¿Éͨ¹ýÁ¬½ÓÆ÷Á´½ÓÓëÆäËûÔªËØ½¨Á¢Á¬½Ó¡£Äú¿ÉÒÔ±êʶÕâЩÁ´½Ó£¬²¢ÔÚÆäÖÐÌí¼ÓÏûÏ¢Á÷¡£
1£©¡¢´Ó½¨Ä£×é¼þÃæ°åµÄ¡°»ù±¾¡±Àà±ðÖУ¬Ñ¡Ôñ "Connector"
¡£
2£©¡¢µ¥»÷±ê¼ÇΪ User µÄÉúÃüÏßÔªËØ£¬È»ºóµ¥»÷ ATM¡£
½«ÔÚÁ½¸öÔªËØÖ®¼ä»æÖÆÒ»ÌõÁ¬½ÓÆ÷Á´½Ó¡£
3£©¡¢Ê¹ÓÃÏàͬµÄ²½Öè»æÖÆÒÔÏÂÁ´½Ó£º
´Ó ATM ÖÁ Consortium µÄÁ´½Ó
´Ó Consortium ÖÁ Branch µÄÁ´½Ó
´Ó ATM ÖÁ Branch µÄÁ´½Ó
×¢Ò⣺ÔÚ´´½¨´Ó ATM ÖÁ Branch µÄÁ´½Óʱ£¬ÇëÓÉ ATM ÉúÃüÏßÏòÓÒˮƽÀ³öÁ´½ÓÏߣ¬²¢ÔÚµ½´ï
Branch ÉúÃüÏßÕýÉÏ·½Ê±µ¥»÷Ò»ÏÂÊó±ê¡£ÕâÑù±ã»áÔÚÁ´½ÓÏßÉÏ·ÅÖÃÒ»¸ö¶¥µã£¬È»ºóÔÙ´¹Ö±ÏòÏ»æÖÆÁ´½ÓÒÔµ½´ï
Branch ÉúÃüÏß¡£
´Ëʱ£¬Ð×÷ͼӦµ±ÓëÏÂÃæµÄͼ3-3ÀàËÆ¡£

ͼ 3-3
4£©¡¢ÔÚͼ±à¼Æ÷ÖеÄÈÎÒâλÖõ¥»÷Êó±êÓÒ¼üÒÔÈ¡ÏûÑ¡Ôñ "Connector"
ͼ±ê¡£
3.3¡¢ÏÔʾÏûÏ¢±àºÅ
Ð×÷ͼͨ¹ýʹÓôøÓбàºÅµÄÏûÏ¢À´±íÊ¾ÌØ¶¨µÄ·½°¸¡£È±Ê¡Çé¿öÏ£¬uml ½¨Ä£ÉèÖý«Òþ²ØÕâЩ±àºÅ¡£ÇëʹÓÃÒÔϲ½ÖèÀ´ÏÔʾÏûÏ¢ºÅ£º
1£©¡¢ÔÚ CollaborationDiagram ͼ±à¼Æ÷µÄ±³¾°Öе¥»÷Êó±êÓÒ¼ü¡£
2£©¡¢´Óµ¯³öʽ²Ëµ¥ÖÐÑ¡Ôñ¡°ÏÔʾÏûÏ¢ºÅ¡±¡£ ÕâÑùµ±Äú²åÈë²Ù×÷Á÷£¨ÔÚÏÂÒ»²¿·ÖÖнéÉÜ£©Ê±£¬±ã»áÏÔʾÏûÏ¢ºÅ¡£
3.4¡¢ÏÔʾ²Ù×÷Á÷
²Ù×÷Á÷ÔÚͼÖÐÏÔʾΪÓëÁ´½ÓƽÐеĴø±ê¼Ç¼ýÍ·¡£´ËÁ´½ÓÓÃÓÚÏòÄ¿±êÔªËØ´«ÊäÏûÏ¢»òʵÏÖÕâÖÖ´«Êä¡£
1£©¡¢ÔÚͼ±à¼Æ÷ÖУ¬Ñ¡Ôñ User ºÍ ATM Ö®¼äµÄÁ¬½ÓÆ÷Á´½Ó¡£
2£©¡¢ÓÒ¼üµ¥»÷¾à ATM ÉúÃüÏß×î½üµÄÁ¬½ÓÆ÷Á´½Ó²¿·Ö¡£
3£©¡¢´Óµ¯³öʽ²Ëµ¥ÖÐÑ¡Ôñ¡°²Ù×÷¡±> "public float
getCashOnHand"¡£
½«ÔÚͼÖзÅÖÃÒ»¸ö±àºÅΪ 1 µÄ²Ù×÷Á÷¡£
×¢Ò⣺µ¥»÷¡°ÊÊÓ¦´°¿Ú´óС¡± °´Å¥
ÒÔÔÚͼ±à¼Æ÷Öв鿴Õû¸öͼ¡£
4£©¡¢Ñ¡Ôñ ATM ºÍ Consortium Ö®¼äµÄÁ¬½ÓÆ÷Á´½Ó£¬È»ºóÓÒ¼üµ¥»÷¿¿½ü
Consortium ÔªËØµÄÁ´½Ó²¿·Ö¡£
5£©¡¢´Óµ¯³öʽ²Ëµ¥ÖÐÑ¡Ôñ¡°²Ù×÷¡±> "public void
validateAccountInfo"¡£
IDE »áÔÚ´ËÁ´½ÓÉÏ·ÅÖÃÑ¡¶¨µÄ²Ù×÷£¬²¢½«Æä±àºÅΪ 1.1¡£
×¢Ò⣺Äú¿ÉÒÔ¸ù¾ÝÐèҪѡÔñ²¢Òƶ¯²Ù×÷Á÷¡£
3.5¡¢ÏòÀàÖÐÌí¼Ó²Ù×÷
Ôڴ˹ý³ÌÖУ¬Äú½«ÏòÁ¬½ÓÆ÷Á´½ÓÌí¼ÓÒ»¸öеIJÙ×÷¡£¸Ã²Ù×÷»¹»á±»Ìí¼Óµ½ ClassDiagram
ͼµÄ Branch ÀàÒÔ¼° java Ô´´úÂëÖС£
1£©¡¢ÓÒ¼üµ¥»÷ Consortium ºÍ Branch Ö®¼ä¿¿½ü Branch
ÉúÃüÏßÔªËØµÄÁ¬½ÓÆ÷Á´½Ó¡£
2£©¡¢´Óµ¯³öʽ²Ëµ¥ÖÐÑ¡Ôñ¡°²Ù×÷¡±>¡°Ìí¼Ó²Ù×÷¡±¡£
ͼÖн«³öÏÖÒ»¸ö±êÇ©£¬²¢Í»³öÏÔʾ Unnamed Ò»´Ê¡£
3£©¡¢¼üÈë verifyCardWithBank¡£
4£©¡¢Ê¹ÓÃÏòÓÒ·½Ïò¼ü½«¹â±êÒÆÖÁ²Ù×÷²ÎÊý×ֶΡ£
5£©¡¢¼üÈë int stringCardStrip ×÷Ϊ²ÎÊý£¬È»ºó°´ Enter
¼ü¡£
¸ÃÁ´½Ó½«±»±ê¼ÇΪ 1.1.1: public void verifyCardWithBank(
int stringCardStrip )£¬²¢ÇÒÌí¼ÓµÄ²Ù×÷»áÏÔʾÔÚ ClassDiagram ͼµÄ Branch
ÀàÖС£
6£©¡¢ÔÚ ATM ºÍ Branch Ö®¼äµÄÁ¬½ÓÆ÷Á´½ÓÉÏ£¬ÓÒ¼üµ¥»÷¿¿½ü Branch
ÉúÃüÏßµÄÁ´½Ó²¿·Ö¡£
7£©¡¢´Óµ¯³öʽ²Ëµ¥ÖÐÑ¡Ôñ¡°²Ù×÷¡±> "public char
getConnected"¡£
¸ÃÁ´½Ó½«±»±ê¼ÇΪ 1.2: public char getConnected()¡£
Íê³ÉµÄÐ×÷ͼӦµ±ÓëÏÂÃæµÄͼ3-4ÀàËÆ¡£

ͼ 3-4
3.6¡¢±£´æÍ¼
Íê³ÉÐ×÷ͼºó£¬Äú¿ÉÒÔ±£´æ¸Ãͼ¡£
1£©¡¢ÔÚͼ±à¼Æ÷ÖУ¬ÓÒ¼üµ¥»÷ "CollaborationDiagram"
±êÇ©¡£
2£©¡¢´Óµ¯³öʽ²Ëµ¥ÖÐÑ¡Ôñ¡°±£´æÎĵµ¡±¡£
½«¹Ø±Õ²Ëµ¥²¢±£´æÍ¼¡£
×¢Ò⣺Í˳ö IDE ʱ£¬ÏµÍ³»áÌáʾÄúÊÇ·ñÒª±£´æÏîÄ¿¡£
|