Implement a small advisor based on Boehm and Turner's five factors. Each project is one input line:
name criticality changePercent teamSize seniorPercent culture
criticality: 1 = loss of comfort, 2 = loss of some money, 3 = loss of a lot of money, 4 = loss of a life, 5 = loss of many liveschangePercent: % of requirements expected to change per monthteamSize: number of developersseniorPercent: % of experienced developersculture:CHAOS(people like change) orORDER(people prefer clear procedures)
Score one point for agile or plan per factor:
| Factor | Agile point if… | Plan point otherwise |
|---|---|---|
| criticality | ≤ 2 | ≥ 3 |
| change | ≥ 10 | < 10 |
| size | ≤ 15 | > 15 |
| personnel | ≥ 30 | < 30 |
| culture | CHAOS | ORDER |
Recommendation: 4 or 5 agile points → AGILE; 4 or 5 plan points → PLAN-DRIVEN; otherwise HYBRID, and list the factors that pointed to plan (in table order: criticality, change, size, personnel, culture).
Output per project: name: AGILE (agile 4, plan 1), or for hybrids name: HYBRID (agile 3, plan 2) - plan-driven factors: criticality, size.
Input:
StudyBuddy 2 25 5 40 CHAOS
RailSignal 5 2 120 60 ORDER
BankMigration 3 15 40 50 CHAOS
Output:
StudyBuddy: AGILE (agile 5, plan 0)
RailSignal: PLAN-DRIVEN (agile 1, plan 4)
BankMigration: HYBRID (agile 3, plan 2) - plan-driven factors: criticality, size