Very good question, Mudasir. I happened to come over a European technical report with a questionnaire relating the developmental complexity of a Web project. From resulting metrics they could tell you, whether you should use a 'long' or 'short' lifecycle, another term for money spent, IIRC. The whole process was called e-minder. Maybe you can find this online, before I spot it in my papers.
All Modern applications are considered web based applications , In general the costs of web based application are categorized into three major categories :
- Network system (hardware and software)
- web based database system
- developing effort , analysis , design and coding
You need to think of web applications as any kind of application which requires the system to pass through the software development life cycle: planing, analysis, design, build, test, deploy.
To be able to do a good estimate you need the following documentation / information
- technical architecture vision,
- project charter
- business requirements
Use top- down approach to make initial estimates taking into account some contigency (20-40 %)