২৫ ডিসে, ২০২৪·6 মিনিট পড়তে

বিস্তারে টিকে থাকা অনুমোদন ওয়ার্কফ্লো খাকা

একটি অনুমোদন ওয়ার্কফ্লো খাকা ব্যবহার করে মাল্টি-স্টেপ রাউটিং, SLA, এবং এস্কেলেশন ডিজাইন করুন যা দল বাড়লেও পরিষ্কার থাকবে—সাথে পুনরায় ব্যবহারযোগ্য Requirements চেকলিস্ট।

বিস্তারে টিকে থাকা অনুমোদন ওয়ার্কফ্লো খাকা

কেন টিম বড় হলে অনুমোদন ওয়ার্কফ্লো ভেঙে পড়ে

অনুমোদন ওয়ার্কফ্লো খুব কমই ব্যর্থ হয় কারণ মানুষ এটার প্রতি উদাসীন—এগুলো ব্যর্থ হয় কারণ প্রক্রিয়াটি ছোট টিমের জন্য ডিজাইন করা হয়েছিল যেখানে সবাই অনাবৃত্ত নিয়মগুলোই জানতো। টিম বড় হলে ওই শেয়ার করা স্মৃতি হারিয়ে যায়।

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

মূল সমস্যা হল নিয়মগুলো মানুষের মাথায় থাকে, ওয়ার্কফ্লোতে নয়। কেউ জানে যে “$500-এর নিচের মার্কেটিং টুলস টিম লিড অনুমোদন করতে পারেন, যদি না সেটা নতুন ভেন্ডর হয়,” কিন্তু সিস্টেম জানে না। যখন সেই মানুষ অনুপস্থিত, সবকিছু ধীরগতিতে চলে।

বৃদ্ধিও বদলে দেয় “অনুমোদন” বলতে কী বোঝায়। অনুরোধের ধরণ বেড়ে যায়, অ্যাপ্রুভারের সংখ্যা বেড়ে যায়, এবং ব্যতিক্রমও বাড়ে। একটি ক্রয় অনুরোধ ডিসকাউন্ট অনুরোধ বা অ্যাক্সেস অনুরোধের মতো নয়—প্রতিটি ভিন্ন ঝুঁকি বহন করে এবং আলাদা তথ্য ও প্রমাণ চায়।

একটি ওয়ার্কফ্লো যা ভলিউম দ্বিগুণ হলে টিকে থাকবে, সেই কয়েকটি মৌলিক কাজ রক্ষা করবে:

  • স্পষ্টতা: সবাই দেখতে পারবে বর্তমান ধাপ কী এবং পরবর্তী অ্যাকশনের মালিক কে।
  • গতি: সাধারণ কেসগুলো দ্রুত এগোবে, সেই “একজন মানুষ যিনি সব জানেন”–এর অপেক্ষায় না থেকে।
  • দায়িত্ব: সিদ্ধান্ত ও মন্তব্য রেকর্ডেড এবং সার্চযোগ্য থাকবে।
  • পূর্বানুমানযোগ্যতা: ডেডলাইন, SLA, এবং এস্কেলেশন ইনবিল্ট থাকবে, ম্যানুয়ালি ধাওয়া করা লাগবে না।

সাধারণত এর মানে হচ্ছে অ্যাড হক মেসেজ থেকে সরিয়ে একটি স্পষ্ট প্রক্রিয়ায় নিয়ে আসা যেখানে ধাপ, শর্ত এবং মালিকানা দৃশ্যমান ও পুনরাবৃত্তিযোগ্য।

স্কোপ এবং স্পষ্ট "ডিফিনিশন অব ডান" দিয়ে শুরু করুন

অনেক ওয়ার্কফ্লো ব্যর্থ হয় কারণ কেউ ঠিক করে না অনুরোধটা কী, বা কখন এটা শেষ। আঁকতে শুরু করার আগে সীমানা ও শেষ বিন্দু নির্ধারণ করুন।

সরাসরি ভাষায় অনুরোধ সংজ্ঞায়িত করুন। কে সাবমিট করতে পারবে? কোন তথ্য দিতে হবে? পর্যালোচনার জন্য কখন এটি যথেষ্ট সম্পূর্ণ ধরা হবে? যদি ফর্মে মানুষ “N/A” সব জায়গায় দিতে পারে, অ্যাপ্রুভাররা বা তো সব ব্লক করবে বা অন্ধভাবে অনুমোদন করে দেবে।

সহজভাবে জানুন ‘ডান’ হওয়ার ফলাফলগুলো কী। সিদ্ধান্ত নিচ্ছেন এমন ব্যক্তি যখন পরিবর্তন চাইবেন, যখন অনুরোধ আর প্রয়োজন নেই, বা কখন বাতিল করা উচিত—এসব সিদ্ধান্ত নির্ধারণ করুন। এগুলো প্রতিটি পরে ধাপকে গঠন করে।

