About project-estimation
A project-estimation skill for teams planning scope, budgets, timelines, and resources. It brings together estimation methods, reference guides, and practices for handling uncertainty and reviewing estimates.
Key features
- 01PERT three-point estimation
- 02Bottom-up and analogous methods
- 03Resource estimation guidance
- 04Templates and best practices
Use cases
- 01Estimating project timelines and budgets
- 02Allocating team resources
- 03Assessing feasibility and contingencies
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill project-estimationAfter installing, type/project-estimationin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/analogous-estimation.mdbottom-up-estimation.mdestimation-templates.mdresource-estimation.mdthree-point-estimation-pert.mdtemplates/process-template.mdDetails
From the project READMEProject Estimation
Table of Contents
Overview
Accurate project estimation determines realistic timelines, budgets, and resource allocation. Effective estimation combines historical data, expert judgment, and structured techniques to minimize surprises.
When to Use
- Defining project scope and deliverables
- Creating project budgets and timelines
- Allocating team resources
- Managing stakeholder expectations
- Assessing project feasibility
- Planning for contingencies
- Updating estimates during project execution
Quick Start
Minimal working example:
# Three-point estimation technique for uncertainty
class ThreePointEstimation:
@staticmethod
def calculate_pert_estimate(optimistic, most_likely, pessimistic):
"""
PERT formula: (O + 4M + P) / 6
Weighted toward most likely estimate
"""
pert = (optimistic + 4 * most_likely + pessimistic) / 6
return round(pert, 2)
@staticmethod
def calculate_standard_deviation(optimistic, pessimistic):
"""Standard deviation for risk analysis"""
sigma = (pessimistic - optimistic) / 6
return round(sigma, 2)
@staticmethod
def calculate_confidence_interval(pert_estimate, std_dev, confidence=0.95):
"""
Calculate confidence interval for estimate
95% confidence ≈ ±2 sigma
"""
z_score = 1.96 if confidence == 0.95 else 2.576
// ... (see reference guides for full implementation)
Reference Guides
Detailed implementations in the references/ directory:
| Guide | Contents |
|---|---|
| Three-Point Estimation (PERT) | Three-Point Estimation (PERT) |
| Bottom-Up Estimation | Bottom-Up Estimation |
| Analogous Estimation | Analogous Estimation |
| Resource Estimation | Resource Estimation |
| Estimation Templates | Estimation Templates |
Best Practices
✅ DO
- Use multiple estimation techniques and compare results
- Include contingency buffers (15-25% for new projects)
- Base estimates on historical data from similar projects
- Break down large efforts into smaller components
- Get input from team members doing the actual work
- Document assumptions and exclusions clearly
- Review and adjust estimates regularly
- Track actual vs. estimated metrics for improvement
- Include non-development tasks (planning, testing, deployment)
- Account for learning curve on unfamiliar technologies
❌ DON'T
- Estimate without clear scope definition
- Use unrealistic best-case scenarios
- Ignore historical project data
- Estimate under pressure to hit arbitrary targets
- Forget to include non-coding activities
- Use estimates as performance metrics for individuals
- Change estimates mid-project without clear reason
- Estimate without team input
- Ignore risks and contingencies
- Use one technique exclusively
Comments
Markdown supported