Guía Esencial

Navegue en las secciones

BACKGROUND IMAGE: iSTOCK/GETTY IMAGES

Este contenido es parte de Guía Esencial: Guía esencial de desarrollo de aplicaciones corporativas
Resolver Problemas Consiga ayuda para problemas específicos con sus proyectos, procesos y tecnologías.

Cinco cosas que considerar antes de mover sus esfuerzos de desarrollo heredados a PaaS

PaaS es la opción favorita para nuevos proyectos de desarrollo, pero puede no serlo para esfuerzos heredados. Considere estos puntos antes de migrar.

La plataforma como servicio ofrece ventajas con respecto a la gestión de su propia infraestructura de desarrollo y permite más tiempo para centrarse en el diseño y la codificación. Si bien PaaS puede ser la opción preferida para los nuevos proyectos, puede que no sea una buena opción para los esfuerzos de desarrollo heredados existentes.

Aquí hay cinco cosas a considerar antes de mover sus proyectos de desarrollo heredado hacia la plataforma como servicio (PaaS).

1. ¿Cómo va a utilizar PaaS?

Diferentes empresas tienen diferentes usos para PaaS que se adapten a sus entornos y objetivos de TI. Primero tiene que encontrar la manera de incorporar PaaS en su organización. Algunos servicios le permiten moverse fácilmente cómputo hacia la nube mientras mantiene otras funciones en los recursos locales. Por ejemplo, Pi Cloud ofrece una interfaz de programación de aplicaciones (API) para la copia de su código Python local a la nube y ejecutarlo allí, mientras que sus herramientas de desarrollo y repositorios de código pueden permanecer locales.

Otra opción es desarrollar con recursos locales y probar con un producto PaaS. Este enfoque es útil cuando se ejecuta una suite de pruebas grande o necesita instancias independientes de los recursos compartidos para probar correctamente. También puede mover todo tu desarrollo a la nube mediante el uso de un entorno de desarrollo integrado (IDE) de nube. Revise las funciones soportadas por IDE basados en navegadores –algunos son ligeros y pueden no tener todas las características a las que usted puede estar acostumbrado.

2. ¿Sus prácticas y herramientas de desarrollo de software se ajustan a PaaS?

Si usted ha desarrollado software utilizando herramientas como Git, SVN, Ant o Maven, considere  lo fácil que será utilizarlas en una PaaS. No hay muchas diferencias entre trabajar con un sistema de control de versiones de una PaaS que desde sus recursos locales. Sin embargo, volver a escribir scripts de creación es una tarea más sustancial. Si usted es menos formal con sus prácticas o usa herramientas de cosecha propia, considere cómo ellas cabrían dentro de un entorno PaaS y revise sus políticas de control de acceso para el código y la documentación. Revise el mecanismo de control de acceso de su proveedor de PaaS para asegurarse de que puede controlar el acceso de la manera en que usted lo necesita.

Encontrar una opción PaaS que apoye toda su pila de aplicaciones reduce las barreras para la adopción de PaaS para el desarrollo.

3. ¿Necesita integrarse con recursos locales?

Las aplicaciones a menudo tienen que integrarse con otras aplicaciones o recursos compartidos, como bases de datos empresariales. En este caso, entienda cómo va a acceder a esos recursos desde PaaS. Si utiliza una aplicación interna que implementa una API de servicios web y ya sirve a aplicaciones cliente externas, usted debe ser capaz de moverse hacia PaaS. Si la seguridad es una preocupación y solo a las aplicaciones cliente en una red privada virtual (VPN) se les permite el acceso a recursos locales, pruebe la API de una PaaS en las primeras fases de su evaluación. Si necesita implementar la funcionalidad de VPN y su proveedor de PaaS no satisface sus necesidades, puede que, en cambio, tenga que considerar una infraestructura como servicio (IaaS).

4. ¿Su pila de desarrollo está completamente soportada?

Las ofertas PaaS han madurado rápidamente desde plataformas de un solo idioma a plataformas que admiten una gama de lenguajes, bases de datos y otros servicios. Encontrar una opción PaaS que apoye su pila de aplicaciones completa reduce las barreras para la adopción de PaaS para el desarrollo. Por ejemplo, si está desarrollando con Java y usa Jenkins para la integración continua, entonces CloudBees puede ser una buena opción. Si necesita soporte para Ruby y Node.js, Engine Yard podría funcionar. Si está construyendo sobre la plataforma NoSQL, la PaaS de Red Hat, OpenShift, puede ser una buena opción.

5. ¿Cuál es la etapa de desarrollo?

Dónde está usted en su proceso de desarrollo influye fuertemente en los costos y beneficios de cambiar el desarrollo desde las instalaciones hacia la nube. Por lo general, cuanto más lejos ha avanzado en un proyecto, será mayor la inversión que tiene en su entorno y herramientas de desarrollo. A medida que el proyecto avanza, usted tendrá que crear más software que debe ser movido a una plataforma PaaS, lo que aumenta el costo de hacer un cambio.

Mover el desarrollo de un proyecto en curso a una plataforma PaaS tiene sentido cuando las ventajas de PaaS son mayores que los costos y el tiempo necesarios para hacer posible la migración. Después de mudarse a una PaaS usted queda exonerado de la gestión de servidores, sistemas operativos y otras infraestructuras. Una gran recompensa puede venir si necesita escalar su aplicación y puede evitar cuestiones de ingeniería que consumen tiempo y son un reto.

Ejecutar su aplicación en una nube que escala con una mínima intervención de su parte podría ahorrar más tiempo y dinero y vale la pena el esfuerzo de un movimiento hacia PaaS.

Sobre el autor: Dan Sullivan, M.Sc., es un autor, arquitecto de sistemas y consultor con más de 20 años de experiencia en TI. Él ha tenido compromisos en analítica avanzada, arquitectura de sistemas, diseño de bases de datos, seguridad empresarial e inteligencia de negocios. Ha trabajado en una amplia gama de industrias, incluyendo servicios financieros, fabricación, farmacéutica, desarrollo de software, gobierno, retail y educación. Dan ha escrito extensamente sobre temas que van desde el almacenamiento de datos, la computación en nube y la analítica avanzada hasta la gestión de la seguridad, la colaboración y la minería de textos.

Inicie la conversación

Envíenme notificaciones cuando otros miembros comenten sobre este artículo.

Por favor cree un Nombre de usuario para poder comentar.

- ANUNCIOS POR GOOGLE

Close