What is your best method or practice for allocating quality assurance testing time for a project. I have heard 20 - 30% of construction time is a good benchmark, but I believe knowing the scope of your test coverage (knowing the number of test cases and estimating the time needed to test them fully is a better way to do it). I would like your feedback.
Just remember, we are talking about estimation here, so it isn't like it's written in stone. I mean there are plenty of variables like project size, number of people on the team, etc., which are going to influence your final result, so I would say get those variables figured out first.
From there you should at least be able to gather a ballpark estimate. Walen's right though, your project timing isn't something that can be written into a process doc somewhere, it's going to vary each time.
For estimation, we can follow functional points methods for black box testing. Incase of whitebox testing, I have experienced PRQA for estimation, that will estimate using Myer's interval and cyclomatic complexity of the code.
Depends on what stage of the process you are at. It your project is at proposal stage then formal methods, like functional point methods, are not very useful. You have to base it on past experience of similar sized projects for new projects, or similar phases for the same project. In my personal experience I have a guess based on the proposal, then verify it against developments guess, and get it checked by another person.
Also useful is to have a standard checklist of test activities to ensure you do not miss one that is not explicitly stated in the proposal, for example
After requirements are done you can adjust the estimates appropriately and you can use more formal methods.