
Por ejemplo, una mesa de ayuda en una agencia está dotada en su totalidad de empleados contratados debido a la escasez de empleados federales informados para ayudar a los usuarios con sus problemas. Esta situación plantea problemas de control de gestión porque los contratistas pueden no informar las quejas de los usuarios o pueden iniciar cambios de software innecesarios, lo que aumenta la necesidad de sus servicios. Además, si un contrato no especifica las calificaciones requeridas del personal del contratista, las opciones de las agencias son limitadas si el contratista no proporciona personal calificado. Sin información precisa sobre los costos de mantenimiento del software, la gerencia no puede tomar decisiones informadas con respecto a las mejoras o reemplazos del sistema. Usando esa base, se puede estimar que aproximadamente $ 2.7 a $ 3.1 mil millones se gastaron en esfuerzos de mantenimiento de software en todo el gobierno en el año fiscal 1995. Estas cifras son conservadoras porque no incluyen los costos de software relacionados en las categorías de servicios, servicios de soporte y suministros. Si incluimos el 25 por ciento de los dólares en estas categorías, nuestras estimaciones de costos de mantenimiento de software para todo el gobierno aumentarían en $ 2 a $ 2.5 mil millones.
¿Cuál es el propósito del mantenimiento?
El propósito del mantenimiento es asegurar la máxima eficiencia y disponibilidad de los equipos de producción, servicios públicos e instalaciones relacionadas a un costo óptimo y bajo condiciones satisfactorias de calidad, seguridad y protección para el medio ambiente.
Ingeniería inversa
Sin un proceso de prueba eficaz, no hay garantía de que existan controles de gestión para salvaguardar la integridad de una aplicación. Los auditores concluyeron que el alcance y la frecuencia de la interfaz de la oficina de programas durante las etapas finales del procesamiento de control de cambios fueron a menudo mínimos y, en algunos casos, limitados a enrutar administrativamente el código modificado al centro de datos para su implementación. Otra agencia concluyó que el alcance del mantenimiento del software que realizan los contratistas de manera rutinaria aumenta la vulnerabilidad del gobierno a los costos excesivos de los contratistas y limita su capacidad para controlar la actividad de mantenimiento del software.
Preguntas y respuestas de ingeniería de software
Sin embargo, es difícil evaluar los efectos reales en el rendimiento del mantenimiento de las prácticas de desarrollo de software porque su impacto se realiza durante el ciclo de vida del software. El uso de software empaquetado está asociado con una menor complejidad del software y un esfuerzo de mejora del software. Estos resultados sugieren un vínculo importante entre las prácticas de desarrollo de software y el rendimiento del mantenimiento. Como resultado de las debilidades anteriores, es posible que los cambios en el software no se prueben lo suficiente para dar cuenta de todos los resultados válidos, no válidos, esperados e inesperados. Las pruebas y el análisis insuficientes de los resultados de las pruebas pueden provocar que el código fuente falle cuando se introduzca en el entorno de producción, debido a condiciones de transacción imprevistas, interfaces o entradas del usuario. Además, la gerencia no puede estar segura de que la aplicación funcionará según lo previsto. Por ejemplo, durante un período de ocho meses en una agencia, 26 versiones de cambios de software requirieron 44 nuevas versiones para corregir uno o más problemas con la versión anterior.
Un participante informó que la ausencia de una definición formal y aplicada de manera consistente de mantenimiento de software había creado una subestimación significativa de los costos de mantenimiento. Este participante solicitó a varios gerentes de TI que revisaran los cargos del proyecto de siete sistemas en su sistema de seguimiento durante un período de 18 meses. Los gerentes reclasificaron los cargos con base en la definición y clasificaciones funcionales en FIPS Pub. Este examen reveló que los costos de mantenimiento se habían subestimado en 4,7 millones de dólares en el sistema de seguimiento. La razón principal de esta subestimación es que los proyectos se clasifican como mantenimiento o desarrollo según criterios y clasificaciones que no están segregados funcionalmente ni son consistentes con la publicación FIPS.
OnePlus teases fitness band. Leakers reveal everything about it. – Input
OnePlus teases fitness band. Leakers reveal everything about it..
Posted: Mon, 04 Jan 2021 16:04:00 GMT [source]
Estas debilidades ocurrieron principalmente porque las agencias no están definiendo el mantenimiento de software de manera consistente y no se están siguiendo los requisitos de contabilidad federal. Dos de los participantes afirmaron que sus agencias no tienen una definición estándar de mantenimiento de software. Tres participantes informaron que el mantenimiento se define por los tipos de mantenimiento de software (es decir, perfectivo, adaptativo y correctivo), mientras que otros dos adoptaron la publicación FIPS.
- Las malas elecciones de diseño pueden dar como resultado un software complejo que es costoso de mantener y difícil de cambiar.
- El mantenimiento de software reclama una gran proporción de los recursos organizacionales.
- Se cree que muchos problemas de mantenimiento se derivan de prácticas inadecuadas de diseño y desarrollo de software.
El mantenimiento declarado por el participante restante se distingue del desarrollo por el tiempo que lleva completar la tarea (por ejemplo, un esfuerzo de mantenimiento generalmente se realiza dentro de un período de tiempo más corto que un esfuerzo de desarrollo de software). Esto dio lugar a que los administradores de sistemas no interpretaran ni aplicaran una definición coherente de mantenimiento de software. Específicamente, los mismos tipos de costos (por ejemplo, salarios administrativos y de oficina, materiales, uso de computadoras, telecomunicaciones, costos generales y salarios de los empleados federales) no se contabilizan de manera consistente como costos de mantenimiento.
El mantenimiento de software reclama una gran proporción de los recursos organizacionales. Se cree que muchos problemas de mantenimiento se derivan de prácticas inadecuadas de diseño y desarrollo de software. Las malas elecciones de diseño pueden dar como resultado un software complejo que es costoso de mantener y difícil de cambiar.
¿Qué herramientas se utilizan en las pruebas de implementación y el mantenimiento?
Herramientas en minúsculas: las herramientas en minúsculas se utilizan en la implementación, las pruebas y el mantenimiento. Herramientas de casos integradas: las herramientas de casos integrados son útiles en todas las etapas de SDLC, desde la recopilación de requisitos hasta las pruebas y la documentación.
Además, cuando una aplicación carece de evidencia de que los requisitos funcionales y técnicos se han determinado, revisado y aprobado formalmente por adelantado, es difícil garantizar que se hayan completado todos los pasos necesarios. Sin una prueba de aceptación funcional, los gerentes de programa no tienen ninguna garantía de que los cambios perfectivos o correctivos realizados satisfagan las necesidades del usuario cuando se pongan en producción. Esto aumenta el riesgo de que la implementación del cambio suponga una pérdida de tiempo y recursos. De hecho, en una agencia, el 16 por ciento de todas las publicaciones crearon nuevos problemas que resultaron muy costosos en tecnología de la información y tiempo en la oficina del programa.
La Circular OMB A-130, con fecha del 8 de febrero de 1996 y titulada «Administración de recursos de información federal», requiere que las agencias federales contabilicen los costos totales de operación de las instalaciones de tecnología de la información y recuperen estos costos de los usuarios. Esta Circular también requiere que las agencias federales implementen un sistema para distribuir el costo total de brindar servicios al usuario. El término «costo total» comprende todos los costos directos, indirectos y generales y administrativos incurridos en la operación de la instalación. Estos costos incluyen personal, equipo, software, suministros, servicios contratados, ocupación de espacio, servicios dentro de la agencia y otros servicios. Además, las agencias deben realizar un análisis de costo-beneficio para que los sistemas de información se utilicen como material de justificación presupuestaria, así como formar parte del proceso continuo de supervisión de la gestión para garantizar la asignación prudente de los escasos recursos. El análisis de costo-beneficio debe actualizarse durante el ciclo de vida del sistema de información debido a factores tales como cambios significativos en los costos y beneficios proyectados, cambios significativos en las capacidades de tecnología de la información y cambios importantes en los requisitos.
Además, se señaló que las clasificaciones utilizadas tanto en el seguimiento de proyectos como en los procesos de facturación y asignación de clientes eran inconsistentes. Como resultado de estas debilidades, los administradores de sistemas no están en condiciones de tomar decisiones informadas y efectivas a corto y largo plazo, como elegir la mejor mejora, actualización o mejora basada en información precisa de costos o análisis de costo-beneficio. En particular, las agencias no pueden determinar cuándo se deben evaluar los sistemas para su rediseño o reemplazo debido a costos de mantenimiento excesivos. Un análisis de costo-beneficio actual tiene un propósito valioso, especialmente cuando se asignan recursos presupuestarios escasos. Estos análisis garantizan que se elija la alternativa más rentable que satisfaga los requisitos del sistema. Los cambios no rentables en el software podrían ser aprobados por la gerencia e implementados en el entorno de producción, a pesar de los beneficios marginales que se obtendrían de la modificación. Esto podría resultar en una falta de fondos para los cambios de software propuestos que son obligatorios por naturaleza o necesarios para el funcionamiento adecuado de la aplicación.