حلقههای بازخورد (Feedback Loops) چیست؟
💡 این متن «بازنویسی آزاد» است: ایدهها و مفاهیم مطلب اصلی با نگارش کاملاً مستقل فارسی و مثالهای تازه بازگو شدهاند و ترجمهٔ کلمهبهکلمه نیست. بخشهای افزودهٔ مترجم در جعبهٔ منبع مشخص شدهاند.
«حلقهٔ بازخورد» یکی از آن اصطلاحهایی است که همه به کار میبرند و کمتر کسی دقیق تعریفش میکند.
نتیجهاش این است که در ادبیات تجربهٔ کاربری، این اصطلاح تقریباً همیشه به معنای غلطش به کار میرود.
این نوشته اول اصطلاح را سر جایش میگذارد، و بعد سراغ چیزی میرود که در بیشتر متنها اصلاً نیست: تأخیر، و حلقههایی که خودتان نساختهاید.
حلقهٔ بازخورد چیست؟
حلقهٔ بازخورد یعنی خروجی یک سامانه دوباره به ورودی همان سامانه برمیگردد و بر خودش اثر میگذارد.
کلمهٔ کلیدی «برمیگردد» است. باید کمیتی وجود داشته باشد که بعد از یک دور، مقدار خودش را تغییر بدهد.
این ایده از دینامیک سیستمها میآید؛ سنتی که Jay Forrester در دههٔ ۱۹۵۰ در MIT بنا گذاشت.
یک مثال ساده: تعداد کاربران یک شبکهٔ اجتماعی. هر کاربر تازه، دوستانش را دعوت میکند و تعداد کاربران بیشتر میشود.
اینجا «تعداد کاربران» هم خروجی است و هم ورودی. همین بستگی به خود، آن را حلقه میکند.
حالا این را با یک پیام تأیید در رابط مقایسه کنید. وقتی مینویسید «سفارش ثبت شد»، چیزی به هیچ کمیتی برنمیگردد.
آن پیام بازخورد است، به معنای روزمرهٔ کلمه. ولی حلقه نیست.
چرا این تفکیک ارزش دارد؟ چون رفتار یک حلقه را نمیشود از روی اجزایش حدس زد.
در یک زنجیرهٔ خطی، اگر هر قدم را بهتر کنید کل نتیجه بهتر میشود. در یک حلقه لزوماً نه.
بهبود یک گره میتواند حلقه را تندتر بچرخاند و مسئله را بزرگتر کند. همین یک جمله، دلیل وجود کل این مفهوم است.
دو نوع حلقه — و اشتباهی که منبع هم مرتکب میشود
حلقهها دو نوعاند و نمودار بالای صفحه هر دو را با رفتار مشخصشان نشان میدهد:
- - تقویتکننده (مثبت): خروجی برمیگردد و همان جهت را تشدید میکند. نتیجهاش رشد نمایی است، یا فروپاشی نمایی اگر جهت نزولی باشد.
- - تعادلبخش (منفی): خروجی برمیگردد و انحراف از یک هدف را کم میکند. نتیجهاش پایدار شدن حول آن هدف است.
علامت مثبت و منفی اینجا قضاوت اخلاقی نیست. قطبیت حلقه است، نه خوب و بد بودنش.
یک حلقهٔ تقویتکننده میتواند فاجعه باشد و یک حلقهٔ تعادلبخش میتواند دقیقاً چیزی باشد که مانع رشد شماست.
و حالا مسئله. منبع اصلی حلقهٔ مثبت را «تشویق کاربر با پاداش» و حلقهٔ منفی را «هشدار خطا» تعریف میکند.
هیچکدام از این دو حلقه نیستند. هر دو پیام رابطاند؛ چیزی به هیچ کمیتی برنمیگردد.
این اشتباه بیضرر نیست. تیمی که به او گفتهاند «حلقههای بازخورد را شناسایی کن»، فهرستی از پیامهای تأیید در میآورد و فکر میکند کار سیستمی کرده است.
در تفکر سیستمی همین تناقض را با جزئیات بیشتری باز کردهام. آزمون سادهاش یک پرسش است: چه کمیتی اینجا به خودش برمیگردد؟
اگر جوابی ندارید، آن چیز حلقه نیست. ممکن است مفید باشد، ولی اسمش چیز دیگری است.
نکتهٔ سومی هم هست که کمتر گفته میشود: در هر سامانهٔ واقعی هر دو نوع حلقه همزمان کار میکنند.
آنچه رفتار سامانه را تعیین میکند، این است که در هر لحظه کدام حلقه غالب است. و غلبه با زمان جابهجا میشود.
رشد نمایی یک محصول تا جایی ادامه دارد که یک حلقهٔ تعادلبخش — ظرفیت سرور، بودجهٔ بازاریابی، اشباع بازار — قویتر شود. آن نقطه، شکست محصول نیست؛ تغییر غلبه است.
تأخیر: چیزی که حلقهها را غیرشهودی میکند
حالا میرسیم به خاصیتی که تقریباً هیچ متن طراحیای به آن نمیپردازد، و بدون آن حلقهها را نمیشود فهمید.
در دنیای واقعی، اصلاح هیچوقت فوری نیست. میان اینکه چیزی از هدف منحرف شود و اینکه اصلاحش به سامانه برسد، فاصله هست.
نمودار بالا دو حلقهٔ کاملاً یکسان را نشان میدهد، با یک تفاوت: در یکی اصلاح دیر میرسد.
و نتیجه آن چیزی نیست که انتظار دارید. تأخیر سامانه را کُند نمیکند؛ باعث میشود از هدف رد شود و برگردد.
مثالش را همه تجربه کردهایم: شیر آب گرم حمام. آب سرد است، شیر را باز میکنید، خبری نمیشود، بیشتر بازش میکنید، و بعد ناگهان میسوزید.
شما اشتباه نکردهاید. تأخیر میان عمل و اثر، نوسان را ساخته است.
همین اتفاق در محصول هم میافتد. تیمی که موجودی انبار را با گزارش هفتگی تنظیم میکند، مدام میان کمبود و انباشت نوسان خواهد کرد.
و تأخیر یک جا نیست، دو جاست. یکی تأخیر در رسیدن اثر، و دیگری تأخیر در دیدن آن.
اگر دادهتان هفتگی است، حتی اگر اثر فوری باشد، شما هفت روز دیر میبینیدش. از نظر حلقه، این دو یکیاند.
درمانش هم معمولاً «تلاش بیشتر» نیست. کوتاه کردن تأخیر است، یا آرامتر کردن واکنش.
و یک قاعدهٔ عملی از اینجا بیرون میآید: پیش از آنکه شدت اصلاح را زیاد کنید، ببینید تأخیر چقدر است. در سامانهای با تأخیر زیاد، واکنش شدیدتر اوضاع را بدتر میکند.
حلقههای واقعی در محصول
حالا که تعریف سر جایش است، ببینیم در یک محصول نرمافزاری واقعاً کجا حلقه داریم.
- - ۱. حلقهٔ رشد: کاربر تازه محتوا میسازد، محتوا کاربر تازه میآورد. تقویتکننده، و موتور رشد بیشتر شبکههاست.
- - ۲. حلقهٔ کیفیت محتوا: محتوای بهتر مخاطب بیشتری میآورد، مخاطب بیشتر سازندهٔ بهتری جذب میکند. این هم تقویتکننده است و در جهت عکس هم کار میکند.
- - ۳. حلقهٔ توصیهگر: آنچه نشان داده میشود کلیک میگیرد، و آنچه کلیک میگیرد بیشتر نشان داده میشود. تقویتکننده، و دقیقاً به همین دلیل خطرناک.
- - ۴. حلقهٔ ظرفیت پشتیبانی: صف طولانیتر، پاسخ دیرتر؛ پاسخ دیرتر، تماس دوباره؛ تماس دوباره، صف طولانیتر. تقویتکننده، و کسی طراحیاش نکرده است.
- - ۵. حلقهٔ قیمت و تقاضا: تقاضای زیاد قیمت را بالا میبرد و قیمت بالا تقاضا را کم میکند. تعادلبخش.
به چیزی در این فهرست دقت کنید. چهار مورد اول تقویتکنندهاند و فقط یکی تعادلبخش.
این تصادفی نیست. سامانههای محصول پر از حلقههای تقویتکنندهاند، و حلقهٔ تعادلبخش معمولاً باید عمداً ساخته شود.
هر سقف، محدودیت نرخ و صف اولویت، در واقع یک حلقهٔ تعادلبخشِ دستساز است. اگر نسازیدشان، سامانه تا جایی رشد میکند که به یک مانع فیزیکی بخورد.
کشیدنشان هم کار سختی نیست و ابزار خاصی نمیخواهد. یک کمیت را بنویسید، بعد بپرسید چه چیزی آن را زیاد میکند.
آن را هم بنویسید و همین را ادامه دهید تا به کمیت اول برگردید. اگر برگشتید، حلقه دارید؛ اگر نه، یک زنجیرهٔ خطی است.
بعد روی هر پیکان بنویسید که رابطه همجهت است یا معکوس. تعداد فرد پیکانِ معکوس یعنی حلقه تعادلبخش است و تعداد زوج یعنی تقویتکننده.
حلقهای که طراحی نکردید
بیشتر حلقههای مهم یک محصول، تصمیم کسی نبودهاند. از کنار هم قرار گرفتن چند تصمیم مستقل پدید آمدهاند.
حلقهٔ توصیهگر بهترین نمونه است. هیچکس ننوشت «محتوای پرکلیک را تشدید کن تا افراطی شود».
کسی فقط گفت «پرکلیکها را بالاتر نشان بده»، و حلقه بقیهاش را خودش انجام داد.
این تفاوت مهم است، چون مسئولیت را عوض نمیکند. حلقهای که نساختهاید ولی تغذیهاش میکنید، باز هم حلقهٔ شماست.
و اینجاست که بحث به الگوهای فریبنده نزدیک میشود، ولی یکی نیست. الگوی فریبنده یک تصمیم آگاهانه است و حلقهٔ ناخواسته یک اثر جانبی.
راه پیدا کردنشان هم مشخص است. هر سنجهای که بهینه میکنید را بردارید و بپرسید: اگر این عدد بالا برود، چه چیزی در محصول عوض میشود؟
بعد بپرسید آن تغییر، خودِ همین عدد را بالاتر میبرد یا نه. اگر جواب بله باشد، شما یک حلقهٔ تقویتکننده دارید، چه بخواهید چه نخواهید.
منبع اصلی هم برای همین به چند اصل طراحی انسانمحور ارجاع میدهد. مهمترینشان سه تاست: حل کردن مسئلهٔ درست با پنج چرا، دیدن همهچیز بهعنوان یک سامانه، و برداشتن گامهای کوچک.
گام کوچک در سامانهٔ حلقهدار فقط احتیاط نیست؛ تنها راه یادگیری است. در سامانهای که به خودش بازخورد میدهد، اثر یک تغییر بزرگ را نمیشود از قبل حساب کرد.
در بافت فارسی
این بحث در محصولات ایرانی چند جای مشخص خودش را نشان میدهد.
یک: حلقهٔ نظر و فروش. در فروشگاههای آنلاین، کالای پرفروش نظر بیشتری میگیرد و نظر بیشتر آن را پرفروشتر میکند. این یک حلقهٔ تقویتکنندهٔ تمامعیار است و نتیجهاش این است که کالای تازه عملاً دیده نمیشود.
دو: حلقهٔ پشتیبانی در فصل شلوغی. نزدیک تخفیفهای بزرگ، همان حلقهٔ صف و تماس دوباره فعال میشود. راهحلش افزودن نیرو در همان لحظه نیست؛ کوتاه کردن تأخیر پاسخ اول است.
سه: تأخیر تحویل را در حلقه حساب کنید. میان ثبت سفارش و تحویل چند روز فاصله است، پس هر اصلاحی در موجودی هم با همان تأخیر اثر میکند. تنظیم روزانهٔ موجودی بر اساس فروش دیروز، همان شیر آب گرم است.
چهار: حلقه را با پیام رابط اشتباه نگیرید. این نکته را تکرار میکنم چون رایجترین خطاست. اسنکبار «ثبت شد» بازخورد خوبی است و کاملاً لازم، ولی اگر آن را حلقه بنامید، سامانهتان را هرگز نخواهید دید.
جمعبندی
حلقهٔ بازخورد یک استعاره نیست؛ یک ساختار مشخص است که یک آزمون دارد: چه کمیتی به خودش برمیگردد؟
دو نوع دارد و علامتشان قضاوت ارزشی نیست. تقویتکننده رشد یا فروپاشی میسازد و تعادلبخش پایداری.
تأخیر مهمترین چیزی است که در بحثهای معمول از قلم میافتد. تأخیر، سامانه را کُند نمیکند؛ نوسانیاش میکند.
و بیشتر حلقههای مهم محصول شما را کسی طراحی نکرده. از کنار هم نشستن چند تصمیم درست پدید آمدهاند، و همچنان مسئولیتشان با شماست.
اگر بخواهم یک پرسش بگذارم: سنجهای که این فصل بهینهاش میکنید، چه چیزی را در محصول عوض میکند که دوباره خودش را بالا ببرد؟
منبع
این نوشته «بازنویسی آزاد» است از موضوع Feedback Loops منتشرشده در وبسایت بنیاد طراحی تعامل (Interaction Design Foundation — IxDF). مفاهیم پایه — تعریف حلقه بهعنوان استفاده از خروجی سامانه بهعنوان ورودی برای یافتن رابطهٔ علت و معلول، تفکیک حلقهٔ مثبت و منفی، ارجاع به حلقههای تقویتکننده و تعادلبخش در سامانههای پیچیده، و چهار اصل طراحی انسانمحور شامل مردممحوری و حل مسئلهٔ درست با پنج چرا و دیدن همهچیز بهعنوان سامانه و برداشتن گامهای کوچک — از این منبع گرفته شده، اما متن فارسی و توضیحها کاملاً مستقل نوشته شدهاند.
متن مقالهٔ اصلی تحت هیچ لایسنس بازی منتشر نشده است؛ به همین دلیل اینجا ترجمهٔ کلمهبهکلمه ارائه نشده و متن کامل انگلیسی (بههمراه همهٔ تصاویر) در لینک زیر در دسترس است.
تفاوت با منبع: منبع اصلی حلقهٔ مثبت را «تشویق کاربر با پاداش» و حلقهٔ منفی را «هشدار خطا» تعریف میکند. این تعریف با معنای این دو اصطلاح در دینامیک سیستمها نمیخواند و هیچکدام از آن دو مثال حلقه نیستند، چون در آنها کمیتی به خودش برنمیگردد. این صفحه تعریف دینامیک سیستمها را مبنا گرفته و تفاوت را صریح گفته است.
بخشهای افزودهٔ مترجم: ریشهٔ مفهوم در کار Jay Forrester و تأکید بر اینکه علامت حلقه قطبیت است نه قضاوت ارزشی؛ کل بخش «تأخیر» شامل تفاوت رفتار حلقه با و بدون تأخیر، مثال شیر آب گرم، مثال تنظیم موجودی با گزارش هفتگی، و قاعدهٔ سنجیدن تأخیر پیش از زیاد کردن شدت اصلاح؛ کل بخش «حلقههای واقعی در محصول» شامل پنج حلقهٔ نامبرده و این مشاهده که حلقههای تقویتکننده خودبهخود پدید میآیند و تعادلبخشها باید عمداً ساخته شوند؛ کل بخش «حلقهای که طراحی نکردید» شامل نمونهٔ حلقهٔ توصیهگر، تفکیک آن از الگوی فریبنده، و روش دوپرسشی برای یافتن حلقههای ناخواسته از روی سنجهها؛ و کل بخش «در بافت فارسی» شامل حلقهٔ نظر و فروش، حلقهٔ پشتیبانی در فصل شلوغی، و حساب کردن تأخیر تحویل.
تصاویر: هر سه نمودار این صفحه طراحی اختصاصی مترجم است. از تصاویر منبع اصلی یکی عکسی با لایسنس CC0 و دیگری نموداری با لایسنس CC BY-SA 4.0 متعلق به خود بنیاد است؛ دومی دربارهٔ اصول طراحی انسانمحور است و نه دربارهٔ حلقهها، بنابراین به بحث این صفحه مربوط نمیشد و بازتولید نشده است.
مشاهدهٔ مقالهٔ اصلی
حلقههای بازخورد