Computer software helps us communicate with others, entertains us, and assists us in doing work. But who does the work of putting the software together, deciding how it will work and how people use... This description may be from another edition of this product.