¿Para qué sirve una metodología de desarrollo de software?

¿Estás por iniciar un proyecto de desarrollo de software o planeas desarrollar algo en el corto o mediano plazo? Este artículo lo tienes que leer. No te tomará más de 5 minutos y puede salvar tu proyecto y dinero de una manera increíble.

En desarrollo de software hay muchas historias de éxito, pero también de terror ¿por qué?; porque desarrollar software es más arte que tecnología. Sí, así como lo escuchas, el desarrollo de software es un proceso artístico en donde los participantes (los artistas del desarrollo) tratan de entender la necesidad de tu negocio, para después desarrollar la solución técnica que lo resuelve.

Equipo ¿Para qué sirve una metodología de desarrollo de software?

A primera lectura, ese proceso suena relativamente simple, pero cuando metemos la palabra arte, entonces todo se complica. ¿Por qué? Porque el arte es complicada de imaginar, de ejecutar y de entender. El desarrollo de software es igual, es un proceso complejo porque se involucran artistas que normalmente no conocen sobre tu negocio y entonces les cuesta trabajo imaginar la solución tecnológica.

Siempre le trato de explicar a mis clientes con ese ejemplo: Imagina que reunimos a varios artistas en una sala de juntas (músicos, pintores o de cualquier rama artística) y les explicamos en 2 horas tu negocio y el problema que quieres resolver. No se tú, pero yo tengo 15 años en éste negocio y aún no termino de entender todos los ángulos del mismo; pues bien, ahora piensa lo que éste grupo de artistas va a captar durante esa sesión de 2 horas.

Lo anterior es sólo el inicio del proceso de desarrollo de software. Un proceso que debe de saber llevarse muy bien desde un inicio, es aquí donde entramos en el territorio de las metodologías de desarrollo de software.

Las metodologías de desarrollo de software nacieron hace ya algunas décadas, durante 1970 se adoptó el primer modelo moderno de desarrollo de software conocido como “Waterfall” o “Cascada”. En términos muy simples, una metodología es un conjunto de pasos a seguir para poder llevar acabo un proyecto de desarrollo de software. Por medio de artefactos, pasos, instrucciones o etapas, nos da la guía de como debemos de ejecutar un proceso de desarrollo.

En la metodología de cascada, por ejemplo, se utilizan etapas como:

  1. Requerimientos (Que es lo que debe de incluir la solución tecnológica)
  2. Diseño (Diseñar la solución tecnológica desde una perspectiva de arquitectura y visual)
  3. Código / Implementación (Desarrollo e implementación de la solución tecnológica)
  4. Verificación (Validar que la solución tecnológica funcione adecuadamente y resuelva las necesidades para la que fue desarrollada)
  5. Mantenimiento (Mantener la solución tecnológica en el tiempo, eso incluye nuevas funcionalidades / requerimientos, que opera de manera aceptable en cuanto a performance / desempeño, otros).

La anterior metodología de desarrollo es sólo un ejemplo, de hecho hay variaciones de la misma, pero no es la única. Las metodologías han venido evolucionando en el tiempo y hoy en día encontramos metodologías como:

  • Agile Software Development
  • DevOps
  • Prototype
  • Rapid Application Development (RAD)
  • Scrum Development
  • Otras…

Yo soy Ingeniero Industrial y de Sistemas y desde hace 9 años vengo experimentando con varias metodologías de desarrollo. Cuando inicié como director general de ésta empresa, me tocó vivir las experiencias con proyectos desarrollados en “Cascada”; hoy en día, hacemos proyectos utilizando una metodología ágil llamada Scrum. Si me preguntas porque tomamos la decisión de utilizar Scrum como metodología de desarrollo, mi respuesta sería: sentido común.

Mi background de ingeniería me ayuda a pensar en términos numéricos y organizados, pero mi perfil industrial me hace pensar en resolver problemas de la manera en que haga más sentido común y esa fue la principal razón del por qué decidimos migrarnos hacía Scrum.

La metología Scrum simplemente hace sentido porque sigue reglas que se llevan muy bien con las características del ser humano. El ser humano tiende a olvidar cosas, a relajarse, a no seguir la rutina. Pues bueno, Scrum nos obliga a meternos en esa rutina que no queremos seguir, nos obliga a reunirnos con el cliente y le pone reglas a las juntas. En pocas palabras, obliga a que el equipo de desarrollo se reúna de manera frecuente con el cliente para ver avances y entender que sí esta funcionando y que no.

Si estas próximo a desarrollar un proyecto de software, te recomiendo ampliamente que te asegures que el equipo de trabajo va a utilizar una metodología de desarrollo que los obligue a rendir cuentas y presentar resultados. Resultados que estén alineados con lo que tú estas buscando en el proyecto.

El proceso artístico de desarrollar software es complejo, pero te aseguro que una metodología de desarrollo ayudará a llevar a mejor puerto tu proyecto.

Si tienes dudas sobre la metodología de desarrollo que utilizamos y quieres conocer más sobre la misma, te ofrezco mi tiempo para que la discutamos en una consulta que no causa honorarios.


“Somos la mejor opción para acompañar a tu Organización durante su Transformación Digital. Más de 25 años colaborando con empresas nacionales e internacionales.

Si estás próximo a arrancar un proyecto de migración a La Nube, Desarrollo de Software o Aplicaciones Móviles Empresariales y tienes dudas sobre este tema, te invito a que nos contactes”.

Northware es una Empresa de Desarrollo de Software, especialista en Desarrollo de Aplicaciones Web, Desarrollo de Apps Empresariales, Microsoft Dynamics 365 y Ciencia de Datos. Desarrollamos software a la medida y aplicaciones para iOS o Android. Para todas aquellas empresas que sólo requieren la contratación directa de especialistas, contamos con un grupo de ingenieros altamente capacitados para ayudarte en tu próximo proyecto de tecnología, de una manera temporal o por el tiempo que lo requieras. Brindamos asesoría especializada de acuerdo con tus necesidades en las tecnologías más avanzadas para apoyar tu estrategia de Transformación Digital.