ریسک – بخش نخست

10 03 2009

درود بسیار بر یکایک دوستان

این بار میخوام دربارۀ یکی از موضوعات بسیار کلیدی و مهم مدیریت پروژه و مهندسی نرم افزار براتون ورّاجی کنم. یه جواریی در ادامۀ همون امکان سنجی و اثبات مفهوم و ایناست امّا خیلی مهم تر و کلی تر و دربرگیرندۀ همه چیزهایی که تا به حال گفتم (و نگفتم) میشه. شالودۀ مهندسی نرم افزار (اما نه برنامه نویسی) همین چیزهاست. این سری از نوشته ها بیشتر بدرد مهندسین نرم افزار و مدیران پروژه میخوره اما به همۀ آی.تی کارها پیشنهاد میکنم که بخونن. برنامه نویسها اگر بخونند درک و فهمشون از کلیّت داستان بیشتر میشه و اندیشه روشن تری پیدا میکنند. مهندسین نرم افزار و مدیران پروژه حتماً بخونند

آشنایی

اونهایی که این کاره هستند (مدیران پروژه و مهندسین نرم افزار) و چند تایی پروژه نوشتند میدونند که سرطان همه پرژه های نرم افزاری  (و غیره) همون چیزیست که ما به ذات باهش آشنایی داریم و ازش هیچ خوشمون نمیاد چون نتیجه اش روی هواست و ممکنه پاچه مون بشه، یعنی «ریسک». ریسک به هر پیش آمدی میگن که از پیش نمیشه گفت رخ میده یا نه اما اگر رخ داد یه جورایی پاچۀ ما شده. اون چه که روبرو شدن با ریسک رو از بقیه دشواری ها و سختی های کار مهندسی و مدیریت جدا میکنه اونه که ریسک قطعی نیست و توش احتملات بسیاری نهفته است و از سوی دیگه عواقب و نتایج اون هم درست معلوم نیست که چی ممکنه باشه. اینه که بررسی و ارزیابی و کاهش ریسک کارهای سختی هستند. اگر نتونید ریسکهای پروژه رو شناسایی و اونها را بدرستی مهار و مدیریت کنید درکل پروژه رو ول معطل بدونید. اگر میخواهید ببینید رییس شرکت یا مدیر عامل یا بالاسری شما چیزی از کارش حالش میشه یا نه باید ببینید که مدیریت ریسکش چه جوریه. کسی که ریسک های کارش رو نمیشناسه و از اهمیت و اثراتشون روی کار آگاه نیست قدر گاو از کارش سر در نمیاره. برعکس کسی که نخست با ریسکهای کار روبرو میشه و بر شناسایی و مدیریت ریسک پافشاری میکنه حالیشه که داستان چیه

تعریف دقیق تر از ریسک

همه زمینه های مهندسی مفهوم ریسک رو دارند و این ویژه کار نرم افزار نیست بنابراین ریسک یک تعریف کلی و همگانی داره: «هر رخدادی که چنانچه پیش بیاد پیامدهای بدی به همراه داره». به عبارت «چنانچه» توجه کنید که احتمال و عدم قطعیت رو میرسونه و «پیامدهای بد» هم اثرات ریسک رو درخودشون دارند؛ بنابراین ریسک هر چیزیه که فعلا معلوم نیست بشه یا نشه اما اگر شد برای ما خوب نیست. حالا این خوب نبودن میتونه از چند ساعت کار بیشتر یا مطالعه آغاز بشه و به لغو پروژه یا بد نام شدن تیم ختم بشه. پس هر ریسکی دو بخش داره : یکی شانس رخداد و دیگری پیامدها و آثار اون ریسک (در صورت وقوع) روی پروژه. این دومی به زبون ساده یعنی اگر ریسک رخ بده چی میشه. یه شماری نشستن و ریسک رو فرمول بندی کردن که کار بسیار خوبی کردن چون با این کارشون به ریسک (که یک چیز کیفی یه) کمیّت دادن و هر چیزی که کمّی و قابل اندازه گیری شد، میشه باهاش روبرو شد. فرمول ریسک رو من براتون مینویسم

شناس رخداد * پیامد = ریسک

این فرمول میگه اهمیّت ریسک تنها با شناس رخداد یا پیامدهای اون شناخته نمیشه و ترکیبی از هر دوی اونهاست و این خودش مدیریت ریسک رو سخت میکنه. برخی ریسکها شانس رخداد اندکی دارند و اگرهم رخ بدند زیان چندانی نمیرسونند؛ به این ریسکها میگن «ریسکهای کوچک». اما برخی ریسکها شناس رخدادشون زیاده و اگر هم خدای نکرده رخ بدن خواهر و مادر پروژه در خطر میافته که به اونها میگن «ریسکهای بزرگ». اگر یکی از این ریسکهای بزرگ یا چند تا ریسک کوچک رخ بده و در مجموع جوری بشه که پروزه شدیداً با دشواری روبرو بشه، میگن «بحران» رخ داده و به این حالت میگن حالت بحرانی. حالت بحرانی اون چیزیه که باید به هر راهی شده ازش دوری کنید و آنچه به شرایط بحرانی میانجامد چیزی نیست جز نادیده گرفتن ریسکها و اهمیت اونها