শুরুতেই মালিক নির্ধারণ করুন। একটি প্রক্রিয়া মালিক নিয়ম ও আপডেটের জন্য দায়ী। অ্যাপ্রুভাররা সিদ্ধান্তের জন্য দায়ী, ডিজাইনের জন্য নয়। ফাইন্যান্স, সিকিউরিটি বা লিগ্যালের মত রিভিউয়াররা পরামর্শ দিতে পারেন, কিন্তু সর্বদা চূড়ান্ত সিদ্ধান্তের মালিক নাও হন।

স্কোপের চারপাশে একটি কঠোর রেখা আঁকুন। “$500-এর ওপরে সব ব্যয় অনুরোধ” স্পষ্ট। “ক্রয়” স্পষ্ট নয়। এছাড়াও কোথায় প্রক্রিয়াটি প্রযোজ্য নয় তা তালিকাভুক্ত করুন (উদাহরণ: ট্রাভেল রিম্বার্সমেন্ট বা নবায়ন যেগুলো অন্য যেখানে হ্যান্ডেল হয়) যাতে ওয়ার্কফ্লো সবকিছুকে কভার করে না।

বিল্ড করার আগে একটি দ্রুত Requirements পাস করলে পরে রিওয়ার্ক কম হবে:

  • কে সাবমিট করতে পারে এবং কে দেখতে পারবে?\n- কোন ফিল্ড বাধ্যতামূলক এবং কোন মানগুলো অনুমোদিত?\n- কোন আউটকামগুলো আছে (approve, reject, send back, cancel), এবং কে কোনটি ট্রিগার করতে পারে?\n- প্রক্রিয়া মালিক কে, এবং কোন ভূমিকা অনুমোদন করে?\n- স্পষ্টভাবে কী আউট অফ স্কোপ?\n একটি সাধারণ উদাহরণ: ল্যাপটপ অনুরোধ তখনই “ডান” যখন সেটা অনুমোদিত এবং procurement-কে হ্যান্ডঅফ করা হয়েছে, কেউ কারণ উল্লেখ করে প্রত্যাখ্যাত করেছে, বা একটি নির্দিষ্ট লিস্টসহ ফেরত পাঠানো হয়েছে যাতে মিসিং বিস্তারিত ঠিক করা যায়। ওই সংজ্ঞা ছাড়া একই অনুরোধ দিনগুলো ধরে বাউন্স করতে পারে কোনো স্পষ্ট শেষ বিন্দু ছাড়াই।

একটুকু সাধারণ অনুমোদন ফ্লো কাঠামো যা আপনি বারবার ব্যবহার করতে পারেন

একটি ছোট, পুনরায় ব্যবহারের যোগ্য খাঁচা দিয়ে শুরু করুন এবং সাবধানে প্রসারিত করুন। অধিকাংশ স্কেলিং সমস্যা আসে দায়িত্ব মিশে যাওয়া, “আরেকটা ব্যতিক্রম” যোগ করা, এবং পরের কি হবে তা হারানো থেকে।

বহুগুণে ব্যবহার যোগ্য একটি খাঁচা:

  • ইনটেক: কেউ একটি অনুরোধ সাবমিট করে।
  • ভ্যালিডেশন: সম্পূর্ণতা এবং সঠিকতার মৌলিক চেক।
  • রিভিউ: প্রসঙ্গ, প্রশ্ন, এবং সমর্থক নোট সংগ্রহ করুন।
  • সিদ্ধান্ত: অনুমোদন বা প্রত্যাখ্যান।
  • ফুলফিলমেন্ট: অনুমোদিত কাজটি সম্পন্ন করুন।
  • রেকর্ডকিপিং: ক্লোজ আউট এবং ঘটনার সংরক্ষণ।

চেকগুলোকে অ্যাপ্রুভাল থেকে আলাদা রাখুন। চেকগুলি উত্তর দেয় “এটা বৈধ এবং সম্পূর্ণ কি?”; অ্যাপ্রুভাল উত্তর দেয় “আমরা কি এটা অনুমোদন করব?” ভ্যালিডেশন সাধারণত ops বা রিকোয়েস্ট-ওনারের দায়িত্বে থাকলে ভালো। অ্যাপ্রুভাল সেই ভূমিকার হাতে থাকা উচিত যারা ঝুঁকি, বাজেট, বা নীতির জন্য দায়ী।

ধাপগুলোকে ছোট রাখুন: প্রতি ধাপে এক সিদ্ধান্ত লক্ষ্য করুন। যদি একটি ধাপে কেউ বাজেট, কমপ্লায়েন্স, এবং প্রযুক্তিগত সক্ষমতার বিচার করতেই বললে, তা আটকে যাবে বা মিটিংয়ে পরিণত হবে।

