পাঠ ২৪ · ৫৭-এর মধ্যে · মডিউল ৫
Home / Courses / Human-Computer Interaction / হিউরিস্টিক ইভালুয়েশন

কম্পিটিটিভ অ্যানালাইসিস ও হিউরিস্টিক ইভালুয়েশন

Competitive analysis & heuristic evaluation
৯ মিনিট পড়া মধ্যম · Intermediate Python কোডসহ সম্পূর্ণ বাংলায়

এই পাঠে যা শিখবেন

  • কম্পিটিটিভ অ্যানালাইসিসের প্রক্রিয়া ও একটি তুলনা-ম্যাট্রিক্স তৈরি করতে পারা
  • হিউরিস্টিক ইভালুয়েশনের প্রক্রিয়া ও এক্সপার্ট রিভিউয়ের ভূমিকা বোঝা
  • একটি ওয়েটেড হিউরিস্টিক-স্কোরিং সিস্টেম প্রয়োগ ও গণনা করতে পারা
  • কম্পিটিটিভ অ্যানালাইসিস ও হিউরিস্টিক ইভালুয়েশন কখন কার্যকর, কখন যথেষ্ট নয় তা যুক্তিসহ ব্যাখ্যা করা

১ · কম্পিটিটিভ অ্যানালাইসিস — পদ্ধতিগত প্রতিযোগী তুলনা

কম্পিটিটিভ অ্যানালাইসিস মানে ২-৪টি প্রতিযোগী প্রোডাক্ট বেছে নিয়ে, একই সেট নির্দিষ্ট মানদণ্ডের (যেমন "অনবোর্ডিং কত ধাপে", "সার্চ কতটা সহজ", "মোবাইল সাপোর্ট আছে কিনা") ভিত্তিতে প্রতিটি তুলনা করা। মূল বৈশিষ্ট্য হলো পদ্ধতিগততা — মানদণ্ড আগে থেকে ঠিক করা থাকে, প্রতিটি প্রোডাক্টে একই মানদণ্ড প্রয়োগ করা হয়, ফলাফল ব্যক্তিগত পছন্দ নয় বরং তুলনাযোগ্য তথ্য হয়ে ওঠে। একটি সরল উদাহরণ — তিনটি কাল্পনিক হোটেল-বুকিং সাইটের তুলনা:

মানদণ্ড সাইট A সাইট B সাইট C (আমাদের)
বুকিং সম্পন্ন করতে ধাপ সংখ্যা ৩ ধাপ ৫ ধাপ ৬ ধাপ
ইনলাইন প্রাইস ফিল্টার আছে আছে নেই
গেস্ট রিভিউ সরাসরি সার্চ রেজাল্টে দেখা যায় না আছে না

এই ম্যাট্রিক্স থেকে স্পষ্ট দেখা যায় — আমাদের সাইট C-তে ধাপ সংখ্যা বেশি ও ইনলাইন প্রাইস ফিল্টার নেই, যা প্রতিযোগীদের তুলনায় দুর্বলতা হিসেবে চিহ্নিত হলো। এটি ডিজাইন-অগ্রাধিকার ঠিক করতে সরাসরি সাহায্য করে — "সবার আগে বুকিং ফ্লো ছোট করা ও প্রাইস ফিল্টার যোগ করা দরকার।"

২ · হিউরিস্টিক ইভালুয়েশন — এক্সপার্ট রিভিউ

হিউরিস্টিক ইভালুয়েশন M4/L16-এ আলোচিত Nielsen-এর ১০টি প্রতিষ্ঠিত ইউজেবিলিটি হিউরিস্টিক (visibility of system status, match between system and the real world, user control and freedom, consistency and standards, error prevention, recognition rather than recall, flexibility and efficiency of use, aesthetic and minimalist design, help users recognize/diagnose/recover from errors, help and documentation) ব্যবহার করে একজন বা কয়েকজন এক্সপার্ট একটি ইন্টারফেস পদ্ধতিগতভাবে রিভিউ করেন এবং প্রতিটি হিউরিস্টিক কতটা মানা হয়েছে তা স্কোর করেন। এটি কোনো ব্যবহারকারী ছাড়াই করা যায় বলে দ্রুত ও সস্তা — কিন্তু প্রকৃত ব্যবহারকারী পরীক্ষার (M7) পরিপূরক, বিকল্প নয়, কারণ এক্সপার্টরা কিছু বাস্তব সমস্যা মিস করে যেতে পারেন যা শুধু প্রকৃত ব্যবহারকারীদের সাথে টেস্ট করলে ধরা পড়ে।

৩ · সত্যিকারের ডেমো — একটি হোটেল বুকিং ফর্মের ওয়েটেড হিউরিস্টিক ইভালুয়েশন

