Professional Documents
Culture Documents
SEMANA 7
Etapa V: implantación
y
mantenimiento
Todos los derechos de autor son de la exclusiva propiedad de IACC o de los otorgantes de sus licencias. No está
permitido copiar, reproducir, reeditar, descargar, publicar, emitir, difundir, poner a disposición del público ni 1
ESTE
utilizarDOCUMENTO
los contenidos paraCONTIENE LAdeSEMANA
fines comerciales 7
ninguna clase.
2
ESTE DOCUMENTO CONTIENE LA SEMANA 7
ÍNDICE
3
ESTE DOCUMENTO CONTIENE LA SEMANA 7
ETAPA V: IMPLANTACIÓN Y MANTENIMIENTO
OBJETIVOS ESPECÍFICOS
Utilizar el proceso de implantación dentro del desarrollo de un software.
INTRODUCCIÓN
Bienvenidos a la Semana 7 del Curso de Ingeniería de Software, semana en la cual se estudiará la
etapa V: implantación y mantenimiento.
4
ESTE DOCUMENTO CONTIENE LA SEMANA 7
1. IMPLANTACIÓN
Durante este proceso se deben considerar las tareas a realizar en conjunto con los factores que
afectan la puesta en marcha del sistema, considerando (Whitten & Bentley, 2008):
Planificación de la implantación
Desarrollo de la implantación
Capacitación
La implantación puede ser bastante más difícil que las otras etapas, considerando que el proceso
de implantación es la última etapa de la metodología de desarrollo. Tanto en los procesos de
desarrollo como en los de pruebas, la dificultad dependerá de las características de la tecnología.
En el caso que sea un producto estándar la implementación puede ser relativamente fácil.
Pero cuando se trata de nuevas tecnologías, que no se han aplicado con anterioridad o son
sustancialmente diferentes a las prácticas previas, la implantación debe eser manejada de forma
cuidadosa y siempre prestando atención a los detalles del proceso.
Dentro de la estrategia de implantación deben ser detalladas las etapas necesarias para probar la
nueva tecnología en el plan de administración del proyecto (Whitten & Bentley, 2008).
Whitten & Bentley (2008) plantean que existe una variedad de enfoques de implementación como
lo son:
5
ESTE DOCUMENTO CONTIENE LA SEMANA 7
El analista debe crear medidas de desempeño, con las que se puedan evaluar a los
usuarios.
Ahora bien, cuando el sistema está informatizado desde antes, se deben definir distintos
programas de conversión o planificar la ejecución en el calendario.
Por lo general, de distienguen tres enfoques de implentación y estos son (Carbajo, s. f.):
Los recursos requeridos para implementar el sistema son destinados a hacer la transición del
sistema antiguo al nuevo lo más cómoda posible.
Se debe tener en cuenta que la implantación del sistema debe tener una planificación y
organización de recursos, considerando al software como un recurso más.
6
ESTE DOCUMENTO CONTIENE LA SEMANA 7
1.3. CAPACITACIÓN
La capacitación es el enseñar y otorgar herramientas a los usuarios que están relacionados u
operan en el proceso de implantación. El responsable de llevar a cabo estas capacitaciones es el
analista, quien debe enseñar a usuarios primarios y secundarios. No deben ser incorporadas
personas con distinto nivel de habilidad e intereses de trabajo en un mismo grupo. Con esto se
quiere decir que no se pueden incluir en una misma sección trabajadores expertos e inexpertos,
debido a que esto no sería productivo para el grupo (Pressman, 2005).
Considerando que las empresas podrían contratar servicios de instructores externos, se considera
que el analista es la persona más preparada para realizar la capacitación, debido a que conoce al
personal y el sistema mejor que cualquier otro. Pressman (2005) menciona que de no poder
realizar la capacitación el analista, se puede contratar otros servicios, tales como:
La capacitación se enfoca en que los usuarios del sistema posean el dominio requerido básico de
las maquinarias y procesos que se aplican para su operación de manera óptima y segura.
Considerando que las empresas no funcionan solas, es decir, necesitan personal que las operen,
estas deben tener personal que utilice y cuide la tecnología que posee la empresa, razón por la
cual todo el personal debe realizar una capacitación de acuerdo con sus necesidades. Ahora, la
capacitación variará dependiendo de la dificultad de la tecnología que sea utilizada y el nivel de
interacción con esta.
Posterior a la capacitación el personal de igual forma requerirá apoyo continuo. Existiran varias
ocaciones en las cuales el usuario necesitará asistencia con algún problema cotidiano.
7
ESTE DOCUMENTO CONTIENE LA SEMANA 7
2. MANTENIMIENTO
El mantenimiento es un proceso bastante costoso, largo y por supuesto importante en la vida de
una aplicación informática. Su importancia radica en su extensa duración, la cual garantiza que la
aplicación funcione óptimamente (Sommerville, 2012).
2.1. DEFINICIÓN
Cuando se habla del proceso de mantenimiento del software, se hace referencia al cambio del
sistema posterior a su entrega.
Los cambios que se llevan a cabo en el software; pueden ser sencillos como la corrección de fallas
de código, cambios más extensos de corregir como fallas en el diseño o bien pueden ser
modificaciones significativas como la corrección de una falla de especificación o el acomodar
nuevos requerimientos.
Mantenimiento para reparar defectos del software: en general, la corrección de las fallas
de código no son costosas, en cambio las fallas de diseño suelen ser más caras. Esto se
debe a que se reescriben varios componentes de los programas. Ahora bien, las fallas de
requerimientos son bastante más costosas de reparar, ya que en algunos casos es
necesario un extenso rediseño de sistema.
Mantenimiento para adaptar el software a diferentes entornos operativos: este
mantenimiento es utilizado cuando hay un cambio en el entorno del sistema, y se intenta
la adaptación del sistema a los cambios. Por ejemplo, el hardware, la plataforma del
sistema operativo o algún otro sistema de soporte.
Mantenimiento para añadir o modificar las funcionalidades del sistema: este
mantenimiento es llevado a cabo cuando las necesidades del sistema sufren cambios,
debido a modificaciones organizacionales o del negocio.
Cuando esto es llevado a la práctica, no se logra visualizar de forma clara la distinción entre los
tipos de mantenimiento.
8
ESTE DOCUMENTO CONTIENE LA SEMANA 7
En la adaptación del sistema a un nuevo entorno, se le pueden incorporar funcionalidades con el
fin de sacar el mayor provecho a las nuevas características del entorno.
En gran parte de los casos las fallas del software son detectadas por el uso del sistema por parte
de los usuarios en formas no previstas. La manera óptima de reparación de fallas es la realización
de modificaciones en el sistema que se adapten a su manera de trabajo.
Los tipos de mantenimiento pueden ser reconocidos con distintos nombres, como por ejemplo el
mantenimiento correctivo, que se refiere a la reparación de defectos. En algunos casos el
mantenimiento adaptativo hace referencia a la adaptación a un nuevo entorno o a la adaptación
del software a nuevas necesidades. En el caso del mantenimiento perfectivo, puede significar la
perfección el software implementado nuevas necesidades, como también la mantención de la
funcionalidad del sistema, mediante la mejora de su estructura y rendimiento.
Ingeniería inversa: es el análisis del sistema, con el fin de identificar los componentes y
las relaciones entre ellos, para crear representaciones del sistema en un nivel de
abstracción más alto.
Estas técnicas están enfocadas en la entrega de métodos para la reconstrucción del software, ya
sea por medio de una reprogramación, redocumentación, rediseño o rehacer alguna(s)
característica(s) del software.
Lo que diferencia las soluciones antes dadas es cuál es el origen y cuál es el destino de las mismas
(producto inicial y/o producto final).
Ahora bien, gráficamente, las soluciones técnicas se enmarcan en el ciclo de vida de la siguiente
forma:
9
ESTE DOCUMENTO CONTIENE LA SEMANA 7
Relaciones entre los términos asociados con la reingeniería
(Fuente: http://goo.gl/3S7UqV)
Cuando se habla del proceso de análisis del sistema con el fin de identificar sus interrelaciones y
componentes, creando representaciones del sistema en otras formas, estamos frente a la
ingeniería inversa. Y por último, la reingeniería es el examen y alteración del sistema con el fin de
reconstruirlo de una nueva forma.
10
ESTE DOCUMENTO CONTIENE LA SEMANA 7
El estudio de viabilidad se compone de las siguientes partes (Sommerville, 2012):
Las grandes fallas de mantenimiento suelen ser administrativas y técnicas. Ahora bien, los
problemas claves de la administración son (Sommerville, 2012):
Estimación de costos.
Limitado entendimiento.
Análisis de impacto.
Pruebas.
Medición de mantenibilidad.
La corrección de errores.
11
ESTE DOCUMENTO CONTIENE LA SEMANA 7
Considerando que los cambios son inevitables, son creados mecanismos de evaluación, control y
posterior modificación. Los cambios que sean realizados en el software después de este estar
operando se consideran trabajo de mantenimiento.
El valor puede ser optimizado a medida que se amplía la base de clientes, se alcanzan requisitos
adicionales, se facilita el uso, la eficiencia y se hace uso de nuevas tecnologías. El mantenimiento
puede llegar a 20 años, en cambio el desarrollo puede darse entre 1 y 2 años.
El mantenimiento del software consume una gran parte del presupuesto del TI (se consumen
aproximadamente dos tercios en mantenimiento y uno en desarrollo).
Suele ser óptimo en costos derivar esfuerzos en el diseño e implementación del sistema, todo esto
con el fin de minimizar gastos en cambios futuros.
Añadir nuevas funciones posteriores a la entrega es bastante costoso debido a que consume
tiempo aprender el funcionamiento del sistema y analizar el impacto en los cambios de
presupuesto.
Sin embargo, el trabajo que se realiza a lo largo del desarrollo del software es más fácil de
comprender y cambiar, reduciendo los costos de evolución.
El enfoque principal del mantenimiento es confirmar el óptimo rendimiento de una aplicación y las
funciones de este son (Sommerville, 2012):
12
ESTE DOCUMENTO CONTIENE LA SEMANA 7
Adaptar el sistema o la aplicación a un entorno cambiante.
Corrección de un defecto: comúnmente los clientes catalogan todos los cambios en este
ítem.
Como forma de solución del problema de determinar de qué tipo es un cambio, es relevante la
trazabilidad de los requisitos. Generalmente se establecen varios niveles de control de cambio
(Pressman, 2005):
Control de cambios al nivel del proyecto o semiformal: al pasar la revisión técnica formal
el elemento de configuración del software pasa a convertirse en una línea base. El
encargado del desarrollo puede realizar cambios si posee la aprobación de:
Análisis de la solicitud: al recibir la solicitud del cliente interno o externo, esta debe ser
analizada por el líder de la implementación. Los puntos de análisis relevantes son el
13
ESTE DOCUMENTO CONTIENE LA SEMANA 7
alcance y el tiempo, todo esto con el fin de identificar si la solicitud es viable para ser
realizada sobre el mismo requerimiento o si de lo contrario sería mejor manejarla como
un requerimiento nuevo. El análisis realizado con respecto al alcance debiera tener ayuda
de las áreas involucradas en la solicitud, para determinar de manera clara el impacto y los
elementos que se ven afectados por ella.
Analizar modificación: el análisis de la solicitud debe ser llevado a cabo por el líder de la
implementación, todo esto con el fin de tener noción del impacto de la modificación y
establecer puntualmente las modificaciones solicitadas que afectan el requerimiento
completo.
Aprobar cambios: posterior al análisis de impacto del cambio, se procede a tomar una
decisión. De ser aceptado el cambio, tras negociar con el cliente se continúa con la
implementación de dicho cambio. De lo contrario, se negocia con el cliente el siguiente
paso a realizar.
Realizar cambio: una vez planeado el cambio aprobado se procede a realizar las
modificaciones necesarias en los productos involucrados.
Revisar cambio: una vez que el cambio fue realizado se debe llevar a cabo una verificación
para identificar que el requerimiento incorpore todas las modificaciones establecidas y
que estas hayan sido aprobadas.
14
ESTE DOCUMENTO CONTIENE LA SEMANA 7
Actualizar línea base: se considera recomendable el uso del nuevo requerimiento como
línea base, todo lo cual se realiza con el fin de trabajar siempre con la última versión del
requerimiento.
Informar: al ser realizada la modificación, esta debe ser informada a los interesados en el
cambio, de modo que el cliente pueda verificarlo.
Entregable control de cambios: como se mencionó antes, es importante hacer uso del
documento que apoye a la identificación de la solicitud, realizada por los clientes tanto
externos como internos. La documentación no puede ser ambigua y debe ser validada por
ambas partes, es decir, el cliente y la empresa.
15
ESTE DOCUMENTO CONTIENE LA SEMANA 7
COMENTARIO FINAL
16
ESTE DOCUMENTO CONTIENE LA SEMANA 7
REFERENCIAS
Carbajo, F. (s. f.). Gestión, implantación y mantenimiento de proyectos software. En: Análisis y
diseño detallado de aplicaciones informáticas de gestión (1º DAI). Consultado el 25 de mayo
de 2015 en http://goo.gl/BA2ZfB.
Whitten, J. & Bentley, L. (2008). Análisis de Sistemas. 7.ª edición. México: MacGraw-Hill
Interamericana.
17
ESTE DOCUMENTO CONTIENE LA SEMANA 7
18
ESTE DOCUMENTO CONTIENE LA SEMANA 7