£¨Ðò£©£ºÄ£Ê½ÊǸöʲô¶«¶«£¿Î°´óµÄAlexander´óʦ
¡°µÀ¿ÉµÀ£¬·Ç³£µÀ£»Ãû¿ÉÃû£¬·Ç³£Ãû¡£¡±ÕâÊÇÎÒÃÇÀÏ׿×ÚÀÏ×Ó¡¶µÀµÂ¾¡·ÖпªÆªµÄÁ½¾ä»°£¬Òâ˼ÊÇ£º¿ÉÒÔÓÃÓïÑÔÃèÊöµÄµÀ£¬²»ÊÇÕæÕýµÄµÀ£»¿ÉÒÔÓÃÃû×ÖÀ´ÃüÃûµÄµÀ£¬Õâ¸öÃû×ÖÒ²²»ÄÜÐÎÈÝÍ×µ±¡£ÆäÖÕ¼«Ë¼ÏëÊÇ£¬ÓÉÓÚÈ˵ÄÈÏʶµÄ¾ÖÏÞÐÔ£¬ÎÒÃÇËù˵µÄµÀ£¬¶¼Ö»ÊÇÕæÕýµÀµÄÒ»²¿·Ö£¬ÎÞ·¨¿ú¼ûµÀµÄȫò¡£µ±È»ÀÏ×ÓºóÀ´ÓÖÔÚ¡¶Çå¾²¾¡·ÖÐ˵£º¡°Îá²»ÖªÆäÃû£¬Ç¿ÃûÔ»¡®µÀ¡¯¡±¡£Ò²¾ÍÊÇ˵£º¡°Õâ¸ö¡®µÀ¡¯×ÖËäÈ»²»Ð¤£¬µ«ÎÒ£¨ÀÏ×Ó£©»¹ÊÇÏȰÑÕâ¸öÖÕ¼«ÕæÀí½Ð×÷¡®µÀ¡¯ºÃÁË¡£¡±
¡°µÀ¡±£¬¿É×÷µÀÀí¡¢Í¾¾¶¡¢ÕæÀí¡¢·½Ïò¡¢·½·¨µÈ½âÊÍ¡£°´ÕÕÀÏ×ÓµÄ˵·¨£¬ÊÀ½çÍòÎï¶¼ÓÐÆä±¾ÖʺÍÖÕ¼«ÕæÀí£¬µ«ÊÇ¡°Îá²»ÖªÆäÃû£¬Ç¿ÃûÔ»¡®µÀ¡¯¡±¡£ÔÚÏÖ´ú£¬ÈËÃÇÒѾ°Ñ¡°µÀ¡±×÷ΪÊÂÎïµÄ±¾ÖÊÁË¡£
C.ÑÇÀúɽ´ó[1]ÔÚÆäÖø×÷¡¶½¨ÖþµÄÓÀºãÖ®µÀ¡·Ò»ÊéÖÐ˵£º¡°½¨Öþ»ò³ÇÊÐÖ»ÓÐ̤ÉÏÁËÓÀºãÖ®µÀ£¬²Å»áÉú»ú²ª²ª¡£¡±ÑÇÀúɽ´óÔÚÊéÖÐÃèÊöÁË253¸ö½¨Öþģʽ£¬²¢Ê×´ÎÌá³öÁË¡°Ä£Ê½ÓïÑÔ¡±Ò»Ëµ£¬ËãÊÇ¡°Ä£Ê½ÓïÑÔ˵¡±µÄ¿ªÉ½±Ç׿ÁË¡£ËûÔøÁìÏÎ׫дÁË5¾í¹ØÓÚ½¨ÖþÉè¼ÆµÄ´ÔÊé[2]£¬ÆäÖÐǰÁ½±¾¡¶½¨ÖþµÄÓÀºãÖ®µÀ¡·ºÍ¡¶½¨ÖþģʽÓïÑÔ¡·×îΪ֪Ãû¡£
ºÜ¶àµÄ¼¼ÊõÈËÔ±ºÍ·Ç¼¼ÊõÈËÔ±¶¼Ìý¹ýģʽ£¬ÀýÈç¹ÜÀíģʽ¡¢Ë¼Î¬Ä£Ê½¡¢ÉÌҵģʽ¡¢½¨Öþģʽ¡¢Éè¼ÆÄ£Ê½µÈµÈ£¬¶ÔËüÓÐ×ÅÎÞÏÞµÄÃÔÁµ¡£ºÜ¶àÐÐÒµÓëÁìÓòÀïÒ²¶¼ÓÐģʽһ˵¡£ÔÚÈí¼þÁìÓò£¬´óÃû¶¦¶¦µÄÃæÏò¶ÔÏóµÄ23ÖÖÉè¼ÆÄ£Ê½¸üÊÇÎÞÈ˲»Öª£¬ÎÞÈ˲»Ïþ¡£ÄÇô£¬µ½µ×ʲôÊÇÄ£Ê½ÄØ£¿
ģʽ£¨pattern£©Êǽâ¾öijһÀàÎÊÌâµÄ·½·¨ÂÛ¡£°Ñ½â¾öijÀàÎÊÌâµÄ·½·¨×ܽá¹éÄɵ½ÀíÂ۸߶ȣ¬¾ÍÊÇģʽ¡£ËüÊÇÒ»ÖÖÖ¸µ¼£¬ÊÇÒ»ÖÖ½â¾öijÀàÎÊÌâµÄ×î¼Ñʵ¼ù¡£½èÖúÓÚģʽ£¬ÎÒÃÇ¿ÉÒÔÀûÓÃǰÈ˵ľÑéºÍÖǻۣ¬×ö³öÓÅÁ¼µÄÉè¼Æ·½°¸£¬´ïµ½Ê°빦±¶µÄЧ¹û¡£Ä£Ê½ÓïÑÔÔòÊÇģʽ¶ÔÓ¦ÓÚÄÇЩʹ½¨ÖþÃÀÃîµÄÉî¿Ì¹Û²ìµÄģʽ¼¯ºÏ£¬ÊǶÔÈçºÎ½¨ÔìµÄÈÏʶµÄ×ܺ͡£½¨ÖþµÄÓÀºãÖ®µÀÕýÔÚÓÚ½¨Öþģʽ£¬ÔÚÓÚÎÒÃǶԽ¨ÖþµÄÈÏÖª´ïµ½Ò»Ö£¬¼´ÓµÓй²Í¬µÄģʽÓïÑÔ¡£
Ò»µãÌâÍâ»°£º
°´ÕÕ¡¶½¨ÖþµÄÓÀºãÖ®µÀ¡·µÄ˵·¨£¬ÔڹŴú£¬Å©Ãñ¶¼ÊÇ×Ô¼ºÔì·¿×Ó£¬ËûÃÇ×Ô¼º¶¼ÓÐģʽµÄÖ±¾õ£»ÔÚ¹¤Òµ»¯Ê±´ú£¬ÈËÃÇÒÔΪ×Ô¼º²»ÄÜÉè¼Æ£¬±ØÐëÒп¿Éè¼ÆÊ¦£¬¶øÉè¼ÆÊ¦Ò²µ¢ÃÔÓÚÁ÷ÐеÄģʽ¶øÉè¼Æ³öûÓлîÁ¦µÄ¶«Î÷¡£ËùÒÔÎÒÃÇȱÉÙµÄÊÇģʽ֮µÀ£¬»òÕß˵²»ÖªµÀÔõÑù¼ø±ðʲôÊÇÓС°»îÁ¦¡±µÄģʽ¡£Èç½ñµÄÈí¼þÁìÓòºÎ³¢²»ÊÇÈç´Ë£¿ÎÒÃǾͼû¹ýºÜ¶àÅ£±Æºåºå¡¢ËùνµÄ¼Ü¹¹Ê¦ºÍÉè¼ÆÊ¦£¬ËûÃǽ²ÆðģʽÀ´Ò»Ì×Ò»Ì׵쬵«ÊÇÉè¼Æ³öµÄÈí¼þ¼Ü¹¹ÆæÀÃÎޱȣ¬ÓеÄÉõÖÁ²»»á½«¼Ü¹¹×ª»»Îª¿ò¼Ü£¬ÊµÔÚÊDZȹŴúµÄÅ©Ãñ²îÔ¶ÁË¡£ÎÒÃÇÈÏΪ£¬×öÈí¼þµÄͬÈÊÃÇ£¬Èç¹ûÄãÏëÕæÕýµØ³ÉΪһ¸öÓÅÐãµÄ¼Ü¹¹Ê¦»òÉè¼ÆÊ¦£¬¡¶½¨ÖþµÄÓÀºãÖ®µÀ¡·Õâ±¾ÊéÊDZضÁµÄ¡£Ëü¸æËßÁËÄãʲôÊǵÀ£¬Ä£Ê½Ö®µÀ¡£Õâ¸öµÀ²ÅÊÇÁé»ê£¬²ÅÊǺËÐÄ¡£Õâ¸öµÀÊÇʹ֮¡°ÓлîÁ¦¡±£¬¶ø²»ÊÇÉú°áÓ²Ìס£Èç¹ûÓÐʱ¼äÔÙ¶Á¶ÁµÚ¶þ±¾¡¶½¨ÖþģʽÓïÑÔ¡·¡£×îºó»¹ÓиöСÌáÐÑ£¬ÓÅÐãµÄ¼Ü¹¹Ê¦¡¢Éè¼ÆÊ¦²»ÊǶÁÁ˼¸±¾´óʦµÄÖø×÷¾ÍÄܳɾ͵ģ¬ËûÃÇÒ²ÊÇÔÚ
¡°ÀíÂÛ¡ªÊµ¼ù¡ª×ܽᡪÔÙÀíÂÛ¡ªÔÙʵ¼ù¡ªÔÙ×ܽᡱÕâÑùµÄ³¤Ê±¼äÑ»·ÖÐÄ¥Á·³öÀ´µÄ£¬¶øÇÒÎÒÃÇÈÏΪÕâ¸öʱ¼äÖÁÉÙÒª7-8ÄêÒÔÉÏ¡£
ÔÚ¡¶½¨ÖþģʽÓïÑÔ¡·Ò»ÊéÖУ¬C. ÑÇÀúɽ´ó½«Ä£Ê½·ÖΪÈý¸ö²¿·Ö£º
Ê×ÏÈÊÇ´ËÀàÎÊÌâËùÔÚµÄÉÏÏÂÎÄ£¨Context£©£¬¼´µ±Ç°Ä£Ê½ËùÃæ¶ÔÎÊÌâµÄÖÜΧ»·¾³ºÍ×´¿ö£¬Ò²¾ÍÊÇ˵£¬Ä£Ê½ÔÚʲô״¿öÏ·¢Éú×÷Óã»
Æä´ÎÊǶ¯»ú£¨Motivation£©£¬¼´´ËģʽµÄÄ¿µÄ»òÔ¤ÆÚµÄÄ¿±êÊÇʲô£»
×îºóÊǽâ¾ö·½°¸£¨Solution£©£¬¼´Îª´ïµ½Ô¤ÆÚÄ¿±ê»ò½â¾ö´ËÀàÎÊÌâËù²ÉÓýâ¾ö·½°¸µÄºËÐÄ¡£
ͨ¹ýÉÏÊöÃèÊö£¬ÎÒÃÇ¿ÉÒԵóö½áÂÛ£¬Ä£Ê½ÊµÖÊÉϾÍÊÇ´Ó²»¶ÏÖØ¸´³öÏÖµÄʼþÖз¢ÏֺͳéÏó³öµÄ¹æÂÉ£¬Êǽâ¾öÎÊÌâËùÐγɾÑéµÄ¸ß¶È¹éÄÉ×ܽᡣֻҪÊÇÒ»ÔÙÖØ¸´³öÏÖµÄÊÂÎ¾Í¿ÉÄÜ´æÔÚijÖÖģʽ¡£¶øµ±Ò»¸öÁìÓòÖð½¥³ÉÊìʱ£¬×ÔÈ»¶øÈ»¾Í»á³öÏÖÕâ¸öÁìÓòµÄģʽ¡£½èÖúÑÇÀúɽ´óµÄģʽÀíÂÛ£¬GOFÔÚÈí¼þÁìÓòÌá³öÁË23ÖÖÉè¼ÆÄ£Ê½¡£Í¬Ñù£¬ÔÚÁ÷³ÌÁìÓòÒ²×ÔÈ»¶øÈ»µØ³öÏÖÁË¡°¹¤×÷Á÷ģʽ¡±¡£
±¾ÊéµÄÃû×Ö¡¶Á÷³ÌµÄÓÀºãÖ®µÀ¡·Ì×ÓÃÁËÑÇÀúɽ´óµÄ¾µäÃûÑÔ£º¡°Á÷³ÌÖ»ÓÐ̤ÉÏÁËÓÀºãÖ®µÀ£¬²Å»áÉú»ú²ª²ª¡£¡±ÄÇôÁ÷³ÌµÄÓÀºãÖ®µÀÊÇÊ²Ã´ÄØ£¿ÔÚ±¾ÊéÖУ¬ÎÒÃǽ«»áÒÀ´ÎΪ¶ÁÕß½²½âÈý¸öÓÀºãÖ®µÀ¡£±¾ÕÂÊ×ÏȽ²ÊöµÚÒ»¸öÓÀºãÖ®µÀ£¬¼´Á÷³ÌÍò±äµÄÓÀºãÖ®µÀ¡ª¡ª¹¤×÷Á÷ģʽ¡£
¹¤×÷Á÷ģʽ×÷ΪÁ÷³ÌµÄÁé»ê£¬ÊÇʱ¼äÎ޹صģ¨timeless£©£¬ËüÓëÈË¡¢ÎÄ»¯Ïà¹Ø£¬²»»áËæ×Åʱ¼äºÍм¼ÊõµÄ·¢Õ¹¶øÂäºó£¬Òò´Ë¿ÉÒÔ³ÆÖ®ÎªÓÀºãµÄ¡£µÀµÂ¾ÓÖÔ»£º¡°µÀÉúÒ»£¬Ò»Éú¶þ£¬¶þÉúÈý£¬ÈýÉúÍòÎï¡£¡±°ÑÕâ¾ä»°Ì×ÓÃÔÚ¹¤×÷Á÷ģʽÉϷdz£×¼È·£¬¹¤×÷Á÷ģʽ¿ÉÒÔÉúÒ»£¬Éú¶þ£¬¡¡£¬×îºóÉúÍòÎÑÝ»¯³öÎÞÊý¸ö²»Í¬Ä£Ê½×é³ÉµÄÁ÷³Ì¡£¿ÉÒÔ˵£¬Ã»Óй¤×÷Á÷ģʽ¾ÍûÓÐÁ÷³Ì£¬¹¤×÷Á÷ģʽÊÇÁ÷³ÌÍò±äµÄÓÀºãÖ®µÀ¡£½ÓÏÂÀ´£¬ÎÒÃǾÍÎ§ÈÆ¹¤×÷Á÷ģʽչ¿ª£¬¿´¿´Á÷³ÌÍò±äµÄÓÀºãÖ®µÀ¡ª¡ª¹¤×÷Á÷ģʽÊÇÔõÑùÀ´ÉúÒ»¡¢ÉúÍòÎïµÄ¡£
¹¤×÷Á÷ģʽµÄ·¢Õ¹Àú³Ì¼°·ÖÀà
ÔÚÉÏÒ»½Ú£¬ÎÒÃÇÁ˽âÁËģʽ£¬¸ù¾ÝģʽµÄͨÓö¨Ò壬ÎÒÃÇÔڴ˸ø³ö¹¤×÷Á÷ģʽµÄ¶¨Ò壺¹¤×÷Á÷ģʽÊǽâ¾öÁ÷³ÌÀàÎÊÌâµÄ·½·¨ÂÛ£¬Êǽâ¾öÁ÷³ÌÎÊÌâµÄ×î¼Ñʵ¼ù¡£¹¤×÷Á÷ÁìÓòͬÑù´æÔÚ×Å´óÁ¿µÄ²»¶ÏÖØ¸´³öÏÖµÄʼþ£¬´ÓÕâЩʼþÖз¢ÏֺͳéÏó³ö¹æÂÉ£¬²¢ÕÒµ½½â¾öÕâÐ©ÖØ¸´ÎÊÌâµÄ½â¾ö·½°¸£¬¶ÔÕâЩÎÊÌâ¼°Æä½â¾ö·½°¸½øÐйéÄÉ×ܽᣬ¾ÍÐγÉÁ˸÷ÖÖ¸÷ÑùµÄ¹¤×÷Á÷ģʽ¡£
1999Ä꣬ÓɺÉÀ¼°£Òò»ôδóѧµÄWil van der Aalst½ÌÊÚ[3]ÓëÀ¥Ê¿À¼´óѧµÄArthur
ter Hofstede½ÌÊÚÁªºÏ´´Á¢ÁËWorkflow Patterns Initiative£¬²¢Ìá³öÁ˹¤×÷Á÷ģʽµÄ¸ÅÄî¡£ËûÃǵÄÑо¿±¨¸æÓÚ2000ÄêÔÚÒÔÉ«Áа£ÀÌØ¾ÙÐеÄCoopIS´ó»áÉÏÕýʽ·¢²¼[4]¡£
Á½Î»½ÌÊÚÒ»¹²×ܽáÁË 21 ÖÖ¹¤×÷Á÷ģʽ[5]£¨ÆäʵÊÇÖ¸21ÖÖ¿ØÖÆÄ£Ê½£©¡£2004Ä꣬Nick Russell½ÌÊÚ¼ÓÈëÁËWorkflow
Patterns Initiative£¬²¢À©Õ¹Ìá³öÁ˹¤×÷Á÷Êý¾ÝģʽºÍ×ÊԴģʽ¡£2005ÄêÀ©Õ¹³öÁËÒ쳣ģʽ£¬2006Ä깤×÷Á÷¿ØÖÆÄ£Ê½±»À©Õ¹µ½ÁË43ÖÖģʽ[6]¡£¾¹ýÕâÑùµÄ·¢Õ¹£¬¹¤×÷Á÷ģʽ±»·ÖΪÁË¿ØÖÆÄ£Ê½¡¢×ÊԴģʽ¡¢Êý¾Ýģʽ¡¢Ò쳣ģʽËÄ´óÀà¡£
½ÓÏÂÀ´£¬ÎÒÃÇÒÔ2000Äê³õ½ÄÏÊз¿¹Ü¾ÖµÄ¡°ÊµÏÖ·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌµÄ×Ô¶¯»¯£¬²¢¿ÉÒÔÁé»î±ä»¯¡±Õâ¸öÒµÎñÐèÇóΪÀý£¬ÃèÊö¹¤×÷Á÷ģʽÔÚ¾ßÌåÓ¦ÓÃÖеÄʵÏÖ¹ý³Ì¡£Í¼3.1¸ø³öÁË·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌµÄ×é³É½á¹¹¡£

