واسط كاربري هوشمند Intelligent User Interface به نام هستي بخش واسط كاربري هوشمند Intelligent User Interface تست و ارزیابی واسط کاربری هوشمند Intelligent User Interface Test and Evaluation استاد: جناب آقاي دكتر عبداللهزاده «احسان شریفی» آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) «ترم پاييز 94»
آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) رئوس مطالب مقدمه تفاوت بين تست و ارزيابي انواع تست و ارزيابي ارزیابی و تست واسط کاربری – ویژگیها ارزیابی و تست واسط کاربری – دیدگاهها ارزیابی و تست واسط کاربری – چک لیست ارزیابی و تست واسط کاربری – ابزار ارزیابی و تست واسط کاربری – متریکها (قابلیت استفاده) آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab)
آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) مقدمه واسط کاربری یک نرمافزار است و هرآنچه در ارزیابی نرمافزار وجود دارد در مورد واسط کاربری نیز قابل اعمال است. اما در واسط کاربری تاکید اصلی بر روی ارزیابی ویژگی «قابلیت استفاده» (Usability) میباشد. در واسط کاربری هوشمند علاوه بر ویژگی «قابلیت استفاده»، تاکید بر روی ارزیابی «هوشمندی» (Intelligence) نیز میباشد. در واقع درجه «قابلیت استفاده» و «هوشمندی» تعیین کننده میزان امتیاز یک واسط کاربری هوشمند میباشد. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab)
تفاوت بین تست (Test) و ارزیابی (Evaluation) تست و ارزیابی از نظر تکنیکها به یکدیگر شباهت دارند، ولی از نظر نحوه اندازهگیری متفاوت هستند. تست: صحت سیستم را مورد بررسی قرار میدهد. صحیح است یا نه؟ اندازه آن یا 0 و یا 1 است. ارزیابی: کیفیت سیستم را مورد بررسی قرار میدهد. چقدر صحیح است؟ اندازه آن بین 0 تا 1 است.
انواع تست و ارزیابی به طور روشهای تست و ارزیابی به دو دسته کلی تقسیم میشوند: Summative: محصول را تست و ارزیابی میکند. Formative: فرآیند را تست و ارزیابی میکند. در خلال چرخههاي مختلف طراحي و با هدف يافتن مشكلات مرتبط به قابليت استفاده و رفع آن در چرخههاي بعدي انجام ميپذيرد. در واسط کاربری تمرکز بر روی تست و ارزیابی Formative میباشد.
ارزیابی و تست واسط کاربری – ویژگیها واسط کاربر یک بخش سلسله مراتبی از نرمافزار است که اولین دسترسی به سیستم از طریق آن صورت گرفته و شامل اشیاء گرافیکی به همراه مجموعهای از ویژگیها میباشد. مقادیر ویژگیهای هر شیء از واسط کاربری در خلال اجرا، وضعیت (State) آن واسط را تعریف میکند. به منظور انجام تست و ارزیابی، رویدادهایی نظیر فشردن کلید یا کلیک موس بر روی واسط اعمال میشود و همچنین باید امکان مقداردهی به اشیاء واسط فراهم باشد. نمایش واسط به منظور بررسی سازگاری آن با آنچه مورد انتظار است انجام میشود. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab)
ارزیابی و تست واسط کاربری – دیدگاهها دیدگاه دستی (Manual Based) انجام تست و ارزیابی بر اساس دامنه و دانش فرد تست کننده دیدگاه ضبط و پخش (Capture and Replay) انجام تست و ارزیابی بر اساس ضبط و پخش فعالیتهای کاربر دیدگاه بر پایه مدل (Model-based testing) انجام تست و ارزیابی با اجرای جلسات کاربری (user sessions) بر اساس مدل واسط کاربر انواع دیدگاه بر پایه مدل: مدلهای بر پایه رویداد (Event-based model) مدلهای بر پایه وضعیت (State-based model) مدلهای دامنه (Domain model)
ارزیابی و تست واسط کاربری – چک لیست چک کردن صحت نمایش (Check Screen Validation) چک با روش ضبط و پخش (Capture and Replay) چک با مدل وضعیت (State-based model) چک کردن شرایط مرتبط با قابلیت استفاده (Check usability Conditions) وارسی تمام ناوبریها (Verify All Navigations) وارسی فرمت فیلدهای تاریخ و عددی (Verify the date Field and Numeric Field Formats) وارسی وضعیت اشیاء (Verify the object states) وارسی جامعیت داده (Verify Data Integrity) جامعیت زمانی حاصل میشود که دو ویژگی تمامیت (Completeness) و سازگاری (Consistency) همزمان موجود باشند. پس از انتخاب کاربران از روش ضبط و پخش (Capture and Replay) استفاده میکنیم. مرجع جامعیت، نیازمندیهای کاربر است و توسط پروتوتایپ چک میشود.
ارزیابی و تست واسط کاربری – ابزار لیست ابزارهای متن باز برای تست و ارزیابی واسط کاربری Product Licensed Under URL AutoHotkey GPL http://www.autohotkey.com/ Selenium Apache http://docs.seleniumhq.org/ Sikuli MIT http://sikuli.org Robot Framework www.robotframework.org watir BSD http://www.watir.com/ Dojo Toolkit http://dojotoolkit.org/
ارزیابی و تست واسط کاربری – ابزار لیست ابزارهای تجاری برای تست و ارزیابی واسط کاربری Product Vendor URL AutoIT http://www.autoitscript.com/site/autoit/ EggPlant TestPlant www.testplant.com QTP Hp http://www8.hp.com/us/en/software-solutions/ Rational Functional Tester IBM http://www-03.ibm.com/software/products/us/en/functional Infragistics www.infragistics.com iMacros iOpus http://www.iopus.com/iMacros/ CodedUI Microsoft http://www.microsoft.com/visualstudio/ Sikuli Micro Focus International http://www.microfocus.com/
ارزیابی و تست واسط کاربری – متریکها (قابلیت استفاده) نرخهای خاتمه (Completion Rates) این متریک به عنوان یک متریک بنیادی برای قابلیت استفاده (Usability) شناخته میشود. این متریک از نوع باینری بوده و در صورت صفر بودن بیانگر خاتمه نیافتن وظیفه (Task Failure) و در صورت یک بودن بیانگر موفقیت آمیز بودن انجام وظیفه (Task Success) میباشد. مشکلات قابلیت استفاده (Usability Problems) مشکل را توصیف میکند و اینکه چند بار و چه کاربری با آن مواجه شده است را یادداشت مینماید. دانستن احتمال مواجه شدن کاربر با مشکل در هر فاز از توسعه واسط میتواند یک متریک کلیدی برای اندازهگیری قابلیت استفاده باشد. دانستن اینکه چه کاربری دچار مشکل شده است امکان پیشبینی بهتر سایزهای نمونه (Sample Sizes)، نرخهای کشف مشکل و اینکه چه مشکلی صرفا توسط یک کاربر مشاهده شده است را فراهم میکند.
ارزیابی و تست واسط کاربری – متریکها (قابلیت استفاده) زمان انجام کار (Task Time) کل مدت زمان انجام کار (task duration) یک معیار عملی (de facto measure) برای سنجش کارایی(efficiency) و سودمندی(productivity) میباشد. تست و ارزیابی سطح رضایت (Test and Evaluation Level Satisfaction) در انتهای فرآیند تست و ارزیابی، از شرکت کنندگان در مورد برداشت کلی آنها از سهولت استفاده سوالاتی مطرح کنید و جوابهای آنها را دریافت کنید. انتظار (Expectation) کاربران معمولا بر اساس سناریوئی که از انجام هر کار در ذهن خود دارند در انتظار میزان مشخصی از پیچیدگی برای انجام آن کار هستند. پرسش از کاربر در مورد میزان دشواری مورد انتظار و مقایسه آن با دشواری واقعی آن در واسط میتواند در تشخیص حوزه های مشکل مفید باشد.
ارزیابی و تست واسط کاربری – متریکها (قابلیت استفاده) خطاها (Errors) هرگونه اقدام ناخواسته، لغزش، اشتباه یا قصور یک کاربر را در حین انجام یک کار ثبت کنید. شما بعدا میتوانید به خطاها یک درجه اهمیت نسبت دهید یا آنها را در دسته هایی طبقه بندی کنید. خطاها اطلاعات تشخیصی (diagnostic information) مفیدی ارائه میدهند که در صورت امکان باید به مشکلات واسط کاربری نگاشت شود. مشاهده صفحه / کلیکها (Page Views/Clicks) این متریکهای بنیادی برای صفحات وب و برنامههای تحت وب، ممکن است تنها چیزی باشد که بدون مطالعه مستقیم به آن دسترسی داشته باشیم. تعداد کلیک ارتباط مستقیمی با زمان انجام کار دارد و احتمالا معیار بهتری برای کارایی (efficiency) میباشد.
ارزیابی و تست واسط کاربری – متریکها (قابلیت استفاده) تبدیل (Conversion) اندازهگیری اینکه آیا کاربران میتوانند ثبت نام کنند یا یک محصول را خریداری کنند یک سنجه (measure) برای کارایی (effectiveness) میباشد. نرخهای تبدیل (Conversion rates) یک نوع خاص از نرخ خاتمه (completion rate) بوده و یک متریک اساسی در تجارت الکترونیک است. نرخهای تبدیل نیز یک متریک باینری بوده (1=converted, 0=not converted) و در تمام فازهای خرید نظیر ثبت نام، پرداخت و خرید میتواند کسب گردد. این متریک معمولا ترکیبی از مشکلات قابلیت استفاده، خطاها و زمان است که باعث پایین آمدن نرخ تبدیل در کارتهای خرید میشود.
ارزیابی و تست واسط کاربری – متریکها (قابلیت استفاده) رضایت سطح کار (Task Level Satisfaction) پس از اینکه کاربر یک کار را انجام داد سوالاتی در مورد میزان دشواری کار پرسیده میشود. این متریک بلافاصله کارهای دشوار را علامتگذاری خواهد نمود. متریک قابلیت استفاده منفرد (Single Usability Metric) مواقعی وجود دارد که سادهتر است که قابلیت استفاده از یک سیستم را با ترکیب متریکها به یک امتیاز منفرد (Single Score) انجام دهیم. SUM یک میانگین استاندارد شده از سنجش کارایی است که از ترکیب سه متریک نرخهای اتمام (completion rates)، رضایت سطح کار (task-level satisfaction) و زمان کار (task time) تشکیل شده است.
آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) مراجع http://www.measuringu.com/index.php http://www.tutorialspoint.com/software_testing_dictionary/pdf/use_interface_t esting.pdf آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab)