software definition
the best and concise software definition I could find
...
from "The Mythical Man-Month" by Frederick P. Brooks, Jr.
"The essence of a software entity is a construct of interlocking concepts: data sets, relationships among data items, algorithms, and invocations of functions. This essence is abstract, in that the conceptual construct is the same under many different representations. It is nonetheless highly precise and richly detailed.
I believe the hard part of building software to be the specification, design, and testing of this conceptual construct, not the labor of repre- senting it and testing the fidelity of the representation. We still make syntax errors, to be sure; but they are fuzz compared to the con- ceptual errors in most systems.
If this is true, building software will always be hard. There
is inherently no silver bullet." no magic solution.
"this page is made of recyclable electrons"