শেষে, একটি “request changes” পথ যোগ করুন যা ফিরে যায় সঠিক স্থানে, শুরুতে নয়। যদি ফাইন্যান্স মিসিং কোট চায়, তাহলে রিকোয়েস্টার (বা ভ্যালিডেশন) এর কাছে রুট করুন, তারপর ফাইন্যান্স রিভিউতে আবার পাঠান—আইনী ও ম্যানেজমেন্ট আবার করতে হবে না।

শর্তভিত্তিক রাউটিং নিয়ম যা পাঠযোগ্য থাকে

শর্তভিত্তিক রাউটিংই সেখানে ওয়ার্কফ্লোকে প্রায়ই মেসে পরিণত করে। সমাধান মূলত শৃঙ্খলা: একটি ছোট ইনপুট সেট বেছে নিন, নিয়মগুলো সরল ইংরেজিতে (বা আপনার ভাষায়) লিখুন, তারপর ঠিক যেমনটা লেখা আছে ঠিক তেমনই বাস্তবায়ন করুন।

এমন রাউটিং ইনপুটগুলিতেই থাকুন যা মানুষ ইতিমধ্যেই বোঝে এবং ধারাবাহিকভাবে পূরণ করতে পারে, যেমন পরিমাণ, বিভাগ বা কস্ট সেন্টার, ঝুঁকি স্তর, ভেন্ডর টাইপ (বিদ্যমান বনাম নতুন), এবং অঞ্চল।

প্রতিটি নিয়ম একটি লাইনের বাক্যে লিখুন আগে; যদি একটি নিয়ম এক লাইনে না আঁটে, তা সাধারণত অনেক কাজ করার চেষ্টা করছে।

পাঠযোগ্য থাকার কিছু উদাহরণ:

  • “পরিমাণ $1,000-এর নিচে হলে টিম লিডের কাছে পাঠান। $1,000 বা তার বেশি হলে Finance-কে পাঠান।”
  • “যদি ভেন্ডর প্রথমবারের মতো হয়, Finance-এর আগে Vendor Management যোগ করুন।”
  • “যদি ঝুঁকি উচ্চ হয়, বিভাগ নির্বিশেষে Security রিভিউ যোগ করুন।”

বিশেষ কেস অপরিহার্য—তাই সেগুলোকে নাম দিন এবং আলাদা রাখুন। “Urgent” একটি সাধারণ এক। urgent মানে কী (24 ঘণ্টার মধ্যে ডেডলাইন, গ্রাহক আউটেজ ইত্যাদি) নির্ধারণ করুন, তারপর একটি ফাস্ট পাথ বের করুন যেখানে ধাপগুলো কম কিন্তু নোটগুলো কঠোর।

যদি একাধিক নিয়ম প্রযোজ্য হয়, আগে থেকেই ঠিক করুন সংঘর্ষ কিভাবে সমাধান হবে। সাধারণ প্যাটার্নগুলোর মধ্যে রয়েছে অগ্রাধিকার অর্ডার (ঝুঁকি পরিমাণকে ওভাররাইড করে), কোয়ারাম (3-এ থেকে 2), সবাইকে অনুমোদন করতে হবে (সিরিয়াল বা প্যারালাল), বা টাই-ব্রেকার ভূমিকা।

আপনি যদি রাউটিং দুই মিনিটের কথোপকথনে ব্যাখ্যা করতে পারেন, টিম দ্বিগুণ হলেও এটি পাঠযোগ্য থাকবে।

এসএলএ এবং এস্কেলেশন — ম্যানুয়াল চেস ছাড়া

ভূমিকা এবং অ্যাক্সেস ঠিক করুন
শুরুর থেকেই রিকোয়েস্টার, অ্যাপ্রুভার এবং অডিটরের জন্য সঠিক বার্তাগুলো দিন।
অনুমতিসমূহ সেট করুন

SLA হলো সেই জিনিস যা একটি “সাধারণত কাজ করে” প্রক্রিয়াকে এমন একটিতে পরিণত করে যা ভলিউম বাড়লে পূর্বানুমানযোগ্য থাকে। লক্ষ্য সহজ: সিদ্ধান্ত সময়মতো হয় এবং কাউকে কিউ তে বাচানো লাগে না।

অধিকাংশ টিমের একটার বেশি টাইমার দরকার:

  • প্রথম প্রতিক্রিয়ার সময় (অ্যাকনলেজ, রিকোয়েস্ট চেঞ্জ, অনুমোদন, বা প্রত্যাখ্যান)
  • চূড়ান্ত সিদ্ধান্তের সময় (অনুমোদিত বা প্রত্যাখ্যাত)
  • ফুলফিলমেন্টের সময় (অনুমোদিত পরের কাজটি সম্পন্ন হওয়া)

সবকিছুর জন্য একটি গ্লোবাল টাইমার এড়িয়ে চলুন। একটি নিম্ন-ঝুঁকির অনুরোধে সিদ্ধান্তের জন্য ২৪ ঘণ্টা ঠিক থাকতে পারে, আর উচ্চ-মূল্যের অনুরোধে আরও কঠোর থ্রেশহোল্ড দরকার। SLA-গুলো অনুরোধ ধরনের, পরিমাণ, বা ঝুঁকির সাথে বেঁধে রাখুন যাতে নিয়মগুলো ন্যায়সঙ্গত মনে হয়।

