PDA

View Full Version : طراحی رابط کاربر مناسب و استاندارد برای ورود اطلاعات در بانک



reza5
جمعه 30 اردیبهشت 1384, 17:46 عصر
با سلام خدمت دوستان
در برنامه های بانک اطلاعاتی ورود اطلاعات (تغذیه سیستم) مسئله خیلی مهمیه که
چون کاربر عادی و حتی کم سواد با این قسمت زیاد کار داره توجه نکردن به اینترفیس این قسمت مشکلات مختلفی رو ممکنه به وجود بیاره.بعضی جاها ما نیاز به سرعت بالای ورود دیتا داریم چون روزانه تعداد چند صد رکورد باید اضافه بشه ودر بعضی سیتم ها ممکنه فقط به دقت خیلی زیاد نیاز داشته باشیم.برنامه های تحت داس قدیمی
که بیشتر با فاکس 2.6 بودن معمولا یه اینترفیس خاصی داشتن که فقط از صفحه کلید برای ورود اطلاعات استفاده میکردن و سرعت بالایی داشتن البته من موارد زیادی رو تو این برنامه ها دیدم که با یه خطای کوچیک مثلا وارد کردن حرف به جای عدد برنامه خارج میشده و باید از اول اجرا میشد. الان هم تو برنامه های تحت ویندوز بعضی از برنامه نویسا از همون شیوه قدیمی استفاده میکنن در عوض کسای دیگه کاری به این روشای قدیمی نداشتن و حتی برنامه هایی نوشتن که برای ورود اطلاعاتش از موس استفاده زیادی میشه و سرعت ورود پایین میاد.
نمی دونم جایی کسی اومده این قسمت برنامه(بخش ورود داده ها) رو یه جورایی استاندارد یا بهینه کنه یا نه . منظورم طراحی اینترفیسیه که همزمان سرعت بالا دقت زیاد و قابلیت اطمینان بالایی داشته باشه . اگه دوستان واساتیدی که کار کردن و نتیجه هایی گرفتن و کاربر ازشون راضی بوده نظرشونو اینجا بنویسن یا یه نمایی از کارشونو که پیشنهاد میدن اینجا بذارن یه کمکی میشه تا بقیه بتونن از یه رابط کاربر
درست و حسابی و بدون نقص استفاده کنن . :flower:

Mahdi_S_T
شنبه 31 اردیبهشت 1384, 07:18 صبح
من در طراحی از همان روش داسی استفاده می کنم تا کاربر بتواند با صفحه کلید کار کند و اکثرا هم راضی بودند و اشکالات ورود اطلاعات هم که راحته و رفع آن به سادگی انجام پذیر است

javidtaheri
شنبه 31 اردیبهشت 1384, 11:25 صبح
1- سوئیچ بین Editor ها بجای کلید Tab از Enter استفاده کن
2- اکثر کارها را با Enter انجام دهد
3- Hint کاربدر زیادی دارد
4- StatusBar را در زیر فرم خود برای گزارش وضعیت برنامه در هر لحظه استفاده کن
5- help پویا

Mah
شنبه 31 اردیبهشت 1384, 15:02 عصر
سلام :
تمامی مواردی که عزیزان اشاره کردند + همانطور که خود شما هم به این مشکل پی بردید به کاربر اجازه ورود کارکتر به جای اعداد را نداد که کار ساده ای است .
فرم ها ی زیبا و کاربر پسند (User Friendly) نیز بسیار موثر است .
برای بستن یک پنجره از ESC , تایید یک فرم از Enter استفاده کن .
برای جستجوی راحتتر از Locate نیز می توانی استفاده کنی تا کاربر همزمان با زدن کلید نتیجه جستجو را ببیند .

rasoolasadi
شنبه 31 اردیبهشت 1384, 15:17 عصر
با سلام لطفا گزارش گیری در دلفی را بطور کامل شرح دهید .منتظر جواب شما ها هستم.وسلام

Kamran.K
شنبه 31 اردیبهشت 1384, 15:29 عصر
من ترجیح میدم از استانداردهای مایکرسافت استفاده کنم چون دست کم سایر برنامه‌های ویندوز از انها استفاده می‌کنم. مثلا از کلید tab برای پرش بین کنترل ها و esc برای لغو و از enter برای عمل پیش فرض.
به این ترتیب همه چیز در برنامه ما قابل پیش بینی است و کاربر نیاز ندارد به جستجو و کاوش بپردازد.
+ استفاده از grid صرفا جهت نمایش

reza5
شنبه 31 اردیبهشت 1384, 21:07 عصر
با سلام
با تشکر از اظهار نظر دوستان
جاوید جان اگه لطف کنی یه نمونه رو اینجا بذاری برای دانلود خیلی ممنون میشم.
:موفق:

jafari1
شنبه 31 اردیبهشت 1384, 22:30 عصر
دوست عزیز kamran.k
شما فرمودید از دیتاگرید فقط برای نمایش استفاده کنیم پس چگونه فرمی برای ورود سند حسابداری را پیشنهاد میکنید

