2008-10-11 12 views
26

क्या कोई अच्छा टूल या टूल-चेन है जो यू.एम.एल. छवियों को .svg प्रारूप में पाठ स्रोत स्रोत से बनाया जा सकता है? इस प्रश्न का कारण यह है कि मैं छवियों के इस सेट को मैन्युअल रूप से बनाने और अपडेट करने से बचने के लिए इन छवियों की पीढ़ी को स्वचालित करना चाहता हूं।टेक्स्ट फ़ाइलों से यूएमएल आरेखों को प्रस्तुत करना

उत्तर

12

UMLGraph टेक्स्ट आधारित विवरणों से यूएमएल आरेख (मुख्य रूप से कक्षा आरेख और अनुक्रम आरेख) उत्पन्न करने के लिए एक कार्यक्रम है। इसका उद्देश्य जावा स्रोत कोड के साथ प्रयोग किया जाना है, लेकिन कुछ बदलावों के साथ, सी ++ शैली स्रोत कोड का भी उपयोग किया जा सकता है जैसा कि this blog entry द्वारा वर्णित किया गया है। UMLGraph वेबसाइट से

उद्धरण:

जीएनयू plotutils pic2plot कार्यक्रम तो की प्रक्रिया के अनुक्रम आरेख एक PNG बना सकते हैं, पीएनएम, (छद्म) GIF, एसवीजी, ऐ, पोस्टस्क्रिप्ट, सीजीएम, एफआईजी, पीसीएल, एचपीजीएल, रेजिस, या टीईके ड्राइंग।

+1

अनुक्रम आरेखों के लिए यह कोशिश की; यह अविश्वसनीय रूप से परिष्कृत पाया गया है (अनुक्रम आरेख चित्र मैक्रोज़ के साथ किए जाते हैं, जावा नहीं - मैं नमूने काम करने के लिए प्राप्त कर सकता हूं, लेकिन जहां तक ​​मैं कह सकता हूं वैध होने के बावजूद मेरे अपने मैक्रोज़ विफल हो गए), और नमूना आउटपुट भयानक लग रहा है बिटमैप्स या एसवीजी (उबंटू 14.04 पर pic2plot 2.6 के साथ)। अनुक्रम आरेखों के लिए मैं इससे बचूंगा ... – Adrian

+0

आपको http://www.zenuml.com चेकआउट करना चाहिए। यह पाठ को क्रमशः अनुक्रम आरेख में परिवर्तित करने के लिए एक ऑनलाइन है। –

0

मुफ्त यूएमएल उपकरण JUDE जावा स्रोत कोड से यूएमएल आरेखों को बनाने की अनुमति देता है। मुझे नहीं पता कि यह अन्य भाषाओं के लिए क्या करता है।

+0

