कौन से यूएमएल आरेख अभी भी व्यापक रूप से उपयोग किए जा रहे हैं? [बन्द है]


19

मैं स्नातक स्तर पर सॉफ्टवेयर इंजीनियरिंग सिखाता हूं और मेरे पास यूएमएल चिकित्सकों के लिए एक प्रश्न है।

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

यूएमएल आरेख अभी भी व्यापक रूप से पेशेवर अभ्यास में उपयोग किए जा रहे हैं, और क्यों? क्या ऐसे आरेख हैं जिनका अब उपयोग नहीं किया जाता है और क्यों?

एनबी: राय आधारित बहस और चर्चाओं से बचने के लिए, कृपया अपने उत्तर को तथ्यात्मक और उद्देश्य तत्वों (यदि संभव हो तो, सत्यापन योग्य) या व्यक्तिगत अनुभव पर तटस्थ टिप्पणियों के साथ स्पष्ट करें


10
हम नहीं जानते। हम इस तरह की चीजों का पता लगाने के लिए सर्वेक्षण नहीं करते हैं।
रॉबर्ट हार्वे

3
आपका प्रश्न मुख्य रूप से राय आधारित है। मैं यूएमएल का उपयोग कर रहा हूं, लेकिन आपको "यूएमएल मर चुका है" का जवाब देने वाले काफी लोग मिलेंगे।
qwerty_so

1
softwareengineering.stackexchange.com/q/305031/40065 एक बहुत ही संबंधित प्रश्न है (लगभग दोहरा, लेकिन बहुत अलग रूप में तैयार)
बेसिल स्टायरनेविच

1
लेकिन शायद यूएमएल अब (वास्तविक जीवन में) ज्यादा इस्तेमाल नहीं किया जाता है? यह मेरी बात थी! तब आपके प्रश्न का उत्तर होगा: कोई नहीं
बेसिल स्टैर्नकेविच

1
जब यूएमएल युवा था, मार्टिन फाउलर ने यूएमएल डिस्टिल्ड पुस्तक लिखी , जो बहुत सारे प्रोग्रामर के लिए एक डेस्क संदर्भ बन गया। कुछ साल बाद मार्टिन कम व्यावहारिक अनुप्रयोग नोट लिखा UmlAsSketch , UmlAsNotes , UnwantedModelingLanguage
निक अलेक्सिएव

जवाबों:


15

यूएमएल द्वारा प्रस्तावित कई आरेखों में, वर्ग आरेख और अनुक्रम आरेख अभी भी व्यापक रूप से उपयोग किए जाते हैं, निश्चित रूप से राज्य के चित्र के बाद:

  • कोड में कूदने से पहले डिज़ाइन करने और चर्चा करने के लिए उन्हें आसानी से सफेद बोर्डों पर इस्तेमाल किया जा सकता है
  • वे बहुत जल्दी एक सिंहावलोकन करने की अनुमति देते हैं जो अकेले कोड इतनी आसानी से नहीं देता है, और इसके लिए कोई व्यवहार्य विकल्प नहीं है।

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

मुझे यकीन है कि उनकी जगह यूएमएल अभी भी भारी और व्यवस्थित रूप से उपयोग की जाती है। मैं कल्पना नहीं करता कि एयरोस्पेस सॉफ्टवेयर या परमाणु पॉवरप्लांट नियंत्रण प्रणाली यूएमएल प्रलेखन के पूर्ण सेट के बिना निर्मित होती हैं। लेकिन मेरा मानना ​​है कि यह नियम से अधिक अपवाद है।

मैं इस कथन की पुष्टि तब करता हूं जब किताबों की दुकानों में देखता हूं। कुछ साल पहले, आप यूएमएल 2.0 पर बहुत सारी किताबें पा सकते थे। आजकल, यदि आप यूएमएल 2.5 की तलाश कर रहे हैं, तो विकल्प बल्कि प्रतिबंधित है। इससे भी बदतर: बहुत से लेखक अपनी पुरानी किताबों को संशोधित करने का प्रयास भी नहीं करते हैं ताकि उन्हें अप-टू-डेट रखा जा सके (उदाहरण: फाउलर का अच्छा " यूएमएल डिस्टिल्ड " परिचय जो 2003 से अब तक यूएमएल 2.0 के साथ है और एंबलर के तत्वों के लिए समान है। UML 2.0 शैली का "!)।

मुझे नहीं लगता कि यह कम प्रवृत्ति बदल जाएगा, का सामान्यीकरण को देखकर करते चुस्त और "व्यापक प्रलेखन से अधिक कार्य सॉफ्टवेयर" की अपनी पदोन्नति।

अंत में, मैं बहुत ही उत्तेजक तरीके से दावा करूंगा कि मॉडलिंग के तरीके एक डार्विनिस्टिक स्कीम का पालन करते हुए दिखाई देते हैं: केवल सबसे उपयुक्त डायग्रामिंग तकनीक बच जाएगी, जो अनौपचारिक दृष्टिकोणों (जैसे नैपकिन चित्रण) और विस्तृत कोड (जैसे) पर एक स्पष्ट लाभ प्रदान करती हैं एक ए 1 गतिविधि आरेख क्यों बनाएं, जब संबंधित कोड ए 4 शीट पर फिट हो सकता है?) ;-)



