El software es un conjunto de instrucciones que controlan la operación de un sistema computacional y le dan funcionalidad al hardware. Existen tres tipos principales de software: el software de sistema que gestiona la interacción entre usuario y hardware, el software de programación que permite desarrollar otros programas, y el software de aplicación que permite realizar tareas específicas. El hardware son los componentes físicos de una computadora como el procesador, memoria y dispositivos de entrada y salida, y puede ser básico para operación mínima o complementario para funciones adicionales.