Although computer science and software engineering courses teach students a lot about the development of software, they are lacking in information about the bigger picture of software project delivery. Even many organizations focus most of their efforts on the creation of the software and neglect the many external activities required to effectively deploy the software. Problems arising from poor delivery and support of software systems can prevent that software from being used effectively, or at all, by the intended users. Poor delivery practices can also have an effect on subsequent release timescales by diverting effort from development to fire-fighting activities.
Delivery activities, as opposed to development activities, consume the bulk of the cost of a software project. They should be managed with the same rigor and resources that go with traditional project management of development activities, and educators should make students aware at an early stage of the external issues involved. Doing so will lead to more successful software projects, smoother deployments, and happier users.