Introducción a la metodología RAD

Como Segunda Unidad de este blog vamos a hablar y realizar ejemplos sobre la metodología RAD para lo cual comenzaremos por entender sobre este tema.

¿Qué es la metodología RAD?
Rapit Application Development o en español (Desarrollo Rapido de Aplicaciones) es un proceso de desarrollo de software. El método comprende el desarrollo interactivo, la construcción de prototipos y el uso de herramientas CASE(Computer Aided Software Engineering). Tradicionalmente, el desarrollo rápido de aplicaciones tiende a englobar la usabilidad, utilidad y la rapidez de ejecución de un sistema.
Problemas Atendido por RAD
  • Con los métodos convencionales pasa un gran lapso de tiempo antes de que el cliente vea resultados.
  • Con los métodos convencionales el desarrollo llega a tardar tanto que para cuando el sistema está listo para utilizarse los proceso del cliente han cambiado radicalmente.
  • Con los métodos convencionales no hay nada hasta que el 100% del proceso de desarrollo se ha realizado, solo al cumplir el 100% de desarrollo es posible entregar el software.
¿Por qué usar RAD?
  • Prevenir presupuestos rebasados.
  • Prevenir incumplimiento de fechas.
  • Convergir tempranamente en un diseño aceptable para el cliente y posible para los desarrolladores.
Características de RAD
  • Equipos Híbridos: 
Los desarrolladores de RAD deben ser "renacentistas": analistas, diseñadores y programadores en uno.
  • Herramientas Especializadas:
  1. Desarrollo Visual
  2. Creación de prototipos falsos(Simulación pura)
  3. Creación de prototipos funcionales
  4. Múltiples lenguajes
  5. Calendario Grupal
  6. Herramientas colaborativas y de trabajo en equipo
  7. Componentes reusables

  • "Timeboxing"
Las funciones secundarias son eliminadas como sea necesario para cumplir con el calendario.
  • Prototipos Iterativos y actualizados.
  1. Los desarrolladores construyen y depuran el prototipo basado en los requisitos actuales.
  2. Los diseñadores revisan el prototipo.
  3. Los clientes prueban el prototipo, depuran los requisitos.
  4. Ambas partes revisan el producto y juntos re-definen requisitos de ser necesario.
El Modelo RAD comprende las siguientes etapas:
Modelado de gestión: Este modelo se basa en dar respuesta a las siguientes preguntas: 
– ¿Qué información conduce el proceso de gestión? 
– ¿Qué información genera? 
– ¿A dónde va la información? 
– ¿Quién la procesa?
Modelado de datos: En este modelo se definen los almacenes de datos y cómo se relacionan los almacenes entre si.
Modelado del proceso: Se utiliza para añadir, modificar, suprimir o recuperar un objeto de datos.
Generación de aplicaciones: Para esto se utiliza una herramienta de cuarta(o quinta) generación que permite crear el software y facilitar la construcción del programa.
Pruebas y entrega: El proceso de desarrollo finaliza realizando pruebas de calidad del software diseñado con la herramienta RAD, posteriormente se realiza la implementación de la aplicación.


Ventajas y Desventajas de RAD
Ventajas Desventajas
Comprar puede ahorra dinero en compa-
ración con construir
Comprar puede ser mas caro que construir
Los entregables pueden ser fácilmente trasladados
a otra plataforma
Costo de herramientas integradas y equipo necesario 
El desarrollo se realiza a un nivel de abstracción mayorProgreso más difícil de medir
Visibilidad temprana Menos eficiente
Mayor flexibilidad Menor precisión científica
Menor codificación manual Riesgo de revertirse a las prácticas sin control de antaño
Mayor involucramiento de los usuarios Más fallas (por síndrome de  "codificar a lo bestia")
Posiblemente menos fallas Prototipos pueden no escalar , un problema mayúsculo
Ciclos de desarrollo más pequeños Funciones reducidas (por "timeboxing")
Interfaz gráfica estándar Dependencia en componentes de terceros:
funcionalidad de mas o de menos problemas legales.


Conclusión:
Tiene mayor probabilida de dejar satisfecho al cliente ya que se pueden generar con mayor facilidad y rapidez aplicaciones prototipo con una GUI vistosa y prolija listo para su uso prematuro, con una diferencia de tiempo de entrega del sistema.



Comentarios

Entradas populares de este blog

Sistema Clinico con PhpMaker

Lenguaje de Programación Avanzada