এস্কেলেশন হওয়া উচিত একটি ল্যাডার—হঠাৎ পুনরায় বরাদ্দ নয়। একটি সাধারণ প্যাটার্ন:

  • বর্তমান অ্যাপ্রুভারকে রিমাইন্ডার
  • অ্যাপ্রুভারের ম্যানেজারের কাছে এস্কেলেট (বা একটি ডেলিগেট)
  • প্রয়োজন হলে একটি ফ্যালব্যাক অ্যাপ্রুভার গ্রুপে পুনঃনির্ধারণ
  • রিকোয়েস্টারকে নতুন স্ট্যাটাস এবং অনুমিত পরবর্তী সময় জানানো

একটি বিস্তারিত বিষয় যা অনন্ত তর্ক প্রতিরোধ করে: ঘড়ি কখন বিরতি পায় তা সংজ্ঞায়িত করুন। যদি অনুরোধ আরও তথ্য চায়, SLA-টিকে স্থগিত করা উচিত যতক্ষণ না রিকোয়েস্টার সাড়া দেয়। যদি এটা বাহ্যিক কাগজপত্রের অপেক্ষায় থাকে, “ওয়েটিং” একটি বাস্তব স্টেট হওয়া উচিত, শুধু একটি কমেন্ট নয়।

স্টেট, অডিট ট্রেইল, এবং পরবর্তীতে প্রয়োজনীয় অনুমতিসমূহ

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

শুরুতেই এমন স্টেট লেবেল ব্যবহার করুন যা সবাই বুঝে। ওয়ার্কফ্লো মধ্যেও সেগুলো সঙ্গতিপূর্ণ রাখুন: Draft, Pending, Approved, Rejected। আরো বিস্তারিত দরকার হলে একটি সাব-স্ট্যাটাস যোগ করুন যেমন “Pending: Finance” এরকম—প্রতিটি টিমের জন্য আলাদা টপ-লেভেল স্টেট বানাবেন না।

অডিট ট্রেইলে কি লগ করবেন তা নির্ধারণ করুন। এটিকে বিতর্ক, কমপ্লায়েন্স, এবং ডিবাগিং-এর ভবিষ্যৎ প্রুফ হিসেবে বিবেচনা করুন:

  • কে কার্যকর করেছিল (ইউজার, ভূমিকা, দল)
  • কোন অ্যাকশন হয়েছিল (submit, approve, reject, request changes, override)
  • কখন হয়েছিল (টাইমস্ট্যাম্প, প্রাসঙ্গিক হলে ডিউ তারিখ)
  • কী পরিবর্তন হয়েছে (কী ফিল্ডগুলোর পুরনো বনাম নতুন মান)
  • কেন হয়েছিল (কমেন্ট, প্রত্যাখ্যানের কারণ, অ্যাটাচমেন্ট নোট)

নোটিফিকেশনগুলো মানুষের স্মৃতির উপর নয়, স্টেটের উপর ভিত্তি করে হওয়া উচিত। যখন অনুরোধ Pending হয়, পরের অ্যাপ্রুভার ও রিকোয়েস্টারকে জানান। যখন এটি Rejected হয়, রিকোয়েস্টারকে কারণসহ জানান। যখন Approved হয়, procurement-এর মতো ডাউনস্ট্রীম টিমগুলোকে জানান যাতে তারা কাজ শুরু করতে পারে।

অনুমতিসমূহই সেই জায়গা যেখানে চাপ লাগলে ওয়ার্কফ্লো ভেঙে যায়। এগুলো আগে থেকেই নির্ধারণ করুন:

  • Requester: Draft তৈরি ও সম্পাদনা; সর্বদা দেখা
  • Approver: অ্যাসাইন হওয়া সময় দেখা ও সিদ্ধান্ত; মন্তব্য করা
  • Admin: সব দেখা; ডেটা সমস্যা ঠিক করা; জরুরি সময়ে রিরুট
  • Finance/Legal/Security: জড়িত থাকলে দেখা; প্রয়োজনীয় ফিল্ড যোগ করা
  • Auditor: অনুরোধ ও ইতিহাসে রিড-অনলি অ্যাক্সেস

একটি ব্যবহারিক নিয়ম যা কষ্ট বাঁচায়: একটি অনুরোধ Pending হলে গুরুত্বপূর্ণ ফিল্ডগুলো লক করুন (পরিমাণ, ভেন্ডর, স্কোপ)। যদি কিছু পরিবর্তন করতে হয়, সেটিকে Draft-এ পাঠান একটি পরিষ্কার "Requested changes" নোটসহ যাতে ইতিহাস পরিষ্কার থাকে।

