Llegamos a ustedes gracias a:



Reportajes y análisis

Desarrollo de aplicaciones cloud

Se acelera y gana tracción

[01/07/2014] Con los marcos de trabajo existentes en la nube, los desarrolladores de aplicaciones ahora pueden revisar y corregir rápidamente el software, respondiendo a las necesidades del negocio.

Wade Sendall, vicepresidente de TI en The Boston Globe, tuvo que crear o construir una aplicación que permitiera tanto a los empleados como a los consumidores añadir sus fotos a las publicidades.

Estaba programado que esta nueva aplicación reemplazara a un servicio que costaba 80 mil dólares anuales, así que el potencial de retorno de la inversión (ROI, por sus siglas en inglés) era significativo, señala.

Aún con una ganancia financiera tan clara en la mira, Sendall no convocó a un equipo de trabajo para desarrollar esta nueva aplicación; sino que solo le asignó el trabajo a una persona.

Ese único desarrollador se tomó solo un mes para construir o crear una aplicación que cumplía la misma función que el servicio mencionado anteriormente, una solución de software que el proveedor ya no ofrece.

Sendall acredita una nueva estrategia exitosa de desarrollo. Sus desarrolladores ahora crean o construyen aplicaciones en un ambiente de la nube, usando el Mendix App Platform. Este servicio y algunos similares de la competencia como CloudForge y MIOsoft, replican las herramientas y marcos de trabajo de desarrollo corporativos, incluyendo las reglas y modelos de negocio, como por ejemplo, un servicio en la nube.

Desde que adoptaron este enfoque en diciembre del 2013, el equipo de Sendall ha creado o construido tres aplicaciones, dos de las cuales fueron lanzadas el primero de mayo. Es una gran diferencia. Con el ambiente de desarrollo de la nube todo cambia y avanza muy rápido, agrega.

Sendall estima que esos proyectos hubieran requerido o necesitado mucho más personal y tiempo para realizar, si es que el desarrollo hubiera tenido lugar en un ambiente en las instalaciones tradicionales. De hecho, señala que duda si es que el proyecto se podría haber llevado a cabo, porque no hubiera tenido la mano de obra para dedicarse a desarrollarla.

No hay duda que el uso que las empresas hacen de la computación en la nube está aumentando, y ahora un pequeño pero creciente número de departamentos de TI también están moviendo su trabajo de desarrollo a la nube. En la encuesta de desarrollo norteamericano de Evans Data Corp realizada en noviembre del 2013, 28,2% de los programadores encuestados dijeron que estaban desarrollando en la nube, mientras en el 2009 solo el 8,7% respondió eso. Más aún, otro 22,6% dijo que planean comenzar a usar la nube como un ambiente de desarrollo en los próximos doce meses.

Los líderes de TI de las empresas y los consultores en gestión, citan varios de los beneficios que brinda la movida. En la nube, señalan, los desarrolladores pueden responder de manera mucho más rápida a las sugerencias de crear o construir nuevas aplicaciones o actualizar las que ya existen. Otra de las ventajas es que los proyectos se pueden llevar a cabo con menos número de personal, costos e interrupciones.

Puede hacer más con menos, comenta Curt Jacobsen, un director que se enfoca mucho en la consultoría tecnológica en PricewaterhouseCoopers. No tiene los gastos generales de mucho personal administrativo, y no está preocupado sobre la creación de redes o las redes y el balanceo de carga porque simplemente ni siquiera tiene que pensar en eso. Los desarrolladores que se mueven al ambiente de la nube, gastan mucho menos tiempo investigando y esperando a que los exámenes de infraestructura sean completados e invierten más tiempo enfocándose en el valor del negocio.

Más delgado y rápido
Muchos de los beneficios comúnmente asociados a la computación de la nube se encuentran también con el desarrollo de aplicaciones en el ambiente o entorno de la nube. Los defensores dicen que elimina el costo de hardware, así como la mano de obra que se necesita para mantenerlo.

La nube también permite la colaboración a través de muchas páginas web y permite la virtualización de recursos, para que los varios desarrolladores puedan trabajar en el mismo proyecto al mismo tiempo y de diferentes sitios. Asimismo, por el hecho que la mayoría de las organizaciones de TI opten por usar las plataformas de desarrollo comerciales basadas en la nube, ganan más consistencia en flujos de trabajo y documentación de las fuentes. Más aún, con los ambientes de desarrollo en la nube, las organizaciones pueden implementar rápidamente la infraestructura que necesiten.

Es muy elástica, por lo que los desarrolladores de aplicaciones tienen más tiempo de trabajar en lo que mejor hacen, anota Rick Carbonaro, socio gerente en la firma asesora de TI, TPS y presidente de comunicación en la Society for Information Management en Washington D.C.

Luc Fournier, analista y asesor tecnológico en Berger Ltd., una empresa de suministros de suelo en Riviere-du-Loup, Quebec, señala que el departamento de TI de su compañía está usando la plataforma Appery.io para mover el trabajo de los desarrolladores de aplicaciones a la nube, debido a que tiene que hacer algunas entregas y la fecha tope está cada vez más cerca.

desarrollo aplicaciones cloud

Él dice que su equipo tiene tres meses para desarrollar, probar e implementar una aplicación móvil diseñada para ayudar a los representantes de ventas de la empresa a administrar sus tareas diarias. Necesitábamos ser productivos cuanto antes, y esa fue la curva de aprendizaje más pequeña que pudimos obtener, comenta Fournier. Con la infraestructura en su sitio, ningún software por establecer y un buen equipo de apoyo al cual preguntar, lo único que teníamos que validar era que podíamos integrar nuestros datos a través de una interfaz de programación de aplicaciones.

Fournier agrega que los costos de desarrollo eran menores que en un proceso tradicional, y a pesar de que la aplicación todavía tiene que ser implementada, no ha encontrado ningún riesgo asociado con el hecho de utilizar el ambiente de la nube.

Lo que sí hizo fue enumerar algunos inconvenientes que vale la pena considerar.

Una desventaja es que siempre necesitará conexión a Internet para trabajar con alguna herramienta de desarrollo de la nube en su navegador, a diferencia del IDE tradicional (integrated development environment), anota, agregando que al principio asusta el no tener control local total de su trabajo todo el tiempo. Después de tres meses, todavía guardo muchas copias de seguridad de mi proyecto para quedarme totalmente tranquilo.

Pero dice que esa es una muy pequeña preocupación comparada con todos los beneficios del desarrollo basado en la nube, los cuales incluyen un ritmo mucho más rápido de desarrollo, colaboración a tiempo real y la ausencia de infraestructura -lo cual significa que no hay nada que se tenga que mantener.

La manera en que yo lo veo, es que los beneficios de usar herramientas de desarrollo en la nube pesan mucho más que las desventajas, indica Fournier, añadiendo que la nube ofrece una gran devolución del tiempo y dinero invertidos.

Unos cuantos obstáculos
Otros líderes de TI, sin embargo, señalan que hay algunas preocupaciones que valen la pena ser analizadas antes de mover el desarrollo al ambiente de la nube. Algunos dicen que les preocupan sus habilidades para cumplir con los mandatos o reglas regulatorias, y cumplir con las obligaciones relacionadas a la privacidad y seguridad cuando los datos están en un ambiente de nube fuera de su control.

Asimismo, algunas tiendas de TI, incluyendo aquellas con muchas aplicaciones locales más antiguas, están enfrentándose a barreras significativas, señala Jacobsen. Usar un ambiente o entorno de la nube para desarrollar actualizaciones o añadir nuevas funciones a estas aplicaciones antiguas, y mantener dos ambientes de desarrollo de aplicaciones distintos puede ser complicado.

Los departamentos de TI que han invertido en centros de datos y herramientas de desarrollo personalizadas según las necesidades de sus negocios, puede que se resistan al hecho de moverse a un desarrollo de aplicaciones basado en la nube.

La gente no quiere alejarse de ellos, comenta Jacobsen, pero añade que todos los CIO deberían darse cuenta que sus desarrolladores están propensos a experimentar con trabajo en la nube aunque no esté oficialmente sancionado.

Duncan DeVore, vice presidente de ingeniería de software en Viridity Energy, una empresa de Philadelphia que ayuda a las organizaciones a administrar sus activos energéticos, es un defensor de la nube. Movió el trabajo de desarrollo de aplicaciones de su empresa a la nube a mediados del 2013 usando una plataforma de CloudBees.

Puede implementar todo un ambiente o entorno en cuestión de segundos, versus un par de horas y de manera manual, señala.

DeVore agrega que el ambiente de desarrollo tradicional era muy costoso para la empresa que tenía seis años en el mercado, porque requería una inversión en hardware y mantenimiento manual e implementación de la infraestructura de desarrollo y prueba. Ese mantenimiento también hacía que se perdiera mucho tiempo, porque los desarrolladores tenían que dejar sus trabajos para enfocarse en tareas como el aprovisionamiento y la creación de redes.

El cambio o mudanza a la nube para desarrollar trabajos vale la pena por sus procesos más eficientes, más rápidos y más baratos, anota DeVore, señalando que un desarrollador de Viridity, quien ha estado siempre trabajando en tareas de no desarrollo, se libró de ellas y fue capaz de regresar a simplemente escribir códigos.

DeVore señala que las mejoras le han permitido a su equipo reaccionar o responder rápidamente y más seguido a las sugerencias de los usuarios para las nuevas características y funcionalidades. Ahora nuestros desarrolladores se enfocan en el trabajo por el que se les paga, que es diseñar y resolver los problemas del negocio.
Mary K. Pratt, Computerworld (EE.UU.)