M4/L16-এর ওয়েটেড-স্কোরিং প্যাটার্ন এখানে একটি ভিন্ন উদাহরণে প্রয়োগ করা হলো — একটি হোটেল বুকিং ফর্ম। প্রতিটি হিউরিস্টিকের একটি ওয়েট (গুরুত্ব, ১-৩) ও একটি স্কোর (কতটা মানা হয়েছে, ০-৪, যেখানে ৪ মানে সম্পূর্ণভাবে মানা হয়েছে) দেওয়া হয়েছে, এক্সপার্ট রিভিউয়ের ভিত্তিতে। নিচের কোড সেলে এই তালিকা থেকে একটি প্রকৃত ওয়েটেড শতাংশ গণনা করা হয়েছে।

Python
# উদাহরণ: একটি হোটেল বুকিং ফর্মের হিউরিস্টিক ইভালুয়েশন
# প্রতিটি হিউরিস্টিকের জন্য: weight (গুরুত্ব, ১-৩) ও score (কতটা মানা হয়েছে, ০-৪, ৪=সম্পূর্ণ)
heuristics = [
    ("Visibility of system status",                     3, 3),
    ("Match between system and the real world",         2, 4),
    ("User control and freedom",                         3, 2),
    ("Consistency and standards",                        2, 3),
    ("Error prevention",                                 3, 2),
    ("Recognition rather than recall",                   2, 3),
    ("Flexibility and efficiency of use",                1, 2),
    ("Aesthetic and minimalist design",                  1, 4),
    ("Help users recognize/diagnose/recover from errors",3, 1),
    ("Help and documentation",                           1, 3),
]

weighted_sum = sum(w * s for _, w, s in heuristics)
max_possible = sum(w * 4 for _, w, s in heuristics)
pct = weighted_sum / max_possible * 100

for name, w, s in heuristics:
    flag = "pass" if s >= 3 else "needs work"
    print(f"{name:52s} weight={w}  score={s}/4  -> {flag}")

print(f"\nমোট ওয়েটেড স্কোর: {weighted_sum}/{max_possible} = {pct:.1f}%")

    
গণনা দেখায় — মোট ওয়েটেড স্কোর ৫৩/৮৪ = ৬৩.১%। সবচেয়ে বড় দুর্বলতা "Help users recognize, diagnose, and recover from errors" (ওয়েট ৩, স্কোর মাত্র ১/৪) — উচ্চ গুরুত্বপূর্ণ হওয়া সত্ত্বেও সবচেয়ে কম স্কোর, যা একে সবচেয়ে জরুরি ফিক্স হিসেবে চিহ্নিত করে। এরপর "User control and freedom" ও "Error prevention" (দুটোই ওয়েট ৩, স্কোর ২/৪) — এই তিনটি সমস্যা সবচেয়ে বেশি ওয়েট বহন করছে, তাই সীমিত সময়ে ঠিক এগুলোতেই প্রথমে মনোযোগ দেওয়া উচিত। লক্ষ্য করুন — "Aesthetic and minimalist design" স্কোর ৪/৪ হলেও এর ওয়েট মাত্র ১, তাই এটি মোট শতাংশে সামান্য অবদান রাখে — এটাই ওয়েটেড স্কোরিংয়ের মূল্য: প্রতিটি সমস্যাকে সমান গুরুত্ব দেওয়ার বদলে প্রকৃত প্রভাব অনুযায়ী অগ্রাধিকার দেখানো।
মূল কথা · Key takeaway

কম্পিটিটিভ অ্যানালাইসিস বলে "প্রতিযোগীর তুলনায় আমরা কোথায় দাঁড়িয়ে," হিউরিস্টিক ইভালুয়েশন বলে "প্রতিষ্ঠিত ইউজেবিলিটি নীতির তুলনায় আমরা কোথায় দাঁড়িয়ে" — দুটোই ব্যবহারকারী পরীক্ষার আগে দ্রুত, কম খরচে সমস্যা চিহ্নিত করার টুল, এবং ওয়েটেড স্কোরিং সেই সমস্যাগুলোর মধ্যে কোনটা আগে ঠিক করা উচিত তা সংখ্যাভিত্তিকভাবে অগ্রাধিকার দিতে সাহায্য করে।

ভাবনার প্রশ্ন

প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।

প্র ০১ উপরের ডেমোতে "Help and documentation" হিউরিস্টিকের ওয়েট মাত্র ১, কিন্তু "Error prevention"-এর ওয়েট ৩। এই ওয়েট নির্ধারণ কে করে এবং কীসের ভিত্তিতে?

ওয়েট সাধারণত টিম বা এক্সপার্ট রিভিউয়াররা প্রোডাক্টের প্রেক্ষাপট বিবেচনা করে ঠিক করেন — একটি হোটেল বুকিং ফর্মে ভুল বুকিং (ভুল তারিখ, ভুল রুম সংখ্যা) আর্থিক ক্ষতির কারণ হতে পারে, তাই error prevention-এর গুরুত্ব বেশি। documentation (হেল্প টেক্সট) না থাকলেও ব্যবহারকারী সাধারণত ফর্ম বুঝতে পারেন, তাই ওয়েট কম। ভিন্ন প্রোডাক্টে (যেমন একটি জটিল অ্যাডমিন ড্যাশবোর্ড) এই ওয়েট সম্পূর্ণ ভিন্ন হতে পারে — ওয়েট নির্ধারণ নিজেই একটি বিচারমূলক (judgment-based) সিদ্ধান্ত, তাই একাধিক এক্সপার্টের মতামত নিয়ে গড় করা ভালো অভ্যাস।

