A great deal depends on how many programmers, analysts, designers, etc are thrown at the project, the standard and extent of the testing, to name just a few factors. Managers tend to under estimate the time needed and the cost involved in getting a project from design concept to finished product. Marketing will almost always take the more optimistic view when it comes to things like included features and release date.