Por Fabio Zilberman, CTO en ASAP Consulting
Hoy en día contar con el apoyo de una Software Factory para llevar adelante los proyectos de desarrollo es vital para el crecimiento y la actualización de las empresas. Procesos que van desde la comunicación interna, hasta aplicaciones para el consumidor final son más sencillos de monitorear si se utiliza la herramienta indicada.
A continuación detallaremos todo lo que tienes que saber acerca de las cualidades y etapas de este servicio.
Características principales de los desarrollos en nuestra Software Factory
Cuando trabajamos en desarrollos de sistemas dentro de nuestra Software Factory, nos enfocamos en dos pilares: escalabilidad y eficiencia. Dos grandes ejemplos de desarrollos escalables son Facebook e Instagram, dado que se trata de plataformas con millones de usuarios que utilizan el sistema al mismo tiempo.
Por lo tanto, un software no debe funcionar bien únicamente cuando se hacen pruebas con una cantidad reducida de usuarios, sino con la cantidad de usuarios real. Para poder lograrlo, el desarrollo tiene que cumplir ciertas características, donde el rol del arquitecto es fundamental.
Por otra parte, para que los desarrollos sean eficientes deben soportar las actualizaciones para crear nuevas versiones. Cuando hay millones de usuarios conectados, el desafío está en implementar novedades sin interrumpir su funcionamiento. Para eso implementamos estrategias y metodologías que permiten actualizar el sistema sin complicaciones.
Las 5 etapas del proceso de desarrollo en la Software Factory
1. Análisis funcional
Cuando el cliente no se especializa en el área de informática, el primer paso consiste en realizar un análisis funcional en dos niveles para entender qué funciones debe tener el desarrollo.
El objetivo del análisis funcional de alto nivel es definir qué va a contener el desarrollo, es decir cuáles serán sus principales funcionalidades. En este primer paso también se le explica al cliente las cualidades del proyecto a realizar a fin de alinear las necesidades con el servicio.
Además, en este punto se hacen maquetas de pantalla, que se otorgan junto con una documentación explicativa. Si el cliente cuenta con un equipo de TI, es más probable que llegue con estas especificaciones por escrito en un documento propio. A partir de esa base se comienza.
Posteriormente, tiene lugar un análisis detallado que suele llevar entre dos y tres meses. En este caso el objetivo es determinar el alcance del proyecto y establecer el presupuesto final. Durante este proceso es clave el correcto relevamiento para realizarlo con éxito y poner de acuerdo a todas las partes.
2. Diseño y arquitectura
La segunda etapa de desarrollo en nuestra Software Factory implica la convergencia de varias áreas. En primer lugar, se diseña la estética, es decir: colores, imagen de marca, diseño de las pantallas. Además, se desarrolla la arquitectura front end y back end, que implica definir cómo va a ser la plataforma tecnológica que va a soportar el proyecto. Asimismo, como las piezas, los componentes, los motores de bases de datos, los tipos de servidores y los lenguajes de programación a utilizar.
No obstante, la arquitectura puede ser mucho más que eso: también puede involucrar interfaces con otros sistemas, pasarelas de pago, sistemas cambiarios, relación con sistemas existentes en las empresas para recibir y enviar datos de los clientes.
En esta fase también se diseña el modelo de datos, que a partir del auge del Data Science se han transformado en un activo en sí mismo y de ahí la importancia de saber cómo tratarlos. A continuación, se hace el diseño detallado de todas las funciones (para guiar a los developers) en base al documento de alcance redactado inicialmente a fin de que puedan comenzar a desarrollar. Es importante aclarar que el lenguaje de programación a utilizar depende de las necesidades del cliente y con el stack que cuente o solicite.
3. Proceso de desarrollo en la Software Factory
La tercera fase normalmente es la más extensa, dado que inicia el proceso de desarrollo en sí. Las metodologías ágiles nos permiten pautar entregas parciales a partir de un cronograma previamente acordado. De esta manera, cada entrega permite hacer un control de calidad. Incluso dentro de estos períodos también se puede trabajar con sprints con entregas parciales internas para llegar a cumplir con los requerimientos del cliente a tiempo.
La entrega parcial es el resultado final de un proceso donde realmente se puede observar la lógica de la metodología ágil. Se analizan en conjunto las funcionalidades previamente acordadas en el documento inicial para avanzar con el proyecto.
A su vez, las metodologías ágiles permiten trabajar en un nivel más macro. Por ejemplo: con el sistema entregado y ya funcionando, el cliente puede traer una solicitud para actualizar el sistema. En ese caso, el proceso de desarrollo y testing vuelve a comenzar.
Durante esta etapa la infraestructura puede ser construida mediante dos posibilidades: puede crearse desde cero desde la Software Factory, o bien implementando una combinación mixta entre nuestro equipo de desarrollo y el del cliente.
4. Entrega de documentación de caso
El cuarto paso dentro del funcionamiento de la Software Factory implica entregar al cliente el manual de usuario, que recopila toda la documentación del proyecto para mantener el sistema activo.
En algunos casos, aquellos clientes que cuentan una infraestructura IT solicitan los códigos para mantener actualizado el sistema.
5. Servicio de mantenimiento mensual
En la quinta etapa nuestro equipo de desarrollo queda atento y disponible para responder ante cualquier tipo de incidente. Además, ofrecemos un mantenimiento preventivo para evitar posibles riesgos y evolutivo es para actualizar el desarrollo.
Crea desarrollos únicos desde nuestra Software Factory
En ASAP Consulting ofrecemos el expertise de un equipo con la capacidad de crear un software a medida para tu compañía. Si bien no existe un promedio de tiempo estandarizado, en la mayoría de los procesos de desarrollo requieren únicamente entre tres y cuatro meses de trabajo.
¿Estás necesitando un desarrollo a medida? ¡Contáctanos! Esperamos tener noticias pronto para contarte cómo podemos agilizar tus procesos de negocio desde nuestra Software Factory.