domingo, 12 de febrero de 2017

Ensayo: "El Soporte de Software"

En estricto sentido, el termino "Soporte de Software" no existe. No hay estándar ni definición en el mundo que pueda decir con exactitud que es el soporte de software, esto debido a que es la conjunción entre dos elementos: el "Mantenimiento de Software" y el "Soporte Técnico".  Sin embargo, aun no definido, el soporte de software es esencial y de alguna manera algunas compañías lo ponen en practica, aun sin darse cuenta, basta con brindar mantenimiento al producto de software y ademas brindar soporte a los usuarios del mismo.

Para poder si quiera aproximarse a una definición de "Soporte de Software" primero tendríamos que definir ambos elementos que lo componen. 

Comenzando con "Mantenimiento de Software" :
"La modificación de un producto de software después de su entrega al cliente o usuario para corregir defectos, para mejorar el rendimiento u otras propiedades deseables, o para adaptarlo a un cambio de entorno." (IEEE, Diciembre 1992)

"Conjunto de actividades destinadas a proporcionar soporte económicamente rentable para un determinado producto software. Estas actividades se realizan tanto antes de la entrega del producto como después de la entrega del mismo. Las actividades previas a la entrega incluyen las actividades destinadas a planificar, anticipar y preparar actividades de mantenimiento posteriores. Las actividades posteriores a la entrega incluyen modificaciones del producto software, formación y asistencia al usuario" (ISO/IEC)
 Ambas definiciones son muy parecidas, sin embargo, difieren en algo, el tiempo en que se efectúa el mantenimiento. Lo correcto seria según el Estándar ISO/IEC 14764 pues la actividad de mantenimiento puede hacerse tanto antes como después de la entrega del producto de software, sin embargo, esto no desprestigia la definición del Estándar IEEE 1219. 

Por lo tanto, el mantenimiento del software serán todas aquellas actividades destinadas al cuidado, corrección y mejora del software, tanto antes como después de la entrega del mismo. Debido a esto, es que existen mantenimientos de distinta naturaleza, aun que todos con el mismo objetivo "hacer mejor el software", los tipos de mantenimiento de software son los siguientes:

  • Mantenimiento Correctivo: localiza y corrige defectos en un programa tras su
    entrega. Puede ser urgente o no urgente
    . (Macario Polo, Marzo 1999)
Este tipo de mantenimiento es aquel que busca encontrar y corregir todos aquellos problemas o defectos que originan un comportamiento diferente al esperado del software, estos defectos pueden ser desde fallas de procesamiento, uso ineficiente de los recursos, inconsistencias, seguridad o la estabilidad del mismo software. 
  • Mantenimiento Adaptativo: Modificación para adaptarse a un cambio en el entorno. (Macario Polo, Marzo 1999)
Este mantenimiento se efectúa cuando el entorno en el que el software normalmente trabaja, cambian, por ejemplo el sistema operativo o el mismo hardware en el que estaba instalado. Puede ser esencial que el software se adapte a sus nuevas condiciones sin prescindir de ninguna de sus funcionalidades ni su rendimiento optimo.
  • Mantenimiento Perfectivo: Modificación para detectar y corregir fallos latentes antes de que se conviertan en carencias. (IEEE, Diciembre 1992) Modificación para modificar o añadir nuevas funcionalidades. (Macario Polo, Marzo 1999)
El mantenimiento perfectivo busca agregar nuevas funcionalidades o características al software, las cuales no estaban cuando se implemento el software.

  • Mantenimiento Preventivo: Modificación para detectar y corregir fallos latentes antes de que se conviertan en fallos operacionales. (IEEE, Diciembre 1992) Mejorar las propiedades del software. (Macario Polo, Marzo 1999)
Este tipo de mantenimiento puede brindarse antes de la entrega el software, debido a que busca evitar posibles errores o defectos que el software pudiera tener en el futuro.

Continuando con "Soporte Técnico":

Son aquellos servicios que proporciona asistencia con el software o hardware de un sistema o algún otro aparato electrónico o mecánico. Estos servicios tendrán como objetivo ayudar al usuario con algún problema o inconveniente con sus sistemas/aparatos. Para ello, este soporte técnico puede ser brindado de manera remota o a distancia, ya sea vía telefónica o por Internet, por ejemplo, análogamente, puede ser presencialmente con un técnico verificando el problema.

El soporte técnico que una empresa brinda puede ser dividido en niveles, los cuales dependerán de las mismas actividades de la empresa, de igual forma se puede tener una "cola" la cual puede ser organizada según el nivel de urgencia que un soporte técnico requiera. A continuación se mencionan algunos niveles de soporte técnico.
  • Soporte de Nivel/Tier 1 (Ayuda al usuario): Este nivel es el primero en la linea de ayuda y es quien recibe primero las llamadas de los usuarios buscan soporte técnico. Regularmente son problemas básicos que el usuario puede resolver por si mismo utilizando alguna herramienta del conocimiento. (Walker, 2001)
  • Soporte de Nivel/Tier 2 (Soporte Técnico): Este nivel busca encontrar la solución del cliente por su cuenta o utilizando conocimientos básicos técnicos de principiante. (Walker, 2001)
  • Soporte de Nivel/Tier 3 (Administración del Sistema): En este nivel el soporte se centra en la infraestructura, asi como los servidores de red. (Walker, 2001)
  • Soporte de Nivel/Tier 4 (Ingeniería de Operaciones de Producto): Este nivel se centra en productos individuales que cuentan con problemas específicos, así mismo, buscan solucionarlos. (Walker, 2001)
  • Soporte de Nivel/Tier 5 (Ingeniería): Este nivel es el encargado de hacer y mantener los productos, así como vigilar su correcto funcionamiento y "salud". (Walker, 2001)
Para finalizar, podemos concluir con la definición de "Soporte de Software", en sustancia, decíamos que la combinación entre el mantenimiento de software y el soporte técnico nos darían como resultado al Soporte e Software. El Soporte de Software será entonces: 
El conjunto de actividades auxiliares o de asistencia las cuales buscaran anticipar, modificar, adaptar o perfeccionar un producto de software a posibles errores o problemas con su funcionamiento, y de igual manera ayudar al cliente con estos.
Por último, cabe mencionar que este Soporte de Software debería ser rentable para  la empresa que lo brinde, pues de no serlo, representaría costos excesivos, además de que es brindado antes y después de la entrega del producto de software.

Referencias

IEEE, T. I. (Diciembre 1992). Standard for software maintenance. Technical Report IEEE Std 1219-1993,.

ISO/IEC. (s.f.). Software engineering – software life cycle processes – maintenance. Septiembre 2006: Technical Report International Standard ISO/IEC 14764:2006.

Macario Polo, M. P. (Marzo 1999). MANTEMA: A Complete Rigorous Methodology for Supporting.

Walker, G. (2001). IT Problem Management (Harris Kern’s Enterprise Computing Institute Series). Upper Saddle River: Prentice Hall.: Google Bocks.

No hay comentarios:

Publicar un comentario