ধাপে ধাপে: একটি ভিজ্যুয়াল বিজনেস প্রসেস এডিটরে বানান

আপনার ডিপ্লয়মেন্ট পাথ নির্বাচন করুন
ক্লাউডে ডিপ্লয় করুন বা পুরো সোর্স কোড এক্সপোর্ট করুন যখন আপনাকে পূর্ণ নিয়ন্ত্রণ দরকার।
এখন ডিপ্লয় করুন

একটি ভিজ্যুয়াল এডিটর আপনাকে পুরো ওয়ার্কফ্লো দেখতে সাহায্য করে আগে যে সেটা ব্যতিক্রমের জালে পরিণত হয়। প্যাসে বানান যাতে প্রথমে একটি কাজ করা পথ পান, তারপর নিয়ম যোগ করুন।

পাঁচটি পাসে ফ্লো বানান

  1. খাঁচা ম্যাপ করুন। intake, validation, approvals, fulfillment, এবং close-এর জন্য ধাপ তৈরি করুন। স্পষ্ট end states যোগ করুন: Approved, Rejected, Sent back।

  2. ইনটেক ডেটা ও ভ্যালিডেশন যোগ করুন। ফিল্ডগুলো নির্ধারণ করুন (amount, cost center, vendor, needed-by date)। শুরুতে দ্রুত চেকগুলো যোগ করুন যাতে খারাপ অনুরোধ কিউতে না পড়ে।

  3. শর্তভিত্তিক রাউটিং যোগ করুন। শুধু তখনই ব্রাঞ্চ করুন যখন সেটা অ্যাপ্রুভারের পরিবর্তন করে। সাধারণ সংঘর্ষগুলো স্পষ্টভাবে হ্যান্ডেল করুন (উদাহরণ: requester এবং approver একই হলে)।

  4. টাইমার ও এস্কেলেশন যোগ করুন। প্রতিটি ধাপে SLA সেট করুন। যখন টাইмер শেষ হয়, রিমাইন্ডার ও এস্কেলেশন পাঠান আপনার নির্ধারিত ল্যাডার অনুযায়ী।

  5. বাস্তব কেস ও এজ কেস দিয়ে টেস্ট করুন। ছোট একটি সেট সিমুলেশন চালান শুরু থেকে শেষ পর্যন্ত এবং নিশ্চিত করুন টাস্ক, মেসেজ, স্টেট, এবং অডিট এন্ট্রিগুলো ঠিক আছে।

পুনরায় ব্যবহারযোগ্য একটি ছোট টেস্ট সেট

প্রতি বার ওয়ার্কফ্লো বদলালে একই ধরনের সিনারিও ব্যবহার করুন:

  • ছোট পরিমাণ, স্বাভাবিক রুট
  • উচ্চ পরিমাণ, যা Finance চায় এবং দেরি হলে এস্কেলেট হয়
  • মিসিং বাধ্যতামূলক ফিল্ড (ইনটেকেই ব্লক)
  • কনফ্লিকট: requester এবং approver একই (সঠিকভাবে reroute হয়)
  • “Send back for edits” লুপ (সঠিক ধাপে ফিরে আসে এবং ইতিহাস ধরে রাখে)

টেস্টিংয়ের পর অস্পষ্ট ধাপগুলোর নাম পরিবর্তন করুন এবং অস্থায়ী শাখাগুলো মুছুন। যদি এখনই পড়তে কঠিন হয়, বৃদ্ধি সহ্য করবে না।

সাধারণ ফাঁদ এবং সেগুলো এড়ানোর উপায়

সপ্তাহের মধ্যে পাইলট চালু করুন
একটি দলকে লক্ষ্য করে ছোট approval অ্যাপ শিপ করুন এবং বাস্তব অনুরোধ দিয়ে পুনরাবৃত্তি করুন।
পাইলট লঞ্চ করুন

অধিকাংশ অনুমোদন ফ্লো পূর্বানুমানযোগ্য কারণে ব্যর্থ হয়। শুরু থেকেই স্পষ্টতা ও ব্যতিক্রমগুলো নিয়ে ডিজাইন করুন।

ফাঁদ: অনুমোদকদের বাড়ানো যতক্ষণ না কিছুই চলে না। অতিরিক্ত অনুমোদকগুলো নিরাপত্তাবোধ জাগায়, কিন্তু তারা ডেডটাইম ও বিভ্রান্তি সৃষ্টি করে। প্রতিটি ধাপে এক দায়িত্বশীল অনুমোদক রাখুন। অন্যরা FYI নোটিফিকেশন পেতে পারে।

ফাঁদ: এস্কেলেশন কিন্তু কোনো মালিক নেই। একটি SLA অর্থহীন যদি কাউকে ক্ষমতা না দেয়া থাকে কাজটি করার জন্য। একটি এস্কেলেশন মালিক নিধারণ করুন (একটি ভূমিকা, ব্যক্তি নয়) এবং নির্ধারণ করুন তারা কী করতে পারবে: অনুমোদন, প্রত্যাখ্যান, reroute, বা পরিবর্তন অনুরোধ।

