পাঠ ০৪ · ৫৭-এর মধ্যে · মডিউল ১
Home / Courses / Ethics in Computing & AI Safety / ফাউন্ডেশন

এথিক্স বনাম আইন বনাম কমপ্লায়েন্স — পার্থক্য

Ethics vs law vs compliance — the difference
৭ মিনিট পড়া শুরু · Beginner Python কোডসহ সম্পূর্ণ বাংলায়

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

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

১ · তিনটি আলাদা ব্যবস্থা

আইন হলো রাষ্ট্র কর্তৃক প্রয়োগযোগ্য, লিখিত নিয়মের একটি সেট — যা লঙ্ঘন করলে আইনি শাস্তি হতে পারে। এথিক্স হলো কী করা উচিত তার একটি ব্যাপক, প্রায়ই প্রাসঙ্গিক (context-dependent) যুক্তিকাঠামো — যা কোনো নির্দিষ্ট আইনের অস্তিত্ব নির্বিশেষে প্রযোজ্য। কমপ্লায়েন্স হলো একটি প্রতিষ্ঠানের নিজস্ব লিখিত নীতি ও প্রক্রিয়ার একটি চেকলিস্ট — যার লক্ষ্য থাকে আইন ও/অথবা প্রতিষ্ঠানের নৈতিক প্রতিশ্রুতিকে ব্যবহারিকভাবে কার্যকর করা।

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

নৈতিক ↑ অনৈতিক ↓ ← আইনত নিষিদ্ধ আইনসম্মত → আইনসম্মত ও নৈতিক আদর্শ অবস্থা — বাস্তবে সবসময় সহজ নয় নৈতিক কিন্তু আইনত নিষিদ্ধ যেমন: গুরুতর ক্ষতি ঠেকাতে NDA ভঙ্গ করে হুইসেলব্লোয়িং আইনসম্মত কিন্তু অনৈতিক যেমন: পুরনো আইনি ফাঁকফোকর ব্যবহার করে ক্ষতিকর প্র্যাকটিস আইনত নিষিদ্ধ ও অনৈতিক যেমন: প্রতারণা, হিসাব জালিয়াতি
আইনসম্মত হওয়া আর নৈতিক হওয়া — দুটো স্বাধীন অক্ষ। "কমপ্লায়েন্স" এই দুটো অক্ষের কোনোটির সমার্থক নয়, বরং এই দুটোকে বাস্তবে কার্যকর করার একটি অসম্পূর্ণ চেষ্টা মাত্র — পরের সেকশনে বিস্তারিত।

২ · কমপ্লায়েন্স কেন যথেষ্ট নয়

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

Python
# পাঁচটি ইলাস্ট্রেটিভ, সাধারণীকৃত দৃশ্য (কোনো নির্দিষ্ট বাস্তব কোম্পানি নয়) --
# প্রতিটির is_legal / is_ethical / is_compliant ফ্ল্যাগ বসিয়ে সঠিক কোয়াড্রেন্ট বের করা

def classify_scenario(is_legal, is_ethical):
    if is_legal and is_ethical:
        return "আইনসম্মত ও নৈতিক"
    elif is_legal and not is_ethical:
        return "আইনসম্মত কিন্তু অনৈতিক"
    elif not is_legal and is_ethical:
        return "নৈতিক কিন্তু আইনত নিষিদ্ধ"
    else:
        return "আইনত নিষিদ্ধ ও অনৈতিক"

scenarios = [
    {
        "name": "স্পষ্ট সম্মতি নিয়ে সীমিত-উদ্দেশ্যে ডেটা সংগ্রহ",
        "is_legal": True, "is_ethical": True, "is_compliant": True,
    },
    {
        "name": "তৎকালীন পুরনো আইনি ফাঁকফোকর ব্যবহার করে ব্যবহারকারীর অজান্তে ডেটা পুনঃবিক্রি",
        "is_legal": True, "is_ethical": False, "is_compliant": True,
    },
    {
        "name": "একজন নিরাপত্তা গবেষক NDA ভঙ্গ করে মাসের পর মাস উপেক্ষিত একটি গুরুতর নিরাপত্তা ত্রুটি জনসমক্ষে প্রকাশ করলেন",
        "is_legal": False, "is_ethical": True, "is_compliant": False,
    },
    {
        "name": "বিনিয়োগকারীদের কাছে হিসাব জালিয়াতি করে সত্য গোপন করা",
        "is_legal": False, "is_ethical": False, "is_compliant": False,
    },
    {
        "name": "অভ্যন্তরীণ প্রাইভেসি-নীতির প্রতিটি চেকবক্স আক্ষরিকভাবে পূরণ, কিন্তু নীতির আসল উদ্দেশ্য (ব্যবহারকারীর প্রকৃত সুরক্ষা) অর্জিত হয়নি",
        "is_legal": True, "is_ethical": False, "is_compliant": True,
    },
]

for s in scenarios:
    quadrant = classify_scenario(s["is_legal"], s["is_ethical"])
    compliance_gap = s["is_compliant"] and not s["is_ethical"]
    print(f"- {s['name']}")
    print(f"  কোয়াড্রেন্ট: {quadrant}")
    if compliance_gap:
        print("  বিশেষ পতাকা: কমপ্লায়েন্ট-অন-পেপার -- কাগজে কমপ্লায়েন্ট, কিন্তু নৈতিকভাবে যথেষ্ট নয়")
    print()

