رژه ی مرگ


برای ساخت هر سازه نرم افزاری(وب سایت، اپلیکیش و..) ما به سه موجودیت نیاز داریم:

-framework

-Component

-Pattern

اما مهم ترین بخش از میان این سه موجودیت، Pattern است.

اصلا Pattern چیست؟!

در حقیقت Pattern یا همان الگو، راه حل های خوب، کارا و مشخصی هستند که قبلا بارها و بارها برای حل مشکلات مشخص به کار رفته اند و استفاده از آنها کاملا موفقیت آمیز بوده.

در واقع به کسی مهندس نرم افزار گفته می شود که Pattern های بیشتری بلد باشد. آیا شناخت Pattern ها کافی است؟!

پس آنچه شرط است شامل موارد زیر است:

۱. باید Pattern های زیادی را بشناسد.

۲. ارتباط بین Patternها را بداند.

۳. نه تنها Patternها را بشناسد بلکه باید بر antiPatternها نیز واقف باشد.

۴. تیم را با Patternهایی که می شناسد جلو ببرد.

۵-متدلوژی ها را بشناسد و با آنها کار کرده باشد.

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

اگر بخواهیم تعریفی ساده از antiPattern داشته باشیم:

در واقع راه حل یا الگویی است که در ابتدا مشکل را حل کرده ولی در ادامه پس از گذشت مدتی تاثیر عکس داشته و خود باعث بروز مشکلی دیگر شده است!

مثلا استفاده از داروهای شیمیایی قوی برای درمان سردرد، ممکن است سردرد شما خوب کند اما پس از استفاده مداوم تاثیر مخربی رو کلیه های شما خواهد داشت و خود سبب دردی شدید تر خواهد شد!

پس antiPattern خودش قبلا Pattern بوده، ولی بعد از گذشت مدتی تبدیل به مشکل شده است!


رژه مرگ(مدیریت پروژه)

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

امید همیشه خوب است، اما نه برای کاری که به اشتباه شروع شده و پایان خوشی ندارد!

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

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

اما شما به عنوان عضو تیم توسعه چه کاری می توانید انجام دهید؟!

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

و به عنوان تجربه ی تلخ با شرکت های باتجربه تر و قوی تر کار کنید.

اما این اتفاق به ویژه برای شرکت های تازه تاسیس امری طبیعی است و این تجربه به عنوان یک antiPattern در حافظه همه باقی خواهد ماند و احتمال تکرار آن کاهش می یابد.

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

گویی مدیران پروژه، تیم توسعه و را وادار به افتخار آفرینی می کنند، اما زهی خیال باطل،این رژه ای به سمت مرگ است!

و در نهایت نه تنهاافتخاری کسب نمی کنند بلکه لکه ننگ پروژه شکست خورده تا ابد بر دامن آنها باقی خواهد ماند و فقط باید نظاره گر این شکست باشند.

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

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

اما به عنوان یک توسعه دهنده ی حرفه ای چه کارهایی باید انجام داد؟!

۱- وظایف خود به عنوان عضوی از تیم به درستی انجام دهید.

۲- از انجام کارهای جانبی خود داری کنید.

۳- از اضافه کاری خودداری کنید.

۴- مشکلات موجود در حیطه کاری خود را به ارشد گزارش دهید.

۵- از گرفتن تشویقی های نابجا خود داری کنید(این مورد خود سبب ایجاد توقع در مدیران میشود)


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


باتشکر از شما(:

نوشته شده توسط: علی آخی