ͼ1 ·¿¸Ä¹º·¿ÉóÅúÁ÷³Ì
´ÓͼÖпÉÒÔ¿´³ö£¬Õû¸ö·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌÓÉ¡°ÊÜÀí¡±¡¢¡°³õÉ󡱡¢¡°¹«¸æ¡±¡¢¡°¸´É󡱡¢¡°²é·âºË²é¡±¡¢¡°ÖÆÖ¤¡±¡¢¡°ÊÕ·Ñ¡±¡¢¡°·¢Ö¤¡±µÈ¶à¸ö»·½Ú×é³É¡£¸ÃÁ÷³ÌÓÐÃ÷È·µÄ×÷սĿ±ê£¬¾ÍÊǸø¹º·¿¸Ä·¿µÄÉêÇëÈË·¢·Å¡°¹º·¿Ö¤¡±£¬ÆäÖеÄÿ¸ö»·½Ú¶¼¿ÉÒÔ¿´×÷ÊÇÒ»¸ö×÷Õ½»î¶¯¡£
ÕâЩ×÷Õ½»î¶¯µÄ×é³ÉÊÇÓÐÒ»¶¨¹æÔòµÄ£¬ÀýÈç´®ÐС¢·ÖÖ§¡¢²¢·¢µÈ¹æÔò£¬ÕâЩ¹æÔò»¹ÓпÉÄܾ³£±ä»¯¡£¶ÔÓÚÕâЩ¹æÔò£¬ÔÚ¹¤×÷Á÷¼¼ÊõÖÐÊÇÓÉ¡°¿ØÖÆÄ£Ê½¡±À´¸ºÔðµÄ¡£¿ØÖÆÄ£Ê½¸ºÔð¿ØÖÆ×÷Õ½»î¶¯µÄ×é³ÉÓëÁ÷ת¡£
£¨Ò»£©£º¿ØÖÆÄ£Ê½Ö®´®ÐС¢²¢·¢·ÖÁѼ°²¢·¢»ã¾Ûģʽ
¿ØÖÆÄ£Ê½ÊÇÁ÷³ÌµÄÖÐÊàÉñ¾£¬ËüÔÚ×÷սС·Ö¶ÓÖиºÔ𽫶à¸öµ¥¶ÀµÄ×÷Õ½»î¶¯×éºÏÔÚÒ»Æð£¬²¢Íƶ¯»î¶¯µÄ×Ô¶¯»¯Á÷ת£¬ÐγÉ×÷Õ½Á÷³Ì¡£ÆäÖØÒªÐÔ²»ÑÔ¶øÓ÷£¬Òò´ËÒªÉè¼ÆÒ»¸öºÃµÄÁ÷³Ì£¬¾Í±ØÐëѧ»áÓ¦Óø÷ÖÖ¸÷ÑùµÄ¿ØÖÆÄ£Ê½¡£
ÔÚ̽Ѱÿ¸öģʽµÄ¾¿¾¹Ö®Ç°£¬ÎÒÃÇÊ×Ïȶ¨ÒåÒ»¸öͳһµÄ¸ñʽ£¬¶ÔÓÚ¿ØÖÆÄ£Ê½£¬½«°´ÕÕÈçÏÂͳһµÄ¸ñʽ½øÐÐÃèÊö£º
ģʽÃèÊö
ÎÒÃÇÔÚ̽Ѱÿ¸ö¿ØÖÆÄ£Ê½Ê±£¬½«°´ÕÕÈçÏÂͳһµÄ¸ñʽ½øÐÐÃèÊö¡£
1.ÔÐÍʵÀý£¨¹ÊÊÂÆ¬¶Î£©
¸ø³ö´ËģʽµÄ¹ÊÊÂÆ¬¶Î£¬Í¨¹ýÏÊ»îµÄ¹¤×÷Á÷¹ÊÊÂÕ¹ÏÖ´ËģʽµÄÓ¦Óó¡¾°¡£
2.ÉÏÏÂÎÄ£¨ÃèÊö¡¢¶¯»ú£©
¸ø³ö´ËģʽµÄ¾ßÌåÃèÊöºÍ¶¯»ú£ºÎªÊ²Ã´ÓдËģʽ£¬ÊÇΪÁ˽â¾öʲôÎÊÌâ¡£
3.ÎÊÌâµÄ±¾ÖÊ
´ËģʽµÄ±¾ÖÊÊÇʲô£¿¼´±¾ÖÊÉÏÒª×öʲôÊÂÇ飿
4.½â¾ö·½°¸¼°¼¼ÊõʵÏÖ
¸ø³ö´ËģʽµÄ½â¾ö·½°¸¼°¼¼ÊõʵÏÖ¡£
5.Ô¼Êø¼°¿ÉÄÜ´æÔÚµÄÎÊÌâ
´Ëģʽ¿ÉÄÜ´æÔÚµÄÔ¼ÊøºÍÎÊÌ⡣ģʽ²¢²»ÊÇÍòÄܵģ¬ÔÚÈí¼þÖÐûÓÐÒøµ¯£¬Í¬ÑùҲûÓаüÖΰٲ¡µÄģʽ£¬Ã¿ÖÖģʽ¶¼ÓпÉÄÜ´æÔÚÒ»Ð©Ô¼Êø¼°ÏÞÖÆÌõ¼þ¡£Ó¦ÓôËģʽ¿ÉÄÜ»áÒý·¢Ê²Ã´ÎÊÌ⣬ÔõÑù½â¾öÕâЩÎÊÌâ¡£
6.¹æ·¶ÖеÄʵÏÖ
¸ø³ö´ËģʽÔÚÏà¹Ø¹æ·¶ÖеÄʵÏÖ¡£Ä¿Ç°Á÷³ÌÓÐÈý´ó¹æ·¶XPDL¡¢BPEL¡¢BPMN£¬ÎÒÃǽ«°´ÕÕÿ¸ö¹æ·¶µÄ×îа汾XPDL
2.1£¨ÐèҪ˵Ã÷µÄÊÇ£¬±¾ÕÂÖеÄXPDLʾÀý£¬¶¼ÊÇÓÉBizAgi Process Modeler 2.1.0.1Éú³ÉµÄ£©ºÍBPMN
2.0£¨ËùÓÐBPMN 2.0µÄXML¶¨Ò壬¶¼ÊÇÓÉsignavioÌṩµÄÔÚÏßÁ÷³Ì½¨Ä£Æ÷Éú³ÉµÄ£©£¬À´ÃèÊöµ±Ç°Ä£Ê½ÔÚÆäÖеÄʵÏÖ¡£¶ÔÓÚBPEL£¬ÎÒÃÇʼÖÕÈÏΪËü²»ÊÇÒ»¸ö¡°Á÷³Ì¡±ÓïÑÔ£¬Æä±¾ÖÊÉÏÊÇÒ»¸öWeb·þÎñµÄ±àÖÆÓïÑÔ£¬Òò´ËÖ»Óв¿·ÖģʽʹÓÃBPELÃèÊö¡£
7.ÓëÆäËûģʽµÄ¹ØÏµ
´ËģʽÓëÆäËûģʽÓÐʲôÑùµÄ¹ØÏµ£¿ÊÇ·ñÓÐÅä¶ÔʹÓõÄÒªÇó£¿ÊÇ·ñÓÐÓëÆäËûģʽ½øÐÐ×éºÏ£¬½â¾ö¸´ÔÓ³¡¾°µÄÇéÐΣ¿
1.1.1 ·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌÖеĴ®ÐÐģʽ
ͼ3.2ÊǽÄÏÊз¿¹Ü¾Ö·¿¸Ä¹º·¿Á¢µÈ¿ÉÈ¡µÄÉóÅúÁ÷³Ì¡£ÔÚÕâ¸öÁ÷³ÌÖУ¬ËùÓеÄ×÷Õ½»î¶¯¶¼ÊÇ´®ÐÐÔÚÒ»ÆðµÄ£¬Íê³ÉÒ»¸ö»î¶¯²ÅÄܲÙ×÷ÏÂÒ»¸ö»î¶¯£¬Õâ¾ÍÊǹ¤×÷Á÷¿ØÖÆÄ£Ê½Öеġ°´®ÐÐģʽ¡±¡£´®ÐÐģʽ¼«Æä¼òµ¥£¬ÕâÀï¾Í²»°´ÕÕͳһ¸ñʽ½øÐÐÃèÊöÁË¡£
ͼ3.2 ·¿¸Ä¹º·¿Á¢µÈ¿ÉÈ¡µÄÉóÅúÁ÷³Ì

1.1.2 ·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌÖеġ°²¢·¢·ÖÁÑ¡°Ó롱²¢·¢»ã¾Û¡°Ä£Ê½
1. ²¢·¢·ÖÁÑģʽ
1.ÔÐÍʵÀý£¨¹ÊÊÂÆ¬¶Î£©
ͼ3.3 ·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌµÄ¡°²¢·¢·ÖÁÑ¡±ÔÐÍʵÀý

Èçͼ3.3Ëùʾ£¬¸´Ôӵķ¿¸Ä¹º·¿Á÷³ÌÐèÒªÁ½¸öºË²é¸Úλ½øÐк˲飬Òò´ËÔÚ¡°¸´Éó¡±»·½ÚÖ®ºó£¬²¢·¢·ÖÁÑΪÁËÁ½¸ö»î¶¯£º¡°²é·âºË²éÒ»¡±Óë¡°²é·âºË²é¶þ¡±¡£ÔÚÕâ¸ö¹ÊÊÂÆ¬¶ÎÖУ¬ÎªÁËÌá¸ßЧÂÊ£¬Á½¸öºË²é»·½Ú²¢Ðй¤×÷£¬´Ó¶ø½«ºË²éµÄʱ¼äËõ¶ÌÁËÒ»°ë¡£
2.ÉÏÏÂÎÄ£¨ÃèÊö¡¢¶¯»ú£©
ÃèÊö£º²¢·¢·ÖÁÑ£¬¾ÍÊÇÔÚij¸ö»î¶¯£¨±¾ÀýÊÇ¡°¸´Éó¡±£©Ö®ºó£¬²¢·¢µØ·ÖÁѳö¶à¸ö»î¶¯£¨¡°²é·âºË²éÒ»¡±¡¢¡°²é·âºË²é¶þ¡±£©£¬Õâ¶à¸ö»î¶¯Í¬Ê±Ö´ÐС£
¶¯»ú£ºÍ¨¹ýÔö¼ÓÁ÷³ÌÖв¢Ðд¦ÀíµÄ»î¶¯µÄ¸öÊý£¬Ëõ¶Ì´®ÐÐʱ¼ä£¬Ìá¸ßÕû¸öÁ÷³ÌµÄЧÂÊ¡£ÔÚ1.2.2½ÚÖУ¬ÎÒÃÇÔø¾Ìáµ½¹ý²¢Ðй¤³Ì£¬²¢·¢Ä£Ê½ÊÇÒ»ÖÖ×îÓÐЧµÄÌá¸ßÁ÷³ÌЧÂʵÄģʽ¡£
3.ÎÊÌâµÄ±¾ÖÊ
²¢·¢·ÖÁÑģʽµÄ¶¯»úÊǾ¡Á¿Ôö¼ÓÁ÷³ÌÖпÉÒÔ²¢Ðд¦ÀíµÄ»î¶¯µÄ¸öÊý£¬´Ó¶ø¼«´óÌá¸ßÁ÷³ÌµÄЧÂÊ¡£ÄÇô£¬ÔõÑù²ÅÄÜÌá¸ß²¢ÐлµÄÊýÁ¿ÄØ£¿»òÕß˵£¬²¢ÐлµÄÔö¼ÓÒÀÀµÓÚÊ²Ã´ÄØ£¿´ð°¸¾ÍÊÇ×ÊÔ´£¬¼´Ö´Ðл±¾ÉíËùÐèÒªµÄÏà¹Ø×ÊÔ´£¨3.4½Ú»áÖØµã½²ÊöÕâÒ»Ö÷Ì⣩¡£×ÊÔ´Èç¹û²»¹»ÓþÍû·¨²¢ÐУ¬ÔÚ·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌÖУ¬Èç¹ûÖ»ÓÐÒ»¸öºË²é¸Úλµ±È»¾ÍÎÞ·¨²¢ÐÐÁË£¬ÒòΪһ¸ö¸Úλ²»ÄÜͬʱ×öÁ½¼þÊÂÇé¡£±¾ÀýÉèÖÃÁËÁ½¸ö²é·âºË²éµÄ¸Ú룬Òò´Ë¿ÉÒÔÉèÖÃΪ²¢Ðл¡£
Òò´Ë£¬»î¶¯Äܲ»Äܲ¢Ðд¦Àí£¬¾ÍÒª¿´Õâ¸ö»î¶¯±¾ÉíµÄÏà¹Ø×ÊÔ´ÄÜ·ñ²¢ÐС£ÔÙÈ磬ÔڷǼÆËã»ú»¯µÄÈ˹¤Á÷³ÌÖУ¬ÈçÇë¼ÙÁ÷³Ì£¬Èç¹ûÇë¼ÙÈËÄÃÒ»ÕÅÖ½ÖʵÄÇë¼Ùµ¥È¥ÕÒÁ쵼ǩ×Ö£¬ÄÇôËûÖ»Äܰ´ÕÕ´®ÐÐ˳ÐòÈ¥ÕÒËùÓеÄÁ쵼ǩ×Ö£¬ÒòΪÎïÀí´æÔÚµÄÖ½Ö»ÓÐÒ»ÕÅ¡£¶ø¼ÆËã»úµÄÒ»¸öºÜ´ó×÷ÓþÍÊǰÑÖ½ÖʵÄÊý¾Ýµç×Ó»¯ÁË£¬µç×Ó»¯µÄ±¾ÖÊÊǵç×ÓÊý¾Ý±¾Éí¿ÉÒÔ±»Í¬²½´¦Àí£¬Õâ¾ÍÊÇ˵ÔÚͬһ¸öµç×ÓÇë¼Ùµ¥ÉÏ£¬¶àλÁìµ¼¿ÉÒÔͬʱǩ×Ö¡£Òò´Ë£¬ÔÀ´ÓÉÓÚ×ÊÔ´µÄÏÞÖÆ¶ø²»Äܲ¢Ðд¦ÀíµÄ»î¶¯£¬ÔÚ¼ÆËã»ú»¯Ö®ºó¿ÉÒÔ²¢Ðд¦ÀíÁË¡£
4.½â¾ö·½°¸¼°¼¼ÊõʵÏÖ
½â¾ö·½°¸¡£ÒªÊµÏÖ²¢·¢·ÖÁÑģʽ£¬¿ÉÒÔÔÚÒª²¢·¢µÄ»î¶¯Ö®ºóÌí¼ÓÒ»¸ö±êʶ²¢·¢·ÖÁѵÄ·Óɽڵ㣬Èçͼ3.4ÖеÄAndSplit£¬±»³ÆÎªÏÔʽµÄʵÏÖ·½°¸¡£»òÕßÊ¡ÂÔ·Óɽڵ㣬ֱ½ÓÔڻ֮ºóÁ¬½ÓÁ½Â·²¢·¢µÄ»î¶¯£¨²Î¼ûͼ3.5£©£¬±»³ÆÎªÒþʽµÄʵÏÖ·½°¸¡£
ͼ3.4 ²¢·¢·ÖÁÑģʽ֮ÏÔʽʵÏÖ·½°¸

ͼ3.5 ²¢·¢·ÖÁÑģʽ֮ÒþʽʵÏÖ·½°¸

¼¼ÊõʵÏÖ¡£ÔÚ¹¤×÷Á÷ÖÐʵÏÖ²¢·¢·ÖÁÑģʽ£¬¼¼ÊõʵÏÖ°üÀ¨Á½²¿·Ö£ºÒ»²¿·ÖÊÇÔÚÁ÷³Ì¶¨ÒåÆÚ£¬Ò»²¿·ÖÊÇÔÚÁ÷³ÌÔËÐÐÆÚ¡£
(1) ¶¨ÒåÆÚ¡£Í¨¹ý¿ÉÊÓ»¯µÄÁ÷³ÌÉè¼ÆÆ÷£¬²ÉÓôËģʽµÄÁ½ÖÖ·½°¸ÖеÄÈÎÒâÒ»ÖÖ£¬»³öÁ÷³Ì¶¨Òåͼ£¬²¢³Ö¾Ã»¯´æ´¢µ½Êý¾Ý¿â¡£³Ö¾Ã»¯´æ´¢µÄÁ÷³Ì¶¨Ò壬ÔÚÔËÐÐÆÚÓÖÄæÏò½âÎöΪ¶à¸ö¹¤×÷Á÷¶ÔÏóÖ®¼äµÄ¹ØÏµ£¬Èçͼ3.6ºÍͼ3.7ËùʾµÄ½á¹¹¡£
ͼ3.6 »î¶¯Óë×ªÒÆµÄÀàͼ