gap_count = sum(1 for s in scenarios if s["is_compliant"] and not s["is_ethical"])
print(f"মোট {len(scenarios)}টি দৃশ্যের মধ্যে {gap_count}টিতে কমপ্লায়েন্স থাকা সত্ত্বেও নৈতিক ঘাটতি রয়েছে")

    
লক্ষ্য করুন compliance_gap ফ্ল্যাগটি ইচ্ছাকৃতভাবে সংকীর্ণ — এটি শুধু "কমপ্লায়েন্ট থাকা সত্ত্বেও অনৈতিক" এই একটি নির্দিষ্ট ব্যর্থতার ধরন ধরে, সাধারণভাবে কমপ্লায়েন্ট না-থাকা কেসগুলো (যেমন দৃশ্য ৩ ও ৪) এখানে পতাকাবিহীন থাকে — কারণ সেগুলো ভিন্ন ধরনের সমস্যা (আইন/এথিক্সের সরাসরি সংঘাত, কমপ্লায়েন্স-প্রক্রিয়ার ব্যর্থতা নয়)।
মূল কথা · Key takeaway

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

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

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

প্র ০১ কমপ্লায়েন্স যদি আইন/এথিক্সকে কার্যকর করার জন্যই তৈরি, তাহলে একটি নীতি "কাগজে-কলমে কমপ্লায়েন্ট" হয়েও নৈতিকভাবে অপর্যাপ্ত হতে পারে কীভাবে?

কারণ কমপ্লায়েন্স ফ্রেমওয়ার্ক অনিবার্যভাবেই একটি সসীম চেকলিস্ট — বৃহত্তর নৈতিক লক্ষ্যের একটি প্রক্সি মাত্র। চেকলিস্টের আক্ষরিক শর্ত পূরণ হলেই তার পেছনের উদ্দেশ্য অর্জিত হয়েছে তার নিশ্চয়তা মেলে না — বিশেষত চেকলিস্টটি সেকেলে, সংকীর্ণ পরিসরের, বা কৌশলে "গেম" করা সম্ভব হলে।

প্র ০২ কোডে দৃশ্য ৩ (হুইসেলব্লোয়িং) "নৈতিক কিন্তু আইনত নিষিদ্ধ" কোয়াড্রেন্টে পড়ে, এবং is_compliant ও False। NDA ভঙ্গ করা কেন স্বয়ংক্রিয়ভাবে কাজটিকে অনৈতিক করে দেয় না?

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

প্র ০৩ যদি একটি ষষ্ঠ দৃশ্যের is_legal=True, is_ethical=True, কিন্তু is_compliant=False হয় (আইনসম্মত ও নৈতিকভাবে কাজ করা সত্ত্বেও অভ্যন্তরীণ অডিটে ব্যর্থ), তাহলে কোডের compliance_gap ফ্ল্যাগ কী দেখাবে?

compliance_gap = is_compliant and not is_ethical — এখানে is_ethical True বলে not is_ethical হবে False, ফলে পুরো এক্সপ্রেশনটি False হবে। অর্থাৎ এই দৃশ্যটি "কমপ্লায়েন্ট-অন-পেপার" গ্যাপ হিসেবে পতাকাঙ্কিত হবে না — কারণ এই কোডের গ্যাপ-ফ্ল্যাগ শুধুমাত্র "কমপ্লায়েন্ট থাকা সত্ত্বেও অনৈতিক" ব্যর্থতা ধরার জন্য ডিজাইন করা, একটি সাধারণ প্রক্রিয়াগত কমপ্লায়েন্স ব্যর্থতা ধরার জন্য নয়।

অনুশীলন

  1. চিন্তা করুন: আপনার পরিচিত কোনো প্রতিষ্ঠান বা প্রতিষ্ঠানের একটি নিয়মের কথা ভাবুন, যা মানুষ আক্ষরিক অর্থে মেনে চলে অথচ তার মূল উদ্দেশ্য পূরণ হয় না।

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

  2. পরীক্ষা করুন: উপরের কোড সেলে scenarios লিস্টে প্রশ্ন ০৩-এর ষষ্ঠ দৃশ্যটি (is_legal=True, is_ethical=True, is_compliant=False) যোগ করে Run চাপুন — নিশ্চিত করুন compliance_gap সত্যিই False থাকে এবং gap_count অপরিবর্তিত থাকে।

    নতুন দৃশ্যটি যোগ করলে তার কোয়াড্রেন্ট হবে "আইনসম্মত ও নৈতিক" (কারণ is_legal ও is_ethical দুটোই True), এবং compliance_gap হবে False — তাই gap_count এখনও 2-ই থাকবে, শুধু len(scenarios) ৫ থেকে ৬ হবে। এটি নিশ্চিত করে কোডটি সঠিকভাবে শুধু "কমপ্লায়েন্ট-অথচ-অনৈতিক" কেসই ধরছে, সাধারণ কমপ্লায়েন্স-ব্যর্থতা নয়।

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

আগের পাঠ
স্টেকহোল্ডার অ্যানালাইসিস — একটি সিস্টেম কাদের প্রভাবিত করে