Paradigmas en El Desarrollo de Software
Paradigmas en El Desarrollo de Software
Paradigmas en El Desarrollo de Software
Definición de Paradigma:
Para la Ingeniería de Software el paradigma es una agrupación de métodos,
herramientas y procedimientos con el fin de describir un modelo.
Es el paradigma más antiguo y fue el más utilizado durante la hegemonía del método
estructurado. El número de etapas propuestas varía de acuerdo al proyecto a
desarrollar, aunque existen etapas comunes para este paradigma.
Modelos de Prototipos:
Los Prototipos no poseen la funcionalidad total del sistema pero si condensa la idea
principal del mismo, Paso a Paso crece su funcionalidad, y maneja un alto grado de
participación del usuario.
Los modelos previos pueden ser en papel o computadora para mostrar la interacción
hombre-máquina; un modelo que muestra algunas funciones del software; o, algún
software anterior (parte o todo) parecido al que se desea, que luego será modificado
y adaptado según los requerimientos del usuario.
El paradigma de construcción de prototipos comienza con la recolección de requisitos.
El desarrollador y el cliente encuentran y definen los objetivos globales para el
software, identifican los requisitos conocidos, y las áreas del esquema en donde es
obligatoria más definición. Entonces aparece un “diseño rápido”.
El diseño rápido se centra en una representación de esos aspectos del software que
serán visibles para el usuario/cliente. El diseño rápido lleva a la construcción de un
prototipo.
El prototipo lo evalúa el cliente/usuario y lo utiliza para refinar los requisitos del
software a desarrollar.
Lo ideal sería que el prototipo sirviera como un mecanismo para identificar los
requisitos del software. Si se construye un prototipo de trabajo, el desarrollador
intenta hacer uso de los fragmentos del programa ya existentes o aplica herramientas
que permiten generar rápidamente programas de trabajo.
Modelo en Espiral:
Propuesto por Boehm en 1988 con la finalidad de paliar los inconvenientes del modelo
en cascada y adecuar el desarrollo por prototipos a problemas complejos.
Este modelo se realiza en varias iteraciones; se parte de una escala pequeña la cual
comienza con la identificación de objetivos, alternativas y restricciones; en medio de
la espiral, se localizan riesgos, se genera un plan para manejarlos, y a continuación
se establece una aproximación a la siguiente iteración.
Durante las últimas iteraciones, se producen versiones cada vez más completas de
ingeniería del sistema. El modelo en espiral se divide en un número de actividades
estructurales también llamadas guiones de tareas. Estas inclusive pueden variar de
3 a 6 tareas.
Cuando empieza este proceso evolutivo, el equipo de ingeniería del software gira
alrededor de la espiral en la dirección de las agujas del reloj, comenzando por el
centro. El primer circuito de la espiral produce el desarrollo de una especificación de
productos; los pasos siguientes en la espiral se podrían utilizar para desarrollar un
prototipo y progresivamente versiones más sofisticadas del software. Cada paso de
la región de planificación produce ajustes en el plan del proyecto.
Mantiene el enfoque sistemático de los pasos sugeridos por el ciclo de vida clásico,
pero lo incorpora al marco de trabajo interactivo que refleja de forma más realista el
mundo real. El modelo en espiral demanda una consideración directa de los riesgos
técnicos en todas las etapas del proyecto, y si se aplica adecuadamente, debe reducir
los riesgos antes de que se conviertan en problemáticos.
El paradigma espiral, al igual que los demás modelos, se puede combinar con otros
paradigmas.
Scrum es una metodología ágil y flexible para gestionar el desarrollo de software, cuyo
principal objetivo es maximizar el retorno de la inversión para su empresa (ROI). Se basa en
construir primero la funcionalidad de mayor valor para el cliente y en los principios de
inspección continua, adaptación, auto-gestión e innovación.
¿Cuándo se utiliza?
Esta metódica de trabajo promueve la innovación, motivación y compromiso del equipo que
forma parte del proyecto, por lo que los profesionales encuentran un ámbito propicio para
desarrollar sus capacidades.
Beneficios