meant. Today most professionals and many member of the public at large feel that they understand
software. But do they?
A textbook description of software might take the following form: Software is (1) instructions (computer
programs) that when executed provide desired function and performance (2) data structures that enable
the programs to adequately manipulate information and (3) documents that describe the operation and
use of the programs. There is no question that other more complete definitions could be offered. But we
need more than a formal definition.
important to examine the characteristic of software that make it different from other things that human
beings build. When hardware is built the human creative process(analysis, design, construction) is
ultimately translated into a physical form. If we build a new computer our initial sketches formal design
drawings and bread boarded prototypes evolve into a physical product (VLSI chips, circuit boards, power
supplies etc). Software is a logical rather than a physical system element. Therefore software has
characteristic that differ considerably from those of hardware.
Software is developed or engineered, it is not manufactured in the classical sense. Although some similarities exist
between software development and hardware manufacture the two activities are fundamentally different.
In both activities high quality is achieved through good design but the manufacturing phase for hardware
can introduce quality problems that are nonexistent (or easily corrected) for software. Both activities
depend on people but the relationship between people applied and work accomplished is entirely