(2) ÔËÐÐÆÚ¡£Á÷³ÌÒýÇæÐèÒª¶ÁÈ¡³Ö¾Ã»¯´æ´¢µÄÁ÷³Ì¶¨Ò壨һ°ãΪXML¸ñʽ£©£¬²¢½âÎöΪ¶ÔÏó¼°¶ÔÏ󼯺ÏÖ®¼äµÄ¹ØÏµ£¨»î¶¯¼¯ºÏActivities¡¢×ªÒƼ¯ºÏTransitions£©£¬Èçͼ3-7Ëùʾ¡£
ͼ3.7 ²¢·¢·ÖÁÑģʽÖÐÒþʽ·½°¸µÄ¶ÔÏó¹ØÏµÍ¼

¿ÉÒÔ¿´³ö£¬ÕâÊÇûÓвÉÓÃAndSplitÍø¹ØµÄÒþʽʵÏÖ·½°¸£º
(1) ½«XMLµÄÁ÷³Ì¶¨Òå½âÎöΪ¶ÔÏóÖ®¼äµÄ¹ØÏµ£¬±¾ÖÊÉϾÍÊÇActivityInfoÓëinComingTransitions¡¢outgoingTransitionsµÄ¹ØÏµ¡£inComingTransitions¼¯ºÏ´æ´¢½øÈ뵱ǰ»î¶¯µÄ×ªÒÆÏß¶ÔÏó£¬outgoingTransitions¼¯ºÏ´æ´¢À뿪µ±Ç°»î¶¯µÄ×ªÒÆÏß¶ÔÏó¡£µ±Ä³¸ö»î¶¯ÊµÀý£¨ÀýÈç¡°»î¶¯A¡±µÄʵÀý£©Íê³ÉÐèҪת³öʱ£¬ÔòÊ×ÏÈÈ¡µÃ¡°»î¶¯A¡±Õâ¸öActivityInfo¶ÔÏóµÄoutgoingTransitions¼¯ºÏ²¢½øÐеü´ú£¬²¢¶Ôÿ¸ötransitionInfo¶ÔÏóÉϵÄcondition±í´ïʽ£¨ÓÃÀ´Åжϵ±Ç°×ªÒÆÒªÖ´ÐеÄÌõ¼þ£©½øÐÐÇóÖµÅжϣ¬Èç¹ûÅжϽá¹ûΪtrue£¬ÔòÖ´ÐдË×ªÒÆ¡£
(2) ¶ÔÓÚ²¢·¢·ÖÁÑģʽ£¬Èç¹ûÆä×ªÒÆÏßÉϵÄÌõ¼þ±í´ïʽcondition²»ÉèÖ㬼´ÓÀԶĬÈÏΪtrue£¬ÄÇôÔÚ²¢·¢·ÖÁÑģʽÖУ¬ÆäËùÓеĺó¼Ì×ªÒÆÏߣ¨outgoingTransitions¼¯ºÏ£©¶¼½«±»Ö´ÐУ¬´Ó¶øÊµÏÖ²¢·¢·ÖÁÑģʽ¡£
(3) ÿ¸öoutgoingTransition¶ÔÏó£¨TransitionInfo£©Ö´ÐÐÍê±Ïºó£¬Ôò¸ù¾ÝTransitionInfo¶ÔÏóµÄtoActivityIdÊôÐÔÈ¡µÃ´ËID¶ÔÓ¦µÄ»î¶¯¶ÔÏó£¨ActivityInfo£©£¬ÔÚ±¾Ä£Ê½Öм´¡°»î¶¯B¡±Óë¡°»î¶¯C¡±Á½¸ö¶ÔÏó£¬ÔÚÿ´Îµü´úÖУ¬¶ÔActivityInfo¶ÔÏó½øÐÐʵÀý»¯£¬²¢³Ö¾Ã´æ´¢£¬¼´Íê³ÉÁËÒ»´Îµü´ú¡£ËùÓеü´úÖ´ÐÐÍê±Ï£¬¼´ÊµÏÖÁË¡°»î¶¯A¡±²¢·¢·ÖÁÑΪ¡°»î¶¯B¡±Óë¡°»î¶¯C¡±µÄÔËÐÐÆÚ¹¦ÄÜ¡£
×¢£ººóÐøËùÓпØÖÆÄ£Ê½µÄÔËÐÐÆÚʵÏÖ£¬¶¼½«×ñÑoutgoingTransitons¡¢incomingTransitions¡¢fromActivityId¡¢toActivityId¡¢conditionÕâÑùµÄ»úÖÆ£¬Òò´ËÔÚºóÐøµÄ¿ØÖÆÄ£Ê½ÖУ¬²»ÔÙµ¥¶À½²ÊöÕâÒ»²¿·ÖÄÚÈÝÁË¡£
¶ÔÓÚ¸üϸ²ã´ÎµÄ±àÂëʵÏÖ£¬Ä¿Ç°ÓлùÓÚpetriÍøµÄToken»úÖÆ£¨ÀýÈçjBPM£©£¬Ò²ÓлùÓÚʵÀýµÄ״̬»ú·½Ê½¡£
5.Ô¼Êø¼°¿ÉÄÜ´æÔÚµÄÎÊÌâ
²µ»ØµÄÎÊÌâ¡£ÔÚ±¾Ä£Ê½µÄÃèÊö¡¢½â¾ö·½°¸¼°ÊµÏÖÖУ¬ÎÒÃÇ¿ÉÒÔ¿´µ½²¢·¢·ÖÁÑģʽµÄAndSplitÍø¹ØÖ®ºó·ÖÁѳöµÄËùÓзÖÖ§¶¼ÊÇͬʱִÐеģ¬Òò´ËÈç¹û²µ»Øµ½AndSplitÍø¹ØÖ®Ç°µÄ»î¶¯£¨ÀýÈçÓÉ¡°»î¶¯B¡±²µ»Øµ½¡°»î¶¯A¡±£¬¶ø¡°»î¶¯C¡±²¢²»²µ»Ø£©£¬ÔÙ´ÎÖ´Ðе½AndSplitÍø¹ØÊ±£¬¡°»î¶¯B¡±ÖØÐÂÖ´ÐÐÁËÒ»´Î£¬¶ø¡°»î¶¯C¡±Ò²»áÔٴα»Ö´ÐУ¬µ«ÊÇ¡°»î¶¯C¡±²¢Ã»Óб»²µ»Ø£¬Ëü»¹ÐèÒª²»ÐèÒª±»ÔÙ´ÎÖ´ÐÐÄØ£¿ÔÚ²¢·¢·ÖÁÑģʽÖУ¬¡°»î¶¯C¡±±ØÐëÔٴα»Ö´ÐС£µ«ÊÇÕâ¿ÉÄܲ»ÊÇÒµÎñËùÆÚÍûµÄ½á¹û£¨ÒµÎñÉÏ¿ÉÄÜ»áÒªÇ󡰻C¡±²»ÒªÔÙÖØ¸´Ö´ÐÐÁË£©£¬Òź¶µÄÊDz¢·¢·ÖÁÑģʽ½â¾ö²»ÁËÕâ¸öÎÊÌ⡣ĿǰºÜ¶àµÄ¹¤×÷Á÷²úÆ·£¬ËäȻ֧³Ö²¢·¢·ÖÁÑģʽ£¬µ«ÊǶÔÓÚ²¢·¢·ÖÁѵIJµ»ØÖ»ÄÜ×öµ½¡°»î¶¯B¡±Óë¡°»î¶¯C¡±È«²¿Öظ´Ö´ÐС£Èç¹ûÒªÖ§³Ö¿É¿ØÖÆ¡°»î¶¯C¡±ÊÇ·ñÖØ¸´Ö´ÐУ¬Ö»ÄÜÒýÈë¶àÑ¡·ÖÁÑģʽÓë¶àÑ¡»ã¾ÛģʽÁ½Õß½áºÏÀ´ÊµÏÖ£¨Ïê¼û10.3.2.2½ÚµÄµÄ¶àÑ¡·ÖÁÑģʽÓë10.3.2.3½ÚµÄ¶àÑ¡»ã¾Ûģʽ£©¡£
6.¹æ·¶ÖеÄʵÏÖ
XPDL 2.1µÄʵÏÖ£¨´ËXMLÄÚÈÝÓÉBizAgi Process ModelerÖ±½Óµ¼³ö£¬È¥µôÁËÓë¿ØÖÆÄ£Ê½Î޹صÄÊôÐÔ£©
<WorkflowProcess Id="4df39a5e-9a54-490c-aca7-7cf45bf53ef0" Name="Process 1"> <Activities> <Activity Id="a2dca2db-f0ab-4c1d-92c4-2f51d356f51e" Name="»î¶¯A"> <Description /> <Implementation> <Task /> </Implementation> </Activity> <Activity Id="67e100a6-f17c-4fb9-80da-c987d918c747" Name="²¢·¢·ÖÁÑÍø¹Ø"> <Description /> <Route GatewayType="AND" /> </Activity> <Activity Id="76f2bf26-f953-40b1-800b-25af4320dbd4" Name="»î¶¯B"> <Description /> <Implementation> <Task /> </Implementation> </Activity> <Activity Id="ba088ccb-d74f-409b-8d6c-08c7cf577f70" Name="»î¶¯C"> <Description /> <Implementation> <Task /> </Implementation> </Activity> </Activities> <Transitions> <Transition Id="344afd1f-90d9-4d4a-97a2-9b6d909b8601" From="a2dca2db-f0ab-4c1d-92c4-2f51d356f51e"
To="67e100a6-f17c-4fb9-80da-c987d918c747" Name=""> <Condition /> </Transition> <Transition Id="b0b4d8d6-c86d-4262-afda-c6e03925c1d7" From="67e100a6-f17c-4fb9-80da-c987d918c747"
To="76f2bf26-f953-40b1-800b-25af4320dbd4" Name=""> <Condition /> </Transition> <Transition Id="ed12d3a8-7ff4-4cd0-a19c-6eb89fbe5a56" From="67e100a6-f17c-4fb9-80da-c987d918c747"
To="ba088ccb-d74f-409b-8d6c-08c7cf577f70" Name=""> <Condition /> </Transition> </Transitions> <ExtendedAttributes /> </WorkflowProcess> |
ÈçÉÏËùʾ£¬XPDL¹æ·¶²ÉÓõÄÏÔʽ·½°¸£¨²Î¼ûͼ3.4£©À´ÊµÏÖ²¢·¢·ÖÁÑģʽ¡£Í¨¹ý²¢·¢·ÖÁÑÍø¹Ø£¨<Activity
Id="67e100a6-f17c-4fb9-80da-c987d918c747"
Name="²¢·¢·ÖÁÑÍø¹Ø">£©Óë×ªÒÆ£¨Transition Id="
b0b4d8d6-c86d-4262-afda-c6e03925c1d7"¡¢Transition
Id=" ed12d3a8-7ff4-4cd0-a19c-6eb89fbe5a56"£©Ö±½Ó½¨Á¢¹ØÏµ£¬ÊµÏÖ²¢·¢·ÖÁÑÍø¹ØÓë·ÖÁÑ×ªÒÆÏߵĹØÁª¡£ÔÙͨ¹ý×ªÒÆÏßÉϵÄFromÓëToÊôÐÔ£¨¼û´ÖÌ岿·Ö£©£¬·Ö±ðÖ¸Ïòij¸ö»î¶¯Id£¬ÊµÏÖÁËÏßÓë»î¶¯µÄÁ¬½Ó¡£
BPELÖеÄʵÏÖ£¨XMLÄÚÈÝÓÉEclipse BPEL Designer Éú³É£¬È¥µôÁËÓë¿ØÖÆÄ£Ê½Î޹صÄÊôÐÔ£©
ÔÚBPEL¹æ·¶ÖУ¬Í¨¹ý<flow>»î¶¯Ìṩ²¢·¢·ÖÁÑģʽµÄʵÏÖ¡£°ÑÐèÒª²¢·¢Ö´ÐеĻ·ÅÖÃÔÚ<flow>¡</flow>±êǩ֮ÄÚ¡£
<bpel:process name="ParallelPattern" targetNamespace="http://sample.bpel.org/bpel/sample" suppressJoinFailure="yes" xmlns:tns="http://sample.bpel.org/bpel/sample" xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" > <bpel:sequence name="main"> <bpel:empty name="Empty"></bpel:empty> <bpel:flow name="Flow"> <bpel:invoke name="Invoke1"></bpel:invoke> <bpel:invoke name="Invoke2"></bpel:invoke> </bpel:flow> <bpel:invoke name="Invoke"></bpel:invoke> </bpel:sequence> </bpel:process> |
BPMN 2.0ÖеÄʵÏÖ£¨XMLÄÚÈÝÓÉSignavio Process Editorµ¼³ö£¬È¥µôÁËÓë¿ØÖÆÄ£Ê½Î޹صÄÊôÐÔ£©
<process id="sid-a0718229-83f5-4ab3-9fea-63676de90575" isExecutable="false"> <task completionQuantity="1"
id="sid-81CDFBD9-1D50-42CF-B67A-674591D44F4D" isForCompensation="false" name="»î¶¯A" startQuantity="1"> <outgoing>sid-FE93BF67-3DE5-4DF9-BAA7-A7F4BD8C3339</outgoing> </task> <parallelGateway gatewayDirection="Diverging"
id="sid-681399DD-E962-4174-85DA-43384A9B0DD8" name="²¢·¢·ÖÁÑÍø¹Ø"> <incoming>sid-FE93BF67-3DE5-4DF9-BAA7-A7F4BD8C3339</incoming> <outgoing>sid-91DD542C-DBA5-49E0-9E56-A31DA8E4E432</outgoing> <outgoing>sid-9DEA8CF3-6EBE-4EB5-B649-42865D58C35D</outgoing> </parallelGateway> <task completionQuantity="1"
id="sid-9FCD307D-BDED-404F-988B-100311E9C92A" isForCompensation="false" name="»î¶¯B" startQuantity="1"> <incoming>sid-91DD542C-DBA5-49E0-9E56-A31DA8E4E432</incoming> </task> <task completionQuantity="1"
id="sid-65D2670A-F5CF-4721-854B-F1499C0F3239" isForCompensation="false" name="»î¶¯C" startQuantity="1"> <incoming>sid-9DEA8CF3-6EBE-4EB5-B649-42865D58C35D</incoming> </task> <sequenceFlow id="sid-FE93BF67-3DE5-4DF9-BAA7-A7F4BD8C3339"
name="" sourceRef="sid-81CDFBD9-1D50-42CF-B67A-674591D44F4D"
targetRef="sid-681399DD-E962-4174-85DA-43384A9B0DD8"/> <sequenceFlow id="sid-91DD542C-DBA5-49E0-9E56-A31DA8E4E432"
name="" sourceRef="sid-681399DD-E962-4174-85DA-43384A9B0DD8"
targetRef="sid-9FCD307D-BDED-404F-988B-100311E9C92A"/> <sequenceFlow id="sid-9DEA8CF3-6EBE-4EB5-B649-42865D58C35D"
name="" sourceRef="sid-681399DD-E962-4174-85DA-43384A9B0DD8"
targetRef="sid-65D2670A-F5CF-4721-854B-F1499C0F3239"/> </process> |
ÈçÉÏËùʾ£¬BPMN2.0¹æ·¶Í¬Ñù²ÉÓÃÁËÏÔʽµÄʵÏÖ·½°¸¡£ÐèҪעÒâµÄÊÇ£¬ÔÚXPDL 2.1¹æ·¶ÖУ¬Í¨¹ýÔÚTransitionµÄFromÓëToÊôÐÔʵÏÖÁËÏ߶ԻµÄÁ¬½Ó£¬¶øÔÚBPMN
2.0¹æ·¶ÖУ¬ÔòÊÇͨ¹ýsequenceFlowµÄsourceRefÓëtargetRefÊôÐÔ£¨¼û´ÖÌ岿·Ö£©ÊµÏÖÏ߶ԻµÄÁ¬½Ó¡£
7.ÓëÆäËûģʽµÄ¹ØÏµ
(1) Óë»áǩģʽµÄÇø±ð¡£´Ë´¦ÐèҪעÒâµÄÊÇ£¬»î¶¯BºÍ»î¶¯CÊÇÁ½¸ö²»Í¬µÄ»î¶¯£¨Ò²¾ÍÊÇ˵Á½¸ö»î¶¯×ö²»Í¬µÄÊÂÇ飬ÀýÈçÔڰ칫ÓÃÆ·²É¹ºÔ¤ËãÉóÅúµÄÁ÷³ÌÖУ¬»î¶¯AΪ×ܾÀíÉóÅú£¬ÉóÅúͨ¹ýºó£¬»î¶¯BΪ֪ͨ²É¹ºÔ±Áì¿î£¬»î¶¯CΪ´Ó²ÆÎñϵͳÖпۿ£¬Òò´Ë񻂿±ðÓÚͬһ¸ö»î¶¯ÓÐÁ½¸ö°ìÀíÈËͬʱ°ìÀí£¨¼´µ¥²½»áÇ©£©µÄÇé¿ö¡£
(2) Óë²¢·¢»ã¾Ûģʽ£¨Í¬²½Ä£Ê½£©µÄ¹ØÏµ¡£²¢·¢·ÖÁÑÖ®ºó£¬Ò»°ã¶¼»áÔÚij¸ö»î¶¯ÉϽøÐлã¾Û¡£´Ëʱ¾ÍÐèÒªÓõ½¡°²¢·¢»ã¾Ûģʽ¡±¡£Ò»°ãÇé¿öÏ£¬²¢·¢·ÖÁÑģʽÓë²¢·¢»ã¾Ûģʽ¶¼ÊdzɶԳöÏÖ¡£µ±È»Õâ²¢²»ÊDZØÐëµÄ£¬ÒòΪ²¢·¢·ÖÁÑÒ²¿ÉÒÔ²»½øÐлã¾Û£¬ÀýÈç´«ÔÄģʽ£¨Òì²½¶àʵÀýģʽ£©¡£
(3) Ó뵥ѡ·ÖÁÑ£¨ÅÅËûÑ¡Ôñ£©Ä£Ê½×éºÏʹÓ㬼ä½ÓʵÏÖ¶àÑ¡·ÖÁÑģʽ
ͼ3.8 ²¢·¢·ÖÁÑģʽÓ뵥ѡ·ÖÁÑ£¨ÅÅËûÑ¡Ôñ£©Ä£Ê½µÄ½áºÏʹÓÃ

