La instalación de programas computacionales (software) es el proceso por el cual nuevos programas son transferidos a un computador y, eventualmente, configurados, para ser usados con el fin para el cual fueron desarrollados. Un programa recorre diferentes fases de desarrollo durante su vida útil:
- Desarrollo: cada programador necesita el programa instalado, pero con las herramientas, códigos fuente, bancos de datos y etc, para modificar el programa.
- Prueba: antes de la entrega al usuario, el software debe ser sometido a pruebas. Esto se hace, en caso de software complejos, en una instalación ad hoc.
- Producción: Para ser utilizado por el usuario final.
En cada una de esas fases la instalación cumple diferentes objetivos.
PASOS PARA
- Verificación de la compatibilidad: Se debe comprobar si se cumplen los requisitos para la instalación en cuanto a hardware y software. A veces es necesario desinstalar versiones antiguas del mismo software.
- Verificación de la integridad: Se verifica que el paquete de software es el original, esto se hace para evitar la instalación de programas maliciosos.
- Creación de los directorios requeridos: Para mantener el orden en el directorio cada sistema operativo puede tener un estandar para la instalación de ciertos archivos en ciertos directorios. Ver por ejemplo Linux Standard Base.
- Creación de los usuarios requeridos: Para deslindar responsabilidades y tareas se pueden o deben usar diferentes usuarios para diferentes paquetes de software.
- Concesión de los derechos requeridos: Para ordenar el sistema y limitar daños en caso necesario, se le conceden a los usuarios solo el mínimo necesario de derechos.
- Copia, desempaque y decompresión de los archivos desde el paquete de software: Para ahorrar Ancho de banda y tiempo en la transmisión por internet o espacio de Disco duro, los paquetes vienen empacados y comprimidos.
- Archivos principales, sean de fuente o binarios.
- Archivos de datos, por ejemplo datos, imágenes, modelos, documentos XML-Dokumente, etc.
- Documentación
- Archivos de configuración
- Bibliotecas
- Enlaces duros o enlaces simbólico a otros archivos
- Compilación y enlace con la bibliotecas requeridas: En algunos casos no se puede evitar el complicado paso de la compilación y enlace que a su vez tiene severos requerimientos de software al sistema. El enlace con bibliotecas requeridas puede ser un problema si en su instalación no se acataron los standards establecidos.
- Configuración: Por medio de archivos de configuración se le da a conocer al software con que parámetros debe trabajar. Por ejemplo, los nombres de las personas que pueden usar el software, como verificar su clave de ingreso , la ruta donde se encuentran los archivos con datos o la dirección de nuestro proveedor de correo electrónico. Para sistemas complejos se debe desarrollar el Software Configuration Management.
- Definir las variables de entorno requeridas: Algunos comportamientos del software solo pueden ser determinados por medio de estas variables. Esto es parte de la configuración, aunque es más dinámica.
- Registro ante el dueño de la marca: Para el Software comercial a veces el desarrollador de software exige el registro de la instalación si se desea su servicio.