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 since work is logical; however, for physical artifacts like bridges, work progress can be seen from time to time. In Software Development, there is a level of uncertainty.
It isn't easy to accurately define detailed requirements for software projects before starting the development. However, with the introduction of approaches like Agile and Scrum, we can overcome this limitation.
2. Complexity
Software projects contain more complexity than other engineered artifacts. For example, in a bridge, there is a clear structural relationship between parts, whereas software component relationships are much more complicated. We can't measure the complexity of a software project until we work on it.
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 systems are particularly subject to change. A bridge has to be built in a specific order, whereas We can make Software much more flexibly and restructure parts quite freely.
Apart from the above-mentioned, Software Projects are intangible, and managing a software project is more managing interpersonal communication and less about administration. Also, it would be best if you had a highly skilled team of developers, QA, and another stakeholder to develop a software project, unlike making a bridge where skills can be less or more.
Comments