This article describes some ideas on getting a successful software development process.
A successful project:
Depends on the expertise of the team. Don’t try to push many new technologies into a project. It will be difficult for the team to get acquainted with them and deliver a good quality project. Small steps are the best. Depends on the level of communication among the participants. Enforce communication among the team members.