La instalación de software permite al usuario configurar el programa para no tener que instalarlo cada vez que ejecute el programa.
Cuantos más archivos tenga y más dependa de otros programas, la instalación será mas compleja.
El desarrollador debe incluir todos éstos para poder hacer una correcta instalación
INSTALACIÓN ESTANDAR
Es la instalación mas sencilla. La configuración es muy simple. El usuario interactúa muy poco y puede determinar parámetros de configuración simples:
- Aceptación de los términos de uso.
- El idioma de la instalación.
- La localización de la carpeta del programa en el disco duro.
- Accesos directos.
INSTALACIÓN AVANZADA
Permite al usuario seleccionar gran parte de las opciones avanzadas. Está pensado para usuarios que sepan de informática, los llamados usuarios avanzados.
INSTALACIÓN REMOTA
Consiste en instalar el software a través de la red. El programa se encuentra en un servidor y a través de el es posible realizar la instalación y en varios equipos simultáneamente.
El cliente debe estar preparado con el inicio remoto a través de la red.
INSTALACIÓN DESATENDIDA
Es aquella que no necesita la interacción del usuario durante su instalación. Solo es necesario para lanzar el proceso.
Esta instalación está basada en un asistente donde el usuario decide los parámetros necesarios. También se puede utilizar la linea de comando.
INSTALACIÓN MASIVA
Consiste en la realización de instalaciones sucesivas en un gran número de equipos. Consiste en una aplicación que permita incluir todo el software que desea instalar de una sola vez pero en varios equipos.
Otra opción es la instalación remota, conectados a un servidor que ejecute la opción anterior.
ACTUALIZACIONES
Sirven para solucionar problemas (bug) o actualizarla para incluir nuevas funciones. Permite mejorar la seguridad, errores de funcionamiento... Tipos de actualizaciones:
- De actualización: Añadir nuevas funciones o mejorarlas.
- De depuración: Solución de errores.
- De seguridad: Resolución de problemas de seguridad.
PASOS BÁSICOS DE UNA INSTALACIÓN
- Verificar si se cumplen los requisitos de instalación
- Verificar que el software es original.
- Creación de directorios necesarios.
- Creación de usuarios y permisos necesarios para delimitar responsabilidades.
- Copia, desempaquetado y descompresión de los archivos. Normalmente vienen comprimidos para que ocupen menos.
- Compilación y enlace con bibliotecas requeridas.
- Configuración de la aplicación y definición del entorno.
- Registro de la instalación en caso de ser Software Comercial.
FORMAS DE INSTALACIÓN
INSTALACIÓN POR COPIA DIRECTA
El más fácil e intuitivo es MAC OS X. Los programas en Mac suelen usar librerías comunes para todas ellas. Se organizan en el directorio Aplicaciones y se presentan como un solo paquete con todo lo necesario. Esto hace que el funcionamiento del sistema no se vea alterado aunque instalemos gran cantidad de software.
Los programas en MAC OS X se presentan:
- En formato comprimido
- Como imagen de disco
- Como paquete de extensión .app
- En pocas ocasiones como un instalador ejecutable.
INSTALACIÓN MEDIANTE UN INSTALADOR
Emplean un archivo ejecutable que habremos descargado previamente o estará en un medio de almacenamiento.Es habitual el uso de instaladores en Windows de modo en que cada programa va repartiendo diversos ficheros por diferentes subdirectorios y van instalando nuevas librerías con formato dll en windows/system y windows/system32. Los programas se suelen almacenar en archivos de programa, program files o en la raíz del disco.
Es necesario el uso de desinstaladores para no dejar rastro.
INSTALACIÓN USANDO UN SISTEMA O GESTOR DE PAQUETES
El S.O. se ocupan de instalar un paquete con los archivos requeridos. Para ese fin se utilizan varias herramientas.
Se emplean en plataformas Linux, donde el software se distribuye en paquetes. Pueden ser descargados desde Internet a través de los repositorios. En muchos casos se deben resolver dependencias para garantizar que el software funcione correctamente.
ELIMINACIÓN DE APLICACIONES
En windows será necesario un desinstalador, que seguirá estos pasos:
- Eliminación automática de los archivos.
- Ajustes necesarios en la configuración del sistema operativo.
- Eliminación de iconos en el escritorio.
En ordenadores Mac es muy simple: Basta con arrastrar el icono de la aplicación a la papelera.
En los sistemas Linux también es muy simple: Basta con acceder a dicho sistema y marcar el paquete de desinstalar para que elimine todo rastro del mismo.
En algunas ocasiones las aplicaciones dejan rastro. Con los "cleaners" conseguiremos eliminarlos.
PRUEBAS O TESTING DE APLICACIONES
Tradicionalmente los proyectos de software han sufrido problemas de calidad. Estos problemas surgen en las desviaciones de los plazos y en la aparición de fallos durante la impantación.
Las pruebas son esos procesos que permiten verificar y validar la calidad de un software identificando los errores.
Se integran en las fases del ciclo del software. A veces esta fase es sacrificada ante las presiones de los plazos o los costes.
Se encargan de ejecutar el software para verificar los errores y forzarlo para determinar si se puede recuperar o no.
Con esto se pretende detectar errores de programación o bugs. Mas del 80% de los errores cometidos provienen en las primeras fases del ciclo de vida.
FALLOS DEL SOFTWARE
Razones por las que se suelen producir errores de programación o bugs:
- Escasez o ausencia de comunicación entre los diferentes individuos que intervienen en el desarrollo.
- Complejidad del software con poca reutilización de código.
- Errores de programación. Los programadores son uno de los principales factores. Se confían y no les da tiempo a terminarlo a tiempo.
- Cambios continuos durante el desarrollo.
- Presiones de tiempo. Hacen que no se puedan realizar suficientes pruebas.
El tester es un profesional con altos conocimientos en lenguajes de programación, métodos y técnicas. Somete al software para ver como reacciona. Debe encontrar errores que no se ven a simple vista.
Para crear un entorno de pruebas es necesario hacerlas en una maquina distinta de la maquina de producción pero con características similares.
Normalmente estas pruebas las suelen hacer testers ajenos al desarrollador.
TIPOS DE PRUEBAS
Se efectúan dos tipos de comprobaciones:
- Verificación: Consiste en demostrar que un programa cumple con sus especificaciones. Comprueba las distintas fases del desarrollo. Se revisa el código, los requerimientos... En definitiva, comprueban que el producto esté correctamente construido.
- Validación: Comprobación de los requerimientos del software. Responde a la pregunta de si el producto construido es correcto.
Una de las formas es la de distribuir versiones gratuitas para que los usuarios las prueben. Se les denominan versión beta y también versión alpha.
Antes de salir al mercado lo más habitual es sacar una versión RTM donde se comprueba la funcionalidad del programa.