अरे Jorn, जूड अब कहा जाता है 'Astah' (http://astah.net/editions/professional) और चित्र जावा स्रोत कोड और सी से बनाया जा सकता ++ और सी # मुफ्त प्लगइन्स का उपयोग (http://astah.net/features/plugins)। – Satomi

21

मैं उपकरण है कि यहाँ इनपुट के रूप में एक टेक्स्ट का मॉडल वर्णन स्वीकार की एक सूची बना लिया है:

http://modeling-languages.com/uml-tools-textual-notations-define-uml-models/

+0

क्या यह सामान्य है कि SQL कीवर्ड को वेबपृष्ठ पर ऊपरी मामले में मुद्रित किया जाता है? (मुझे लगता है कि वे एसक्यूएल कीवर्ड हैं, लेकिन मुझे यकीन नहीं है।) – leemes

+0

ऐसा नहीं है, मैंने इसे संदर्भित मुख्य यूएमएल उपकरण पृष्ठ में तय किया है। ऐसा क्यों हुआ है मैं अभी भी पूरी तरह से सुनिश्चित नहीं हूं –

1

Enterprise Architect करता है काफी स्वचालित रूप से चित्र बनाने, स्रोत कोड से में एक अच्छा काम (विभिन्न में भाषाएं) साथ ही डेटाबेस या अन्य स्रोतों से भी।

11

PlantUML एक अच्छा उपकरण है जो पाठ को मानकीकृत उम आरेखों में परिवर्तित करता है।

आप वहाँ साधारण पाठ से यूएमएल अनुक्रम आरेख की पीढ़ी की अनुमति देने के JS Sequence Diagrams के रूप में बुलाया एक और उपकरण, है confluenze

+1

प्लांटयूएमएल एक स्टैंडअलोन जावा एप्लिकेशन के रूप में उपलब्ध है, और इसमें [विकी, संपादकों और आईडीई का एक समूह] के लिए प्लगइन संस्करण भी हैं (http://plantuml.sourceforge.net/running .html)। डिफ़ॉल्ट रूप से यह पीएनजी फाइलों का उत्पादन प्रतीत होता है, लेकिन उपयुक्त झंडे के साथ svg करने के लिए आउटपुट कर सकते हैं। – Alan

+2

प्लांटयूएमएल के लिए एक निश्चित +1, खासकर अनुक्रम आरेखों के लिए - यूएमएलग्राफ में तस्वीर मैक्रोज़ की तुलना में बहुत कम परिष्कृत, छोटे जीयूआई ऐप ऑटोपॉडेट्स और हर बार जब आप सहेजते हैं तो आपको अपना चित्र दिखाता है, और त्रुटि संदेश अधिक उपयोगी होते हैं। – Adrian

3

के लिए एक प्लगइन के रूप में इस की है।

यह चित्र बनाने के लिए underscore.js और Raphaël का उपयोग करता है।

यह सरलीकृत बीएसडी लाइसेंस प्राप्त है और स्रोत GitHub

0

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

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

उन कारणों से, मैं इस दृष्टिकोण को और अधिक टूल देखना चाहता हूं।

1

अनुक्रम आरेखों के लिए, मुझे वास्तव में मस्कन पसंद है। सरल पाठ प्रारूप, सुंदर आरेख बाहर।http://www.mcternan.me.uk/mscgen/

जैसे -

"Mscgen एक छोटा सा प्रोग्राम है जो संदेश अनुक्रम चार्ट विवरण पार्स करता है और PNG, एसवीजी, ईपीएस या सर्वर साइड छवि मानचित्र आउटपुट के रूप में (ismaps) का उत्पादन होता है" फार्म के इनपुट:

# MSC for some fictional process 
msc { 
    hscale = "2"; 

    a,b,c; 

    a->b [ label = "ab()" ] ; 
    b->c [ label = "bc(TRUE)"]; 
    c=>c [ label = "process(1)" ]; 
    c=>c [ label = "process(2)" ]; 
    ...; 
    c=>c [ label = "process(n)" ]; 
    c=>c [ label = "process(END)" ]; 
    a<<=c [ label = "callback()"]; 
    --- [ label = "If more to run", ID="*" ]; 
    a->a [ label = "next()"]; 
    a->c [ label = "ac1()\nac2()"]; 
    b<-c [ label = "cb(TRUE)"]; 
    b->b [ label = "stalled(...)"]; 
    a<-b [ label = "ab() = FALSE"]; 
} 

इस तरह उत्पादन का उत्पादन:

Sequence diagram for a fictional process

1

मैं जानता हूँ कि यह एक पुरानी धागा है, लेकिन अभी भी, मैं जो मैं अत्यंत उपयोगी पाते हैं एक और उपकरण साझा करना चाहते हैं और उपयोगकर्ता के अनुकूल: https://www.websequencediagrams.com/

यह एक ऑनलाइन उपकरण है जो आपको किसी भी समय में ले जाएगा और चल रहा है।

इसमें बॉक्स के बाहर बहुत सारे अच्छे लेआउट भी शामिल हैं।
यहाँ उदाहरण के लिए दो प्रकार हैं:

enter image description here

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