´Óͼ3.8ÖпÉÒÔ¿´³ö£¬Í¨¹ý½«²¢·¢·ÖÁÑģʽÓëÅÅËûÑ¡ÔñģʽÏà½áºÏ£¬¿ÉÒÔ²¿·ÖµØÊµÏÖMÑ¡N·ÖÁÑģʽ¡£Í¼ÖÐʵÏÖµÄЧ¹ûÊÇ£¬A·ÖÁÑΪBCD»òBCE¡£ÔÚÒ»¶¨³Ì¶ÈÉÏʵÏÖÁË4Ñ¡3µÄЧ¹û¡£µ±È»»î¶¯BºÍ»î¶¯CÊDZØÑ¡µÄ£¬»î¶¯DºÍ»î¶¯EÔòÊÇÅÅËûÑ¡Ôñ£¨¼´¶þѡһ£©¡£ËùÒÔ£¬ÕâÓë¶àÑ¡·ÖÁÑÓÖÓÐÒ»¶¨µÄÇø±ð£¬ÔÚ¶àÑ¡·ÖÁÑģʽÖУ¬Ñ¡Ôñ½á¹û¿ÉÒÔÊÇÈÎÒâÒ»¸ö·ÖÖ§£¬²¢Ã»ÓÐÈκÎÏÞÖÆ¡£
2.²¢·¢»ã¾Ûģʽ£¨Í¬²½Ä£Ê½£©
1.ÔÐÍʵÀý£¨¹ÊÊÂÆ¬¶Î£©
ͼ3.9 ·¿¸Ä¹º·¿ÉóÅúÁ÷³ÌÖ®¡°²¢·¢»ã¾Û¡±Æ¬¶Îͼ

