---
title: "Critical path method (CPM) — 주경로 기법"
source: "https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95"
wiki: "systems-analysis.info/int"
article: "Critical_path_method_(CPM)_—_주경로_기법"
language: "ko"
categories:
  - "Category:Korean"
  - "Category:Operations research"
  - "Category:Project management"
revision_id: 1337
wiki_created_at: 2026-09-06T22:47:10Z
wiki_modified_at: 2026-09-06T22:47:10Z
downloaded_at: 2026-09-07T22:45:32Z
---

# Critical path method (CPM) — 주경로 기법

**주경로 기법 (CPM)** (영어: *Critical Path Method*, *CPM*) — 프로젝트의 작업 순서와 최단 완료 기간을 계산하는 데 사용되는 결정론적 네트워크 계획 및 프로젝트 관리 기법이다. 주경로(Critical Path)란 네트워크 모델에서 지속 기간이 가장 긴 경로를 의미하며, 이 경로상의 어떤 작업이 지연되면 전체 프로젝트의 완료 시점이 밀린다<sup>[\[1\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-enwiki-1)[\[2\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-kelley1959-2)</sup>.

## 역사

CPM은 1950년대 말 제임스 켈리(Remington Rand)와 모건 워커(DuPont)에 의해 개발되었다. 1959년에 발표된 그들의 논문은 이 기법의 산업적 활용의 시초가 되었으며, 이후 저자들은 CPM의 기원에 관한 역사적 개요를 발표하였다<sup>[\[2\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-kelley1959-2)[\[3\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-origins-3)</sup>. 같은 시기 미국에서는 확률론적 기법인 PERT가 개발되었으며, CPM은 PERT와 함께 자주 사용된다<sup>[\[1\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-enwiki-1)</sup>.

## 기본 개념

- **작업** (activity) — 지속 기간 **d**와 선행 작업에 대한 의존성을 갖는 행위.
- **이벤트/마일스톤** — 지속 기간 없이 프로젝트의 상태를 기록하는 시점.
- **주경로** — 모델의 시작부터 종료까지 작업 지속 기간의 합이 최대인 작업 순서; 이 경로상의 작업들은 총 여유 시간이 0이다<sup>[\[1\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-enwiki-1)</sup>.
- **선행 관계**는 FS, SS, FF, SF 관계로 지정되며 시차(lag)를 가질 수 있다; 실무에서는 PDM / AON(작업-노드) 방식이 사용되며, 역사적인 ADM / AOA 방식은 덜 사용된다<sup>[\[4\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-pdm-4)[\[5\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-adm-5)[\[6\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-dependency-6)</sup>.

## 날짜 및 여유 시간 계산

계산은 네트워크의 순방향 및 역방향 통과로 수행된다.

**순방향 통과** (이른 날짜):

시작 작업의 경우: **ES = 0** (또는 채택된 기준에 따름);

각 작업 *j*에 대해: **ES<sub>j</sub> = max{ 모든 선행 작업 *i*의 EF<sub>i</sub> }**;

**EF = ES + d**.

**역방향 통과** (늦은 날짜):

완료 작업의 경우: **LF**는 프로젝트의 전체 기간(또는 최종 마일스톤의 이른 완료 시점)과 같다;

각 작업 *j*에 대해: **LS = LF − d**; **LF<sub>j</sub> = min{ 모든 후속 작업 *s*의 LS<sub>s</sub> }**<sup>[\[7\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-baker-7)[\[8\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-cmu-8)</sup>.

**여유 시간** (float/slack):

**총 여유 시간 (TF)**: **TF = LS − ES = LF − EF** — 프로젝트 완료를 지연시키지 않고 작업을 얼마나 늦출 수 있는지를 나타냄.

**자유 여유 시간 (FF)**: **FF = min{ ES<sub>succ</sub> } − EF** — 후속 작업의 이른 시작에 영향 없이 지연 가능한 시간<sup>[\[9\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-pressbooks-9)[\[10\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-pmi-ff-10)</sup>.

## 연결 관계와 시차

PDM에서는 네 가지 기본 의존성 유형이 지원된다: **FS** (finish‑to‑start), **SS** (start‑to‑start), **FF** (finish‑to‑finish), **SF** (start‑to‑finish). 각 연결 관계는 양수 또는 음수의 시차(lag)를 가질 수 있으며, 예를 들어 **FS + 2d**는 선행 작업 완료 후 이틀 뒤에 후속 작업이 시작됨을 의미한다<sup>[\[6\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-dependency-6)</sup>.

## 기간 단축 (crashing, fast‑tracking)

프로젝트 기간 단축은 다음 방법으로 가능하다:

- **Crashing** — 추가 비용을 투입하여 주경로상 작업의 지속 기간을 의도적으로 줄이는 것; 비용 기울기가 최소인 작업을 우선적으로 단축하는 것이 바람직하다.

**비용 기울기** (1단위 단축 비용): **(C<sub>crash</sub> − C<sub>normal</sub>) / (D<sub>normal</sub> − D<sub>crash</sub>)**<sup>[\[11\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-crash-11)</sup>.

- **Fast‑tracking** — 허용 가능한 의존성을 병렬 수행으로 전환(예: FS → SS)하는 것으로, 재작업 위험이 증가한다<sup>[\[1\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-enwiki-1)</sup>.

## 적용 분야

CPM은 건설, 에너지, 기계 제조, IT 프로젝트 및 연구개발(R&D)의 일정 계획 수립에 사용된다. 이 기법은 프로젝트 관리 및 시스템 엔지니어링 표준(PMI, NASA)의 기본 방법론이며, 일정 계획 소프트웨어에서 폭넓게 지원된다<sup>[\[1\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-enwiki-1)[\[12\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-pmi-12)[\[13\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-nasa-13)</sup>.

## 장점

- 주경로와 병목 지점의 명확한 식별; 프로젝트 관리자의 주의 집중 우선순위 설정<sup>[\[1\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-enwiki-1)</sup>.
- 이른/늦은 날짜 및 여유 시간 계산의 간단한 규칙; 변경 영향의 투명성<sup>[\[7\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-baker-7)</sup>.
- PDM/간트 차트 및 일정 단축 방안 분석 도구와의 호환성<sup>[\[4\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-pdm-4)</sup>.

## 한계

- 기본 CPM 모델은 자원 제약과 지속 기간의 확률론적 특성을 고려하지 않는다; 이를 위해 자원 평준화 및 확장 기법(예: *critical chain*)이 사용된다<sup>[\[1\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-enwiki-1)</sup>.
- 복잡한 의존성과 시차를 사용할 경우 여유 시간 해석이 복잡해질 수 있다; 계약 문서에서 float 계산 규칙의 공식적인 정의 및 관리가 권장된다<sup>[\[10\]](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_note-pmi-ff-10)</sup>.

## 다른 접근법과의 관계

- PERT — 지속 기간의 확률론적 평가(3점 추정, β-근사); CPM은 결정론적 지속 기간을 사용한다.
- 간트 차트 — 일정의 달력 시각화 도구로, CPM/PERT와 함께 자주 사용된다.
- 네트워크 계획 — 기법들의 총칭 그룹(CPM, PERT, ADM/AOA, PDM/AON).

## 같이 보기

- PERT
- 간트 차트
- 네트워크 계획

## 참고 문헌

- Kelley, J. E.; Walker, M. R. (1959). *Critical‑Path Planning and Scheduling*. IRE‑AIEE‑ACM '59 (Eastern). *ACM Digital Library*. <a href="https://dl.acm.org/doi/10.1145/1460299.1460318" class="external autonumber" rel="nofollow">[14]</a>
- Kelley, J. E.; Walker, M. R. (1989). *Origins of CPM: A Personal History*. PM Network. *PMI*. <a href="https://www.pmi.org/learning/library/origins-cpm-personal-history-3762" class="external autonumber" rel="nofollow">[15]</a>
- PMI. *PMBOK® Guide*. <a href="https://www.pmi.org/pmbok-guide-standards/foundational/pmbok" class="external autonumber" rel="nofollow">[16]</a>
- NASA. *Systems Engineering Handbook* (SP‑2016‑6105 Rev2). <a href="https://www.nasa.gov/connect/ebooks/nasa-systems-engineering-handbook/" class="external autonumber" rel="nofollow">[17]</a>
- «Critical path method». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Critical_path_method" class="external autonumber" rel="nofollow">[18]</a>
- «Precedence diagram method». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Precedence_diagram_method" class="external autonumber" rel="nofollow">[19]</a>
- «Dependency (project management)». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Dependency_%28project_management%29" class="external autonumber" rel="nofollow">[20]</a>
- «Arrow diagramming method». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Arrow_diagramming_method" class="external autonumber" rel="nofollow">[21]</a>
- Baker, S. L. *Critical Path Method (CPM) — Analysis Steps*. University of South Carolina. <a href="https://sambaker.com/courses/J716/CPM/CPM.html" class="external autonumber" rel="nofollow">[22]</a>
- «Creating an Activity Network Diagram». *CSU Pressbooks*. <a href="https://pressbooks.ulib.csuohio.edu/project-management-navigating-the-complexity/chapter/7-4-creating-an-activity-network-diagram/" class="external autonumber" rel="nofollow">[23]</a>
- «Crashing Example». An‑Najah National University (교육 예시). <a href="https://staff-old.najah.edu/sites/default/files/CrashingExample.pdf" class="external autonumber" rel="nofollow">[24]</a>

## 주석

1.  <span id="cite_note-enwiki-1">↑ <sup>[1.0](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-enwiki_1-0)</sup> <sup>[1.1](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-enwiki_1-1)</sup> <sup>[1.2](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-enwiki_1-2)</sup> <sup>[1.3](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-enwiki_1-3)</sup> <sup>[1.4](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-enwiki_1-4)</sup> <sup>[1.5](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-enwiki_1-5)</sup> <sup>[1.6](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-enwiki_1-6)</sup> «Critical path method». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Critical_path_method" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-kelley1959-2">↑ <sup>[2.0](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-kelley1959_2-0)</sup> <sup>[2.1](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-kelley1959_2-1)</sup> Kelley, J. E., Jr.; Walker, M. R. (1959). «Critical-Path Planning and Scheduling». *IRE‑AIEE‑ACM '59 (Eastern)*. *ACM Digital Library*. <a href="https://dl.acm.org/doi/10.1145/1460299.1460318" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-origins-3">[↑](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-origins_3-0) Kelley, J. E.; Walker, M. R. (1989). «Origins of CPM: A Personal History». *PM Network*. *Project Management Institute*. <a href="https://www.pmi.org/learning/library/origins-cpm-personal-history-3762" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-pdm-4">↑ <sup>[4.0](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-pdm_4-0)</sup> <sup>[4.1](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-pdm_4-1)</sup> «Precedence diagram method». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Precedence_diagram_method" class="external autonumber" rel="nofollow">[4]</a></span>
5.  <span id="cite_note-adm-5">[↑](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-adm_5-0) «Arrow diagramming method». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Arrow_diagramming_method" class="external autonumber" rel="nofollow">[5]</a></span>
6.  <span id="cite_note-dependency-6">↑ <sup>[6.0](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-dependency_6-0)</sup> <sup>[6.1](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-dependency_6-1)</sup> «Dependency (project management)». *Wikipedia (en)*. <a href="https://en.wikipedia.org/wiki/Dependency_%28project_management%29" class="external autonumber" rel="nofollow">[6]</a></span>
7.  <span id="cite_note-baker-7">↑ <sup>[7.0](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-baker_7-0)</sup> <sup>[7.1](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-baker_7-1)</sup> Baker, S. L. «Critical Path Method (CPM) — Analysis Steps». University of South Carolina. <a href="https://sambaker.com/courses/J716/CPM/CPM.html" class="external autonumber" rel="nofollow">[7]</a></span>
8.  <span id="cite_note-cmu-8">[↑](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-cmu_8-0) «Fundamental Scheduling Procedures». *Project Management*, Carnegie Mellon University. <a href="https://www.cmu.edu/cee/projects/PMbook/10_Fundamental_Scheduling_Procedures.html" class="external autonumber" rel="nofollow">[8]</a></span>
9.  <span id="cite_note-pressbooks-9">[↑](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-pressbooks_9-0) «Creating an Activity Network Diagram». *Project Management — Navigating the Complexity*. Cleveland State University Pressbooks. <a href="https://pressbooks.ulib.csuohio.edu/project-management-navigating-the-complexity/chapter/7-4-creating-an-activity-network-diagram/" class="external autonumber" rel="nofollow">[9]</a></span>
10. <span id="cite_note-pmi-ff-10">↑ <sup>[10.0](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-pmi-ff_10-0)</sup> <sup>[10.1](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-pmi-ff_10-1)</sup> «Critical Path Method Calculations». *PMI*. <a href="https://www.pmi.org/learning/library/critical-path-method-calculations-scheduling-8040" class="external autonumber" rel="nofollow">[10]</a></span>
11. <span id="cite_note-crash-11">[↑](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-crash_11-0) «Crashing Example». An‑Najah National University (учебный пример). <a href="https://staff-old.najah.edu/sites/default/files/CrashingExample.pdf" class="external autonumber" rel="nofollow">[11]</a></span>
12. <span id="cite_note-pmi-12">[↑](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-pmi_12-0) PMI. *A Guide to the Project Management Body of Knowledge (PMBOK® Guide)*. <a href="https://www.pmi.org/pmbok-guide-standards/foundational/pmbok" class="external autonumber" rel="nofollow">[12]</a></span>
13. <span id="cite_note-nasa-13">[↑](https://systems-analysis.info/int/Critical_path_method_(CPM)_%E2%80%94_%EC%A3%BC%EA%B2%BD%EB%A1%9C_%EA%B8%B0%EB%B2%95#cite_ref-nasa_13-0) NASA. *Systems Engineering Handbook* (NASA/SP‑2016‑6105 Rev2). <a href="https://www.nasa.gov/connect/ebooks/nasa-systems-engineering-handbook/" class="external autonumber" rel="nofollow">[13]</a></span>