ফাঁদ: নিয়মগুলো ইনবক্স এবং চ্যাটে লুকানো। যদি রাউটিং লজিক কোথাও সম্মত হয় "কোথাও" কিন্তু প্রক্রিয়ায় না থাকে, সিদ্ধান্তগুলো অসমঞ্জসপূর্ণ হবে। শর্তগুলো সরাসরি ওয়ার্কফ্লোতে রাখুন এবং প্রতিটি নিয়মের পাশে ছোট একটি নোট যোগ করুন কেন সেটি আছে।

ফাঁদ: কোনো request-changes লুপ নেই। যদি রিভিউয়াররা কেবল অনুমোদন বা প্রত্যাখ্যান করতে পারে, মানুষ অনুরোধগুলো রিস্টার্ট করবে এবং প্রসঙ্গ হারাবে। একটি Needs changes স্টেট যোগ করুন যা সঠিক ধাপে ফিরে পাঠায়।

ফাঁদ: ব্যতিক্রম মানুষকে প্রক্রিয়া থেকে সরিয়ে দেয়। জরুরি আইটেম ও মিসিং ডকুমেন্ট হয়—এসব যোগ্য। একটি নিয়ন্ত্রিত exception path যোগ করুন এবং লগ করুন কে কেন এটি ব্যবহার করেছে।

পুনরায় ব্যবহারযোগ্য Requirements সংগ্রহ চেকলিস্ট

যে কোনো অনুমোদন ওয়ার্কফ্লো বানানোর আগে একই ইনপুটগুলো সংগ্রহ করুন। এটা ফ্লো পাঠযোগ্য রাখবে এবং "স্পেশাল কেস"গুলোকে জরুরি ফিক্সে পরিণত হতে বাধা দেবে।

একটি ছোট ওয়ার্কশপ করুন (৩০–৪৫ মিনিট) রিকোয়েস্টার, অ্যাপ্রুভার, এবং রিপোর্টিং/কমপ্লায়েন্সের একজন প্রতিনিধির সাথে। ধরুন:

  • রিকোয়েস্ট টাইপ এবং প্রয়োজনীয় ডেটা: ক্যাটেগরি, বাধ্যতামূলক ফিল্ড, এবং প্রমাণ (কোট, স্ক্রিনশট, ডকুমেন্ট)।
  • অ্যাপ্রুভার ভূমিকা এবং ডেলিগেশন: ভূমিকা অনুযায়ী অনুমোদন, ছুটির সময়ে ব্যাকআপ, ডেলিগেশন নিয়ম, এবং কিভাবে কনফ্লিকট হ্যান্ডেল হবে।
  • রাউটিং নিয়ম ও ব্যতিক্রম: থ্রেশহোল্ড, শর্ত, ফাস্ট পাথ, এবং নিয়ন্ত্রিত exception হ্যান্ডলিং।
  • SLA, paus e নিয়ম, এবং এস্কেলেশন: অনুরোধ ধরন অনুযায়ী লক্ষ্যসমূহ, কখন ঘড়ি বিরতি পাবে, এবং প্রতিটি ধাপে এস্কেলেশন মানে কী।
  • অডিট, অ্যাক্সেস, এবং আউটপুট: কী লগ করতে হবে, কে কী দেখতে পারবে, এবং অনুমোদনের পরে কী হবে (টিকিট, PO অনুরোধ, অ্যাক্সেস প্রদান, পেমেন্ট স্টেপ)।

উদাহরণ ব্লুপ্রিন্ট: শর্তভিত্তিক রাউটিং সহ ক্রয় অনুমোদন

ওয়ার্কফ্লোগুলোকে টুলে বদলে ফেলুন
রিকোয়েস্ট, কিউ এবং ফিলফিলমেন্ট হ্যান্ডঅফের জন্য ops-রেডি পোর্টাল তৈরি করুন।
অভ্যন্তরীণ টুল তৈরি করুন

এই উদাহরণটি স্পষ্ট থাকে এমনকি ভলিউম ও টিম সাইজ বাড়লে।

সিনারিও এবং রাউটিং নিয়ম

একজন রিকোয়েস্টার একটি ক্রয় সাবমিট করে যেখানে থাকে: amount, cost center, vendor, এবং purpose। রাউটিং কয়েকটি সহজ থ্রেশহোল্ড এবং একটি ভেন্ডর-ঝুঁকি নিয়ম অনুসরণ করে:

  • $1,000-এর নিচে: department head
  • $1,000 থেকে $10,000: department head, তারপর finance
  • $10,000-এর ওপরে: department head, finance, তারপর executive approver (CFO/COO)
  • যে কোনো পরিমাণে: ভেন্ডার যদি ফ্ল্যাগড থাকে (নতুন ভেন্ডর, গ্রাহকের ডেটা হ্যান্ডেল করে, বা হাই-রিস্ক লিস্টে), তাহলে Security রিভিউ যোগ করুন

