مقدمه
سالهاست که از عمر محصولات نرم افزاری می گذرد، با این حال انگار همین دیروز بود که نرم افزارها با محیطی سرد و بیروح با رنگهای تیره و ترسناک فقط از راه خط فرمان دستورات را اجرا میکردند، چقدر ذوق زده شدیم وقتی کتابخانههای توربو ویژن را دراختیار گرفتیم، چند سال قبل از آن حتی آدمهای خوشبین هم فکر نمی کردند روزی موشواره ای اختراع میشود تا کامپیوتر به کار آدمهای کم سواد هم بیاید. این سرعت آن قدر زیاد بود که حتی فرهنگستانها و لغت نامه نویسها هم نمیدانستند چگونه واژهی معادل برای این همه کلمه جدید پیدا کنند، از سوی دیگر آسانی ورود به این عرصهی جدید (علوم کامپیوتر و نرم افزار) و به کار گیری ابزارهای آن منجر به این شد که یک شخص از هر طایفه و صنفی که بود به راحتی بتواند در این حوزه هم خودی نشان دهد. اگر باور ندارید میتوانید آمار افراد غیر فیزیکدانی را که در رشتهی فیزیک فعالیت میکنند را با افراد غیر کامپیوتری که در این رشته دستی دارند، مقایسه کنید.
رابط کاربری (User Interface) که UI هم خوانده میشود به مجموعه بخش هایی از نرم افزار گفته میشود که برای برقراری ارتباط با کاربر بکار میروند از جمله منوها، کادرهای تبادلی، دکمهها، پیامها و تنظیمات.
رابط کاربری در اصل بخشی از برنامه است که کاربر با آن رابطه برقرار می کند. اگر کاربر فرمانهایی را در صفحه کلید وارد کرده و برنامه نیز با عملکرد خاصی به آنها پاسخ دهد، گفته میشود که برنامه مزبور یک رابط خط فرمانی دارد. اگر فرمانها از طریق فهرستهای گزینشی (منوها) در اختیار کاربر قرار گیرند، به رابط مزبور، رابط گزینشی گفته میشود. برنامهای که اطلاعات را به طور گرافیکی نشان داده و برای برقراری رابطه با کاربر به یک وسیله اشارهای نیاز داشته باشد، گفته میشود که یک رابط گرافیکی کاربر دارد. طراحی رابط کاربر ضعیف باعث بوجود آمدن خطاهای جبران ناپذیری در سیستم می شود و همچنین علت مهم استفاده نشدن بسیاری از سیستمها رابط کاربر ضعیف سیستم است
رابط گرافیکی کاربر
رابط کاربر مبتنی بر گرافیک که در آن کاربر به جای تایپ فرمانهای بلند و پیچیده از اعلان فرمان، با اشاره بر نمایشهای تصویری بر روی صحنه تصویر، پرونده ها، برنامهها یا فرمانهایی انتخاب می کند. برنامههای کاربردی که در ویندوز اجرا می شوند، از مجموعه ثابتی از فهرستهای گزینش عمودی، جعبههای محاورهای و سایر عناصر گرافیکی مانند، نوارهای مرور (scroll bar) و شمایلها (icon) استفاده می کنند. این ثبات میان عناصر گرافیکی، از مزیت عمدهای برای کاربر است، زیرا با یادگرفتن نحوه کار با رابط می توانید از آن در تمام برنامههای در حال اجرا در همان محیط استفاده کنید.
معیارهای عمومی رابط کاربر مطلوب
طراحان شرکتهای متفاوت نرمافزاری از جمله «مایکروسافت»، «کالدرا» و دیگر طراحان رابط کاربر، بر این باورند که رابط کاربر مطلوب شرایطی را فراهم میکند که کاربر بتواند آنچه قصد انجام آن را دارد، به راحتی به رایانه منتقل کند. به نظر آنها، برقراری ارتباط شفاف بین رایانه و کاربر از مهمترین اهداف در طراحی رابط کاربرهاست که در نهایت به رضایت کاربر میانجامد. بدین منظور، معیارهای زیر مورد توجه قرار گرفته است:
1)ثبات
یک صفحه رابط با ثبات، به کاربر اجازه میدهد تا دانش و آموختههای قبلی خود را به کار گیرد. به نظر فراری (Ferrari, 2005) یک محیط با ثبات، جو آشنایی را فراهم میکند که باعث یادگیری راحتتر کاربر میشود. شرکت مایکروسافت (2003) به عنوان نمونه به نسخههای متفاوت سیستم عامل ویندوز اشاره میکند که متداول و متعارفبودن شکل رابط کاربر در آنها رعایت شده است. کاربری که با طرز استفاده از یک صفحه ویندوز آشنا باشد، میتواند کار با صفحههای ویندوز دیگر را هم به راحتی فرا گیرد. منوها مثال خوبی بر این ادعا هستند. در اکثر صفحههای ویندوز، گزینه File در سمت چپ قرار میگیرد و بعد از آن به ترتیب Edit ، View، Tools ، Help قرار گرفتهاند. ممکن است گفته شود کلمه Document بهتر از کلمه File میباشد و یا اینکه گزینه Help باید در ابتدا قرار گیرد. مانعی برای انجام این تغییرات وجود ندارد ولی با انجام آنها، کاربر گیج میشود و قابلیت استفاده رابط کاربر کاهش مییابد، زیرا باید هنگام استفاده از صفحه ویندوزهای متفاوت، کمی درنگ و فکر کند تا مکان منوها و اسامی آنها را بیابد. مکان قرار گرفتن منوهای فرعی نیز حائز اهمیت است. کاربر انتظار دارد گزینههای فرعی Copy ، Cut و Paste را در زیرگزینه Edit بیابد. انتقال آنها به گزینه اصلی File ، باعث سردرگمی میشود. پس بهتر است از خط مشیهای تثبیت شده پیروی نمود، مگر اینکه دلیل قاطعی برای تغییر آنها وجود داشته باشد. افزون بر این، ثبات و متداول بودن شکل و فرم صفحه، دخالت حافظه کاربر را تا جایی که ممکن باشد کمرنگ میکند. مندل (Mandel, 2003) در این زمینه معتقد است، نیاز برای بخاطرآوردن اسامی رکوردها و یا رسیدن به موضوعات مختلف مانند پوشهها (Folders)، فضای زیادی را به ذهن کاربر اشغال میکند. اگر رابط کاربر، کاربر را ملزم کند همه اینها را به خاطر بسپارد، این اطلاعات در اکثر موارد در حافظه طولانی مدت شخص باقی نمیماند و پس از مدتی به یاد آوردن آنها مشکل است. رابط کاربر باید تا حد ممکن دخالت حافظه را کم کند. یک رابط کاربر متداول، به حافظه کوتاهمدت کاربر اعتماد میکند. بطور اختصار می توان به این چند نکته بسنده کرد:
داشتن رفتار یکسان در هر زمان و هر مکان از برنامه
داشتن اصطلاحات یکسان در تمام برنامه به طور مثال، جایی پیام قبول-لغو بدهیم و جایی دیگر تایید-انصراف
داشتن آیکن های یکسان و مشخص
داشتن رنگهای منحصر و یکسان
2)سادگی و وضوح
بهترین رابطان کاربر از طراحی ساده برخوردارند. طرحهای ساده، یادگیری و استفاده را آسان میکنند و به رابط کاربر، ثبات و استحکام میبخشند. کاربر نباید به یکباره با حجم زیادی از اطلاعات روبرو شود، بلکه بهتر است مقدار زیادی از اطلاعات را بهگونهای جای داد که صفحه شلوغ به نظر نرسد. به اعتقاد مندل، اکثر انسانها وقتی با حجم زیادی از اطلاعات روبرو میشوند، میترسند. به نظر وی، رابط کاربر باید تلاش کند تا میتواند حضور اطلاعات را دوستانه جلوه دهد و آنها را پله پله و به صورت یک روند در نظر گیرد. در هر صورت، کاربر نباید ناگهان در دریایی از اطلاعات غوطهور شود.
همچنین، رابط کاربری که از وضوح و شفافیت برخوردار باشد، تا حد بسیار زیادی از اشتباهات جلوگیری کرده، اطلاعات مهم و اساسی را برجسته و قابل مشاهده مینماید و کاربر را به سمت یادگیری و استفاده راحتتر، هدایت مینماید. به نظر فراری، رمز وضوح و شفافیت رابط کاربر، در سادگی است. بطور اختصار می توان به این چند نکته بسنده کرد:
یک عمل پیچیده را به اعمال ساده تر بشکنید و عملکردهای اضافی را نیز حذف کنیدتا رابط ساده تر شود .
اگر کاربر باید یک فرایند طولانی را انجام دهد، بهتر است این توالی به مراحل کوتاه تر تبدیل شود ( استفاده از Wizards ) .
اعمال را با به کاربردن آیکن ها و کلمات ساده مشخص کنید.
ازکلمات و آیکنهایی که برای کاربر آشناترند، استفاده کنید.
مفاهیم شبیه به هم را در یک گروه و دسته قراردهید، مثلاٌ در یک منو یا یک کادر یا Tab Control
از نمایش Message Box خوداری کنید، مگر اطلاعاتی که کاربر لازم است که ببیند همچنین از بیامهای کوتاه و موثر استفاده کنید (از کلمات لطفاٌ، در صورت لزوم پرهیز نمایید).
3)رهنمونی
کاربر باید همیشه آگاه و مطلع نگه داشته شود و بازخورد به سرعت آماده شود. همچنین، بازخورد باید با مورد مربوط تناسب داشته باشد. برای مثال اگر در قسمت جستجو، کاربر، کلیدواژهای را وارد میکند و نتیجه صفر میآید، نظام به سرعت پیام میدهد: «مطمئن هستید دیکته را درست نوشتهاید؟» یا «کلیدواژه خیلی عام است. از کلیدواژه خاصتری استفاده کنید» و اگر کاربر عملی انجام میدهد که قابل اجراست، پیغام اخطاردهندهای باید وی را آگاه کند.
4)زیبایی
هر عنصر دیداری که روی صفحه نمایش ظاهر میشود، توجه کاربر را جلب میکند. محیط نمایش باید به گونهای باشد که کارکردن در آن، جالب باشد و به درک بهتر اطلاعات موجود در صفحه کمک کند. به عنوان نمونه، نوع قلم به کار رفته؛ بهتر است از نوع قلمهای آشنا برای کاربر و خوانا باشد.
5)گرافیک و ترکیب رنگها
در یک آزمایش رایانهای، 6 رابط کاربر متفاوت گرافیکی و غیرگرافیکی توسط «هاهو» و همکارانش (HwaHu [et al], 1999) به منظور سنجش تأثیر رابط کاربر در برقراری ارتباط با یک نظام ذخیره و بازیابی اطلاعات مورد بررسی قرار گرفت. تنایج نشان داد صفحههای گرافیکی، به طور فزایندهای در موقعیتهایی که نظام بشدت به برقراری ارتباط بین اطلاعات و کاربر نیاز دارد، مؤثر واقع میشوند. صفحه کاربر گرافیکی از لحاظ مفهوم، بهتر از صفحههای غیرگرافیکی عمل میکند. در صفحات گرافیکی، رنگ، مؤثرترین عامل در جلب رضایت کاربر به شمار میآید. همچنین، تأثیر رنگ بر ادراک کاربر سنجیده شد. آبی و قرمز تضاد معنایی دارند و به طور سنتی، قرمز رنگ گرم است که میتواند در جذب کاربر به کار رود. در حالیکه مفهوم رنگها از فرهنگی به فرهنگ دیگر ممکن است متفاوت باشد. رنگ قرمز برای نمایش موضوعات مهم و قابل توجه، مناسب است. به عنوان نمونه، اصطلاحات پیشنهاد شده توسط نظام که به میزان بالایی با جستجوی کاربر در ارتباط است، میتواند با رنگ قرمز نمایش داده شود. از سوی دیگر، رنگ آبی اغلب به عنوان رنگ سرد در نظر گرفته میشود که میتواند برای اصطلاحات پیشنهاد شده توسط نظام که ارتباط موضوعی کمی با جستجوی کاربر دارد، مناسب باشد.
6)استفاده از پیامها و علائم اخطاردهنده
توجه به پیامها و علایم اخطاردهنده از جمله مواردی است که در هدایت کاربر بسیار تأثیرگذار است. به عنوان نمونه، اگر فایلی یافت نمیشود، از طرف نظام پیام «فایلی یافت نمیشود» به کاربر داده شود. برای اینکه همه کاربران به هر زبانی بتوانند این دستورها و اخطارها را متوجه شوند، میتوان از تصویر استفاده کرد. یک تصویر میتواند جای چندین کلمه یا جمله را بگیرد و همان مفهوم را برساند. اما ممکن است این مفاهیم، برای همه یکسان نباشد. پس باید به علایم گرافیکی که استفاده میشود، توجه داشت. استفاده از یک 8 ضلعی قرمز رنگ با کلمه توقف در وسط آن، ممکن است در همه جای دنیا معنی توقف ندهد، ولی یک دایره قرمز رنگ که روی آن یک دست گشاده باشد، بهتر مفهوم توقف را میرساند. پس بهتر است از علایمی که مفهوم جهانی دارند، استفاده شود. در این مورد می توان به نکات زیر نیز توجه کرد:
پیامهایی راکه کاربر آنها را سریعاٌ درک کند، به کار ببرید. مثلاٌ Problem in sending Email به جای Error 12790 in using smtp port
استفاده از پیامهای صریح و روشن
پیامها نباید حالت چند گانگی به وجود بیاورد. مثال معروف آن Press Return بجای Press Any Key است.
پرهیز از پیام های عجیب برای خطاهای استثنایی وقتی در برنامه Exception Handling میکنید، در صورت بروز خطاهای نا شخص پیامهای نامشخصی مانند Fatal Error , Job Abortion , Catastrophic Failure Error نشان ندهید.
از کلمات مشخص و سودمند استفاده کنید. مثلاٌ استفاده از جملهی "داده های ورودی کافی نیست" زیاد مناسب نیست. بلکه بهتر است مشخصاٌ بگوئید که مثلا " نام و نام خانوادگی را وارد نمایید" . امروزه برنامهای تحت وب و جملهی اطلاعات ورودی کافی نیست در بالا میآید و کنار هر فیلدی که اجباری است یک علامت مشخص کننده مثل * نمایش مییابد.
بهتر است سیستم بار گناه را به دوش بکشد و مقصر شناخته شود. مثلاٌ برای استفاده از پیام " دستور ورودی غیر مجاز است " پیام بدهیم که دستور ورودی مفهوم یا فایل مشخص نیست. از لحاظ روانی، کاربر با خواندن جملهی اول، برنامه ساز را مقصر میداند و در حالی که جمله دوم کاربر سیستم (یا خودش) را مقصر قلمداد می کند.
برای برنامه جنبه های انسانی در نظر نگیرید. استفاده از پیامهای انسانی از نظرروانی برای کاربر، دلهره آور است، شاید هم او را عصبانی میکند. فکرش را بکنید کاربر صبح Outlook را باز می کند و سلام صبح بخیر را مشاهده میکند و یا هنگام بستن یک برنامه پیام " روز خوبی داشته باشید " را مشاهده کند.
7)انعطافپذیری
از دیگر ویژگیهای عمومی رابط کاربرهای مطلوب، قابلیت انعطافپذیری است. بهترین و موفقترین رابط کاربرها به گونهای طراحی میشوند که خواستههای متفاوت کاربران را مهیا کنند. به عنوان نمونه، مرورگر ویندوز از شرکت مایکروسافت به کاربران، هم از طریق صفحه کلید و هم به وسیله فرمان Copy ، اجازه نسخهبرداری از بایگانی را میدهد و یا اینکه کاربر این امکان را داشته باشد هم از طریق موشواره و هم صفحه کلید کلید فرمانها را صادر کند. بکارگیری صفحهکلید به عنوان میانبر برای فرامینی است که در حالت عادی یعنی هنگام کار با موشواره برای اجرای آن فرامین به انتخاب چندین منو نیاز میباشد. همچنین، قابلیت انعطافپذیری، میتواند در تغییر رنگ صفحه توسط کاربر نیز مدنظر قرار گیرد.
8)توجه به اصول روانشناسی
اصول روانشناسی در تمام مراحل ایجاد یک کاربر، نقش اساسی ایفا میکند. شکلها، رنگها، تصویرها، کلمهها و تکتک عناصر بهکار رفته در رابط کاربر، باید بر اساس اصول روانشناسی شکل گیرد تا یک محیط راحت و دوستداشتنی را برای کاربر فراهم نماید. رابط کاربر باید با فیزیک، ادراک و تواناییهای شناختی کاربر مرتبط باشد. روانشناسی شناختی، نحوه عملکرد ذهنیات انسان است: چگونه فکر میکنیم، چگونه به خاطر میآوریم و چگونه یاد میگیریم.
9)تسلط به محیط
بر اساس اصول روانشناسی، وقتی کاربر راضی به نظر میرسد که بر محیط خود مسلط باشد و کارهایی که انجام میدهد، به طور قطع به نتیجه برسد. کاربر باید قادر باشد گام اول را بردارد و شروع به جستجو کند و نظارت تمام اعمال را به دست گیرد. وقتی کاربر، خود را ناامید، عصبانی و آشفته مییابد، به احتمال زیاد، به دلیل چیزی است که اتفاق افتاده و او بر آن مسلط نبوده و یا نتوانسته بر آن نظارت داشته باشد. حتی اگر این اتفاق کوچک بوده باشد. به عنوان نمونه کلید فاصله (Space Bar) در صفحه کلید، خوب کار نمیکند و هنگام تایپ بعضی کلمات به هم میچسبند و این کار، کاربر را آشفته میکند. نکته اینجاست که آیا رابط کاربر، همان اندازه که کاربر توقع و انتظار دارد، خواستههایش را برآورده میکند؟ اگر غیر از این باشد، کاربر احساس میکند بر نظام تسلط ندارد و نمیتواند با آن ارتباط منطقی برقرار کند و آن را مورد انتقاد قرار میدهد.
10)صراحت
همچنین، کاربر باید علت و تأثیر ارتباط بین اعمالی را که در صفحه نمایش انجام میدهد، ببیند. این امر، به وی اجازه میدهد احساس کند متصدی فعالیتهای رایانه است و در واقع نظارت و کنترل رایانه را بر عهده دارد.
11)کاهش حجم کاربر
انتظار میرود یک رابط کاربر مطلوب بدون بازشدن صفحههای متعدد، فرد را به پاسخ برساند و از تقّهزدنهای زیاد مبرّا باشد. در پژوهشی که «فاکنی» و «گونزالس» (Faichney & Gonzalez, 2001) انجام دادند، رابط کاربر دو مرورگر Gold Leaf و Windows Explorer با هم مقایسه شد. زمان و شماره کلیک کردن موشواره برای مشخص نمودن راهنماها و بایگانیها ثبت و مشخص گردید که مرورگر Gold Leaf، مرورگر Windows Explorer به ضربهزدن نیاز دارد. مرورگر Gold Leaf به تلاش ذهنی و فیزیکی کمتری نیاز دارد و کار با آن لذتبخشتر است، زیرا کاهش تعداد کلیک در مرورگر Gold Leaf میتواند به نمایش همزمان سطوح متعدد بایگانیها، مربوط باشد و همین تعداد ضربه کمتر رضایت کاربر را افزایش میدهد. در حالی که کاربران هنگام کار با مرورگر Windows Explorer محدود میشوند، زیرا در یک زمان فقط یک سطح از پوشههای فرعی قابل مشاهده است. شرکت کالدرا قانون سه ضربه را مطرح میکند و بیشتر از این تعداد ضربه را برای رسیدن به صفحه مورد نظر کاربر، مناسب نمیداند. گردش بیش از حد موشواره بدین معناست که زمان کمتری صرف کار مفید و واقعی شده است. درهمریختگی و بینظمی نشانهها و شکلها در صفحه، حجم کار را برای کاربر بالا میبرد. با ایجاد نظام هوشمند در درخواستها و تقاضاها، حجم کار کاربران کاهش مییابد. به عنوان نمونه، در برنامه پردازش کلمه، عملکرد غلطیاب نباید نیازمند آن باشد که کاربر هر زمان به فرهنگ لغت احتیاج داشت، مسیر آن را وارد کند؛ بلکه برنامه باید به صورت هوشمند عمل کند، به طوری که هر زمان از غلطیاب استفاده شد، برنامه، اطلاعات تکراری درخواست نکند.
12)کمک (مساعدت)
مساعدت کاربر میتواند به صورت مثالهایی از طریقه جستجو باشد که وی را در یافتن پاسخ کمک میکند، یا برای کاربرانی که اولین بار، با رابط کاربر مربوط روبرو میشوند، پاسخ آماده به سؤالها میتواند بسیار مناسب باشد. در اکثر رابط کاربرهای مطلوب، گزینهای تحت عنوان «کمک» در نظر گرفته میشود.
13) محدودیت حافظه انسانی
در این مورد می توان به نکات زیر اشاره کرد
< >به حافظه کاربر فشار تحمیل نکنید. مراحل باید طوری طراحی شوند تا لازم نباشد که مثلاٌ کاربر اعمال انجام شده در 10 مرحله قبل را به یاد آورد. از نمایش اطلاعات مهم با حجم زیاد آن هم در مدت کوتاه، پرهیز کنید.فیلدهای صفحه به شکلی که کاربر انتظار آن را دارد، طراحی کنید. مثلاٌ فیلد نام خانوادگی باید بعد از فیلد نام باشد و یا فیلد تاریخ بصورت ..../.../.... مشخص باشد . استفاده از Hint و عنوان های کوتاه و معنی دار برای مشخص کردن این که کاربر در چه مرحله ای از انجام یک عملیات قرار دارد (مثلاٌ در یک برنامه نصب، این نکته که کاربر در حال حاضر درچه مرحله ای از پروسه نصب قرار دارد مهم است ) .باز خوردهای پیشرفت را مشخص کنید. این نکته که در حال حاضر چه عملی در حال انجام یا چه عملی اتفاق افتاده است .مراحل را طوری پیش بینی کنید تا کاربر بتواند روند را تشخیص دهد، نه این که بخواهد مطلبی را به یاد آورد . مثلاٌ با روشن شدن کلید ( ذخیره ) کاربر میفهمد که تغییراتی به وجود آمده و باید آنها را ذخیره کند. این بهتراز آن است که کلید ذخیره دایم روشن باشد و کاربر تغییرات خود را به یاد داشته باشد . ازاستفادهی تعداد زیاد آیکن و فرایندهای طولانی اجتناب کنید، چرا که به یاد آوری مراحل مختلف و یا سپرده آن به حافظه از طرف کاربر مشکل است