La metodología RAD o DRA (por sus siglas en inglés Rapid Application Development y en castellano Desarrollo Rápido de Aplicaciones), se trata de un modelo de desarrollo de aplicaciones ágil. Es decir, hablamos del proceso de desarrollo de software.
Este método abarca el desarrollo interactivo, la creación de prototipos y el empleo de utilidades CASE (Computer Aided Software Engineering). Además, la metodología RAD suele englobar también la usabilidad, utilidad y la rapidez de ejecución.
Definición de qué es una metodología RAD
Profundizando en qué es una metodología RAD, tenemos que tener claros cuales son sus premisas básicas. La primera persona que habló del método RAD fue James Martin a finales de los 80 y, actualmente, estamos ante uno de los métodos de desarrollo más populares, dentro de las técnicas de desarrollo ágil. James Martin consideró que para aplicar de forma correcta la metodología RAD tenemos que tener en cuenta 4 componentes: Personas, herramientas, metodología y gestión.
La idea principal es entregar sistemas de alta calidad, en poco tiempo y con un coste bajo de inversión. Para conseguir esto, hay que seguir determinadas pautas que harán que estemos ante una auténtica metodología DRA (las siglas en castellano: Desarrollo Rápido de Aplicaciones), que veremos más adelante.
Para qué sirve la metodología RAD
En la actualidad, las empresas invierten gran parte de sus recursos en desarrollar aplicaciones que les permitan trabajar de forma más eficiente. Con la aparición de los modelos de desarrollo rápido de aplicaciones, podremos crear softwares de forma rápida y barata para satisfacer las necesidades empresariales sin invertir tanto tiempo y dinero.
Ventajas y desventajas del modelo de desarrollo rápido de aplicaciones RAD
A la hora de adoptar la metodología DRA, deberemos tener en cuenta un buen puñado de ventajas y desventajas de su uso y saber por qué usar RAD. Algunos de los beneficios principales del uso de la metodología RAD serían los siguientes:
Avances medibles: Al contar con numerosas iteraciones, componentes y prototipos desplegados cada cierto tiempo, se podrá medir y evaluar de forma sencilla el desarrollo del proyecto y, así, cumplir con los presupuestos.
Productivos más pronto: La metodología DRA permitirá a los desarrolladores adoptar roles multidisciplinares que creen prototipos y códigos de trabajo de forma rápida, lo que supone ser productivos más rápido.
Separación de los componentes del sistema: La metodología RAD exige a los diseñadores y desarrolladores a generar componentes funcionales e independientes por sí mismos, y así poder usarlos en en una versión o prototipo iterativo. De esta manera, cada elemento se reparte en compartimentos y se podrá modificar según evolucionen las necesidades del software y/o usuario.
Comentarios constantes de los usuarios: Al poder lanzar prototipos e iteraciones ágilmente, obtendremos un feedback muy valioso por parte de los usuarios de forma continuada.
Integración temprana de sistemas: Los softwares desarrollados con la metodología RAD podrán ser integrados casi desde el comienzo con otros sistemas. A diferencia de los softwares desarrollados en cascada que deben esperar prácticamente al final del desarrollo a ser integrados. Al poder realizar estas integraciones tempranas, podremos identificar los posibles errores que existan en las mismas y buscar la solución.
Adaptabilidad: Gracias al desarrollo rápido de aplicaciones, el software es bastante maleable, lo que nos beneficiará para poder realizar cualquier posible adaptación a los prototipos o iteraciones.
Desventajas de RAD
Por supuesto, no todo podía ser perfecto y, como cualquier otro método de desarrollo de software, el método RAD tiene algunas desventajas que también hay que tener en cuenta a la hora de elegirlo para trabajar.
Requiere sistemas modulares: Cuando aplicamos el método RAD, cada componente del sistema debe ser iterable y constatable por sí mismo, para poder ser modificados o intercambiados por cualquier miembro del equipo.
Dificultad dentro de proyectos a gran escala: Cuando estemos ante un proyecto que implique muchas personas y aplicaciones, la flexibilidad puede llegar a ser un problema puesto que perderemos ligeramente el control sobre el diseño y el desarrollo.
Exige mucha interactividad del usuario: Conseguir feedback del usuario desde una etapa temprana es muy útil pero, a la vez, puede ser una espada de doble filo ya que tendremos que aceptar todo tipo de críticas constructivas y ser competente a la hora de comunicarse con los usuarios.
Necesidad de desarrolladores senior: Aplicar la metodología RAD no es tan fácil como parece, por lo que en el equipo serán necesarios desarrolladores hábiles que sean capaces de aplicar y adaptarse a cualquier necesidad o cambio.
Fases dentro de un proceso con metodología RAD
Para implantar el modelo de desarrollo rápido de aplicaciones, hay que seguir una metodología concreta que incluye las siguientes fases, las cuales son cíclicas:
Planificación de necesidades:
En esta primera fase, lo que habrá que hacer será sentar las bases de las necesidades del proyecto, tanto de necesidades de la aplicación como de alcance del proyecto y de esta manera comenzar a trabajar en la creación de prototipos.
Diseño y feedback con el usuario:
Los usuarios aportarán comentarios que serán determinantes a la hora de diseñar la arquitectura del sistema. Con el feedback del usuario crearemos modelos y prototipos iniciales. Y este paso se podrá repetir tantas veces como se considere necesario según avance el proyecto.
Construcción:
Ahora que tenemos el diseño básico, tendremos que realizar el grueso del proyecto: Codificación, pruebas e integración reales de la aplicación. Al igual que en la fase anterior, esta se podrá repetir tantas veces como necesitemos, según haya nuevos componentes o modificaciones en el proyecto.
Transición:
La última fase, también conocida como “cutover”, permitirá al equipo de desarrollo pasar los componentes a un entorno de producción en vivo, para realizar todas las pruebas que sean necesarias.
En la actualidad, existen herramientas que aplican el desarrollo RAD o desarrollo low code, en su forma de trabajar. Una de ellas es Mendix, si quieres saber qué es Mendix no dejes de visitar el post del link.
Con todo esto, creemos que será mas fácil comprender por qué usar RAD es una buena elección para tu forma de trabajar.