परिदृश्य विवरण
एक नया सदस्य (छात्र या सदस्य) ऑनलाइन लाइब्रेरी पोर्टल पर जाता है और खाता बनाने के लिए आता है। वह व्यक्तिगत विवरण (नाम, ईमेल, पासवर्ड) प्रदान करता है, प्रणाली अद्वितीयता की जांच करती है (उदाहरण के लिए, ईमेल पहले से पंजीकृत नहीं है), डेटाबेस में खाता बनाती है और एक स्वागत/सक्रियण ईमेल भेजती है। सफल पंजीकरण के बाद, उपयोगकर्ता शीर्षक/लेखक के आधार पर पुस्तक खोजता है, उपलब्धता देखता है और यदि उपलब्ध हो तो आरक्षण करता है (होल्ड रखता है)। यदि पुस्तक उपलब्ध नहीं है, तो प्रणाली उपलब्ध होने पर सूचित करने का विकल्प प्रदान करती है। प्रक्रिया उपयोगकर्ता इंटरफेस पर एक पुष्टिकरण संदेश के साथ समाप्त होती है।
यह प्रवाह विश्वविद्यालय/सार्वजनिक पुस्तकालय प्रणालियों में आम है और उपयोगकर्ता ऑनबोर्डिंग + मुख्य संसाधन अंतरक्रिया को दर्शाता है।
UML अनुक्रम आरेखों में मुख्य अवधारणाएं (इस उदाहरण के लिए संबंधित)
जीवन रेखा — प्रतिभागियों के लिए ऊर्ध्वाधर बिंदी रेखा (उदाहरण के लिए: उपयोगकर्ता, ब्राउज़र, लाइब्रेरी एप्लिकेशन)।
संदेश — कॉल के लिए तीर: सिंक्रोनस (पूर्ण शीर्ष वाली ठोस →), प्रतिक्रिया (बिंदी <–), वस्तु निर्माण (नई जीवन रेखा पर «बनाएं» के साथ बिंदी तीर)।
सक्रियता बार — जब कोई वस्तु प्रक्रिया कर रही होती है (सक्रिय/असक्रिय) तो दिखाता है।
अल्ट फ्रैगमेंट — शर्तीय तर्क (उदाहरण के लिए, [पंजीकरण सफल] बनाम [ईमेल पहले से मौजूद है])।
ऑप्ट फ्रैगमेंट — वैकल्पिक व्यवहार (उदाहरण के लिए, [उपयोगकर्ता तुरंत आरक्षण करने का चयन करता है])।
लूप — पुनरावृत्तिक क्रियाकलाप के लिए (उदाहरण के लिए, यदि कोई परिणाम नहीं है तो खोज को बेहतर बनाना)।
अभिनेता — मानव उपयोगकर्ता (छड़ी आकृति)।
प्रतिक्रिया संदेश — परिणाम वापस ले जाने वाले बिंदी तीर।
समय प्रवाहऊपर से नीचे.
प्रतिभागी (जीवन रेखाएं):
सदस्य (अभिनेता)
ब्राउज़र (फ्रंटएंड/यूआई)
लाइब्रेरी एप्लिकेशन (एप्लिकेशन/नियंत्रण परत)
उपयोगकर्ता डेटाबेस (खातों के लिए डेटाबेस)
बुककैटलॉग (पुस्तकों और आरक्षण के लिए डेटाबेस/सेवा)
ईमेल सेवा (बाहरी सूचना सेवा)
यह प्लांटयूएमएल स्क्रिप्ट केस स्टडी का पूर्ण प्रतिनिधित्व करती है। इसमें खाता निर्माण, सत्यापन, ईमेल भेजना, पंजीकरण के बाद पुस्तक खोज/आरक्षण, उपलब्धता के लिए अल्ट और सूचना के लिए विकल्प शामिल हैं।
@startuml
शीर्षक ऑनलाइन लाइब्रेरी – नए उपयोगकर्ता पंजीकरण और पुस्तक आरक्षण अनुक्रम आरेख
skinparam monochrome सत्य
skinparam छाया असत्य
skinparam अनुक्रम संदेश संरेखण केंद्र
स्वचालित संख्या “[0]”
किरदार पाट्रॉन
भागीदार “ब्राउज़र” के रूप में UI
भागीदार “लाइब्रेरीएप्प” के रूप में एप्प
भागीदार “यूजरडीबी” के रूप में यूजरडीबी
भागीदार “बुककैटलॉग” के रूप में कैटलॉग
भागीदार “ईमेलसेवा” के रूप में ईमेल
पाट्रॉन -> UI: पंजीकरण पृष्ठ तक पहुंच
सक्रिय करें UI
UI -> App: पंजीकरण जमा करें(नाम, ईमेल, पासवर्ड)
सक्रिय करें एप्प
एप्प -> यूजरडीबी: ईमेल मौजूद है या नहीं जांचें(ईमेल)
सक्रिय करें यूजरडीबी
यूजरडीबी –> एप्प: मौजूद = असत्य / सत्य
असक्रिय करें यूजरडीबी
अल्ट ईमेल पहले से मौजूद है
एप्प –> UI: त्रुटि लौटाएं(“ईमेल पहले से पंजीकृत है। कृपया लॉगिन करें या अलग ईमेल का उपयोग करें।”)
UI –> पाट्रॉन: त्रुटि संदेश प्रदर्शित करें
‘ हटा दिया: एप्प नष्ट करें → आवश्यक नहीं + अल्ट शाखा में पार्सर समस्या उत्पन्न करता है
विकल्प पंजीकरण वैध है
App -> UserDB: createUserAccount(name, email, hashedPassword)
activate UserDB
UserDB –> App: userId, accountCreated
deactivate UserDB
App -> Email: sendWelcomeEmail(userId, email, activationLink)
activate Email
Email –> App: emailSent
deactivate Email
App -> UI: returnSuccess(“Account created! Check email for activation.”, userId)
UI –> Patron: Show success & redirect to login/dashboard
‘ Post-registration: Book Reservation flow
opt User proceeds to reserve a book
Patron -> UI: Search book (title or author)
UI -> App: searchBooks(query)
activate App
App -> Catalog: queryBooks(query)
activate Catalog
Catalog --> App: listOfBooks (with availability)
deactivate Catalog
alt Books Found
loop Refine search if needed
App --> UI: displayResults(booksList)
UI --> Patron: Show book list
Patron -> UI: Select book & request reservation
UI -> App: reserveBook(bookId, userId)
end
App -> Catalog: checkAvailability(bookId)
Catalog --> App: available = true/false
alt Available
App -> Catalog: placeHold(bookId, userId, reservationDate)
activate Catalog
Catalog --> App: holdPlaced, reservationId
deactivate Catalog
App --> UI: displayConfirmation("Book reserved! Pickup when available.")
UI --> Patron: Show success message
else Not Available
App --> UI: offerNotification("Book unavailable. Notify when ready?")
Patron -> UI: Confirm notification
UI -> App: subscribeNotification(bookId, userId)
App -> Catalog: addToWaitlist(bookId, userId)
Catalog --> App: waitlistAdded
App --> UI: confirm("Notification set.")
end
else No Books Found
App --> UI: displayNoResults("No matches. Try different keywords.")
end
deactivate App
end
end
deactivate UI
@enduml
इस PlantUML कोड का उपयोग कैसे करें
तुरंत रेंडरिंग के लिए https://www.plantuml.com/plantuml/uml/ में पेस्ट करें।
में Visual Paradigm Desktop: नया Sequence Diagram → Tools → Import → PlantUML → पेस्ट → तुरंत रेंडर और विज़ुअल एडिट करें।
में VP Online या AI चैटबॉट: प्रॉम्प्ट्स में आधार के रूप में उपयोग करें या AI रिफाइनमेंट के लिए आयात करें।
अनुकूलित करें: रंग जोड़ें (स्किनपैरामीटर अनुक्रम तीव्रता 2), प्रतिभागियों के स्टीरियोटाइप (<<डेटाबेस>>), या हटाएं एकरंगी स्टाइल्ड आउटपुट के लिए।

