Mantenimiento de software


Mantenimiento de software

El mantenimiento de software o manutención de software es una de las actividades más comunes en la ingeniería de software, es el proceso de mejora y optimización del software después de su entrega al usuario final (es decir; revisión del programa), así como también corrección y prevención de los defectos.

El mantenimiento de software es también una de las fases en el ciclo de vida de desarrollo de sistemas (SDLC, sigla en inglés de system development life cycle), que se aplica al desarrollo de software. La fase de mantenimiento es la fase que viene después del despliegue (implementación) del software en el campo.

Contenido

Contexto

La fase de mantenimiento de software involucra cambios al software para corregir defectos encontrados durante su uso o la adición de nueva funcionalidad mejorando la usabilidad y aplicabilidad del software.

El mantenimiento del software involucra varias técnicas específicas. Una técnica es el rebanamiento estático, la cual es usada para identificar todo el código de programa que puede modificar alguna variable. Es generalmente útil en la refabricación del código del programa y fue específicamente útil en asegurar conformidad para el problema del año 2000.

La fase de mantenimiento de software es una parte explícita del modelo en cascada del proceso de desarrollo de software el cual fue desarrollado durante el movimiento de programación estructurada en computadores. El otro gran modelo, el Desarrollo en espiral desarrollado durante el movimiento de ingeniería de software orientada a objeto no hace una mención explícita de la fase de mantenimiento. Sin embargo, esta actividad es notable, considerando el hecho de que dos tercios del coste del tiempo de vida de un sistema de software involucran mantenimiento (Page-Jones pg 31).

En un ambiente formal de desarrollo de software, la organización o equipo de desarrollo tendrán algún mecanismo para documentar y rastrear defectos y deficiencias. El Software tan igual como la mayoría de otros productos, es típicamente lanzado con un conjunto conocido de defectos y deficiencias. El software es lanzado con esos defectos conocidos porque la organización de desarrollo en las utilidades y el valor del software en un determinado nivel de calidad compensa el impacto de los defectos y deficiencias conocidas.

Las deficiencias conocidas son normalmente documentadas en una carta de consideraciones operacionales o notas de lanzamiento (release notes) es así que los usuarios del software serán capaces de trabajar evitando las deficiencias conocidas y conocerán cuándo el uso del software sería inadecuado para tareas específicas.

Con el lanzamiento del software (software release), otros defectos y deficiencias no documentados serán descubiertas por los usuarios del software. Tan pronto como estos defectos sean reportados a la organización de desarrollo, serán ingresados en el sistema de rastreo de defectos.

Las personas involucradas en la fase de mantenimiento de software esperan trabajar en estos defectos conocidos, ubicarlos y preparar un nuevo lanzamiento del software, conocido como un lanzamiento de mantenimiento, el cual resolverá los temas pendientes.

Tipos de mantenimiento

A continuación se señalan los tipos de mantenimientos existentes, definidos tal y como se especifican para la metodología de MÉTRICA:

  • Perfectivo: son las acciones llevadas a cabo para mejorar la calidad interna de los sistemas en cualquiera de sus aspectos: reestructuración del código, definición más clara del sistema y optimización del rendimiento y eficiencia.
  • Evolutivo: son las incorporaciones, modificaciones y eliminaciones necesarias en un producto software para cubrir la expansión o cambio en las necesidades del usuario.
  • Adaptativo: son las modificaciones que afectan a los entornos en los que el sistema opera, por ejemplo, cambios de configuración del hardware, software de base, gestores de base de datos, comunicaciones, etc.
  • Correctivo: son aquellos cambios precisos para corregir errores del producto software.

Cabe señalar que, de estos 4 tipos de mantenimiento, solamente el correctivo y el evolutivo entran en el ámbito de MÉTRICA versión 3, ya que los otros dos requieren actividades y perfiles distintos a los del proceso de desarrollo.

Véase también

Es importante tener en cuenta el efecto del Iceberg, es decir , en el momento en el que se le hace mantenimiento a un Software no se cuenta muchas veces con el factor económico (¿Cuánto dinero se invertirá en el mantenimiento?), y una vez se comienza a desarrollar la fase de mantenimiento en la aplicación, comienzan a surgir nuevos requerimientos, el efecto del iceberg (en la superficie se ve solo una parte de lo que realmente es su tamaño).

Bibliografía

  • Pigosky T.M. (1996). Practical Software Maintenance. New York: John Wiley & Sons. ISBN 0-471-17001-1. 
  • April & Abran (2008). Software Maintenance Management. New York: John Wiley & Sons. ISBN 0-470-14707-5. 

Enlaces externos


Wikimedia foundation. 2010.

Mira otros diccionarios:

  • Mantenimiento de Software — El mantenimiento de software es una de las actividades en la Ingeniería de Software y es el proceso de mejorar y optimizar el software desplegado (revisión del programa), así como también remediar los defectos. El mantenimiento de software es… …   Enciclopedia Universal

  • Software — Se conoce como software[1] al equipamiento lógico o soporte lógico de un sistema informático; comprende el conjunto de los componentes lógicos necesarios que hacen posible la realización de tareas específicas, en contraposición a los componentes… …   Wikipedia Español

  • Mantenimiento — Para otros usos de este término, véase Wikipedia:Mantenimiento. La European Federation of National Maintenance Societies define mantenimiento como: todas las acciones que tienen como objetivo mantener un artículo o restaurarlo a un estado en el… …   Wikipedia Español

  • Mantenimiento correctivo — Saltar a navegación, búsqueda El mantenimiento correctivo o mantenimiento por rotura fue el esbozo de lo que hoy día es el mantenimiento. Esta etapa del mantenimiento va precedida del mantenimiento planificado. Hasta los años 50, en pleno… …   Wikipedia Español

  • Software libre en la administración pública — Saltar a navegación, búsqueda Hay una serie de administraciones públicas que han mostrado su apoyo al software libre, sea ya migrando total o parcialmente sus servidores y sistemas de escritorio, o bien sea subvencionándolo. El Estado requiere un …   Wikipedia Español

  • Software como servicio — (del inglés: Software as a Service, SaaS) es un modelo de distribución de software donde el software y los datos que maneja se alojan en servidores de la compañía de tecnologías de información y comunicación (TIC) y se accede con un navegador web …   Wikipedia Español

  • Software Quality Assurance Plan — o SQAP (es decir, Plan de Garantía de Calidad de Software) es un documento que organiza el desarrollo del software con el fin de que el proceso de creación de este siga unas pautas que aseguren la calidad del resultado. Este plan de garantía… …   Wikipedia Español

  • Software de Operaciones Mantenimiento y Administración Aeronáutico — Un software de operaciones, mantenimiento y administración para la industria aeronáutica (SOMA), es un software que permite a talleres de aeronaves y empresas de charter administrar sus operaciones aeronáuticas: ingresos, gastos, compras,… …   Wikipedia Español

  • Mantenimiento preventivo — Este artículo o sección sobre informática necesita ser wikificado con un formato acorde a las convenciones de estilo. Por favor, edítalo para que las cumpla. Mientras tanto, no elimines este aviso puesto el 5 de noviembre de 2010. También puedes… …   Wikipedia Español

  • Software de administración de bases de datos — El software de administración de bases de datos es la herramienta principal de software del enfoque de la administración de base de datos, dado que controla la creación, el mantenimiento y el uso de la base de datos de una organización y de sus… …   Wikipedia Español