This is the beginning of the yellow-brick road. The day is sunny and bright. Software is a program of instructions. Software is a box containing user manuals, install disks, utility programs, application programs, data files, and online help files. Software is the phenomenon we experience when the pro- gram executes in a certain operating environment, on a certain hardware platform.
Software is the total interaction between the human user and the program over time.
Software is a solution provided to a customer. A specification is an understanding, on the part of the developers, testers, documenters, technical supporters, marketers, management and users of how the software is supposed to behave. Part of a specification may be a document delivered at the beginning of the project. Part of a specification may be a prototype or previous version of the software. Part of the specification may be an ongoing dialog between the developers, testers, documenters, technical supporters, marketers, management and users of the software.