2009-07-25 13 views
17

मैं वर्तमान में अपने विंडोज-आधारित सॉफ़्टवेयर के क्षेत्र की समीक्षा कर रहा हूं और 1-> एम से एम-> एम के संबंधों को बदलने की तलाश में हूं। नतीजतन, मुझे कई संबंधित रिकॉर्ड चुनने के लिए UI को समायोजित करने की आवश्यकता है।एकाधिक रिकॉर्ड चुनने के लिए अच्छे यूआई के उदाहरण

आम हैं, लेकिन आम तौर पर बहुत कठोर हैंडल करने के कई तरीके हैं। उदाहरणों में सभी वस्तुओं की दो-फलक सूची, और चयनित वस्तुओं की सूची, या सभी रिकॉर्ड की एक सूची और लागू होने वाले प्रत्येक के बगल में एक चेकबॉक्स शामिल है।

मेरे मामले में, एक भयानक लॉट (हजारों में) रिकॉर्ड हो सकते हैं जो संबंधित हो सकते हैं, इसलिए मुझे शायद किसी प्रकार की खोज तंत्र शामिल करने की आवश्यकता होगी।

मैं एक कठिन और तेजी से जवाब के लिए नहीं देख रहा हूँ - मैं कुछ बहुत आसानी से है कि कार्यात्मक है, मैं अगर यहां किसी के साथ आने के लिए (या देखा जाता है) है करने के लिए किसी भी महान UI के देखने के लिए देख रहा हूँ लागू कर सकते हैं इस तरह की चीज, चाहे वह वेब आधारित है, विंडोज़, मैक, यूनिक्स, जो भी हो।

छवियों या उनके लिंक के लिए सराहना की जाएगी!

संपादित करें: यहाँ मैं क्या कर रहा हूँ पर विचार का एक उदाहरण है:

Sample Search UI 1

+0

क्या करें आप वापस लौटने के लिए सुविधा प्रदान करना चाहते हैं? (बस जांच; असंभव लगता है, लेकिन डिजाइन को प्रभावित करेगा)। – RJFalconer

+0

नहीं, यह केवल एक चयन विधि है। उपर्युक्त मेरे उदाहरण में, लिंक आपको उस व्यक्ति के रिकॉर्ड पर ले जा सकता है, यदि आवश्यक हो तो इसे संपादित करने के लिए, या "निकालें", "संपादित करें" सहित अन्य विकल्पों की सूची पॉप अप करें। –

+0

एक के लिए जुड़े लोगों की औसत/अधिकतम संख्या क्या है? यूआई डिजाइन प्रक्रिया के लिए यह महत्वपूर्ण है। – Darius

उत्तर

5

मुझे पसंद है जिस तरह से StackOverflow कई सवाल के साथ कई टैग संबंधित है:

alt text http://img11.imageshack.us/img11/7062/imagen9n.png

आइटम उपयोगकर्ता प्रकार के रूप में प्रदर्शित किए जाते हैं

  1. आप रिकार्ड आप चाहते हैं के साथ स्पष्ट रूप से शुरू के साथ कई वस्तुओं को जोड़ने के लिए।

  2. ही आप लिखते हैं खोज मिलान प्रदर्शित

  3. उपयोगकर्ता वांछित अभिलेख (छंटाई अच्छा होगा चयन (पर "खोज" दबाने की कोई आवश्यकता)। अतः "टैग प्रासंगिकता" का उपयोग करता है। उदाहरण करके लिखने के लिए 'एक' नहीं बल्कि एएसपी से जावा लाता है क्योंकि जावा एएसपी से ज्यादा सवाल है, अपने मामले प्रासंगिकता में उपयोगकर्ता नाम हो सकता है)

  4. प्रणाली संबंध (स्मृति में)

  5. तो बनाता है रिकॉर्ड के एक नंबर (5+) इनपुट फ़ील्ड भर रहे हैं, वे एक में स्थानांतरित हो गए हैं अर्द्ध Regid क्षेत्र (नहीं एक बहुत समस्या है क्योंकि यह केवल 5 टैग एक भी प्रश्न के भीतर है, लेकिन "रोचक टैग" की तरह सुविधा की जरूरत होगी आपके मामले के कुछ में)

alt text http://img7.imageshack.us/img7/8753/imagen12p.png

एसोसिएटेड आइटम एक आदेश दिया ढंग से एक "कठोर" क्षेत्र

बेशक

में ले जाया जाता

    (एक मेज का प्रयोग करके)
  • अंत में जब उपयोगकर्ता एसोसिएशन के साथ समाप्त होता है तो यह SAVE या CANCEL बटन क्लिक करता है।

