Llevamos más de 10 años desarrollando software para empresas. Después de vivir éxitos y problemas, si tuviéramos que aconsejar a alguien que está buscando desarrollar una aplicación a la medida para su empresa, le recomendaríamos:
1. Revisar lo que hay en el mercado.
Desarrollar software a la medida debería ser el último recurso a considerar. Podrías gastar tiempo y dinero en algo que ya existe. Nunca es malo evaluar los paquetes de software terminados que pudieran resolver todo o parte de tu problema. El tiempo que inviertas en reuniones con distintos fabricantes no será en vano. Los paquetes cerrados son una inversión mucho más protegida que un desarrollo a la medida, porque compartes riesgos y costos con el resto de los usuarios del producto. Si después de evaluar los productos terminados que más se acercan a tu problema, descubres que no existe nada que se adapte lo suficiente a lo que necesitas, es el momento de dar el siguiente paso.
2. Nunca partir de cero.
Hace años que los programadores no se sientan delante de una pantalla vacía para comenzaban a escribir la primera linea de código. Hoy en día disponen de una extensa biblioteca de “módulos”, “piezas” y “frameworks” ya terminados que podemos utilizar para disminuir el costo, tiempo y los errores en los desarrollos a medida. Pide al proveedor que te enseñe esas “piezas” funcionando en aplicaciones iguales o parecidas a la que será la tuya.
3. Un jefe de proyecto poderoso.
Desarrollar un programa a medida requiere el mismo esfuerzo y compromiso por parte del cliente que de la empresa que programa. Designa un único jefe de proyecto en tu empresa con autoridad suficiente para tomar decisiones en el proyecto y comunicarlas a la empresa que desarrolla el software. Esto no quiere decir que no se debata la mejor forma de hacer las cosas internamente, pero debe ser algo previo e interno. Asúmelo, lograr un acuerdo del 100% es imposible y alguien deberá poder tomar decisiones unilateralmente de cara al proveedor. No hay nada peor para un desarrollo de software a medida que cuatro personas diciendo lo que quieren hacer y cómo hacerlo. Tampoco es bueno echarse atrás en un aspecto importante cuando ya se ha empezado a programar por disparidad de criterios. Durante estos años hemos visto verdaderas batallas en reuniones entre altos ejecutivos discutiendo de cómo debería comportarse el nuevo sistema en un aspecto concreto. Siempre ha sido algo perjudicial para el proyecto.
4. No es lo que esperabas
Último día de la consultoría, los consultores se retiran y meses mas tarde tenemos el software listo para usar… dudamos mucho que el resultado sería lo que esperabas. Pide a tu proveedor que utilice metodologías ágiles o ciclos de desarrollo en espiral y obtendrás resultados mucho mejores. La empresa de desarrollo debería presentarte un prototipo funcional antes de comenzar a desarrollar que te permitirá tener contacto con las pantallas y el aspecto de la nueva aplicación. Estas reuniones con nuevas versiones del prototipo deberían repetirse periódicamente, te permitirán comunicarle detalles importantes a tu proveedor y estar al tanto de la evolución del prototipo, que irá mejorando poco a poco hasta tener el resultado final.
5. Lleno de enchufes y abierto.
Hoy día un programa no vive sólo, forma parte de un ecosistema junto a otros programas que se utilizan o se acabarán utilizando en tu compañía: facturación, contabilidad, reportes, CRM, bodegas, el software de la central telefónica, herramientas de business Intelligence, etc. Todos esos programas pueden comunicarse o “enchufarse” entre ellos. Cuando contemples el desarrollo de tu programa a medida, asegúrate que su base de datos será “abierta” (es decir, que otros programas pueden consultarla o conectarse a ella) y que dispone de los conectores apropiados para colaborar ahora o en el futuro con otras aplicaciones (y de paso pregunta cuanto te van a cobrar el día que les pidas conectarse con otra aplicación). Palabras como motor de base de datos, documentación de webservices, APIs o formatos de importación y exportación deben estar encima de la mesa desde el principio.
6. Mejora continua.
Un desarrollo a medida da como resultado una herramienta que en cierta forma nunca está acabada. Esa es su peor y al mejor cualidad. Los productos cerrados son actualizados por los fabricantes de forma independiente, pero los desarrollos a medida deben ser modificados y mejorados de forma periódica por el cliente para adaptarse a los cambios en la organización, pulirse funcionalmente y no quedar obsoletos. No existe una herramienta mejor que un software a medida que se ha ido retocando y mejorando a lo largo de los años. Desgraciadamente también es frecuente encontrar desarrollos que quedan desfasados por falta de modificaciones o ampliaciones de funcionalidad. Cuando contrates un desarrollo a medida pregúntale a tu proveedor cómo serán los proyectos de modificación en el futuro, cuanto cobrará por las horas de trabajo y qué disponibilidad tendrá para llevar a cabo las tareas que le pidas una vez finalizado el proyecto.
En DSAC llevamos desde el 2008 desarrollando software a medida para empresas. Todas nuestras plataformas son realizadas teniendo la premisa:
- Simpleza sobre todo. Nos gusta el principio KISS (keep it simple, stupid!).
- Rendimiento y velocidad. La vida es muy corta para estar esperando frente a una pantalla.
- Facilidad de uso. Mejor experiencia UX. Nos encanta el buen diseño; menos, pero mejor (Dieter Rams y Die Gute Form).
- Escalabilidad en el desarrollo. Hechos para crecer.
- Somos rápidos y efectivos. Usamos metodologías ágiles de desarrollo.