Está en la página 1de 3

Mantenimiento de software En ingeniera del software, el mantenimiento de software es la modificacin de un producto de software despus de la entrega, paracorregir errores, mejorar

el rendimiento, u otros atributos. El mantenimiento del software es una de las actividades ms comunes en la ingeniera de software. El mantenimiento de software es tambin una de las fases en el ciclo de vida de desarrollo de sistemas (SDLC, sigla en ingls desystem development life cycle), que se aplica al desarrollo de software. La fase de mantenimiento es la fase que viene despus del despliegue (implementacin) del software en el campo. Una percepcin comn del mantenimiento es que se trata meramente de la correccin de defectos. Sin embargo, un estudio indic que la mayora, ms del 80%, del esfuerzo de mantenimiento es usado para acciones no correctivas (Pigosky 1997). Esta percepcin es perpetuada por usuarios enviando informes de problemas que en realidad son mejoras de funcionalidad al sistema
[cita requerida] 1

El mantenimiento del software y la evolucin de los sistemas fue abordada por primera vez por Meir M. Lehman en 1969. Durante un perodo de veinte aos, su investigacin condujo a la formulacin de las leyes de Lehman (Lehman 1997). Principales conclusiones de su investigacin incluyen que el mantenimiento es realmente un desarrollo evolutivo y que las decisiones de mantenimiento son ayudadas por entender lo que sucede a los sistemas (y al software) con el tiempo. Lehman demostr que los sistemas continan evolucionando con el tiempo. A medida que evolucionan, ellos crecen ms complejos a menos que se toman algunas medidas comorefactorizacin de cdigo para reducir la complejidad. Los problemas claves de mantenimiento de software son administrativos y tcnicos. Problemas clave de administracin son: alineacin con las prioridades del cliente, dotacin de personal, cul organizacin hace mantenimiento, estimacin de costos. Son cuestiones tcnicas claves: limitado entendimiento, anlisis de impacto, pruebas (testing), medicin de mantenibilidad. El mantenimiento de software es una actividad muy amplia que incluye la correccin de errores, mejoras de las capacidades, eliminacin de funciones obsoletas y optimizacin. Debido a que el cambio es inevitable, se debe desarrollar mecanismos para la evaluacin, controlar y hacer modificaciones. As que cualquier trabajo realizado para cambiar el software despus de que est en operacin es considerado trabajo de mantenimiento. El propsito es preservar el valor del software sobre el tiempo. El valor puede ser mejorado ampliando la base de clientes, cumpliendo requisitos adicionales, siendo cada vez ms fcil de usar, ms eficiente y empleando ms nuevas tecnologa. El mantenimiento puede abarcar 20 aos, mientras que el desarrollo puede estar entre 1 y 2 aos. Importancia del mantenimiento de software[editar editar cdigo] A finales de los aos 1970, una famosa y ampliamente citada estudio de encuesta por Lientz y Swanson, expuso la muy alta fraccin de los costos del ciclo de vida que estaban siendo gastados en mantenimiento. Clasificaron las actividades de mantenimiento en cuatro clases: Adaptable modificar el sistema para hacer frente a cambios en el ambiente del software (DBMS, OS) Perfectivo implementar nuevos, o cambiar requerimientos de usuario referentes a mejoras funcionales para el software 2 Correctivo, diagnosticar y corregir errores, posiblemente los encontraron por los usuarios 2 Preventiva aumentar la capacidad de mantenimiento de software o fiabilidad para evitar problemas en el futuro
2

La encuesta mostr que alrededor del 75% del esfuerzo de mantenimiento fue en los dos primeros dos tipos, y la correccin de errores consuma aproximadamente el 21%. Muchos estudios posteriores sugieren una magnitud similar del problema. Los estudios muestran que la contribucin del usuario final es crucial durante el anlisis y recopilacin de nuevos datos de requerimiento. Y sta es la causa principal de cualquier problema durante el mantenimiento y evolucin del software. As que el mantenimiento de software es importante porque consume gran parte de los costos del ciclo de vida y tambin la imposibilidad de cambiar el software de forma rpida y fiable significa que las oportunidades de negocio se pierden. Fase de mantenimiento[editar editar cdigo] La fase de mantenimiento de software involucra cambios al software para corregir defectos encontrados durante su uso o la adicin de nueva funcionalidad mejorando la usabilidad y aplicabilidad del software. El mantenimiento del software involucra diferentes tcnicas especficas. Una tcnica es el rebanamiento esttico, la cual es usada para identificar todo el cdigo de programa que puede modificar alguna variable. Es generalmente til en la refabricacin del cdigo del programa y fue especficamente til en asegurar conformidad para el problema del ao 2000. La fase de mantenimiento de software es una parte explcita del modelo en cascada del proceso de desarrollo de software el cual fue desarrollado durante el movimiento de programacin estructurada en computadores. El otro gran modelo, el Desarrollo en espiral desarrollado durante el movimiento de ingeniera de software orientada a objeto no hace una mencin explcita 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 organizacin o equipo de desarrollo tendrn algn mecanismo para documentar y rastrear defectos y deficiencias. El Software tan igual como la mayora de otros productos, es tpicamente lanzado con un conjunto conocido de defectos y deficiencias. El software es lanzado con esos defectos conocidos porque la organizacin 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 sern capaces de trabajar evitando las deficiencias conocidas y conocern cundo el uso del software sera inadecuado para tareas especficas. Con el lanzamiento del software (software release), otros defectos y deficiencias no documentados sern descubiertas por los usuarios del software. Tan pronto como estos defectos sean reportados a la organizacin de desarrollo, sern 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. Mantenimiento Preventivo de Software[editar editar cdigo] El mantenimiento preventivo consiste en una atencin constante de limpieza, revisin y afinacin de los distintos elementos integrantes de un equipo de cmputo. Es importante saber que la mayora de los problemas que se presentan en el trabajo cotidiano, se debe a la falta de un programa especfico de mantenimiento de los equipos, de tal manera que la mayora de los problemas se resuelven con el mismo procedimiento del mantenimiento preventivo. El mantenimiento tiene tcnicas para darle un periodo de vida til ms largo y libre de fallas. Debemos de tener en cuenta que es necesario darle mantenimiento al software ya que el continuo uso genera una serie de cambios en la configuracin original del sistema, causando bajas en el rendimiento que al acumularse con el tiempo pueden generar problemas serios. Actualmente es indispensable mantener actualizada la proteccin contra virus informticos. Por supuesto es muy recomendable usar su equipo responsablemente, ya que esto le podr causar un gasto mayor a futuro. Las recomendaciones son: Cuidar las pginas a las que accesa, las de msica, videos o juegos regularmente traen enlaces que pueden filtrarse directamente al equipo de cmputo, tener un antivirus actualizado, hacer cada cierto tiempo un escaneado y limpieza de su PC, evitar los mensajes SPAM que llegan en los correos electrnicos, estos mensajes llegan normalmente con remitente desconocido y se almacenan en la carpeta Correo no deseado, generalmente son solo virus que no hacen mucho dao, pero tambin puede costar hasta el formateo del equipo y con esto, la perdida de archivos importantes.