javidtaheri
یک شنبه 01 خرداد 1384, 17:42 عصر
دوست عزیز
چون برنامه هام مال سازمانهای مختلف است وقت میخواهم تا یک demo ازش بسازم و بعد ارائه کنم
ولی اگر مشکل داشتی فعلا از طریق ایمیل ویا در اینجا مطرح کن تا طرح پیشنهادی ام را بدم
امیدوارم خوشت بیاد. :flower:
javidmail@gmail.com
javidtaheri@noavar.com

ebnsina
دوشنبه 02 خرداد 1384, 19:36 عصر
با سلام خدمت تمام پیشکسوت های عزیز و سایر دوستان

من خودم تا بحال توی چند تا برنامه از همان روش داسی استفاده کردم (من بهش میگم روش ورود اطلاعات ایرانی :) )ولی میدونم که برنامه هایی که خارج از کشور ما ساخته میشه دیگه با این روش کار نمیکنن مثلا اصلا توی گرید اطلاعات رو اون هم به سبکی که ما میگریم نمیگیرن.
مثلا ما بعد از انتخاب کاربر برای کار با یک جدول اون رو توی یک گرید نمایش میدیم وبعد از اینکه روی یکی از سطرها مثلا Enter زده شد یا هر دکمه دیگه (مثلا F10) در یک فرم جدید محتویات رکورد اون رو میاریم که توی چندین DBEdit قابل ویرایش هستن.
پس از تایید یا انصراف هم اون رو ذخیره میکنیم یا Cancel.
و برای گریدی که Detail محسوب میشه به صورت دریافت مستقیم در گرید انجام میدیم.

اما در روش های استاندارد بعد از انتخاب یک جدول برای کار فقط یک فرم همراه با DBEdit های فیلدهای اون ظاهر میشه و روی اولین رکورد یا آخرین ایستاده و از کنترل DBNavigation برای حرکت به سایر رکوردها و یا تایید و انصراف استفاده میشه و همین طور از دکمه های اضافی برای جستجو و جستجوی مجدد (نگاه کنید به Demo های خود دلفی)
در زمان گرفتن یک رکورد جدید در جدول-گریدی که Detial هست اصلا داخل اون چیزی گرفته نمیشه بلکه در یک فرم باز شده جدید امکان درج و حذف اطلاعات وجود داره که البته در همین پنجره باز شده جدید هم امکان درج چندین رکورد و حرکت به رکورد های قبل و بعد قرار داده شده.
فقط هم در جاهایی بعنوان Result یک گزارش یا کویری از گرید برای نمایش رکودهای همان جدول اصلی استفاده میکنن (که ما در این مورد از Preview ابزار گزارش استفاده میکنیم)

اما سوال من اینه که چرا یک چنین روشی اونجا استاندارد شده در صورتی که پیاده سازی اون راحته ولی کار کردن کاربر باهاش سخت تره. :گیج:
(البته هیچ تفاوتی بین اونها برای استفاده از کلیدها و میانبرها نیست)
اگر دوستان روی این تفاوت بحث کنن خیلی ممنون میشیم !!
:flower: :flower:

javidtaheri
سه شنبه 03 خرداد 1384, 17:10 عصر
دوستان کاربران ناوارد داخل کشور روش داسی را می÷ذیرند یا ویندوزی
مثلا راحت ترند با tab بین ادیتور ها جابجا شوند یا با enter

jafari1
چهارشنبه 04 خرداد 1384, 22:18 عصر
کاربران که از محیط داس استفاده کرده اند مایل به استفاده از موس همزمان با صفحه کلید نیستند و با enter نیز عادت دارند

reza5
پنج شنبه 05 خرداد 1384, 15:57 عصر
با تمام این تفاصیل
حالا به نظر شما باید خواسته کاربر تامین بشه یا استانداردی که ازش صحبت کردین پیاده سازی بشه
نظر من اینه که برنامه قراره بیفته به دست کاربر ی که لازمه راحتی و کم خطا یی رو براش فراهم کنیم
نتیجتا اگه بشه با توجه یا بی توجه به محیط داس و حتی استانداردهای خارج از کشور خود ما بهترین رابط کاربری رو که شامل تمام مزایا باشه "استاندارد" کنیم به این ترتیب هم کاربر ارضا میشه هم یه استاندارد تنظیم میشه که بقیه برنامه نویسا میتونن ازش پیروی کنن و خیالشون راحته که این استاندارد آماده شده قبلا بررسی شده و اشکالاتش برطرف شدن.
:flower:

babak_delphi
پنج شنبه 05 خرداد 1384, 16:51 عصر
به نظر من برای ورود اطلاعاتی که بصورت grid باید وارد بشن StringGrid بهتره
ضمنا استفاده از Enter بجای Tab بهتره
باید به کاربر اجازه داد که با موس انتخاب هاش رو انجام بده
اما تمام اون کارها رو بتونه با Keyboard هم انجام بده
در حقیقت باید روش پیشنهادی خودمون رو با روش مورد نظر کاربر تلفیق کنیم
:sunglass:

سالومه
پنج شنبه 05 خرداد 1384, 17:55 عصر
دوست عزبز

از مهم ترین فاکتورهای یک رابط کاربری این هست که همه بتونند با اون برنامه کار کنند.
پس شما باید در نظر بگیرین که کاربری که میخواد با برنامه شما کار کنه شاید دوست داشته باشه با ماوس کار کنه.
شاید دوست داشته باشه یا کیبورد کار کنه.
شاید دوست داشته باشه توسط Shortcut ها به قسمت های مختلف برنامه دسترسی پیدا کنه.
شاید کسی که داره با برنامه شما کار می کنه چشم های ضعیفی داره و دوست داره قابلیت تغییر اندازه فونت داشته باشه.
شاید کسی که با برنامه شما کار می کنه دوست داره در بعضی از موارد اجرای برنامه صداهای مختلفی رو بشنوه.
کسی که با برنامه شما کار می کنه شاید بخواد رنگ و قیافه محیط کاری رو با سلیقه خودش تنظیم کنه.
شاید دوست داره اطلاعات رو کلاً در یک صفحه ببینه و شاید هم بخواد اطلاعات برنامه رو در پنجره های مختلف ببینه.

طراحی رابط کاربری یک برنامه نباید به صورت سلیقه ای انجام بشه و باید ( حتماً باید ) به صورت انتخابی انجام بشه. در ایران رو نمی دونم اما در خارج قوانینی برای این هست که اگر برنامه قابلیت انعطاف پذیری محیطی کاربری رو نداشته باشه جریمه میشه و طبق قوانین اون کشور برنامه نویسان باید برنامه رو طوری طراحی کنند که کاربر بتونه با سلیقه خودش کار کنه.

بنابراین در ساخت یک رابط کاربری اول باید مهمترین فاکتور یعنی ( رابط دوستانه ) یا User Friendly رو در نظر گرفت و محیط رو طوری طراحی کرد که کاربر بتونه به راحتی با اون کار کنه. یادتون باشه همیشه لازم نیست همه کنترل ها رو در یک صفحه قرار بدین. منو ها و پنجره های تنظیمات برای این کارها ساخته شدن.

اینکه یک فیلد نوشته رو بشه با ماوس واردش شد، با کیبورد و یا کلید Tab وارد اون شد و یا هر چیزی، باید و باید در اختیار کاربر باشن. یادتون نره کاربرها همیشه ساده ترین راه و سریع ترین راه کار کردن با یک برنامه رو لازم دارن و محدود کردن کار اونها با محیط تنها به برنامه خودتون صدمه می زنه.

فکر نکنم در اختیار گذاشتن انتخاب های متنوع برای کاربر ( مثلاً جهت پرش از یک فیلد به یک فیلد دیگه ) کار سختی باشه. پس حتماً این نکات رو در طراحی رابط کاربری رعایت کنید و یادتون باشه کاربرانی که با برنامه شما کار می کنند همگی هم سن نیستند، به یک اندازه IQ ندارند، به یک اندازه صبر و حوصله ندارند و به یک اندازه دقت ندارند.

Javid_121
پنج شنبه 15 شهریور 1386, 11:07 صبح
با سلام خدمت همه دوستان عزیز
من خودم با دلفی کار میکنم و از SQL Server برای بانک اطلاعاتیم استفاده می کنم
من تقریباٌ در تمام فرمهایی که جهت ورود اطلاعات در اختیار کاربر می گذارم از هر دو روش پشتیبانی میکنم یعنی کاربر در نرم افزار نیازی به موس ندارد و تمام کارها را می تواند با صفحه کلید انجام دهد ولی در عین حال پیش فرضهایی را که خود سیستم عامل ( ویندوز ) دارد در اختیار کاربر است یعنی می تواند با کلیک بر روی یکی از اشیا عمل مورد نظر را انجام دهد و در مواردی که الزام به ورود اطلاعات خاصی است در آخرین مرحله مثلاٌ تایید اطلاعات چک می کنم که وارد شده باشد تا اگر کاربر اطلاعات یکی از اشیا مثلا Edit ها را وارد نکرده بود و با موس مستقیماٌ عمل تایید را انجام داد پیامی مناسب برای تکمیل فرم به کاربر میدهم در ضمن من تمام اطلاعاتم را در خارج از گرید ها از کاربر دریافت میکنم و از گریدها برای نمایش استفاده می نمایم و همواره سعی می کنم راحتی کاربر را در نظر بگیرم
موفق باشید

golihaghighi
پنج شنبه 15 شهریور 1386, 11:57 صبح
در اکثر موارد کار با بعضی از کنترلها مانند برای کاربران با توجه میزان آشنایی با کامپیوتر تحصیلات سن و موقعیت مشکل است ولی برای برنامه های خاص میشه با توجه به سطح کاربران استثناهایی هم قایل شد.