Using a basic definition, software means computer programs and their associated documentation. Computer programs, in turn, consist of algorithms (or procedures) applied to various types of data.