Computer software is a collection of computer programs and related data that provide instructions for a computer to decipher what to do and how to do it. It is a collection of computer programs, procedures and associated documentation that is concerned with the operation of the data processing system. The term can be contrasted to hardware, which is the physical devices that make up a computer. Computer software includes all computer programs regardless of their architecture; for example, executable files, libraries and scripts are computer software. Yet, it shares their mutual properties: software consists of clearly defined instructions that upon execution, instructs hardware to perform the tasks for which it is designed. Software is stored in computer memory and cannot be touched, just as a 3D model shown in an illustration cannot be touched.