প্র ০২ কম্পিটিটিভ অ্যানালাইসিসে যদি প্রতিযোগীর একটি ফিচার থাকে যা আপনার প্রোডাক্টে নেই, এর মানে কি সবসময় আপনাকেও সেটা যোগ করতে হবে?

না — কম্পিটিটিভ অ্যানালাইসিস শুধু কী আছে/নেই তা দেখায়, কেন সেটা গুরুত্বপূর্ণ তা নয়। একটি ফিচার প্রতিযোগীর কাছে থাকতে পারে কিন্তু আপনার নির্দিষ্ট ব্যবহারকারী-গোষ্ঠীর (M22-এর পার্সোনা মনে করুন) জন্য প্রাসঙ্গিক নাও হতে পারে, অথবা এটি প্রতিযোগীর নিজস্ব একটি দুর্বলতা হতে পারে যা আপনি এড়িয়ে ভালো করছেন। কম্পিটিটিভ অ্যানালাইসিসের ফলাফল সবসময় আপনার নিজের ইউজার রিসার্চ (M20-M22) ও লক্ষ্যের সাথে মিলিয়ে বিচার করা উচিত, অন্ধভাবে অনুসরণ নয়।

প্র ০৩ হিউরিস্টিক ইভালুয়েশন সবসময় প্রকৃত ব্যবহারকারী পরীক্ষার প্রয়োজনীয়তা দূর করে দেয় কি? কেন বা কেন নয়?

না। হিউরিস্টিক ইভালুয়েশন এক্সপার্টের জ্ঞানের উপর নির্ভরশীল — এক্সপার্টরা প্রতিষ্ঠিত নীতি প্রয়োগ করতে পারেন, কিন্তু তারা নিজেরা প্রকৃত ব্যবহারকারী নন এবং প্রকৃত ব্যবহারকারীর অপ্রত্যাশিত মানসিক মডেল (M7-এর ধারণা) বা প্রেক্ষাপট-নির্দিষ্ট সমস্যা মিস করতে পারেন। এটি একটি দ্রুত, সস্তা প্রথম-স্তরের ফিল্টার — বড়, স্পষ্ট সমস্যা আগেই ধরিয়ে দেয় যাতে ব্যয়বহুল ব্যবহারকারী পরীক্ষার সময় সেগুলোতে সময় নষ্ট না হয়, কিন্তু প্রকৃত ব্যবহারকারী পরীক্ষার বিকল্প নয়।

অনুশীলন

  1. চিন্তা করুন: উপরের কোড সেলে যদি "Help users recognize, diagnose, and recover from errors"-এর স্কোর ১ থেকে বেড়ে ৪ হয় (অর্থাৎ এই সমস্যাটি সম্পূর্ণভাবে ঠিক করা হলো), তাহলে মোট ওয়েটেড শতাংশ কত হবে বলে আপনার ধারণা?

    এই হিউরিস্টিকের ওয়েট ৩, তাই স্কোর ১ থেকে ৪ হলে যোগফলে (৪-১)×৩ = ৯ পয়েন্ট যোগ হবে — নতুন weighted_sum হবে ৫৩+৯ = ৬২, এবং max_possible অপরিবর্তিত থাকবে ৮৪। তাই নতুন শতাংশ প্রায় ৬২/৮৪ ≈ ৭৩.৮% হবে — মূল ৬৩.১% থেকে প্রায় ১০.৭ শতাংশ পয়েন্ট বৃদ্ধি, যা দেখায় উচ্চ-ওয়েট আইটেম ঠিক করলে সামগ্রিক স্কোরে কতটা প্রভাব পড়ে।

  2. পরীক্ষা করুন: উপরের কোড সেলে heuristics তালিকায় "Help users recognize/diagnose/recover from errors"-এর স্কোর 1 থেকে 4-এ পরিবর্তন করে Run চেপে আপনার অনুমান যাচাই করুন।

    পরিবর্তনের পর প্রকৃত আউটপুট দেখাবে মোট ওয়েটেড স্কোর: 62/84 = 73.8% — ঠিক যেমন অনুমান করা হয়েছিল। এটি নিশ্চিত করে যে উচ্চ-ওয়েট আইটেমে উন্নতি সামগ্রিক স্কোরে দ্রুততম প্রভাব ফেলে — যে কারণে ওয়েটেড স্কোরিং কম-ওয়েট আইটেমের চেয়ে উচ্চ-ওয়েট আইটেমে সময়/সম্পদ বিনিয়োগকে যুক্তিসঙ্গতভাবে অগ্রাধিকার দিতে সাহায্য করে।

আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ

আগের পাঠ
টাস্ক অ্যানালাইসিস ও হায়ারার্কিক্যাল টাস্ক অ্যানালাইসিস