Agile بهترین روش مدیریت منابع انسانی (برنامه نویس ها)

فرق توسعه و تولید را با بیان یک مسئله توضیح می دهم . فرض کنید یک فست فود داریم که در آن غذای آماده برای ملت سرو می شود . خوب این فست فود تولید است بدلیل اینکه شما یک سری آدم که نیاز نیست متخصص باشند را به عنوان یک ماشین تولید دور هم جمع کردید و این ماشین تولید می کند . این ماشین تولید دارای خصوصیات زیر می باشد :

* این ماشین خطایی در تولید ندارد (در ساخت ساندویچ همبرگر error ای وجود ندارد) .
* شما به افرادی که متشکل دهنده ماشین تولید هستند به عنوان یک چرخه دنده نگاه می کنید که هر وقت لازم شد می توانید عوضش کنید و یک چرخ دنده بهتر بگیرید .
* کاری که این ماشین و یا یک ساندویچ درست کن انجام می دهد یکنواخت و پایدار است (مثلا معلوم است محمود یک ساندویچ همبرگر را در عرض 2 دقیقه به خورد مشتری می دهد ) .
* رویه کاریشان استاندارد است ( مثلا معلوم است برای تولید پیتزای قارچ به چه موادی نیاز است و چگونه باید این مواد با هم مخلوط و پخته شود).
* نیازی به تست نیست (ساندویچ رو اگر تست بکنید مشتری ناراحت خواهد شد ) .

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

با مقایسه بین تولید و توسعه می توان به اهمیت نیروی کار پی برد . در چنین شرایطی که نیروی کار بسیار مهم می باشد و در واقع کل پروژه نیروی کار است آیا نیاز به مدیریت صحیح بر روی این منبع احساس نمی شود؟

شرکت های توسعه نرم افزار در ایران معمولا و اکثرا در مقوله مدیریت منابع انسانی با مشکل مواجه هستند. به همین دلیل است که اکثر برنامه نویس ها در محیط کاری خود احساس راحتی نمی کنند و همیشه عذاب می کشند و اکثرا فکر می کنند که در حال حیف شدن می باشند و باید در شرکت هایی مثل گوگل و یا مایکروسافت کار کنند .

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

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

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

ما در Sprint Planning کل تیم را درگیر پروژه می کنیم چراکه همه نظر می دهند که Story A چند روز کار می برد و این یعنی همه درگیر Story A هستند در حالیکه شاید یک نفر Story A را انجام خواهد داد. در نوبت بعدی بر روی Daily Scrum تاکید کردم که این جلسه در نوع خود یک انگیزه دهنده ناب می باشد .

در روش سنتی اول صبح هیچ کس حوصله ندارد و به محض رسیدن پشت کامپیوتر مستقر می شود و شروع به تق و توق می کند , انگار همه با هم قهرند . ولی در اسکرام اینگونه نیست , در اول صبح قبل از شروع به تق و توق تیم توسعه جلسه روزانه اسکرام را تشکیل می دهد. این جلسه که معمولا با بگو و بخند همراه است باعث می شود تیم روز را به صورت Active شروع نماید.

مورد دیگر Self-Organize بودن تمام متدلوژی های Agile مانند اسکرام می باشد . به طوریکه نیاز به سازماندهی آنچنانی اعضای تیم توسعه نیست و اعضای تیم بدلیل آشنایی با کل پروژه و شناخت کافی از نیازمندی های پروژه سازماندهی می شوند. و این هم می تواند باز در انگیزه بخشیدن به نیروی کار موثر باشد.

خلاصه تمام مطالب اینکه Agile می تواند یک جو دوستانه و از همه مهمتر یک جو فعالانه (جوی که همه فعالند و نتیجه پروژه برای همه اعضای تیم مهم است ) برای پروژه های توسعه نرم افزار به ارمغان بیاورد.

 

منبع:http://irmeta.com/meta/index.php?topic=4375.0

/ 0 نظر / 35 بازدید