Many techniques of general project management also apply to Software Project Management.
Fred Brooks identified some characteristics of software projects which make them particularly difficult:
1. Invisibility: With Software progress is not immediately visible, however for physical artefacts like Bridge progress can be seen over the period of time.
2. Complexity: Software project contain more complexity than other engineered artefacts.
3. Conformity: Physical systems are governed by consistent physical law while Software developers have to conform to the requirements of human clients.
4. Flexibility: Software system are particularly subject to change.