The momentum of the project may be lost during the month of December when ¾ of the team members will be out of country.
As the client does not have exact specification outlined, lack of understanding feasible and correct functional specification of project may not serve the purpose.
Failure to prioritize and understand scope of project.
As most of team members have to learn new programming language (if chosen) and other skills, there is a possibility of slippage in schedule.
To come up with a best search algorithm will need more time investment and understanding, which may result in unfinished project.
Unavailability of hardware and software technical support from Client.
Unavailability of systems to test and deploy software.