Skip to content

Instantly share code, notes, and snippets.

@jcasimir
Created April 18, 2011 23:36
Show Gist options
  • Save jcasimir/926525 to your computer and use it in GitHub Desktop.
Save jcasimir/926525 to your computer and use it in GitHub Desktop.
Working on a formula to ballpark rails projects:
N = number of models
D = developer days/model = I'd approximate 3
C = complexity factor = 0.5 (ie, implementing 2 models is 3x as complex as one model)
M = number of views / model = 4 (on average)
E = developer days/view = I'd approximate 2 (given time for revisions, etc)
x = "Complexity" = C * (N ^ 2)
y = "Code" = D * N
z = "User Interface" = N * M * E
total = x + y + z
= C * (N ^ 2) + D * N + N * M * E
= N * (C * N + D + M * E)
Then guessing on my values with a four model application:
= 4 * (0.5 * 4 + 3 + 4 * 2) = 32 developer days
Or, getting more complex with 8 models...
= 8 * (0.5 * 8 + 3 + 4 * 2) = 120 developer days
Or really large with 16 models...
= 16 * (0.5 * 16 + 3 + 4 * 2) = 304 developer days
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment