Tied to computer hardware, good software enables people to interact with computer systems more easily.