4
"ए 1 गतिविधि आरेख क्यों बनाएं, जब संबंधित कोड ए 4 शीट पर फिट हो सकता है?" उत्तम।
nbubis

वैसे मेरे अपने अनुभव से, काफी कुछ कंपनी मॉडल में देखा गया है कि समय की बर्बादी होती है, केवल कोडिंग ...
21

@Christophe एक "नैपकिन चित्रण" क्या है?
रगड़

@rugk मैं सरलीकृत अनौपचारिक आरेखों का जिक्र कर रहा था जो आप लंच के समय डिजाइन पर चर्चा करते समय आकर्षित करते हैं ( मुझे पता है कि यह एक बुरी आदत है ) एक पेपर नैपकिन या एक पेपर टेबल क्लॉथ पर, जिसे हर कोई समझता है और आप कभी-कभी कार्यालय वापस आते हैं आपको एहसास है कि यह वास्तव में आपकी समस्या को हल करता है।
क्रिस्टोफ

7

दूसरी ओर, मैंने कई स्नातकों से सुना है कि यूएमएल अब खाइयों में उपयोग नहीं किया जाता है।

वे सभी अभ्यास में उपयोग किए जाते हैं। लेकिन हर कोई उनका उपयोग नहीं करता है। कुछ लोग पूरी तरह से डिजाइन करते हैं, और सीधे कोडिंग में छलांग लगाते हैं। आप यह जानने के लिए कि "हर कोई" क्या करता है, आप वास्तविक सबूत पर भरोसा नहीं कर सकते।

जब आप मूल्य जोड़ते हैं तो यूएमएल जैसे उपकरण सबसे अच्छा काम करते हैं ; जैसे

  • बड़ी परियोजनाओं के लिए
  • एक परियोजना के जटिल भागों के लिए
  • जब प्रोजेक्ट डिज़ाइन के लिए कई लोगों से इनपुट की आवश्यकता होती है

उन्हें करने के लिए सिर्फ उन्हें बनाना (या क्योंकि प्रक्रिया आपको कहती है) उत्पादक नहीं है। सबसे अच्छा अभ्यास यह है कि आप किस आरेख का चयन करें, और आप किस प्रकार का उपयोग करते हैं। जब और जहाँ यह मदद करता है, तो यूएमएल का उपयोग करें ... और इसमें आपके द्वारा उपयोग किए जाने वाले यूएमएल आरेख के प्रकार का चयनात्मक होना शामिल है।

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


3

यूएमएल अभी भी खाइयों में उपयोग किया जाता है। लेकिन, हमेशा की तरह, लोग इसका सबसेट इस्तेमाल करते हैं। कौन सी सबसेट हाथ में समस्याओं के अधीन है।

यूएमएल कई संस्करणों में आता है। लेकिन, हमेशा की तरह, लोग अनौपचारिक और अनिश्चित रूप से प्रतीकों का उपयोग करते हैं।

यूएमएल यह है कि हम वहाँ के पैटर्न पुस्तकों के बारे में अधिक समझते हैं। यह उन तरीकों में से एक है जो हम व्हाइटबोर्ड पर संचार करते हैं। यह नहीं गया। लेकिन इसे कभी भी औपचारिक रूप से कोड के रूप में उपयोग नहीं किया जाएगा।

ऐसे छात्रों का निर्माण करने के बजाय जो UML संस्करण 2.5 का अनुपालन करने के लिए किसी भी UML आरेख को सही कर सकते हैं , या जो कुछ भी नवीनतम है, वे छात्र उत्पन्न कर सकते हैं जो यह समझ सकते हैं कि चित्र संप्रेषित करने की कोशिश कर रहा है भले ही वह किसी विशेष UML संस्करण के अनुरूप न हो क्योंकि खाइयों में UML का उपयोग कैसे किया जाता है। यह अजीब स्थानीय बोलियों में आता है, अन्य प्रणालियों के साथ मिलाया जाता है, और कभी-कभी हम बस अपने स्वयं के प्रतीक बनाते हैं।

उन्हें सिखाएं कि यह पूछना ठीक है कि चीजों का क्या मतलब है। उन्हें दूसरों को सही करने के लिए मत सिखाएं जो कुछ कल्पना नियमों को तोड़ रहे हैं। हम यहां केवल संवाद करने का प्रयास कर रहे हैं।

सबसे अच्छा उपयोग मैंने uml देखा है एक नए प्रोग्रामर को एक समस्या को हल करने के लिए हमें उनकी योजना दिखाने की अनुमति देता है। यह जल्दी से हमें सिस्टम के उन हिस्सों को दिखाता है जिनकी उन्होंने उपेक्षा की है या उन्हें एहसास नहीं हुआ है।

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

लेकिन मुझे लगता है कि हम सभी जानते हैं कि सामान्य तीर सिर और खुले तीर सिर के बीच अंतर है। सही?


0

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.