ویرگول
ورودثبت نام
Moodi
Moodi
خواندن ۴ دقیقه·۴ سال پیش

قوانین فیزیک و نرم‌افزار

برای راه‌اندازی یک پروژه برای کارفرما، یک سری از فاکتورها هستن که بدجوری جلوی کار رو می‌گیرن و از قضا اصلا توی ریسک‌های پروژه دیده ‌نمی‌شن. در این نبشه میخوام یکی از اون‌ها رو بعلاوه راه‌حل‌ شرح بدم و در مقاله‌های بعدی هم دونه دونه چیزهایی که بهش برخوردم و رویکردهایی که ازشون جواب گرفتم رو خواهم گفت. اگه به درد کسی هم نخوره، لاقل خاطره که میشه.

اینرسی

این واژه یک اصطلاح فیزیکیه ولی خب در مورد کارفرمایی به کار میره که در حال حاضر یک سیستم برای انجام فرآیندهاش داره و از قضا اون سیستم رو هم یاد گرفته و ازش راضیه. حفره‌هاش رو می‌شناسه و در مجموع برای اینکه بیاد توی یک سیستم جدید حسابی مقاومت می‌کنه و می‌خواد با همون وضعیت ای بسا تا ابد هم پیش بره.

مثلا

  • موقع نیازسنجی و مصاحبه تمام فرآیند رو شرح نمی‌ده تا سیستم جدید ناقص تولید بشه و بتونه ازش ایراد بگیره و اصطلاحا هواش کنه.
  • از کوچک‌ترین چیزای ساده موقع تحویل سیستم جدید ایراد می‌گیره و هی می‌خواد ثابت کنه که سیستم قبلش بهتره و نیازی به سامانه جدید نیست.
  • سعایت و بدگویی می‌کنه. حتی تخریب شخصیتی می‌کنه شاید باورتون نشه و این مورد بیشتر در لایه‌های بالادستی و مدیران هست که شاید به نظر غیرمحتمل میاد، ولی من تجربه‌اش کردم.
  • با فشار زیاد و ارسال حجم زیادی از نیازمندی‌های جدید می‌خواد تو رو درگیر توسعه و پشتیبانی کنه تا نتونی به تولید برسی و اون وقت هم از عقب افتادگی‌‌ت توی تولید سوء استفاده کنه و هم از طرفی تولید رو عقب بندازه و با سامانه قبلیش زندگی کنه.

اینا فقط نمونه‌هایی از مشکلاتی که به اینرسی بر‌میگرده بود و زیاد وارد جزئیات نمی‌شم. اما:

راه‌حل

  • با افزایش میزان شفافیت می‌شه تا اونجایی که می‌شه اعتماد بهره‌بردار رو جذب کرد تا اگر کسی صرفا از روی تنبلی مرسوم مقاومتی داره از مسیر کنار بره. مثلا ما برای این کار بعد از شناسایی هرکدوم از آدما‌ی بهره بردار، برای اونهایی که واقعا از سر دلسوزی مقاومت میکردن، یک سری جلسات گذاشتیم تا شیوه تولید و اجرا رو هم باهاشون مشورت کنیم، حتی اگر در نهایت بازم روش خودمون رو اجرا کردیم، ولی این حس رو القا کردیم که این محصول نهایتا برای شماست.
  • جلوی توسعه و حتی پشتیبانی اون سیستم قدیمی رو گرفتیم تا کم کم احساس کنن که این سیستم دیگه پاسخگوی نیازشون نیست و عملا درخواست ها در سامانه جدید پیاده سازی شده و به بهره‌برداری خواهد رسید.
  • تا می‌تونستیم و سیاست‌های بالادستی و پلن تولیدمون اجازه میداد، امکانات در سیستم جدید اضافه می‌کردیم و سعی می‌کردیم کاری کنیم تا بهره‌برداران نرمال رو که منطق سرشون می‌شه جذب سیستم جدید کنیم.
  • با بررسی شرایط بعضی از نفرات که کار فنی بلد بودن و به همین دلیل ساده همیشه منتقد و صاحب نظر بودن! و هی سنگ اندازی میکردن رو با یک ملاحظاتی وارد تیم تولید کردیم تا اگر واقعا اینکاره هستن بیان کمک کنن که برد-برد بشه و یا حتی اگر بلد هم نیستن، به جهت حضورشون در تیم تولید گاردشون نسبت به سیستم جدید برداشته بشه.
  • با راه‌اندازی و تاکید روی روال تست هوشمند و اجرای چند ابزارخاص کنترل کیفیت، خطاها رو به حداقل رسوندیم تا اعتماد به کارکرد سیستم روز به روز افزایش پیدا کنه. در واقع سعی کردیم بجای تولید بیشتر، تولید رو با کیفیت‌تر کنیم درست نقطه مقابل چیزی که کارفرما (مخصوصا از نوع دولتیش) دوست نداره و همه‌اش میخواد ده تا فرآیند ناقص داشته باشه برای شوآف، تا دو تا فرآیند کامل داشته باشه برای کار.
  • با کنترل برخی چارچوب‌های اخلاقی حتی بعضی ترفند‌هایی که اونا اجرا میکنن رو علیه‌ خودشون می‌شه استفاده کرد. سربسته عرض کنم که در مقابل اینرسی که فیزیکیه، در اینجا از قوانین نیوتون کمک میگیریم بدین صورت که هر عملی را عکس العملی است به همان اندازه و در نقطه مقابل.

شاید این مشکلات ساده به نظر بیاد یا حتی اصلا به نظر نیاد. ولی اینا مثل سرطان می‌مونه آروم آروم بزرگ می‌شن و یک دفعه یک چالشی ایجاد می‌کنن که منجر به شکست در پروژه می‌شه و همه زحمات تیم رو به باد می‌ده.

برنامه نویسیمدیریت پروژه
شاید از این پست‌ها خوشتان بیاید