📋 İçindekiler
PERT ve CPM'in Tarihi
İki farklı ekip, 1950'lerin sonunda bağımsız olarak birbirine çok benzer metodolojiler geliştirdi:
⚓ PERT (1958) — ABD Donanması
ABD Donanması, Polaris füze denizaltısı programını yönetmek için Booz Allen Hamilton danışmanlık firması ile birlikte PERT'i (Program Evaluation and Review Technique) geliştirdi. 3.000'den fazla yüklenici firmanın koordinasyonu söz konusuydu. PERT, aktivite sürelerini olasılıksal olarak ele alır (üç süre tahmini: iyimser, olası, kötümser). Proje iki yıl önceden tamamlandı.
🏢 CPM (1957) — DuPont
DuPont kimya şirketi, fabrika bakımını optimize etmek için Morgan Walker ve Morgan Kelley'nin öncülüğünde Kritik Yol Yöntemi (CPM)'ni geliştirdi. CPM deterministik sürelerle çalışır; aktivitelerin normal ve hızlandırılmış sürelerini ve maliyetlerini karşılaştırarak optimum proje süresini belirler.
Temel Kavramlar
| Kavram | Kısaltma | Türkçe | Tanım |
|---|---|---|---|
| Early Start | ES | En Erken Başlama | Aktivitenin başlayabileceği en erken zaman |
| Early Finish | EF | En Erken Bitiş | EF = ES + süre (d) |
| Late Start | LS | En Geç Başlama | Projeyi geciktirmeden gecikmeyeceği son başlama |
| Late Finish | LF | En Geç Bitiş | Aktivitenin bitmesi gereken son zaman |
| Total Float | TF | Toplam Bolluk | TF = LS − ES = LF − EF |
| Free Float | FF | Serbest Bolluk | FF = ES(helefleri) − EF (sonraki aktiviteyi geciktirmeden) |
| Critical Path | CP | Kritik Yol | TF = 0 olan tüm aktivitelerden geçen yol |
| Dummy Activity | — | Hayali Aktivite | AOA ağlarda bağımlılığı göstermek için, süre = 0 |
AOA Ağ Diyagramı — 11 Aktivite Örneği
Bir fabrikaya yeni otomasyonlu üretim hattı kurulumu için 11 aktivite ve 7 düğümden oluşan proje ağı. Süre birimi: hafta.
| Aktivite | Açıklama | Başlangıç Düğümü | Bitiş Düğümü | Süre (hafta) | Öncüller |
|---|---|---|---|---|---|
| A | Saha Hazırlığı ve Zemin | 1 | 2 | 4 | — |
| B | Elektrik Altyapısı | 1 | 3 | 6 | — |
| C | Makine Sipariş ve Temin | 1 | 4 | 8 | — |
| D | Hat Konveyör Montajı | 2 | 5 | 5 | A |
| E | Boru ve Pnömatik Sistem | 3 | 5 | 3 | B |
| F | Makine Kurulum (CNC) | 4 | 5 | 4 | C |
| G | Pano ve Kontrol Sistemi | 3 | 6 | 5 | B |
| H | Robot Entegrasyonu | 4 | 6 | 7 | C |
| I | Yazılım Programlama | 5 | 6 | 6 | D, E, F |
| J | Test ve Devreye Alma | 6 | 7 | 5 | G, H, I |
| K | Operatör Eğitimi | 6 | 7 | 3 | G, H, I |
AOA Ağ Diyagramı (Düğüm boyutları ve konum şematik):
İleri Geçiş: ES ve EF Hesabı
İleri geçiş, projenin başından sonuna doğru yapılır. Her aktivitenin En Erken Başlama (ES) ve En Erken Bitiş (EF) zamanları hesaplanır.
Proje başında tüm aktiviteler için ES = 0
EF = ES + d (süre)
Birden fazla öncülü olan aktiviteler için: ES = max(EF_öncüller)
| Aktivite | Öncüller (EF) | ES = max(öncüller EF) | d | EF = ES + d |
|---|---|---|---|---|
| A | Başlangıç | 0 | 4 | 4 |
| B | Başlangıç | 0 | 6 | 6 |
| C ★ | Başlangıç | 0 | 8 | 8 |
| D | A(EF=4) | 4 | 5 | 9 |
| E | B(EF=6) | 6 | 3 | 9 |
| F ★ | C(EF=8) | 8 | 4 | 12 |
| G | B(EF=6) | 6 | 5 | 11 |
| H ★ | C(EF=8) | 8 | 7 | 15 |
| I ★ | D(9), E(9), F(12) | 12 | 6 | 18 |
| J ★ | G(11), H(15), I(18) | 18 | 5 | 23 |
| K | G(11), H(15), I(18) | 18 | 3 | 21 |
Geri Geçiş: LS ve LF Hesabı
Geri geçiş, projenin sonundan başına doğru yapılır. Proje gecikmeden tamamlanması için her aktivitenin En Geç Başlama (LS) ve En Geç Bitiş (LF) zamanları hesaplanır.
Son aktiviteler için LF = EF (proje bitiş zamanı) = 23
LS = LF − d
Birden fazla halef olan aktiviteler için: LF = min(LS_halefleri)
| Aktivite | Haleflerin LS | LF = min(LS_halef) | d | LS = LF − d |
|---|---|---|---|---|
| J ★ | Son (23) | 23 | 5 | 18 |
| K | Son (23) | 23 | 3 | 20 |
| I ★ | J:LS=18, K:LS=20 → min=18 | 18 | 6 | 12 |
| H ★ | J:LS=18, K:LS=20 → min=18 | 18 | 7 | 11 |
| G | J:LS=18, K:LS=20 → min=18 | 18 | 5 | 13 |
| F ★ | I:LS=12 | 12 | 4 | 8 |
| E | I:LS=12 | 12 | 3 | 9 |
| D | I:LS=12 | 12 | 5 | 7 |
| C ★ | F:LS=8, H:LS=11 → min=8 | 8 | 8 | 0 |
| B | E:LS=9, G:LS=13 → min=9 | 9 | 6 | 3 |
| A | D:LS=7 | 7 | 4 | 3 |
Float (Bolluk) Hesabı ve Kritik Yol
| Akt. | ES | EF | LS | LF | TF = LS−ES | FF | Kritik |
|---|---|---|---|---|---|---|---|
| A | 0 | 4 | 3 | 7 | 3 | 0 | — |
| B | 0 | 6 | 3 | 9 | 3 | 0 | — |
| C | 0 | 8 | 0 | 8 | 0 | 0 | ★ KRİTİK |
| D | 4 | 9 | 7 | 12 | 3 | 3 | — |
| E | 6 | 9 | 9 | 12 | 3 | 3 | — |
| F | 8 | 12 | 8 | 12 | 0 | 0 | ★ KRİTİK |
| G | 6 | 11 | 13 | 18 | 7 | 7 | — |
| H | 8 | 15 | 11 | 18 | 3 | 3 | — (yakın kritik) |
| I | 12 | 18 | 12 | 18 | 0 | 0 | ★ KRİTİK |
| J | 18 | 23 | 18 | 23 | 0 | 0 | ★ KRİTİK |
| K | 18 | 21 | 20 | 23 | 2 | 2 | — |
Aktiviteler: C → F → I → J
Toplam süre: 8 + 4 + 6 + 5 = 23 hafta
H aktivitesi TF=3 ile "yakın kritik" — dikkat gerektiriyor.
G aktivitesi TF=7 ile en fazla bolluklu — yönetici kaynakları buraya en son tahsis eder.
PERT Olasılıksal Süre Analizi
PERT, süre tahminlerindeki belirsizliği ele almak için Beta dağılımı tabanlı üç nokta tahmini kullanır:
a = İyimser süre (optimistic) — yanlışlıksız her şey yolunda giderse
m = Olası süre (most likely) — gerçekçi tahmin
b = Kötümser süre (pessimistic) — her şey yanlış giderse
Beklenen Süre: t_e = (a + 4m + b) / 6
Varyans: σ² = ((b − a) / 6)²
Standart Sapma: σ = (b − a) / 6
| Akt. | a (iyi) | m (olası) | b (kötü) | t_e = (a+4m+b)/6 | σ² = ((b-a)/6)² | Kritik |
|---|---|---|---|---|---|---|
| C ★ | 5 | 8 | 14 | (5+32+14)/6 = 8.5 | ((14-5)/6)² = 2.25 | ★ |
| F ★ | 2 | 4 | 8 | (2+16+8)/6 = 4.33 | ((8-2)/6)² = 1.00 | ★ |
| I ★ | 4 | 6 | 10 | (4+24+10)/6 = 6.33 | ((10-4)/6)² = 1.00 | ★ |
| J ★ | 3 | 5 | 9 | (3+20+9)/6 = 5.33 | ((9-3)/6)² = 1.00 | ★ |
E(T_cp) = t_e(C) + t_e(F) + t_e(I) + t_e(J) = 8.5 + 4.33 + 6.33 + 5.33 = 24.5 hafta
σ²_cp = σ²(C) + σ²(F) + σ²(I) + σ²(J) = 2.25 + 1.00 + 1.00 + 1.00 = 5.25
σ_cp = √5.25 = 2.29 hafta
P(Proje ≤ T hafta) = P(Z ≤ (T − 24.5) / 2.29)
Hedef: 28 haftada tamamlanma olasılığı
Z = (28 − 24.5) / 2.29 = 3.5 / 2.29 = 1.53
P(Z ≤ 1.53) = %93.7 (standart normal tablodan)
Hedef: 22 haftada tamamlanma olasılığı
Z = (22 − 24.5) / 2.29 = −2.5 / 2.29 = −1.09
P(Z ≤ −1.09) = %13.8 — 22 haftada bitme ihtimali çok düşük!
Proje Sıkıştırma (Crashing) — LP ve İteratif Çözüm
Proje teslim süresi dış bir baskıyla kısaltılmak istendiğinde aktiviteleri hızlandırma (crashing) yapılabilir. Fazla mesai, ek personel, daha iyi ekipman ile aktivite süresi düşürülür ama maliyeti artar. Amaç: En az maliyetle projeyi N hafta kısaltmak.
| Akt. | Normal Süre | Crash Süresi (min) | Normal Maliyet | Crash Maliyeti | Maliyet Eğimi (₺/hafta) | Max. Kısaltma |
|---|---|---|---|---|---|---|
| C ★ | 8 | 5 | 80.000 | 140.000 | 20.000 | 3 |
| F ★ | 4 | 2 | 40.000 | 80.000 | 20.000 | 2 |
| I ★ | 6 | 4 | 60.000 | 110.000 | 25.000 | 2 |
| J ★ | 5 | 3 | 50.000 | 90.000 | 20.000 | 2 |
| H (yakın | 7 | 5 | 70.000 | 120.000 | 25.000 | 2 |
İteratif Crashing — Adım Adım (Hedef: 20 haftaya in)
Adım 1: 23 → 22 hafta (1 hafta kısaltma)
Kritik yol üzerindeki en ucuz aktiviteyi crashed et.
Seçenekler (kritik yol: C, F, I, J):
| Aktivite | Maliyet Eğimi | Kısıt |
|---|---|---|
| C | 20.000 ₺/hafta ← EN UCUZ | Max 3 hafta |
| F | 20.000 ₺/hafta | F de en ucuz ama J deneyelim |
| J | 20.000 ₺/hafta | J de aynı maliyette |
| I | 25.000 ₺/hafta | Daha pahalı |
Karar: C'yi 1 hafta crashed et (8→7 hafta). Ek maliyet: 20.000 ₺
Yeni kritik yol süresi: 7+4+6+5 = 22 hafta ✓
Adım 2: 22 → 21 hafta
C zaten 1 hafta crashed, devam edilebilir (max 3).
Karar: C'yi 1 hafta daha crashed et (7→6 hafta). Ek maliyet: 20.000 ₺
Toplam: 40.000 ₺ harcandı. Proje: 21 hafta
Adım 3: 21 → 20 hafta
Kritik yol: C(6) + F(4) + I(6) + J(5) = 21 hafta
Dikkat: H aktivitesi TF=3−3=0 oldu, artık o da kritik! İkinci kritik yol var: C+H+J = 6+7+5 = 18 (değil, hala ≤21 tamam)
Ucuz kısaltma: F: 20.000, J: 20.000, C: 20.000 (3. kez)
Karar: C'yi son 1 hafta crashed et (6→5). Ek maliyet: 20.000 ₺
Yeni süre: 5+4+6+5 = 20 hafta ✓
Başlangıç normal maliyeti: 300.000 ₺ (tüm aktiviteler)
Crashing toplam maliyeti: 3 × 20.000 = 60.000 ₺
Toplam proje maliyeti: 360.000 ₺
Kısaltılan süre: 23 → 20 hafta (3 hafta)
Gecikme cezasından kaçınılan: 3 × 50.000 = 150.000 ₺/hafta
Net kazanç: 150.000 − 60.000 = 90.000 ₺
LP Formülasyonu ile Crashing
x_j = Aktivite j'nin kısaltılan süresi (0 ≤ x_j ≤ max kısaltma_j)
T_i = Düğüm i'nin erken zamanı
Amaç: Minimize Z = Σ k_j × x_j (toplam crashing maliyeti)
Kısıtlar:
T_1 = 0 (başlangıç düğümü)
T_son = T ≤ T* (hedef süre)
T_j ≥ T_i + (d_j − x_j) ∀ aktivite (i,j) için
0 ≤ x_j ≤ M_j (maksimum kısaltma)
Kazanılmış Değer Yönetimi (EVM)
EVM, proje ilerlemesini hem program hem maliyet açısından aynı anda izleyen entegre bir yöntemdir. Üç ana metrik:
PV (Planned Value / Planlanan Değer): Bu tarihe kadar yapılması planlanan iş tutarı
EV (Earned Value / Kazanılmış Değer): Bu tarihe kadar fiilen tamamlanan iş tutarı
AC (Actual Cost / Gerçek Maliyet): Bu tarihe kadar harcanan gerçek para
Sapmalar:
SV (Schedule Variance - Program Sapması) = EV − PV
CV (Cost Variance - Maliyet Sapması) = EV − AC
Performans Endeksleri:
SPI (Program Performans Endeksi) = EV / PV → >1 ise programa göre ileride
CPI (Maliyet Performans Endeksi) = EV / AC → >1 ise bütçe altında
Tahminler:
EAC (Tamamlanma Tahmini) = BAC / CPI (BAC = toplam bütçe)
ETC (Geriye Kalan Maliyet) = EAC − AC
TCPI (Tamamlamak için Gereken CPI) = (BAC − EV) / (BAC − AC)
BAC = 300.000 ₺ | PV_10 = 150.000 ₺ | EV_10 = 130.000 ₺ | AC_10 = 145.000 ₺
SV = 130.000 − 150.000 = −20.000 ₺ (programın gerisinde!)
CV = 130.000 − 145.000 = −15.000 ₺ (bütçeyi aşıyor!)
SPI = 130.000 / 150.000 = 0.87 (<1, gecikme var)
CPI = 130.000 / 145.000 = 0.90 (<1, pahalıya gidiyor)
EAC = 300.000 / 0.90 = 333.333 ₺ (bütçe %11 aşılabilir)