به خاطر میخی، نعلی افتاد
به خاطر نعلی، اسبی افتاد
به خاطر اسبی، سواری افتاد
به خاطر سواری، جنگی شکست خورد
به خاطر شکستی، مملکتی نابود شد
و همه این ها به خاطر کسی بود که میخ را خوب نکوبیده بود
این روزها که فشار اقتصادی بخش بزرگی از جامعه را فرسوده و مستاصل کرده، طبیعیه که نگاهها به سمت دولتها، سیاستها و تصمیمهای کلان بره. اما شاید بد نباشه در کنار این نگاه، از خودمون هم بپرسیم سهم ما، بهخصوص در لایههای تخصصی و حرفهای جامعه، در شکلگیری وضع امروز چی بوده.
بحث درباره سیاست، ایدئولوژی یا نزاع و انزوای کشور، اغلب دانشی به ما اضافه نمیکنه. اما خیلی از فسادها، ناکارآمدیها و بیعدالتیها، نه در اتاقهای دربسته سیاست، بلکه از دل سیستمها و نرمافزارهایی شکل گرفته که توسط تیمهای فنی طراحی و پیادهسازی شدن. نرمافزارهایی که قرار بوده شفافیت بیاورن، اما بهدلیل تصمیمهای اشتباه، سادهسازیهای خطرناک، یا تسلیم در برابر فشار برای تحویل سریع، به ابزار پنهانکاری تبدیل شدن.
مدیر محصولی که برای راضی نگه داشتن بالادست، کنترلهای حیاتی یک فرایند روحذف میکنه. مدیر فنیای که برای گرفتن یک جایگاه، یک نرمافزار ایزوله و بیکیفیت رو بدون یکپارچگی و بدون کنترل داده تحویل میده.
تیمی که گزارشهای ناقص و سطحی تولید میکنه و همین گزارشها، مسیر سوءاستفادههای بزرگ رو هموار میکنه. در بسیاری از این موارد، نه نیت فساد وجود داشته و نه منفعت شخصی. اما نتیجه یکی بوده. باز شدن دریچهای برای اتلاف منابع، بیعدالتی و فساد. خطاهایی که «سهوی» بودن، اما آثارشون واقعی و سنگین بودن.
مسئله این نیست که همه تقصیر رو به گردن مهندسها، تحلیلگرها یا تیمهای نرمافزاری بندازیم. مسئله اینه که بپذیریم مسئولیت حرفهای، فقط نوشتن کد یا تحویل فیچر نیست. تصمیمهای فنی، حذف کنترلها، نادیده گرفتن کنترل کیفیت داده و تسلیم شدن در برابر فشار زمان و سیاست، همگی اثر اجتماعی دارن؛ حتی اگر قصدی پشتشون نباشه.
من حداقل چندین مورد رو درگیر مشاوره یا اصلاح بودم که فساد در سایه ضعف نرمافزار شکل گرفته بود و تبدیل به معضل عظیم شده بود (بعضا مبالغشون با گذشت سالها و یک صدم شدن ارزش پول، هنوز هم چشمگیر و بزرگن). اکثرا هم این فساد و سوءاستفادهها، زیر سایهی ضعفهای ساختاری همین سیستمهای جامع مالی و بازرگانی و انواع همین «سامانه»های بزرگ شکل گرفته بودن. اگر دوستانی که واقعا دغدغه داشتن و درگیر چنین مسائلی هستن، با کمال میل حاضرم جلسه آنلاینی داشته باشیم و تجربیات رو به اشتراک بگذارم.
و دوستانی که علاقه دارن خودشون تحقیق کنن شاید این کلیدواژهها بد نباشن:
- Segregation of Duties (SoD)
- End-to-End Traceability
- Audit Logging & Observability
- Data Quality Management (DQM)
- Master Data Management (MDM)
- Reference Data Management
- Single Source of Truth (SSOT)
و همیشه مهندسها با ابزارها و روشهای فنی جلو فساد رو نمیگیرن؛ بلکه با پیادهسازی روشهای به ظاهر غیر نرمافزاری در دل نرمافزارها جلو فساد رو میگیرن؛ کلیدواژههای کمکی:
- Social visibility
- Self-regulation
- Nudge theory (تلنگرهای رفتاری)
- Accountability Mechanisms
- Awareness & Participation
- Principal-Agent Theory
- Theory of Change (ToC)
- Social Norms Theory