Skip to content

NickMorrelli/EVM-analysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✈️ Earned Value Management (EVM) Analysis

An end-to-end Earned Value Management pipeline for a defense/aerospace avionics development program — simulating the type of program performance analysis used by Boeing, Lockheed Martin, and other major defense contractors on U.S. government contracts. Implements the full EVM metric suite, four EAC forecasting scenarios, and automated anomaly detection.


🎯 Business Questions

  • Is the program on budget and on schedule?
  • How much will this program cost when it's done?
  • Which Work Breakdown Structure elements are driving cost overruns?
  • Is the recovery plan realistic, or do we need a budget increase?
  • Where are the early warning signs before variances become crises?

📁 Project Structure

evm_analysis/
├── outputs/                        # Charts, CSVs, executive summary
├── src/
│   ├── data_prep.py                # 18-month avionics program simulation (12 WBS elements)
│   ├── evm_metrics.py              # Full EVM metric suite (CPI, SPI, CV, SV, TCPI, PC)
│   ├── forecasting.py              # EAC scenarios, VAC, TCPI, schedule forecasting
│   ├── anomaly_detection.py        # Threshold, SPC, and z-score anomaly detection
│   └── visualizations.py          # 8 charts + executive dashboard
├── main.py                         # Run the full pipeline
├── requirements.txt
└── README.md

📐 EVM Methodology

The Three Core Values

Value Symbol Definition
Planned Value PV Budgeted cost of work scheduled — "What did we plan to spend by now?"
Earned Value EV Budgeted cost of work performed — "What is the work we've done actually worth?"
Actual Cost AC Actual cost incurred — "What did we actually spend?"

Performance Metrics

Metric Formula Interpretation
Cost Variance (CV) EV − AC Negative = over budget
Schedule Variance (SV) EV − PV Negative = behind schedule
Cost Performance Index (CPI) EV / AC <1.0 = over budget per $ spent
Schedule Performance Index (SPI) EV / PV <1.0 = behind schedule
Percent Complete EV / BAC Official completion % (not cost-based)
TCPI (BAC−EV) / (BAC−AC) CPI needed on remaining work to finish at budget

EAC Forecasting Methods (4 Scenarios)

Method Formula Assumption
EAC (CPI) BAC / CPI Past performance continues — most likely
EAC (Composite) AC + (BAC−EV)/(CPI×SPI) Both cost AND schedule inefficiency continue
EAC (Replan) AC + (BAC−EV) Future work at budget rate — best case
EAC (Custom) AC + (BAC−EV)/0.95 Analyst assumes slight improvement

Anomaly Detection (3 Methods)

  1. Threshold-based: CPI < 0.85 (critical), SPI < 0.85, rapid month-over-month CPI drop
  2. Statistical Process Control (SPC): Rolling mean ± 2σ control limits
  3. Rolling Z-Score: Flag periods where CPI deviates >2σ from recent trend

📊 Program Simulated

Avionics Systems Development Program (fictional Boeing-style defense contract)

Parameter Value
Budget At Completion (BAC) $50,000,000
Duration 18 months
WBS Elements 12 (Systems Engineering, Avionics Hardware, Software, Radar, Navigation, etc.)
Pattern Realistic cost growth: early optimism → mid-program turbulence → cost overrun
Final CPI ~0.84 (16% cost overrun trajectory)
Schedule Slip ~2-3 months

📈 Output Files

File Description
01_scurve.png Classic EVM S-curve (PV, EV, AC) with variance shading
02_performance_indices.png CPI and SPI trend with SPC control limits
03_variance_analysis.png Cost and Schedule Variance over time
04_eac_scenarios.png Four completion cost forecast scenarios
05_wbs_heatmap.png CPI and CV% by WBS element
06_anomaly_timeline.png Severity timeline and z-score chart
07_tcpi_analysis.png TCPI vs CPI — recovery plan realism check
08_summary_dashboard.png Full executive dashboard
evm_metrics.csv Monthly EVM metrics time series
wbs_performance.csv WBS-level performance at program completion
anomaly_flags.csv Monthly anomaly detection flags
evm_executive_summary.txt DoD-style program performance narrative

🏛️ DoD / Boeing Context

EVM is contractually required by the U.S. Department of Defense on all contracts over $20M under DFARS 252.234-7002. Boeing submits monthly Integrated Program Management Reports (IPMR) to DCMA (Defense Contract Management Agency) containing these exact metrics.

Key thresholds used in this analysis mirror real DoD standards:

  • CPI < 0.85 → Triggers formal Corrective Action Request (CAR)
  • TCPI > 1.10 → Indicates budget increase likely needed
  • EAC deviation > 10% of BAC → Requires formal EAC rebaseline notification

🚀 Getting Started

git clone https://github.com/yourusername/evm_analysis.git
cd evm_analysis
pip install -r requirements.txt
python main.py

No data download required — program data is generated synthetically with realistic defense program performance patterns.


🛠 Tech Stack

  • Python 3.14+
  • pandas / numpy — EVM calculation and data processing
  • matplotlib — S-curves, heatmaps, and dashboard
  • scipy — Statistical process control

💡 Key Concepts Demonstrated

  • Earned Value Management (EVM) — full metric suite
  • S-curve generation and analysis
  • Multiple EAC forecasting methodologies
  • TCPI analysis and recovery plan assessment
  • Statistical Process Control (SPC) for performance monitoring
  • Automated anomaly detection (threshold + statistical)
  • WBS-level performance diagnostics
  • Defense program financial reporting (IPMR context)

👤 Author

Built as part of a data science / finance analytics portfolio project.
Background: 15+ years in Marketing Analytics | SQL | Python | Statistical Modeling | Finance Analytics

About

Earned Value Management analysis based on an 18-month avionics program. This calculates and analyzes the full EVM metric suite (CPI, SPI, CV, SV, PC, TCPI). It also includes forecasting scenarios and anomaly detection.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages