Formación/Empleo
Hardware
Software

Cómo afrontar los retos de la gestión del ciclo de vida de las aplicaciones

Hacia un proceso de desarrollo de software totalmente alineado con los requisitos empresariales

Abrirse a nuevos mercados, innovar, acelerar el lanzamiento de los productos y servicios, incrementar el negocio y profundizar en las relaciones con los clientes son algunas de las oportunidades que las organizaciones contemplan para reducir costes y con ello incrementar su rentabilidad y eficiencia. Para conseguirlo tienen ante sí el reto de alinear sus políticas de TI con las necesidades del negocio en un ambiente altamente competitivo y de complejidad creciente. La calidad del software, la necesidad de justificar un retorno en las inversiones tecnológicas y la obligatoria adecuación a los principios regulatorios y a las prácticas de buen gobierno en el seno de las empresas encierran una serie de desafíos para los departamentos de TI, cada vez más presionados a crear aplicaciones de calidad que se plieguen a las reglas del negocio. La total afinación de los equipos que participan en la creación de aplicaciones se plantea como un reto para cualquier organización que aspire a sobrevivir con éxito. La realidad no se muestra muy esperanzadora, como muy claramente manifiestan los datos de Standish Group: el 66% de todos los proyectos de TI o directamente fracasa o su período de implantación se prolonga mucho más de lo esperado debido a su complejidad. Al considerar este dato aplicándolo a grandes proyectos con costes superiores a los 10 millones de dólares, el fracaso está asegurado en un 98%. Las cifras desaniman y si los números se transforman en palabras la situación no mejora: “Construir software resulta muy complejo hoy en día”; “mi organización necesita usabilidad en los procesos guiados/creados”; “mi equipo necesita crecer y especializarse”; “el software no se prueba adecuadamente”; “es duro equilibrar las demandas del mercado y los riesgos de un proyecto” son declaraciones que suenan como una letanía en los departamentos de TI, obligados a materializar las propuestas de negocio de la organización. Ante este panorama, los CIOs cobran cada vez más importancia en el grueso de las compañías porque su misión se complica hasta el punto de que las TI deben entenderse como un negocio. Su misión abarca, en primer lugar, la administración de la demanda y esto implica capturar las necesidades de trabajo, priorizar las necesidades y establecer la “hoja de ruta” de los proyectos. Igualmente, deben planificar los recursos, articular los resortes para el desarrollo del software necesario para, finalmente, pasar a la aplicación y gestión del producto con todo lo que ello implica de manejo de incidencias y ajuste a los requerimientos de niveles de servicio. La necesidad de un ciclo de vida controlado Más que nunca y en todos los sectores, la “pérdida de control” de los procesos, proyectos y aplicaciones que se desarrollan conlleva un número de consecuencias negativas. Cada vez más, las compañías luchan por establecer enlaces de comunicación y colaboración y por subsanar los gaps culturales entre los procesos de negocio en los desarrollos de software de cualquier proyecto de TI. Una comunicación pobre o la baja implicación de los diversos roles que forman parte de los procesos inciden de una forma muy negativa al negocio, tanto en el diseño de las aplicaciones, como en la calidad, el manejo del código y el desarrollo del mismo. Todo esto afecta a la línea de negocio de las corporaciones y retrasa la posibilidad de llegar al mercado con un producto sólido y competitivo. Aquí es donde entra en juego la aplicación de una serie de herramientas para un control del ciclo de vida exhaustivo de los proyectos de software en todas sus áreas. Muchas de las compañías, dejan este cometido a empresas externas que demandan un coste adicional en tiempo y recursos. Sin embargo, la implantación de normas legales y metodologías en los procesos de desarrollo, plantea el uso de estas herramientas de control de forma directa dentro de las organizaciones para un mantenimiento del ciclo de vida completo. Esto está comenzando a hacer efecto en sectores como el financiero o el de telecomunicaciones, que deben reaccionar de forma rápida y adecuada a estos cambios si no quieren perder beneficios y competitividad. Gestión del ciclo de vida de las aplicaciones críticas A grandes rasgos, las fases del ciclo de vida de las que hablamos son: gestión de procesos y proyectos, requisitos, modelado, pruebas, y gestión de cambios y configuraciones de software. Estas fases deben estar integradas en todo momento y coordinadas de forma conjunta, no sólo entre ellas sino dentro del mapa cultural del proceso de negocio de la empresa que las aplique. De esta forma, se creará un vínculo muy fuerte y básico que irá condicionando el comportamiento del negocio. La clave del éxito está en usar las herramientas adecuadas de forma óptima y en el momento oportuno. La base de todo lo anterior se fundamenta en la comunicación entre los grupos de trabajo, un espacio en el que los procesos juegan un papel muy importante. Un buen análisis desde el principio puede hacer que la iniciativa no fracase como ocurría anteriormente en el 66% de los casos, a tenor de los datos de Standish Group. Es más, la posibilidad en este caso de usar herramientas cotidianas para la comunicación, como en el caso de MS Word y Excel, facilitan abiertamente la comunicación entre los elementos de negocio y los de tecnología. La posibilidad de crear modelos concretos dentro de este tipo de herramientas también es importante, dado que podrán reflejar el negocio de la empresa que lo lleve a cabo, así como la arquitectura y sistemas demandados por los diferentes clientes. Los desarrolladores son piezas clave en el proceso, su coordinación con el mantenimiento del ciclo de vida, el testeo de software y el control de cambios son la clave en su posición. Según Forrester Research, “cuanto más tarde comiencen las pruebas, más tarde se detectan los fallos y esos errores cuesta exponencialmente mucho más solucionarlos”. La gestión de errores conlleva el ahorro de costes desde el principio y un ahorro de transacciones notable dado que se controla todo el código desde las primeras fases. Mejorando la calidad, se ahorran costes de negocio y se reducen las operaciones transaccionales y el mantenimiento. También es importante el control de cambios y versiones para los desarrolladores y para la creación de código efectivo. La obtención de versiones finales de calidad va alineada a las claves del negocio en todo momento y, sobre todo, a las fases de tiempo establecidas, que se deberán controlar de forma periódica, y para las que hay herramientas adecuadas de verificación. Máxima coordinación Todas estas fases deben establecerse primero de forma correcta individualmente. Sin embargo, la coordinación de éstas es la clave y el uso de herramientas efectivas como el nuevo Visual Studio Team System (VSTS) lo hace posible. Estos beneficios incluyen respuestas adaptables y flexibles a las presiones competitivas y menores costes para la creación, calidad y gestión del código en la fase de implantación. Con VSTS se une la funcionalidad a través de todos los miembros que forman parte del ALM durante la creación de la aplicación. Desde el modelado inicial, pasando por la gestión de cambios, las pruebas y la implantación. Según IDC, existe un momento en el desarrollo en el que se producen inexplicables lapsos entre el modelo y el código generado. Esto introduce una serie de vacíos en el ciclo de vida de desarrollo de software que destruyen el rol y la utilidad del modelo. VSTS habilita la base funcional y conectividad necesarias desde la construcción de la aplicación hasta su integración en un sistema concreto. Por otro lado, Team Fundation Server (TFS), elemento que se incluye en VSTS, provee al cliente de una plataforma cohesiva para el desarrollo de software y la colaboración al incorporar gestión de procesos, seguimiento de elementos de trabajo, control de código fuente, automatización de versiones, y pruebas y controles de equipo con la generación de informes

Viñeta publicada el 20 de febrero de 1870 en La Flaca n.º 35 Tendencias

ny2 ACTUALIDAD

ny2 Sociedad de la información

Día de la Movilidad y el BYOD Coffee Break