मैंने पूर्व में कई सिस्टम डिज़ाइन किए और दूसरों का पालन किया है और मैंने इस प्रक्रिया को कई अलग-अलग तरीकों से प्रकट किया है, लेकिन मुझे जो सामान्य लगता है वह यह है कि प्रारंभिक आर्किटेक्चर को कम से कम सबसे बड़ी विशेषताओं के अस्तित्व के लिए योजना बनाना चाहिए ।
उदाहरण के लिए, मैंने एक एचवीएसी नियंत्रण प्रणाली देखी है जिसमें इमारतों, फर्श, कमरों आदि की कोई अवधारणा नहीं थी, उन लोगों के साथ रेट्रोफिट किया गया था और परिणाम उनके आने के रूप में बदसूरत था। या आपके (गैर-स्मार्ट) पॉकेट घड़ी के लिए बेहतर अनुकूल घटकों से निर्मित एक मोबाइल संगीत उपकरण। कहने की जरूरत नहीं है कि किसी भी मामले में अंतिम उत्पाद ग्राहकों के पसंदीदा नहीं थे।
जब आप कहते हैं "गर्भाधान" कि "विचार" से केवल एक कदम ऊपर है और एक अवधारणा बहुत ही फजी हो सकती है। व्यवसाय आमतौर पर अवधारणाओं के बारे में परवाह करता है। ग्राहक आमतौर पर यूएक्स के बारे में परवाह करते हैं - एक अवधारणा जिसे वास्तविकता में लाया जाता है जो उपयोग करने के लिए आसान और सुखद है और इसके उपयोग के माध्यम से कुछ मूल्य लाता है।
आपको किसी भी प्रोग्रामिंग से पहले "अवधारणा" करना होगा, मैं दृश्य स्टूडियो (या अपनी पसंद का आईडीई) खोलने के लिए खुद को कल्पना नहीं कर सकता और यादृच्छिक रूप से कोड लिख सकता हूं, यह देखने के लिए कि यह कहां जाता है।
आप कोडिंग से पहले एक पूर्ण डिज़ाइन नहीं कर सकते हैं (और आपको नहीं करना चाहिए) लेकिन आपके पास उपयोगकर्ता का वर्कफ़्लो क्या होगा, इसका एक मोटा स्केच होना चाहिए।
UX डिजाइन और कोडिंग अक्सर एक-दूसरे को खिलाते हैं, आपको संभवतः इस तथ्य को शामिल करने के तरीके के रूप में किसी भी चीज के लिए कुछ फुर्तीली दृष्टिकोण का उपयोग करने के लिए मजबूर किया जाएगा, इस तथ्य को शामिल करने का तरीका कि आप काम कैसे करते हैं। ऐसा मत सोचो कि आप प्रोग्रामर के सबसे खराब हैं यदि आप इसे एक बार में नहीं देख सकते हैं - कोई भी नहीं कर सकता है और जो लोग सोचते हैं कि वे वही हो सकते हैं जो समस्या के बारे में पर्याप्त उपेक्षा करते हैं ताकि वे दावा कर सकें कि उनके पास एक पूर्ण है चित्र।
किसी बड़े को आकार देने का एक उदाहरण। अवधारणा: "एक दृश्य क्लाउड-आधारित उपकरण बनाएं जो व्यवसायों को अपने सॉफ़्टवेयर प्लेटफार्मों को एकीकृत करने की अनुमति देता है"। यह बहुत अच्छा लगता है और कोई भी विपणन सामग्री लिखना शुरू कर सकता है और इसे बेचने से पहले ही वहां भी। कोडिंग से पहले आपके पास यह होना चाहिए।
पूर्व-डिज़ाइन: "लॉजिक का वर्णन करने के लिए Visio में आकृतियाँ और तीर जैसे हैं; विभिन्न प्लेटफार्मों (एसएपी, एसएफ, डेटाबेस ...) के लिए कनेक्शन की अनुमति देने के लिए प्लग-इन क्षमताएं हैं; एक मॉनिटरिंग कंसोल है, जहां कोई डेटा गुजरने वाले डेटा की खोज कर सकता है; प्रणाली; डेटा को नेत्रहीन रूप से वर्णन करने और एक प्रारूप को दूसरे में बदलने का एक तरीका है "। एक और महान विपणन बूँद। यह आपको कुछ विचार भी देता है कि महत्वपूर्ण क्या है, कोडिंग से पहले भी इस तरह के एक स्केच होना चाहिए।
डिज़ाइन / कोड: "इस तरह की विशेषताओं के साथ एक HTML डिज़ाइनर को होस्ट किया गया है; जावा में बैकएंड को कोड करें ताकि वह किसी भी मौजूदा सर्वर को चला सके; डेटा संरचनाओं और UX को परिभाषित या आवश्यकतानुसार उन्हें संशोधित करने के लिए; आपदा वसूली, त्रुटि की योजना; रिपोर्टिंग, ऑडिट लॉगिंग; योजना संस्करण नियंत्रण; योजना अभिगम नियंत्रण; .... "- यह जितना अधिक अवास्तविक है, सूची को उतना ही बेहतर बनाना है।
... हालाँकि किसी को कम से कम इस बात की जानकारी होनी चाहिए कि चीजें लगभग पूरी तरह से खत्म हो सकती हैं या आपका अंतिम उत्पाद कुछ वास्तव में बेकार कार्यान्वयनों के साथ समाप्त हो सकता है जो अन्यथा महान-दिखने वाली अवधारणा को मारते हैं - कहते हैं कि आपके दृश्य डिजाइनर को 40 की आवश्यकता है " किसी भी वास्तविक दुनिया वर्कफ़्लो को दिखाने के लिए स्क्रीन, या लॉग आदि में 20 क्षेत्रों में से एक तक सीमित एक सटीक स्ट्रिंग मैच के अलावा अन्य लॉग को खोजने का कोई तरीका नहीं है। इसे लागू करने के अलावा अन्य होने से रोकने का कोई अच्छा तरीका नहीं है। - कुछ सफल होंगे, अन्य असफल होंगे।