Una pieza de software de computadora es un programa que permite al propietario usar su computadora. El hardware consta de todos los componentes físicos de una computadora y el software consta de los programas que se compilan para permitir que el hardware funcione. Los tipos de software incluyen sistemas operativos, aplicaciones y compiladores para escribir programas de computadora. La mayoría del software está diseñado para ser fácil de instalar y usar, de modo que cualquier consumidor pueda tener acceso a él. Otros tipos son más avanzados y requieren conocimientos de lenguajes de programación de computadoras para poder usarlos.
El sistema operativo a menudo se considera la pieza de software más importante. Este es un programa que permite al usuario comunicarse con los componentes internos de la computadora a través de entradas como un mouse y un teclado y transmitir imágenes virtuales a un monitor de computadora. Windows, Macintosh y Linux son ejemplos de sistemas operativos. Estos sistemas permiten al usuario ejecutar otros programas de software, imprimir elementos y navegar por Internet, entre otras tareas. También ayudan a que todos los componentes internos de la computadora funcionen sin problemas al permitirles comunicarse entre sí y con diferentes entradas de usuario, particionar la memoria y ejecutar y cerrar diferentes programas de software.
Una aplicación es una pieza de software de computadora que se agrega al sistema operativo. El término programa de computadora se refiere con mayor frecuencia a aplicaciones. Estos pueden incluir programas de procesamiento de texto, navegadores de Internet y la mayoría de los otros tipos de programas para el consumidor. Las computadoras generalmente se venden con algunas aplicaciones ya instaladas, como un procesador de texto, un navegador de Internet y un reproductor de música. Los consumidores pueden comprar aplicaciones adicionales descargándolas de Internet o comprándolas en forma de CD-ROM, DVD y otros formatos. A continuación, el usuario debe instalar la aplicación para que se ejecute. Algunas aplicaciones deben ser iniciadas y operadas por el usuario, como la edición de video o los programas de contabilidad. Otros programas informáticos se ejecutan en segundo plano sin previo aviso, como los programas de protección antivirus.
Los usuarios más avanzados a veces comprarán software de computadora que se puede usar para escribir, probar e implementar nuevos programas de computadora. Estos programas a menudo vienen con un compilador de software que es específico para un lenguaje de programación de computadora individual, como Java o Visual Basic. Con este software, un programador puede escribir un programa de computadora, probarlo y realizar otras funciones avanzadas.