Don't commit to a schedule until you know you have a chance of meeting it. Lying to senior management isn't ideal, but sometimes it's your best option. Consider maintenance issues while you are developing your system. Set development standards and guidelines early in the project. Your artifacts may be meaningless to others.
Simple models are often the best models.
Develop a minimal set of artifacts. Set user interface conventions early in the project. Identify common aspects of your system, and develop them early, so they may be reused. Be prepared to bring new people into the project part way through it. Be prepared to lose people during your project.