Simple equation that is just as good as any:
p : number of people
c : number of changes into specifications (= learning during implementation)
f : number of frameworks, libraries, tools.
x : number of new people, frameworks, libraries, tools
e : initial time estimate in weeks
correct estimate: E = e + e(0.1p + 0.2c + 0.3f + 1.1^x)