इस दृष्टिकोण में उपयोगकर्ता को "खोज" या "अन्य जोड़ें" पर दबाए जाने की आवश्यकता नहीं है, जो उन्हें उनके द्वारा किए जा रहे कार्यों से परेशान करता है, ऐसा कहा जा रहा है कि यह विचार की अपनी ट्रेन को बाधित करता है।

इसके अलावा, अगर आप उपयोगकर्ता कुछ पर क्लिक करने के जबकि वे लिख रहे हैं, यूआई कम कुशल है माउस हड़पने कर (मुझे लगता है कि वहाँ कुछ है कि के बारे में Hick's law कहा जाता है, लेकिन काफी स्पष्ट रूप से मैं गलत हो सकता है)

जैसा कि आप देखते हैं कि यह दृष्टिकोण आपके मन में काफी पहले से है, लेकिन उपयोगकर्ता को खुश करने के लिए कुछ सुविधाएं जोड़ना (खतरे यह होगा कि उपयोगकर्ता इस दृष्टिकोण को प्यार करता है और इसे सिस्टम के अन्य हिस्सों में चाहता है)

+0

महान उदाहरण, मैंने कभी भी इसके बारे में सोचा नहीं! –

+0

@ टिम सुलिवान: हेहेह और यह हमारे सामने हर दिन है ना? यह एक अच्छा यूआई की विशेषता है, आप इसके बारे में नहीं सोचते हैं। अन्यथा आपको उस डरावनी इंटरफ़ेस के बारे में हमेशा बुरा लगा है जो आपको अपना समय बर्बाद कर देता है ..... – OscarRyz

+0

धन्यवाद !! मुझे आशा है कि कार्यान्वयन के साथ आपको बड़ी सफलता मिलेगी, जब आप पूरा कर लेंगे तो एक स्क्रीन शॉट पोस्ट करें? – OscarRyz

2

एक खोज विशेषता यह है कि वास्तविक समय में रिकॉर्ड फिल्टर लिखते-लिखते ही शायद एक अच्छा विचार शामिल करने के लिए किया जाएगा। एक और रिकॉर्ड रिकॉर्ड करने की संभावना होगी।

चूंकि बहुत सारे रिकॉर्ड हो सकते हैं, इस मामले में सबसे अच्छी पसंद शायद एक अलग क्षेत्र है जो आपके द्वारा पहले से चुने गए कार्यों को प्रदर्शित करता है, ताकि उपयोगकर्ता को चयन क्षेत्रों के आसपास स्क्रॉल करना पड़ेगा उनके पास पहले से क्या है।

0

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

+0

कई उदाहरण हैं। एक बैठक में कई लोग हो सकते हैं, एक व्यक्ति की कई बैठकें हो सकती हैं। यदि आपके पास रिकॉर्ड से जुड़े कई संसाधन हैं तो यह समेकित किया जा सकता है। उदाहरण के लिए, एक बैठक में कई लोग और उपकरण के कई टुकड़े हो सकते हैं। यह मेरे मूल प्रश्न के लिए एक जरूरी आवश्यकता नहीं है, लेकिन ऐसा कुछ है जो मुझे सॉफ़्टवेयर में कई मामलों में निपटने के लिए है। –

1

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

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

मैं कोई भी परिणाम नहीं होने पर approximate string matching करने की खोज का सुझाव दूंगा। यह बहुत परेशान है कि आप ऐसा कुछ नहीं ढूंढ पा रहे हैं जिसे आप बिल्कुल याद नहीं करते हैं।

अंत में, पहली छाप (हालांकि कार्यक्षमता स्वयं नहीं) का परीक्षण करने के लिए, मैं इसे 5 second test पर अपलोड करने का सुझाव देता हूं और देखता हूं कि आपको क्या मिलता है।

+0

"चेतावनी" सिर्फ एक चिपचिपा नोट है जिससे आप लोगों को यह जान सकें कि मैं किस बारे में बात कर रहा हूं, यह यूआई का हिस्सा नहीं है। :-) इसके अलावा, जो मैं खोज रहा हूं वह मैंने जो पोस्ट किया है उसकी आलोचना नहीं है, बल्कि मौजूदा ऐप्स के उदाहरण या वैकल्पिक यूआई के सुझाए गए मॉकअप के उदाहरण हैं। –

+0

ने पहली छाप पुनर्प्राप्ति –

2

self-explanatory GUI http://img25.imageshack.us/img25/8568/28666917.png

original image

एक और बात यह है कि के लिए लिंक मेरी राय आपकी समस्या को कई रिकॉर्ड का चयन है, लेकिन रिकॉर्ड के हजारों के उन दसियों फ़िल्टर करने के बारे में नहीं है।एम-> एम एसोसिएशन को विभिन्न तरीकों से कार्यान्वित किया जा सकता है, लेकिन मुश्किल हिस्सा डेटा की विशाल मात्रा ब्राउज़/खोज करने के लिए सुविधाजनक और तार्किक तरीका प्रदान करना है।

+0

के लिए एक और सुझाव जोड़ा, मोडल संवाद में खोज फ़ील्ड आपके द्वारा टाइप किए जाने वाले रिकॉर्ड को तुरंत फ़िल्टर करता है - iTunes शैली में। – Darius

3

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

कई चुनिंदा तरीकों हैं। उपयोगिता दृष्टिकोण से, प्रत्येक परिदृश्य के लिए केवल एक विधि का उपयोग करना बेहतर होगा। फिर जब उपयोगकर्ता इसे देखता है, तो उन्हें पता चलेगा कि क्या करना है।

विभिन्न चयन तकनीक:

  1. ड्रॉपडाउन सूची - एक चयन के लिए स्पष्ट।
  2. खुला सूची बहु का चयन करें - उदाहरण के लिए: एक बहु पाठ बॉक्स कि 10 या 20 लाइनों से पता चलता है और एक स्क्रॉल पट्टी
  3. ड्रॉपडाउन सूची जहां तो हिट और कई चयन
  4. सूची चलती जोड़ने के लिए लिंक या बटन 'जोड़ें' का चयन किया गया है - जहां आपके पास दो खुली सूचियां हैं, बाएं सूची में उपलब्ध सभी विकल्पों के साथ, आप कुछ चुनते हैं, फिर अपने चयन को सही सूची में ले जाने के लिए एक बटन क्लिक करें।
  5. चेक बॉक्स - कई चयन संभावनाओं के कुछ ही विकल्पों के लिए अच्छा है। अच्छा कम सूचियों

आपने कहा है कि आप संभावित विकल्प के हजारों होगा के लिए है, ताकि -1 और 5. समाप्त सच -

  • आइटम की सूची, के साथ प्रत्येक एक बटन उन्हें पास 'जोड़ें' , हजारों उन सभी को खत्म कर देंगे, क्योंकि प्रयोज्यता सूची में कुछ सौ से अधिक के साथ अच्छी तरह से स्केल नहीं करती है।

    यदि आप सूची को फ़िल्टर करने के लिए उपयोगकर्ता पर भरोसा कर सकते हैं, जैसे कि आपके उदाहरण में, तो 6 उपयुक्त हो सकता है। यदि आप सोचते हैं कि फेसबुक पिक्चर टैगिंग कैसे काम करती है, तो मुझे लगता है कि यह लंबी सूचियों के लिए काफी कुशल है: पृष्ठभूमि: फेसबुक पिक्चर टैगिंग एक ऐसी तंत्र है जो आपको एक या अधिक लोगों को एक छवि के हिस्सों को आवंटित करने की अनुमति देती है - यानी उन्हें 'टैग' करें।

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

    आपके आवेदन के लिए यह प्रत्येक संगठन के लिए एक बार यह कदम करने वाले उपयोगकर्ता पर भरोसा करेगा, क्योंकि मुझे लगता है कि अन्य वस्तुओं के सभी समान नाम नहीं होंगे!

    यहाँ फेसबुक टैगिंग आवेदन की एक छवि है: http://screencast.com/t/9MPlpJQJzBQ

  • +1

    मुझे फेसबुक टैगिंग विधि पसंद है। "हालिया" या संभवतः "संदर्भ के आधार पर सबसे आम विकल्प" होने के नाते वास्तव में बहुत अच्छा है। –

    0

    वहाँ महत्वपूर्ण सवाल पर विचार करने के कर रहे हैं - कितने रिकॉर्ड आम तौर पर (के रूप में संघ के लिए उपलब्ध होने के बजाय) का उपयोग किया जाएगा? क्या एसोसिएशन के एक तरफ बड़ी संख्या में रिकॉर्ड्स होंगे (1-> एम से स्विच दिया गया है, ऐसा लगता है)?

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

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

    +0

    यदि मैं मॉकअप पर कोई अच्छा था या अगर मैं अभी याद कर सकता हूं (यह 5 बजे) किसी भी एप्लिकेशन का उपयोग करता है तो मैं एक नकली जोड़ सकता हूं या एक मौजूदा एप्लिकेशन को संदर्भित करता हूं। माफ़ कीजिये! – coppro

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