Software is a set of computer programs and associated documentation. There are two main types: system software and application software. System software includes operating systems and controls the computer, while application software helps users perform tasks like word processing. The history of software dates back to the 1930s and pioneers like Turing, while the term "software" was coined in 1958. The waterfall model is a common approach to software development that involves requirements, design, implementation, testing, and deployment phases.