The document defines and describes different types of software. It begins by defining software as a set of instructions that operate computers and execute tasks, as opposed to hardware which describes physical computer components. There are two main categories of software: application software which performs specific tasks, and system software which runs hardware and provides a platform for applications. Other types include programming software, middleware, and driver software. The document then describes various common software types in more detail such as application software, system software, driver software, middleware, and programming software. It concludes by discussing software quality measures.