Èçͼ3.9Ëùʾ£¬ÔÚ¡°²é·âºË²éÒ»¡±ºÍ¡°²é·âºË²é¶þ¡±Á½¸ö»î¶¯Ö®ºó£¬·¿¸Ä¹º·¿ÉóÅúÁ÷³Ìͨ¹ýÒ»¸ö¡°²¢·¢»ã¾Û¡±Íø¹Ø£¬¼ÌÐøÏòÏÂÁ÷תµ½¡°ÖÆÖ¤¡±»î¶¯ÉÏ¡£
2.ÉÏÏÂÎÄ£¨ÃèÊö¡¢¶¯»ú£©
ÃèÊö£º²¢·¢·ÖÁѳöµÄ¶à¸ö»î¶¯£¨¡°²é·âºË²éÒ»¡±ºÍ¡°²é·âºË²é¶þ¡±£©È«²¿Ö´ÐÐÍê±Ïºó£¬ºóÐø»î¶¯²Å»á±»´¥·¢¡£
¶¯»ú£ºÎªÍ¨¹ý²¢·¢·ÖÁÑģʽ´´½¨³öµÄ·ÖÖ§ÌṩһÖÖÔٴλã¾ÛµÄ»úÖÆ¡£
3.ÎÊÌâµÄ±¾ÖÊ
µ±»î¶¯Éæ¼°µÄ×ÊÔ´ÐèÒªºÏ²¢´¦Àíʱ£¬Ôò²ÉÓÃͬ²½»úÖÆ¡£ÕâÀïµÄ×ÊÔ´°üÀ¨Ä³Ð©³É¹ûµÄºÏ²¢£¨ÀýÈ磬Á½¸öºË²é½á¹û×öºÏ²¢£©¡£
4.½â¾ö·½°¸¼°¼¼ÊõʵÏÖ
½â¾ö·½°¸¡£ÓÉÓÚ´Ëģʽһ°ã¶¼Óë²¢·¢·ÖÁÑģʽÅä¶ÔʹÓ᣶ÔÓ¦ÓÚ²¢·¢·ÖÁÑģʽÖеÄÏÔʽ·½°¸ºÍÒþʽ·½°¸£¬´ËģʽµÄ½â¾ö·½°¸Í¬Ñù·ÖΪÏÔʽ·½°¸ÓëÒþʽ·½°¸£¬Èçͼ3.10ºÍͼ3.11Ëùʾ¡£
ͼ3.10 ͬ²½Ä£Ê½µÄÏÔʽʵÏÖ·½°¸

ͼ3.11 ²¢·¢»ã¾Û£¨Í¬²½£©Ä£Ê½µÄÒþʽʵÏÖ·½°¸

