2009-08-30 4 views
7

मैं एक आरेख के माध्यम से अपने कार्यक्रम के तर्क का प्रतिनिधित्व करना चाहता हूं, क्योंकि कार्यक्रम बहुत जटिल है; मुझे किसी अन्य व्यक्ति को समझाने का एक तरीका चाहिए, मेरे कार्यक्रम में कुछ और क्यों होता है। फ्लोचार्ट एकमात्र विकल्प है?कार्यक्रम तर्क का दृश्य प्रतिनिधित्व

उत्तर

2

यदि आपको एक चरण-दर-चरण स्तर पर चीजों को समझाने की आवश्यकता है, तो वास्तव में फ्लोचार्ट वास्तव में आपको चाहिए। यदि आप उच्च स्तर पर बात कर सकते हैं तो दूसरा विकल्प राज्य आरेख हो सकता है।

http://en.wikipedia.org/wiki/State_diagram

4

फ्लो चार्ट की लोकप्रिय पसंद कर रहे हैं, और अक्सर गैर तकनीकी लोगों के लिए उपयुक्त है।

यदि आप स्थिति का अधिक तकनीकी दृश्य प्रदान करने में रुचि रखते हैं, तो यूएमएल बेहतर विकल्प हो सकता है।

A sequence diagram दिखाता है कि घटक एक दूसरे के साथ कैसे बातचीत करते हैं।

+0

केस आरेखों का उपयोग भी कर रहे हैं। लेकिन सवाल के आधार पर, मैं सहमत हूं - फ्लोचार्ट्स मेरी पहली पसंद होगी। – TrueWill

10

यूएमएल में, अलग-अलग पद्धतियों का उपयोग करके विभिन्न चित्रों के लिए अलग-अलग चित्रों का इरादा है। ध्यान दें कि हम ऑब्जेक्ट ओरिएंटेड पद्धतियों पर निर्भर हैं, मैं विभिन्न आरेखों और वे कैसे काम करते हैं, इसकी व्याख्या करेंगे।

  • प्रयोग करें प्रकरण आरेख - के उपयोग के मामले मॉडल बिंदु की पहचान करने और प्राथमिक व्यवसाय प्रक्रियाओं है कि प्रणाली का समर्थन करना चाहिए के सभी परिभाषित करने के लिए है। यह उपयोगकर्ता और सिस्टम बिंदु दोनों से है। आपके सिस्टम के भीतर किसी भी एकल क्रिया का उपयोग एक केस केस में किया जा सकता है, जो तब और अधिक स्पष्टीकरण मॉडल का उपयोग करने की अनुमति देगा।

  • गतिविधि आरेख - यह एक प्रकार का वर्कफ़्लो आरेख है जो वर्णन केस आरेख में क्या चल रहा है इसका वर्णन करने के लिए उपयोग किया जाता है। यह मूल रूप से किसी गतिविधि के प्रवाह, या कई गतिविधियों का वर्णन करने के लिए एक दृश्य विधि है।

  • अनुक्रम आरेख - यह एक प्रणाली है, या एक प्रक्रिया में विभिन्न वस्तुओं के बीच संचार दिखाने के लिए एक आरेख है। अनुक्रम आरेख विश्लेषण में महत्वपूर्ण हैं, क्योंकि वे विस्तृत सिस्टम डिज़ाइन और उपयोगकर्ता इंटरफ़ेस डिज़ाइन के लिए महत्वपूर्ण बन जाते हैं। मुझे वास्तव में यह पसंद है क्योंकि वे सिस्टम में क्या हो रहा है के बारे में एक शानदार दृश्य देते हैं।

  • राज्य मशीन आरेख - यह आप अपने जीवन है, जो कैसे वस्तुओं काम के लिए होती हैं में महान अंतर्दृष्टि देता भर वस्तुओं के राज्यों को ट्रैक करने की अनुमति देता है। यह घटनाओं को मैप करने और सिस्टम में प्रभावी ढंग से कैसा चलने की क्षमता देता है।

