Critical path method (CPM) — روش مسیر بحرانی
روش مسیر بحرانی (CPM) (به انگلیسی: Critical Path Method, CPM) — روشی قطعی در برنامهریزی شبکهای و مدیریت پروژه است که برای محاسبه توالی فعالیتها و کمترین زمان ممکن برای تکمیل پروژه به کار میرود. مسیر بحرانی طولانیترین مسیر از نظر مدت زمان در مدل شبکهای است؛ تأخیر در هر فعالیت روی این مسیر، پایان کل پروژه را به تعویق میاندازد[1][2].
تاریخچه
CPM در اواخر دهه ۱۹۵۰ توسط جیمز کلی (Remington Rand) و مورگان واکر (DuPont) توسعه یافت. گزارش آنها در سال ۱۹۵۹ آغازگر استفاده صنعتی از این روش شد؛ بعدها نویسندگان مقالهای تاریخی درباره خاستگاه CPM منتشر کردند[2][3]. به موازات این کار، در ایالات متحده روش احتمالی PERT نیز توسعه یافت که CPM اغلب در کنار آن به کار میرود[1].
مفاهیم اساسی
- فعالیت (activity) — عملی با مدت زمان d و وابستگیهایی به پیشنیازها.
- رویداد/نقطه عطف — لحظهای بدون مدت زمان که وضعیت پروژه را ثبت میکند.
- مسیر بحرانی — توالی فعالیتهایی با حداکثر مجموع مدت زمان بین شروع و پایان مدل؛ فعالیتهای روی این مسیر دارای شناوری کل صفر هستند[1].
- پیشنیاز توسط روابط FS، SS، FF، SF با تأخیرهای احتمالی تعریف میشود؛ در عمل از PDM / AON (فعالیتها بهصورت گره) استفاده میشود، در حالی که ADM / AOA تاریخی کمتر رایج است[4][5][6].
محاسبه تاریخها و شناورها
محاسبه از طریق گذر رو به جلو و گذر رو به عقب در شبکه انجام میشود.
گذر رو به جلو (تاریخهای زود):
- برای فعالیتهای آغازین: ES = 0 (یا بر اساس مقیاس پذیرفتهشده);
- برای هر فعالیت j: ESj = max{ EFi تمام پیشنیازهای i };
- EF = ES + d.
گذر رو به عقب (تاریخهای دیر):
- برای فعالیتهای پایانی: LF برابر مدت کل پروژه است (یا پایان زود نقطه عطف نهایی);
- برای هر فعالیت j: LS = LF − d; LFj = min{ LSs تمام جانشینان s }[7][8].
شناورها (float/slack):
- شناور کل (TF): TF = LS − ES = LF − EF — میزانی که میتوان فعالیت را بدون تغییر پایان پروژه به تأخیر انداخت.
- شناور آزاد (FF): FF = min{ ESsucc } − EF — تأخیر بدون تأثیر بر شروعهای زود جانشینان[9][10].
وابستگیها و تأخیرها
در PDM چهار نوع پایه از وابستگیها پشتیبانی میشود: FS (finish‑to‑start)، SS (start‑to‑start)، FF (finish‑to‑finish)، SF (start‑to‑finish). هر وابستگی میتواند تأخیر (مثبت یا منفی) داشته باشد؛ برای مثال FS + 2d یعنی شروع جانشین دو روز پس از پایان پیشنیاز[6].
کاهش مدت زمان (crashing، fast‑tracking)
کاهش مدت زمان پروژه به روشهای زیر امکانپذیر است:
- Crashing — کاهش هدفمند مدت زمان فعالیتهای بحرانی با صرف هزینههای اضافی؛ بهتر است فعالیتهایی با کمترین «شیب هزینه» کاهش یابند.
- شیب هزینه (هزینه یک واحد کاهش): (Ccrash − Cnormal) / (Dnormal − Dcrash)[11].
- Fast‑tracking — تبدیل وابستگیهای مجاز به اجرای موازی (مثلاً FS → SS) با افزایش خطر بازنگریها[1].
حوزههای کاربرد
CPM برای تهیه برنامههای زمانی در ساختوساز، انرژی، مهندسی مکانیک، پروژههای فناوری اطلاعات و تحقیق و توسعه به کار میرود. این روش در استانداردهای مدیریت پروژه و مهندسی سیستمها (PMI، NASA) پایهای محسوب میشود و در نرمافزارهای برنامهریزی بهطور گسترده پشتیبانی میشود[1][12][13].
مزایا
- شناسایی روشن مسیر بحرانی و «گلوگاهها»؛ اولویتبندی توجه مدیر پروژه[1].
- قوانین ساده محاسبه تاریخهای زود/دیر و شناورها؛ شفافیت تأثیر تغییرات[7].
- سازگاری با PDM/نمودارهای Gantt و ابزارهای تحلیل گزینههای تسریع[4].
محدودیتها
- مدل پایه CPM محدودیتهای منابع و ماهیت تصادفی مدت زمانها را در نظر نمیگیرد؛ برای این منظور از تسطیح منابع و گسترشها (مثلاً critical chain) استفاده میشود[1].
- هنگام استفاده از وابستگیهای پیچیده و تأخیرها، تفسیر شناورها ممکن است پیچیده باشد؛ توصیه میشود تعریف رسمی و کنترل قوانین محاسبه float در اسناد قراردادی لحاظ شود[10].
ارتباط با رویکردهای دیگر
- PERT — ارزیابی احتمالی مدت زمانها (برآوردهای سهنقطهای، تقریب β)؛ CPM از مدت زمانهای قطعی استفاده میکند.
- نمودار Gantt — تجسم تقویمی برنامه زمانی که اغلب همراه با CPM/PERT به کار میرود.
- برنامهریزی شبکهای — گروه کلی روشها (CPM، PERT، ADM/AOA، PDM/AON).
همچنین ببینید
- PERT
- نمودار Gantt
- برنامهریزی شبکهای
منابع
- Kelley, J. E.; Walker, M. R. (1959). Critical‑Path Planning and Scheduling. IRE‑AIEE‑ACM '59 (Eastern). ACM Digital Library. [۱۴]
- Kelley, J. E.; Walker, M. R. (1989). Origins of CPM: A Personal History. PM Network. PMI. [۱۵]
- PMI. PMBOK® Guide. [۱۶]
- NASA. Systems Engineering Handbook (SP‑2016‑6105 Rev2). [۱۷]
- «Critical path method». Wikipedia (en). [۱۸]
- «Precedence diagram method». Wikipedia (en). [۱۹]
- «Dependency (project management)». Wikipedia (en). [۲۰]
- «Arrow diagramming method». Wikipedia (en). [۲۱]
- Baker, S. L. Critical Path Method (CPM) — Analysis Steps. University of South Carolina. [۲۲]
- «Creating an Activity Network Diagram». CSU Pressbooks. [۲۳]
- «Crashing Example». An‑Najah National University (نمونه آموزشی). [۲۴]
یادداشتها
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 1.6 «Critical path method». Wikipedia (en). [۱]
- ↑ 2.0 2.1 Kelley, J. E., Jr.; Walker, M. R. (1959). «Critical-Path Planning and Scheduling». IRE‑AIEE‑ACM '59 (Eastern). ACM Digital Library. [۲]
- ↑ Kelley, J. E.; Walker, M. R. (1989). «Origins of CPM: A Personal History». PM Network. Project Management Institute. [۳]
- ↑ 4.0 4.1 «Precedence diagram method». Wikipedia (en). [۴]
- ↑ «Arrow diagramming method». Wikipedia (en). [۵]
- ↑ 6.0 6.1 «Dependency (project management)». Wikipedia (en). [۶]
- ↑ 7.0 7.1 Baker, S. L. «Critical Path Method (CPM) — Analysis Steps». University of South Carolina. [۷]
- ↑ «Fundamental Scheduling Procedures». Project Management, Carnegie Mellon University. [۸]
- ↑ «Creating an Activity Network Diagram». Project Management — Navigating the Complexity. Cleveland State University Pressbooks. [۹]
- ↑ 10.0 10.1 «Critical Path Method Calculations». PMI. [۱۰]
- ↑ «Crashing Example». An‑Najah National University (учебный пример). [۱۱]
- ↑ PMI. A Guide to the Project Management Body of Knowledge (PMBOK® Guide). [۱۲]
- ↑ NASA. Systems Engineering Handbook (NASA/SP‑2016‑6105 Rev2). [۱۳]