¼¼ÊõʵÏÖ¡£ÔÚ´ËģʽÖУ¬ÏÔʽ·½°¸ÓëÒþʽ·½°¸µÄʵÏÖÉÔÓв»Í¬¡£
(1) ¶¨ÒåÆÚ£º¶ÔÓÚÏÔʽ·½°¸£¨Èçͼ3.10£©£¬Ö±½ÓÔÚÉè¼ÆÆ÷ÖÐÌṩAndJoin»î¶¯½Úµã¼´¿É£¬²»ÐèÒªÁíÍâÉèÖ᣶ø¶ÔÓÚÒþʽ·½°¸£¨Èçͼ3.11£©£¬ÓÉÓÚͬ²½Ä£Ê½ÒªÇóËùÓвÎÓë»ã¾ÛµÄ½Úµã±ØÐëÈ«²¿Íê³É²ÅÄÜ´¥·¢ºóÐø·ÖÖ§£¬Òò´Ë±ØÐëÔÚ¡°ÈÎÎñD¡±ÉÏÉèÖÃͬ²½µÈ´ýµÄ±êÖ¾£¨»òÕß³ÆÖ®Îª¡°Óë»ã¾Û¡±±êÖ¾£©¡£
(2) ÔËÐÐÆÚ£ºÈçͼ3.12Ëùʾ£¬¶ÔÓÚ¡°»î¶¯D¡±Õâ¸ö¶ÔÏ󣬯äÊôÐÔincomingTransitionsÊÇÒ»¸ö¼¯ºÏ£¬¼¯ºÏÖаüº¬id=¡±tran_3¡±ºÍid=¡±tran_4¡±µÄÁ½¸ö×ªÒÆ¶ÔÏ󣬵±Á½¸ö×ªÒÆ¶ÔÏó¶¼Ö´ÐÐÍê±Ïʱ£¬´¥·¢»î¶¯DµÄÖ´ÐУ¬¼´¿ÉʵÏÖͬ²½Ä£Ê½¡£
ͼ3.12 ²¢·¢»ã¾Û£¨Í¬²½£©Ä£Ê½µÄÒþʽ·½°¸¶ÔÏó¹ØÏµÍ¼

5.Ô¼Êø¼°¿ÉÄÜ´æÔÚµÄÎÊÌâ
Óë²¢·¢·ÖÁÑģʽÖеIJµ»ØÏà¶ÔÓ¦£¬´ËģʽͬÑù´æÔÚ²µ»ØÎÊÌ⣺Èç¹û²¢·¢ÐèÒª²µ»Ø£¬Ôò±ØÐë²ÉÓöàÑ¡»ã¾ÛģʽÀ´´úÌæÍ¬²½Ä£Ê½£¬²ÅÄÜÂú×ã²µ»ØÐèÇó¡£
6.¹æ·¶ÖеÄʵÏÖ
XPDL 2.1ÖеÄʵÏÖ
<WorkflowProcess Id="b8043656-a95c-40e4-917e-2919a59fbfb3" Name="Process 1"> <Activities> <Activity Id="1c38df40-d035-4155-b473-d81fa606c2a8" Name="»î¶¯B"> <Description /> <Implementation> <Task /> </Implementation> </Activity> <Activity Id="d666bc95-edda-446f-9f93-98f27c53a7f8" Name="»î¶¯C"> <Description /> <Implementation> <Task /> </Implementation> </Activity> <Activity Id="b2fc7f93-aca6-4d52-965a-432553f02c9c" Name="²¢·¢»ã¾ÛÍø¹Ø"> <Description /> <Route GatewayType="AND" /> </Activity> <Activity Id="194e2c59-9218-49d5-baf4-e9feb715d9f0" Name="»î¶¯D"> <Description /> <Implementation> <Task /> </Implementation> </Activity> </Activities> <Transitions> <Transition Id="a6a47f65-cc0d-4302-870a-5f43556be0e4"
From="1c38df40-d035-4155-b473-d81fa606c2a8" To="b2fc7f93-aca6-4d52-965a-432553f02c9c" Name=""> <Condition /> </Transition> <Transition Id="fe10657f-542a-4229-be3a-382b4aa2a7ad"
From="d666bc95-edda-446f-9f93-98f27c53a7f8" To="b2fc7f93-aca6-4d52-965a-432553f02c9c" Name=""> <Condition /> </Transition> <Transition Id="735397b6-fb5f-4712-a944-59760458403c"
From="b2fc7f93-aca6-4d52-965a-432553f02c9c" To="194e2c59-9218-49d5-baf4-e9feb715d9f0" Name=""> <Condition /> </Transition> </Transitions> <ExtendedAttributes /> </WorkflowProcess> |
ÈçÉÏËùʾ£¬ÔÚXPDL¹æ·¶ÖУ¬²ÉÓõÄÊÇÏÔʽͬ²½·½°¸¡£
BPEL 2.0ÖеÄʵÏÖ£¨XMLÄÚÈÝÓÉEclipse BPEL Designer Éú³É£¬È¥µôÁËÓë¿ØÖÆÄ£Ê½Î޹صÄÊôÐÔ£©
ͬÑù²ÉÓÃ<flow></flow>±êÇ©½øÐÐʵÏÖ¡£
<bpel:process name="ParallelPattern" targetNamespace="http://sample.bpel.org/bpel/sample" suppressJoinFailure="yes" xmlns:tns="http://sample.bpel.org/bpel/sample" xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" > <bpel:sequence name="main"> <bpel:empty name="Empty"></bpel:empty> <bpel:flow name="Flow"> <bpel:invoke name="Invoke1"></bpel:invoke> <bpel:invoke name="Invoke2"></bpel:invoke> </bpel:flow> <bpel:invoke name="Invoke"></bpel:invoke> </bpel:sequence> </bpel:process> |
BPMN 2.0ÖеÄʵÏÖ£¨XMLÄÚÈÝÓÉSignavio Process Editorµ¼³ö£¬È¥µôÁËÓë¿ØÖÆÄ£Ê½Î޹صÄÊôÐÔ£©
<process id="sid-921359f3-d331-4fa7-aad9-7a6eb6e32d4a" isExecutable="false"> <task completionQuantity="1"
id="sid-4038BF10-88DD-4CD4-B51E-2A56B30D372F" isForCompensation="false" name="»î¶¯B" startQuantity="1"> <outgoing>sid-C3C65849-94FE-4D2A-B5F9-500BF6F01C6A</outgoing> </task> <parallelGateway gatewayDirection="Converging"
id="sid-AA7B31AA-C305-4B94-B48B-BA695B497FBD" name="²¢·¢»ã¾ÛÍø¹Ø"> <incoming>sid-C3C65849-94FE-4D2A-B5F9-500BF6F01C6A</incoming> <incoming>sid-D2F19E17-1F1E-4234-AF1C-D5F85D99AE2D</incoming> <outgoing>sid-8275F97F-34DB-4E4F-B73B-72FA44CAE1F5</outgoing> </parallelGateway> <task completionQuantity="1"
id="sid-7E91DCFB-7845-48A6-8263-842B46D0744C" isForCompensation="false" name="»î¶¯C" startQuantity="1"> <outgoing>sid-D2F19E17-1F1E-4234-AF1C-D5F85D99AE2D</outgoing> </task> <task completionQuantity="1"
id="sid-225CB518-1A4E-46A5-80D1-DAF2143B5233" isForCompensation="false" name="»î¶¯D" startQuantity="1"> <incoming>sid-8275F97F-34DB-4E4F-B73B-72FA44CAE1F5</incoming> </task> <sequenceFlow id="sid-C3C65849-94FE-4D2A-B5F9-500BF6F01C6A"
name="" sourceRef="sid-4038BF10-88DD-4CD4-B51E-2A56B30D372F"
targetRef="sid-AA7B31AA-C305-4B94-B48B-BA695B497FBD"/> <sequenceFlow id="sid-D2F19E17-1F1E-4234-AF1C-D5F85D99AE2D"
name="" sourceRef="sid-7E91DCFB-7845-48A6-8263-842B46D0744C"
targetRef="sid-AA7B31AA-C305-4B94-B48B-BA695B497FBD"/> <sequenceFlow id="sid-8275F97F-34DB-4E4F-B73B-72FA44CAE1F5"
name="" sourceRef="sid-AA7B31AA-C305-4B94-B48B-BA695B497FBD"
targetRef="sid-225CB518-1A4E-46A5-80D1-DAF2143B5233"/> </process> |
ÈçÉÏËùʾ£¬BPMN¹æ·¶Í¬Ñù²ÉÓõÄÊÇÏÔʽͬ²½Ä£Ê½·½°¸¡£
7.ÓëÆäËûģʽµÄ¹ØÏµ
Ò»°ãÓë²¢·¢·ÖÁÑģʽÅä¶ÔʹÓá£
|