ऊपर उल्लेख चित्र का उपयोग करते हुए विश्लेषण और डिजाइन के लिए एक महान आधार देता है, और एक है कि एक बार इन चित्र बनाए जाते हैं, वे आवश्यक रूप से पूरा नहीं कर रहे हैं पर ध्यान देना चाहिए। डिज़ाइन प्रक्रियाओं में, आप इन आरेखों को बदल देंगे क्योंकि सिस्टम विकसित होता है। मैं आशान्वित हूं कि इससे आपको सहायता मिलेगी। नीचे वर्णित विभिन्न आरेखों के लिए विकिपीडिया के लिंक नीचे दिए गए हैं।

Use Case Diagram

Activity Diagram

Sequence Diagram

State Machine Diagram

2

हर कार्यक्रम के पीछे एक समस्या डोमेन है, जिसमें शायद समस्याओं का एक सेट है कि अच्छी तरह से डोमेन-जानकार के एक समूह द्वारा समझ रहे हैं लोग, और एक समाधान डोमेन, जिसमें ऐसी समस्याओं को हल करने के तरीकों को एकत्रित किया जाता है और समस्याओं को संभालने के लिए उपयोग किया जाता है।

कुछ समझाने के लिए, आपको पहले समस्या डोमेन पर सहमत होना होगा। यदि आपकी समस्या डोमेन सिग्नल प्रोसेसिंग है, और स्पष्टीकरण किसी ऐसे व्यक्ति के पास जा रहा है जो डोमेन से अपरिचित है, तो आप पहले से ही टोस्ट हैं।

फिर आपको समाधान डोमेन को समझाने की आवश्यकता है (या एक इंजीनियरिंग हैंडबुक में एक समाधान के रूप में समाधान के एक ज्ञात सेट को देखें), ताकि आप इस विशेष समस्या के लिए उपयुक्त समाधान की एक विशेष पसंद को उचित ठहरा सकें और अन्य बाधाओं को उत्तर पर रखा जा सकता है (छोटी मशीन में चलता है, एक दिन में बनाया जा सकता है, आदि)। यदि आप जिस व्यक्ति को चीजों की व्याख्या कर रहे हैं, वह सिग्नल प्रोसेसिंग के आपके चुने हुए डोमेन में किसी समस्या के संभावित समाधान के रूप में फास्ट फूरियर ट्रांसफॉर्मेशन को समझ में नहीं आता है, तो आप अकेले समाधान को विस्तारित करने में सक्षम नहीं होंगे जो आपके सबसे अच्छे हैं विकल्प।

एक बार जब आप इन दो बाधाओं को पार करते हैं, तो हो सकता है कि एक फ्लोचार्ट हेलफुल हो। विभिन्न प्रकार के यूएमएल आरेख जैसे अन्य क्रैच विभिन्न दृष्टिकोणों से समाधान की संरचना को समझाते हैं। कौन सा परिप्रेक्ष्य मायने रखता है इस पर निर्भर करता है कि स्पष्टीकरण का उद्देश्य क्या है।

फ्लोचार्ट्स के संबंध में: जब वे एक बार लोकप्रिय थे, एल्गोरिदम का वर्णन करने के लिए, psuedo कोड आमतौर पर पर्याप्त है। वे लोग जो psuedo कोड का पालन नहीं कर सकते हैं, वे बड़े प्रवाह चार्ट का पालन करने की संभावना नहीं रखते हैं। और यदि आपका फ्लोचार्ट छोटा है, तो आपको इसकी आवश्यकता नहीं है। मैंने 20 वर्षों में गंभीरता से उपयोग नहीं किया है। अधिकांश कंप्यूटर विज्ञान साहित्य इसका उपयोग नहीं करते हैं।

यह कहकर, जब कोई बेहद अच्छी जानकारी में समझना चाहता है कि कोड का वास्तविक टुकड़ा क्या कर रहा है, खासकर स्वचालित प्रोग्राम विश्लेषण के उद्देश्यों के लिए, फ्लोचार्ट्स (फैनसीयर नाम "नियंत्रण प्रवाह" के तहत) अभी भी बहुत उपयोगी हैं । a COBOL control flow graph देखें (और this for an explanation देखें)। यह स्पष्ट होना चाहिए कि आप किसी अन्य व्यक्ति को एल्गोरिदम समझाए जाने के लिए इसका उपयोग नहीं करना चाहते हैं।