जाएं चैट.विजुअल-पैराडाइग्म.com.
एक विस्तृत प्रॉम्प्ट का उपयोग करें (या ऊपर दिए गए प्लांटयूएमएल को शुरुआती बिंदु के रूप में पेस्ट करें):
ऑनलाइन लाइब्रेरी के लिए यूएमएल अनुक्रम आरेख उत्पन्न करें: नए उपयोगकर्ता नाम/ईमेल/पासवर्ड के साथ पंजीकृत होता है, सिस्टम ईमेल अद्वितीयता की जांच करता है, डीबी में खाता बनाता है, अभिवादन ईमेल भेजता है। फिर उपयोगकर्ता पुस्तक खोजता/आरक्षित करता है – यदि उपलब्ध है तो होल्ड रखें, अन्यथा वेटलिस्ट सूचना प्रस्तुत करें। डुप्लिकेट ईमेल के लिए एल्ट शामिल करें, पंजीकरण के बाद आरक्षण के लिए विकल्प, खोज सुधार के लिए लूप शामिल करें।
एआई द्वारा दृश्य आरेख + प्लांटयूएमएल कोड उत्पन्न किया जाता है। आवर्धन करें:
“डेटाबेस संचालन के लिए एक्टिवेशन बार और नोट जोड़ें।”
“स्टीरियोटाइप के साथ बुककैटलॉग को बाहरी सेवा बनाएं।”
अगले चरणों के लिए प्लांटयूएमएल निर्यात करें।
लॉन्च विजुअल पैराडाइग्म डेस्कटॉप.
अनुक्रम आरेख बनाएं/आयात करें (प्लांटयूएमएल पेस्ट करें → उत्पन्न करें)।
उपकरण > एप्स > अनुक्रम आरेख सुधार उपकरण.
प्रॉम्प्ट/सुधार: “इस लाइब्रेरी पंजीकरण/आरक्षण अनुक्रम को परतदार आर्किटेक्चर में सुधारें: UI/View, कंट्रोलर, सेवा (उदाहरण के लिए, UserService, ReservationService), रिपॉजिटरी/डीबी परतों को अलग करें।”
एआई लाइफलाइन का विस्तार करता है (उदाहरण के लिए, LibraryApp → RegistrationController → UserService → UserRepository; hashPassword(), validateInput() जैसे विस्तृत कॉल जोड़ता है)।
संपादित करें: नोट जोड़ें, स्टीरियोटाइप (<>, <>), फ्रैगमेंट को समायोजित करें।
प्राप्त करेंonline.visual-paradigm.com → ओपनडॉक्स पृष्ठ बनाएं (“लाइब्रेरी सिस्टम – ओनबोर्डिंग और रिज़र्वेशन फ्लो”)।
चित्र डालें: एआई उत्पादन का उपयोग करें या प्लांटयूएमएल/सुधारित संस्करण को आयात करें।
एम्बेड करें: पाठ खंड जोड़ें (उपयोग केस कथानक, पूर्वशर्तें जैसे “उपयोगकर्ता लॉग इन नहीं हुआ है”, पोस्टशर्तें “खाता सक्रिय + रिज़र्वेशन रखा गया”)।
साझा करें: टीम को टिप्पणियों के लिए आमंत्रित करें, संस्करणों को ट्रैक करें।
डेस्कटॉप पर: लेआउट को सुधारें (स्वचालित संरेखण), हायरार्किकल नंबरिंग सक्षम करें, प्रतिलाभ प्रकार जोड़ें (उदाहरण के लिए: :User user)।
मॉडल लिंक करें: उपयोग केस चित्र (“नए पाठक का पंजीकरण”, “पुस्तक रिज़र्व करें”) के लिए ट्रेस करें।
निर्यात करें: विनिर्माण के लिए PNG/PDF, संस्करण नियंत्रण के लिए .vpp प्रोजेक्ट।
यह नया अध्ययन एक ताजा, शैक्षिक-केंद्रित उदाहरण प्रदान करता है, जबकि त्वरित और सटीक UML मॉडलिंग के लिए विजुअल पैराडाइम एआई उपकरणों को प्रदर्शित करता है। प्लांटयूएमएल कोड को तुरंत दृश्य बनाने के लिए रेंडर करें—यदि आप विकल्प चाहते हैं (उदाहरण के लिए, पुस्तकालय अधिकारी की मंजूरी चरण जोड़ें), बस पूछें!
