Technology makes it possible for people to gain control over everything, except over technology.
—John Tudor
Some management challenges encountered in creating software were discussed in section 4.2, but software creation is only one of several stages required before a software application can be made available to users. The software must be marketed and sold, a process that is closely intertwined with its creation. Management has to oversee the planning, deployment, and testing of equipment and infrastructure software required to run an application, and the application software must be installed and tested. Users have to be trained, and in the case of organizational applications the organizational and business processes often have to be revamped to match the assumptions of the software. Once the application is successfully up and running, someone has to keep it operating, including reporting and repairing defects, maintaining vigilance for security breaches, and providing support to users. Software administrative and management tools can assist in all this, but people are the key players. It is an ongoing challenge to gain and maintain control over a software application and the technology that underlies it.
This chapter discusses this management challenge in more depth. We begin with a model for the stages in the supply chain from creator to user of software, and discuss the differing roles within these stages. This sets the stage for considering the industry structure that supports these diverse roles (see chapter 6). We then consider the total cost of these activities, known as the total cost of ownership, a major consideration for both managers and suppliers. Finally, we delve into the issues raised when an application spans multiple management domains (like autonomous end-user organizations), using security to provide an in-depth illustration.