مدیریت ریسک

همونجور که برای جمع آوری نیاز، طراحی، پیاده سازی و … روش و متد داریم، برای روبرو شدن با ریسک هم روش داریم. به این کار میگن «مدیریت ریسک» یعنی بیایم ریسکهای کارمون رو بشناسیم و با اونها جوری برخورد کنیم که بعدا تو کار سرطان نشند. حالا یا اثراتشون رو کم کنیم یا شانس رخدادشون رو یا از ریشه کاری کنیم که رخ ندهند. مدیریت ریسک یه کاری یه که همه چه بدونند و چه ندونند دارند انجام میدند (مگر اونهایی که دیگه خیلی خنگن) پس گول نامش رو نخورید. مدیریت ریسک در همۀ قدمهای زندگی یک نرم افزار هست و داره انجام میشه. مدیریت ریسک از زمانی که یک ایده در ذهن شما ساخته میشه یا یک مشتری احتمالی با شما تماس میگیره آغاز میشه و تنها با مردن اون نرم افزار یا لغو پروژه به پایان میرسه. همین امکان سنجی و اثبات مفهوم که درباره اونها صحبت کردیم دو تا از کارا ترین روشهای شناسایی و برخورد با ریسک هستند. اگر دقت کنید میبینید که امکان سنجی و اثبات مفهوم براستی چیزی نیستند جز بخشی از فرآیند مدیریت ریسک. ما با بررسی نیازهای پروژه و مقایسه اونها با توانایی فنی و اجرایی تیم در حقیقت داریم یک گونۀ بسیار پر خطر از ریسک رو شناسایی میکنیم و اون ریسک فنی نام داره. یعنی ریسکی که به دلیل ناتوانی فنی یا دانش کم پیش میاد و سپس تلاش میکنیم تا با افزون کردن دانش تیم یا بیرون بردن اون کار از پروژه و واگذار کردنش به دیگران ریسک رو کمرنگ یا پاک کنیم

پیامدهای مدیریت ریسک نادرست

اگر مدیدریت ریسک رو انجام ندیم چی میشه؟ خب ریسکها رخ میدن و ریسک اگر رخ بده برای ما بد میشه بنابراین آشکارا نخستین نتیجه مدیریت نکردن ریسک اینکه که ریسکهای پروژه چپ و راست رخ میدن و اینقدر بد میشه و بد میشه که کار سرتاسر میره تو کثافت و خیلی بسادگی پروژه لغو میشه یا بقدری زمان و هزینه میبره که اگر لغو بشه بهتره. اما خیلی کم پیش میاد که تیمی هیچ گونه مدیریت ریسکی نکنه یا اینقدر بد انجام بده که همه ریسکها با همه پیامدهاشون رخ بدن. اونچه پیش میاد اینه که مدیریت ریسک بدرستی انجام نمیشه و نتایج اون از زیان های ساده تا آسیب های جدی گسترده است. نخستین اشتباهی که رخ میده اینه که شناسایی ریسکها رو سرسری انجام میدن و یک سری ریسکهای مهم دیده نمیشند و سپس رخ میدند و دیگه اوضاع بیریخت میشه. دیگر اینکه شانس رخداد ریسک رو کمتر از اندازه درستش در نظر میگیرند و یا اینکه از پیامدهای ریسک شناخت درستی ندارند بنابراین اهمیتی رو که لازمه به ریسک نمیدند و چنانچه ریسک رخداد جا میخورند چون آمادگی روبرو شدن با اون ریسک رو ندارند

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

  • ریسک : Risk
  • ریسک بزرک یا عمده : Major Risk
  • ریسک کوچک : Minor Risk
  • پیامد ریسک، اثر ریسک : Risk Impact
  • شناس رخداد ریسک : Risk Probability
  • اندازه (اهمیت) ریسک : Risk Magnitude
  • مدیریت ریسک : Risk Management
  • کاهش ریسک : Risk Mitigation – or Reduction
  • حذف ریسک : Risk Elimination
  • روحیه تیم : Team Morale
  • کارایی تیم : Team Productivity
  • زمانبندی : Schedule
  • بالا زدن هزینه و زمان از پیش بینی : Time and Cost Overrun
  • نیروی انسانی : Human Recourse
  • عوامل انسانی : Human Factors