ভেন্ডর-ঝুঁকি নিয়মটিকে পরিমাণ সম্পর্কিত নিয়ম থেকে আলাদা রাখুন যাতে আপনি ভেন্ডর ক্রাইটেরিয়া বদলালে বাকি ফ্লোতে ছোড়া লাগবে না।

SLA, এস্কেলেশন, এবং আউটকাম

একটি রিকোয়েস্টার-রক্ষাকারী SLA সেট করুন: প্রথম প্রতিক্রিয়া 1 ব্যবসায়িক দিনের মধ্যে। “প্রথম প্রতিক্রিয়া” মানে অনুমোদন, প্রত্যাখ্যান, বা পরিবর্তনের অনুরোধ।

২৪ ঘণ্টার মধ্যে যদি কোনো অ্যাকশন না হয়, তাহলে অ্যাপ্রুভারের ম্যানেজারের কাছে এস্কেলেট করুন এবং রিকোয়েস্টারকে জানান। প্রথম এস্কেলেশনে সরাসরি পুনঃনির্ধারণ এড়িয়ে যান—প্রথমে ভিজিবিলিটি দিন, তারপর প্রয়োজন হলে পুনঃনির্ধারণ করুন।

আউটকামগুলো স্পষ্ট করুন:

  • Approve: Approved-এ নেন এবং ডাউনস্ট্রীম হ্যান্ডঅফ ট্রিগার করুন (PO অনুরোধ, টিকিট, বা পেমেন্ট স্টেপ)।
  • Reject: কারণ নির্ধারণ করে Rejected হিসেবে ক্লোজ করুন।
  • Request changes: মন্তব্য সহ ফিরে পাঠান, Needs updates হিসেবে পুনরায় খোলা, তারপর সেই একই ধাপে ফিরে আসবে যা পরিবর্তন চাইছিল।

প্রক্রিয়া কাজ করছে কিনা দেখতে approval time by step, rework rate (কতবার changes অনুরোধ করা হচ্ছে), এবং এস্কেলেশন ফ্রিকোয়েন্সি ধাপে ও বিভাগের ভিত্তিতে ট্র্যাক করুন।

পরবর্তী ধাপ: পাইলট, পরিমাপ, এবং বাস্তবায়ন

উদ্দেশ্যমূলকভাবে ছোট শুরু করুন। একটি দল এবং একটি অনুরোধ ধরণ (সফটওয়্যার অ্যাক্সেস, ক্রয় অনুরোধ, ছুটি) বেছে নিয়ে 2–4 সপ্তাহের পাইলট চালান। ফ্লো ডিজাইন করা যেভাবে আছে তেমন রাখুন যাতে বাস্তব কাজে কোথায় বাঁক খাচ্ছে তা দেখা যায়।

নিয়ম ও ওয়ার্কফ্লো লজিক একসাথে রাখুন। যদি রাউটিং একটি ডকুমেন্টে থাকে কিন্তু লজিক অন্য কোথাও, তখন তারা বিচ্ছিন্ন হবে। প্রতিটি স্টেপের পাশে প্লেইন-ল্যাংগুয়েজ রুল নোট রাখুন যাতে “এটা কেন সেখানে গেল?” সহজে উত্তর করা যায়।

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

পরিবর্তনের জন্য পরিকল্পনা রাখুন: কে নতুন নিয়ম প্রস্তাব করবে, কে তা রিভিউ করবে, এবং কিভাবে আপডেটগুলো ঘোষণা করা হবে। সাপ্তাহিক বা পাক্ষিক রিভিউ প্রায়ই যথেষ্ট। প্রতিটি পরিবর্তনের জন্য একটি সংক্ষিপ্ত নোট আবশ্যক করুন: এটি কী সমস্যা সমাধান করে, কার উপর প্রভাব পড়বে, এবং সফলতা কীভাবে মাপবেন।

যদি আপনি এই ব্লুপ্রিন্টকে হাতে-কলমে কোড না লিখে একটি কার্যকর অ্যাপে পরিণত করতে চান, AppMaster (appmaster.io) একটি নো-কোড প্ল্যাটফর্ম যেখানে আপনি আপনার রিকোয়েস্ট ডেটা মডেল করতে, ভিজ্যুয়াল Business Process Editor-এ অনুমোদন লজিক তৈরি করতে, এবং দ্রুত অনুমোদনের জন্য ওয়েব ও নেটিভ মোবাইল স্ক্রিন শিপ করতে পারবেন—সাথে একটি সার্চযোগ্য অডিট ট্রেইল এক জায়গায় রাখার সুবিধা।

প্রশ্নোত্তর

Why do approval workflows start failing when a team grows?

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

What should I define first before building an approval workflow?

