(1) After settle down with the use case specifications, draw the high level package and deployment diagram first before proceeding to the conceptual modelling with class diagrams and sequence diagrams.
The package diagram is used mainly to organize the static class diagram when it gets too cluttered. So I'd say you would work with it only when you have some candidate objects (read classes) to work with. My advise: start creating your package diagrams after you have the first draft of your class diagram (with some behavior).
Deployment diagrams are "useful primarily for marketing presentations, executive summaries, and pointy-haired bosses." (Allen Holub)
(3) Once we finalised everything draw the component diagram, finalised the package diagram before distributing to all developers for construction.
It is only viable to treat packages as a development units - when the packages are self-contained and do not have many dependencies with other packages.
Pho