2009-10-07 15 views
21

मैं सॉकेट के साथ विकसित नेटवर्क किए गए टिक टैक पैर गेम के लिए एक गतिविधि आरेख (यूएमएल) तैयार करने की कोशिश कर रहा हूं। मैं गतिविधि विभाजन (swimlanes) का उपयोग कर रहा हूँ। तो, तीन विभाजन हैं: क्लाइंट 1, सर्वर, और क्लाइंट 2।यूएमएल गतिविधि आरेख में लूप का प्रतिनिधित्व

चित्र अच्छा दिख रहा है, सिवाय इसके कि मुझे नहीं पता कि लूप संरचनाओं का प्रतिनिधित्व कैसे किया जाए।

यदि आप इस लिंक को देखते हैं: activity diagram, और पृष्ठ (विभाजन) पर अंतिम चित्र देखें, यह उस गतिविधि आरेख का प्रकार है जिसका मैं काम कर रहा हूं।

क्या कोई जानता है कि मैं लूप का प्रतिनिधित्व कैसे कर सकता हूं? धन्यवाद!

+0

आपको अपनी समस्या डोमेन पर विस्तार करने की आवश्यकता है। –

+0

यूएमएल गतिविधि आरेख एक प्रक्रियात्मक तरीके से - लूप को समझाने में सक्षम हो सकता है। लेकिन मैं एक कमी देख सकता हूं जो यूएमएल कार्यात्मक अभिव्यक्ति (नक्शा/foreach/कम) जैसे एक सरल तरीके से वर्णन करने में असफल हो जाएगा। –

उत्तर

11

विस्तार क्षेत्र के लिए page you link to और नीचे देखें। पुनरावृत्त कीवर्ड के साथ एक का प्रयोग करें।

एक विस्तार क्षेत्र एक संरचित गतिविधि क्षेत्र है जो कई बार निष्पादित करता है। इनपुट और आउटपुट विस्तार नोड्स को तीन बॉक्सों के समूह के रूप में खींचा जाता है जो वस्तुओं के एक से अधिक चयन का प्रतिनिधित्व करते हैं। कीवर्ड "पुनरावृत्त", "समांतर" या "स्ट्रीम" क्षेत्र के ऊपरी बाएं कोने में दिखाया गया है।

+2

जिसने मेरी आंख को पकड़ा, लेकिन मुझे इसका उपयोग करने के बारे में अनिश्चितता है। क्या आप इसका उपयोग करने वाले किसी भी अन्य उदाहरण आरेखों के बारे में जानते हैं? – littleK

+0

मेरे पास कुछ भी गैर-स्वामित्व नहीं है जिसे मैं इस समय दिखा सकता हूं। –

2

शायद मैं कुछ याद कर रहा हूँ लेकिन क्यों सिर्फ पाश में पहली गतिविधि के लिए इनपुट प्रवाह के रूप में पाश में पिछले गतिविधि के निकास प्रवाह का उपयोग नहीं (पाश खत्म करने के लिए एक गार्ड शर्त के साथ जब उचित)

1

यदि आप इनपुट के लिए डेटा का एक सेट उपयोग कर रहे हैं, तो "विस्तार क्षेत्र" सही है। उदाहरण के लिए, आप यूरो में अपनी सभी आय में कनवर्ट करना चाहते हैं। फिर, यह एक() के लिए है।

लेकिन यदि आप कुछ समय() के समान कुछ करना चाहते हैं, तो आपको फीडबैक लूप के साथ गोलाकार आयताकार और हीरे का उपयोग करना होगा।

उदाहरण के लिए: [प्ले डांडा] -> अगर मैं जीता -> बाकी - -> मैं रोक> मैं फिर से शुरू करते हैं।

मुझे लगता है कि एक गतिविधि आरेख में लूप करने का एकमात्र प्रभावी तरीका है।

आप loop node पर एक नज़र डाल सकते हैं। लेकिन मुझे यकीन नहीं है कि यह ओएमजी स्पेक में कितनी अच्छी तरह परिभाषित है।

संबंधित मुद्दे