Software differs from other electromechanical technologies because of the unique process by which software programs are invented. In particular, software developers create novel executable software programs, which are components of a computer, by conceiving of and specifying such programs solely...