একটি ভালো স্কোপ এমন হওয়া উচিত যে যেকেউ বললেই বুঝতে পারে কোন অনুরোধটি ওয়ার্কফ্লোতে পড়বে এবং কোনটি পড়বে না। নির্ধারণ করুন কে সাবমিট করতে পারে, কোন ফিল্ডগুলো বাধ্যতামূলক, এবং কখন কাজটি “সম্পন্ন” ধরা হবে—এভাবে অনুরোধগুলো ঘুরে বেড়াবে না এবং একটি পরিষ্কার শেষ বিন্দু থাকবে।

What’s the difference between validation and approval steps?

ভ্যালিডেশন হল “এই অনুরোধটি সম্পূর্ণ এবং সঠিক কি না” যাচাই করা, আর অ্যাপ্রুভাল হল “আমরা এটা অনুমোদন করব কি না” সিদ্ধান্ত নেওয়া। এগুলো আলাদা রাখলে অ্যাপ্রুভারদের অনাবশ্যকভাবে মিসিং ডেটা ঠিক করতে সময় নষ্ট করতে হয় না এবং সিদ্ধান্ত দ্রুত ও স্থির থাকে।

What’s a simple approval workflow structure I can reuse?

সহজ একটি রিইউজেবল কাঠামো শুরু করুন: intake, validation, review, decision, fulfillment, এবং closeout। প্রথমে এটা পুরো পথে কাজ করুক, তারপর কেবলমাত্র Ownership বা ঝুঁকি বদলে দেয় এমন শাখাগুলো যোগ করুন—এভাবে ভলিউম বাড়লেও ফ্লো পাঠযোগ্য থাকবে।

How do I set routing rules without creating a maze of exceptions?

মানুষজন সহজে পূরণ করতে পারে এমন একটি ছোট ইনপুট সেট ব্যবহার করুন—পরিমাণ, বিভাগ, ভেন্ডর টাইপ, অঞ্চল, ঝুঁকি ইত্যাদি। প্রতিটি নিয়ম আগে এক লাইনে লিখে নিন; যদি একটি নিয়ম এক লাইনে না ফিট করে, তা সাধারণত অত্যধিক জটিল এবং সেটিকে ভাগ করা উচিত।

What should I do when multiple routing rules apply at the same time?

সংঘর্ষ হলে একটি ডিফল্ট অর্ডার বেছে নিন এবং ঠিক রাখুন—যেমন “ঝুঁকি পরিমাণকে ওভাররাইড করে।” এরপর সেটি সরাসরি ওয়ার্কফ্লোতে প্রয়োগ করুন যাতে মানুষদের কোন নিয়ম প্রাধান্য পাবে তা অনুমান করতে না হয়।

How do SLAs and escalations work without constant manual chasing?

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

What states and audit trail details will I wish I had later?

সোজা, সকলের বোঝার মতো স্টেট লেবেল ব্যবহার করুন এবং লগে রাখুন কে কী করে, কখন করে এবং কেন করেছে। Pending অবস্থায় গুরুত্বপূর্ণ ফিল্ডগুলো লক করে রাখুন—যদি কিছু পরিবর্তন করতে হয় তাহলে সেটিকে Draft-এ ফেরত পাঠান “Requested changes” নোটসহ যাতে ইতিহাস পরিষ্কার থাকে।

How do I test an approval workflow before rolling it out to everyone?

একটি দল এবং একটি অনুরোধ ধরণ নিয়ে পাইলট শুরু করুন, এবং কয়েকটি বাস্তব сценарিও পরীক্ষা করুন—যেমন মিসিং তথ্য বা “requester is approver” কনফ্লিকট। যদি টেস্টে ফ্লো পড়ে বোঝা কঠিন হয়, বাস্তবে এটি টিকে থাকবে না।

Can I build this kind of workflow without writing code?

একটি ভিজ্যুয়াল বিজনেস প্রসেস এডিটর আপনাকে ধাপ, শর্ত, SLA এবং এস্কেলেশন এক জায়গায় ম্যাপ করতে দেয় এবং সেগুলোকে আপনার রিকোয়েস্ট ডেটা ও স্ক্রিনের সাথে জোড়ান। AppMaster (appmaster.io)-এ আপনি রিকোয়েস্ট ফিল্ডগুলো মডেল করতে, ভিজুয়ালি লজিক বানাতে এবং searchable history সহ ওয়েব ও নেটিভ মোবাইল স্ক্রিন শিপ করতে পারবেন—হাতের কোড ছাড়াই।

শুরু করা সহজ
কিছু আশ্চর্যজনকতৈরি করুন

বিনামূল্যের পরিকল্পনা সহ অ্যাপমাস্টারের সাথে পরীক্ষা করুন।
আপনি যখন প্রস্তুত হবেন তখন আপনি সঠিক সদস্যতা বেছে নিতে পারেন৷

এবার শুরু করা যাক