هزینه پنهان اشاره انگشت
بیایید روراست باشیم، درگیر ساختن سیستمهایی هستیم که ذاتا پیچیده و توزیعشدهاند. به همین دلیل، شکست (Failure) اجتنابناپذیر است. این یک واقعیت تلخ اما غیرقابل انکار است. لحظهای که یک سرویس حیاتی Down میشود، فشار عصبی شروع میشود. متأسفانه، اولین واکنشی که از فرهنگهای قدیمی مدیریتی میآید این است: «حالا مقصرش کیه؟»
در این یادداشت
- هزینه پنهان اشاره انگشت
- Blameless Culture: نگاه مهندسی به شکست
- سرزنش ممنوع: تمرکز بر سیستمها، نه افراد
- Postmortem بدون سرزنش: متدولوژی رسمی امروزی
- چرا سرزنش، قاتل خاموش قابلیت اطمینان (Reliability) است؟
- پنهانکاری و اعوجاج دادهها: خطای تکراری
- کاهش اعتماد و سرعت عمل
- راهحلهای سطحی و دور باطل شکست
- چالش بزرگ، مرز باریک بین خطا و قصور
- مواجهه با مقاومتهای مدیریتی
- کلام پایانی من
این غریزه، قاتل خاموش پیشرفت هر تیمی است. در محیطهای فنی، تقریبا هیچ خطایی تکعاملی نیست و پشت هر دستوری که منجر به خرابی میشود، یک حفره در فرآیندها، ضعف در ابزارها یا پیچیدگی بیش از حد معماری پنهان است. پس طبیعتا تمرکز بر روی یک فرد، صرفا یک مسکن موقتی برای وجدان است که باعث میشود از کشف ریشه اصلی مشکل فرار کنیم. فرهنگ Blameless (بدون سرزنش) نه یک سیاست توجیهکننده، بلکه یک رویکرد مهندسی استوار است که بر اساس اصول SRE شکل گرفته. هدف این است که از هر شکست به عنوان یک فرصت سیستمی برای یادگیری استفاده کنیم.
Blameless Culture: نگاه مهندسی به شکست
Blameless Culture یعنی انتقال تمرکز از افراد به سیستمها. این یک شیفت پارادایم از مدل مدیریتی «تنبیه و پاداش» به مدل «سیستم و یادگیری» است.
سرزنش ممنوع: تمرکز بر سیستمها، نه افراد
در تیمهای فنی با بلوغ بالا، ما باید بپذیریم که حتی ماهرترین افراد هم اشتباه میکنند. این بخشی از ریسک هر کار خلاقانه و فنی است. اگر فرهنگ سازمانی شما این اشتباه را تنبیه کند:
ترس از تنبیه، اطلاعات حیاتی برای حل مشکل را از بین خواهد برد. اینجاست که Blameless Culture بهعنوان یک مکانیزم دفاعی برای سیستم عمل میکند. ما باید به تیم اعلام کنیم: «نترسید، اینجا تیم مهم است. سیستم ما شکست خورد. بیایید بفهمیم چطور آن را قویتر کنیم.»
Postmortem بدون سرزنش: متدولوژی رسمی امروزی
مهمترین خروجی و روش عملیاتی فرهنگ Blameless، سند Postmortem برای کالبدشکافی پس از حادثه اصلی است. این سند باید حرفه ای، بدون چشم پوشی و کاملا فنی باشد.
ثبت دقیق حقایق: آنچه بر اساس لاگها و متریکها ثابت شده است، بدون تفسیر و تحلیل اولیه.
تحلیل ریشه (RCA): پیدا کردن تمامی عوامل مؤثر (Contributing Factors).
یادگیری: تعریف اقدامات اصلاحی سیستمی برای جلوگیری از وقوع مجدد در سطح فرآیندها و ابزارها.
این سندها در تیمهای بزرگ، صرفا برای بایگانی نیستند، بلکه نقشه راه بهبود سیستم و تبدیل هر حادثه به یک سرمایهگذاری برای پایداری آینده محسوب میشوند.
چرا سرزنش، قاتل خاموش قابلیت اطمینان (Reliability) است؟
سرزنش فقط یک حس بد نیست، مستقیما پایداری و سودآوری سازمان را هدف قرار میدهد.
پنهانکاری و اعوجاج دادهها: خطای تکراری
تجربه نشان داده، زمانی که مهندسی ترس از عواقب حرفهای داشته باشد، جزئیاتی را که برای تحلیل ریشه (RCA) حیاتی هستند، پنهان میکند یا آنها را فیلتر میکند. اگر ریشهیابی بر اساس دادههای ناقص باشد، راهحل هم ناقص خواهد بود. ما فکر میکنیم باگ رفع شده، اما در واقع فقط نشانههای آن را موقتا پوشاندهایم و همان باگ دقیق، در ماه بعد دوباره با هزینه بالاتر تکرار خواهد شد.
کاهش اعتماد و سرعت عمل
سرزنش، اعتماد درون تیم را از بین میبرد.
کاهش نوآوری: افراد از انجام کارهای جدید و ریفکتورینگهای بزرگ که ریسک شکست دارند، اجتناب میکنند. این یعنی فریز شدن سیستم و انباشت بدهی فنی.
مالکیت (Ownership) از بین میرود: کسی مسئولیت فرآیندهای حیاتی و پرریسک را نمیپذیرد، که این خود، آسیبپذیری سیستمی جدیدی ایجاد میکند.
راهحلهای سطحی و دور باطل شکست
در فرهنگ مقصریابی، اغلب راهحلهای ارائه شده فاقد ارزش مهندسی هستند: (مثلا لطفا بیشتر دقت کنید.)
فرهنگ Blameless ما را مجبور میکند به دنبال راهحلهای سیستمی و عمیق باشیم:
- چرا سیستم مانیتورینگ ما قبل از رسیدن به این حد بحرانی، Alert نداد؟
- آیا میتوانیم این فرآیند دستی را خودکار (Automate) کنیم تا خطای انسانی حذف شود؟
- آیا معماری ما برای جداسازی شکستها (Failure Isolation) به اندازه کافی قوی است؟
چالش بزرگ، مرز باریک بین خطا و قصور
این مهمترین سوالی است که مدیران و حتی مهندسان ارشد میپرسند، آیا فرهنگ Blameless یعنی هیچکس مسئول هیچچیزی نیست و هرکس هرکاری دلش خواست بکند؟ پاسخ یک نه قاطع است. فرهنگ Blameless به معنی چشمپوشی از بیکفایتی یا سوءنیت نیست. ما باید بین دو مفهوم تفکیک قائل شویم:
خطا (Error): اشتباهات ناخواسته که توسط افراد ماهر و دلسوز رخ میدهد (خستگی، پیچیدگی ابزار، فشار ددلاین). این موارد ۱۰۰٪ تحت پوشش چتر حمایتی Blameless هستند چون نشاندهنده ضعف سیستماند.
قصور (Negligence): نادیده گرفتن عمدی پروتکلها. مثلا برنامه نویسی که کد را بدون تست و بدون Code Review مستقیما روی سرور کپی میکند، یا هشدارهای امنیتی را عمدا غیرفعال میکند. این دیگر یک مشکل سیستمی نیست، یک مشکل انضباطی و مدیریتی است.
فرهنگ Blameless میگوید: اگر کسی اشتباه کرد، سیستم را درست کن. اگر کسی عمدا خرابکاری کرد یا صلاحیت نداشت، تیم را اصلاح کن. اما در ۹۹٪ مواقع، آنچه میبینیم خطای نوع اول است.
مواجهه با مقاومتهای مدیریتی
مدیران غیرفنی و ذینفعان (Stakeholders) اغلب وقتی سرویس Down میشود، به دنبال مقصر میگردند تا آرام شوند. آنها تصور میکنند تنبیه مقصر، تضمینی برای عدم تکرار است. وظیفه ما به عنوان لیدرهای فنی این است که با زبان داده و هزینه صحبت کنیم. باید نشان دهیم که تنبیه یک نفر، ارزانترین و بیفایدهترین واکنش ممکن است. اخراج یک برنامه نویس، باگ موجود در پایپلاین را حذف نمیکند، فقط کسی که با آن باگ آشنا شده بود را حذف میکند! تیمهایی که شکستها را شفاف گزارش میکنند و بابت آن سرزنش نمیشوند، شاید در ظاهر تعداد خطای بیشتری ثبت کنند، اما در عمل پایدارترین، سریعترین و کمهزینهترین تیمهای جهان هستند.
کلام پایانی من
پذیرش فرهنگ Blameless نشاندهنده سطح بلوغ یک سازمان است. ما با نگاه کردن به شکست به عنوان یک داده (Data) و نه یک لکه ننگ، فرصت پیدا میکنیم تا زیرساختی بسازیم که حتی در برابر اشتباهات انسانی هم مقاوم است (Resilient). اگر میخواهید شبها با آرامش بخوابید و نگران تماسهای اضطراری ساعت ۳ صبح نباشید، دست از پیدا کردن مقصر بردارید و شروع به تعمیر حفرههای سیستم کنید. این تنها راه بقا در دنیای پیچیده نرمافزار است.

نادری
دسامبر 4, 2025جواد جعفری
دسامبر 4, 2025