Post on 08-Oct-2020
MODELADO AGIL Y PROTOTIPOS
1
Modelado Ágil y prototipos
Alejandro Noj, Edilser Mendoza, Eduardo Colon
Hiram Vargas, Karla Torres, Vincenzo Rosal
Docente
Eduardo Del Águila
Universidad Mariano Gálvez de Guatemala
Ingeniería en sistemas de la información
Analisis de sistemas I
Guatemala, 22 de marzo de 2019
MODELADO AGIL Y PROTOTIPOS
2
Contenido
Resumen ......................................................................................................................... 5
Introducción .................................................................................................................... 6
Prototipos ........................................................................................................................ 7
Tipos de prototipos ..................................................................................................... 8
Prototipo no operacional......................................................................................... 8
Prototipo primero de una serie ............................................................................... 9
Prototipo de características selectas ....................................................................... 9
Desarrollo de un prototipo .......................................................................................... 9
Lineamientos para desarrollar un prototipo. ............................................................. 11
Trabajar en módulos administrables ..................................................................... 11
Crear el prototipo con rapidez. ............................................................................. 11
Hacer énfasis en la interfaz de usuario ................................................................. 12
Ventajas de los prototipos. ................................................................................... 12
Desventajas de los prototipos. .............................................................................. 12
Creación de prototipos mediante software COTS ................................................ 13
El papel que desempeñan los usuarios en los prototipos ...................................... 13
Desarrollo Rápido de Aplicaciones .............................................................................. 14
Fases de RAD ........................................................................................................... 14
Taller de diseño RAD ........................................................................................... 15
Cuando usar RAD..................................................................................................... 18
Modelado Ágil .............................................................................................................. 19
MODELADO AGIL Y PROTOTIPOS
3
¿Qué es un modelo ágil?........................................................................................... 19
Valores y principios del modelo ágil ........................................................................ 19
Cuatro Valores del Modelo Ágil .............................................................................. 19
Simpleza ............................................................................................................... 20
Retroalimentación................................................................................................. 20
Valor ..................................................................................................................... 20
Principios básicos del Modelado Ágil ...................................................................... 20
Actividades, recursos y prácticas del modelado ágil ................................................ 22
Cuatro actividades del modelado ágil....................................................................... 22
Cuatro variables de Control de Recursos del Modelo Ágil ...................................... 22
Cuatro Practicas Ágiles Básicas ............................................................................... 23
El proceso de desarrollo ágil ........................................................................................ 24
Lecciones aprendidas del modelado ágil .................................................................. 27
Comparación entre el modelo ágil y métodos estructurados ........................................ 28
Modelado Ágil .......................................................................................................... 28
Métodos Estructurados ............................................................................................. 29
Ciclo de vida de las metodologías tradicionales y agiles ......................................... 31
Ventajas y Desventajas de los Modelos Estructurados ............................................ 31
Ventajas ................................................................................................................ 31
Desventajas ........................................................................................................... 31
Ventajas y Desventajas de los Modelado Ágil ......................................................... 32
MODELADO AGIL Y PROTOTIPOS
4
Ventajas ................................................................................................................ 32
Desventajas ........................................................................................................... 32
MODELADO AGIL Y PROTOTIPOS
5
Resumen
Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de
desarrollo de sistemas es el desarrollo de prototipos ya que permiten al analista
retroalimentarse con las reacciones, comentarios y/o sugerencias de los usuarios, lo cual trae
como consecuencia que el analista pueda adaptar el sistema de una mejor manera al usuario
sin incurrir en costos adicionales, además de que da al analista la oportunidad de replantearse
el rumbo y los objetivos del sistema en caso de que el prototipo ponga en evidencia los
mismos.
El modelado ágil es una metodología de desarrollo de sistemas que se enfoca en
desarrollar de manera rápida el sistema y luego por medio de iteraciones que duran periodos
cortos de tiempo ir añadiendo funciones adicionales al sistema y corregir errores. El modelado
ágil se basa en cuatro valores: comunicación, simpleza, retroalimentación, valentía. Estos
valores es recomendable utilizarlos en cualquier metodología de desarrollo, aunque no sea el
modelado ágil.
La programación extrema es una metodología ágil de desarrollo que busca optimizar al
máximo el tiempo, se basa en la programación en parejas para lograr sus objetivos, ya que
esto provoca que el conocimiento entre ambos se complemente.
Es muy importante que el analista se fundamente e informe de manera satisfactoria
antes de iniciar el desarrollo del proyecto para decidir qué metodología de desarrollo usar, ya
que en caso de elegir una metodología que no congenie con las habilidades de su equipo de
desarrollo no se obtendrán los resultados esperados.
MODELADO AGIL Y PROTOTIPOS
6
Introducción
En este trabajo de investigación se ahondará en los temas de metodología ágil y
prototipos. Se tratarán aspectos clave de la metodología ágil como por ejemplo sus valores,
principios, practicas y herramientas necesarias para su implementación. Se explicará la
relación entre la metodología ágil y los prototipos, teniendo la primera, sus raíces en los
segundos.
Se profundizará en las utilidades que brindan los prototipos en el proceso de desarrollo
de sistemas, así como los distintos tipos de prototipos existentes.
En esta investigación se busco identificar que es lo que busca un analista de sistemas
al desarrollar y presentar un prototipo al cliente final, y, por último, se estudiara una variedad
especial de prototipos conocida como RAD (desarrollo rápido de aplicaciones).
Esta investigación se realizó porque para un analista de sistemas, lo que como
ingenieros en sistemas podemos llegar a ser, es de vital importancia conocer una metodología
de desarrollo de sistemas como la metodología ágil, al ser esta una metodología muy utilizada
en el ambiente laboral y con eficacia comprobada.
MODELADO AGIL Y PROTOTIPOS
7
Prototipos
La palabra prototipo se utiliza en muchas formas; en vez de intentar una definición
sintetizada de ellos, o de tratar de forzar una metodología correcta para este tema
controversial, vamos a ilustrar cómo se puede aplicar con éxito cada una de las diversas
concepciones de los prototipos en una situación específica.
Un prototipo en software es un modelo del comportamiento del sistema que puede ser
usado para entenderlo completamente o ciertos aspectos de él y así clarificar los
requerimientos... Un prototipo es una representación de un sistema, aunque no es un sistema
completo, posee las características del sistema final o parte de ellas.
Hoy en día los desarrolladores de estos lenguajes formales están desarrollando
entornos interactivos que:
• Permitan al analista crear interactivamente una especificación basada en lenguaje de
un sistema o software.
• Invoque herramientas automáticas que traducen la especificación basada en el
lenguaje de código ejecutable.
• Permitan al cliente usar el código ejecutable del producto para refinar los requisitos
formales.
Métodos y herramientas para el desarrollo de los prototipos, para la selección de un
enfoque apropiado de creación de prototipo.
MODELADO AGIL Y PROTOTIPOS
8
Tipos de prototipos
Prototipo de parches. El primer tipo alude a la construcción
de un sistema funcional, parchado o construido totalmente con
parches. En ingeniería, a esta metodología se le conoce como
“breadboarding”: crear un modelo funcional de un circuito integrado
(cuya forma final será microscópica) uniendo partes. En términos de
sistemas de información, se trata de un modelo funcional, con todas
las características necesarias, pero que es ineficiente. En esta instancia del prototipo, los
usuarios pueden interactuar con el sistema y acostumbrarse a la interfaz y a los tipos de
salidas disponibles.
(Kendall, 1988)
Prototipo no operacional. La segunda concepción de
prototipo es la del modelo a escala no funcional, empleado
para probar ciertos aspectos del diseño. Un ejemplo es el
modelo a escala completa de un automóvil que se utiliza en
pruebas de túnel de viento. El tamaño y la forma del automóvil
son precisos, pero el automóvil no es funcional; se incluyen
sólo las características esenciales para una prueba específica.
Sería pertinente un modelo de escala no funcional para un sistema de información cuyas
aplicaciones requirieran una codificación demasiado extensa como para incluirla en el
prototipo, pero fuera útil hacerse una idea de la entrada y la salida necesarias solamente.
MODELADO AGIL Y PROTOTIPOS
9
Prototipo primero de una serie. La tercera
concepción de los prototipos es la creación de un modelo a
escala completa de un sistema, a lo que comúnmente se le
conoce como piloto. Un ejemplo sería crear el prototipo
del primer aeroplano de una serie y después ver si puede
volar antes de construir un segundo aeroplano. El
prototipo es completamente funcional; es una realización de lo que el diseñador espera sea
una serie de aeroplanos con características idénticas.
Este tipo de prototipo es útil cuando se planean muchas instalaciones del mismo
sistema de información. El modelo funcional a escala completa permite a los usuarios
experimentar una interacción realista con el nuevo sistema, al tiempo que minimiza el costo
de solucionar los problemas que presenta.
Prototipo de características selectas. La cuarta
concepción de los prototipos es la creación de un modelo
operacional que incluya sólo algunas características del
sistema final. Una analogía sería un nuevo centro
comercial que abra antes de terminar de construir todas
las tiendas.
(Kendall, 1988)
Desarrollo de un prototipo
Los prototipos son un medio excelente para obtener retroalimentación sobre el sistema
propuesto y el grado en que cumple con las necesidades de información de sus usuarios, como
se muestra en la figura. El primer paso de la creación de un prototipo es estimar los costos
MODELADO AGIL Y PROTOTIPOS
10
involucrados en la construcción de un módulo del sistema. Si los costos del tiempo de los
programadores y del analista, así como los costos del equipo están dentro del presupuesto, se
puede continuar con la construcción del prototipo.
MODELADO AGIL Y PROTOTIPOS
11
Lineamientos para desarrollar un prototipo.
Una vez tomada la decisión de crear un prototipo, hay que cumplir con cuatro
lineamientos para integrar el prototipo en la fase de determinación de requerimientos del
SDLC:
1. Trabajar en módulos administrables.
2. Crear el prototipo con rapidez.
3. Modificar el prototipo.
4. Hacer énfasis en la interfaz de usuario.
(Senn, 1988)
Trabajar en módulos administrables. Al crear prototipos de algunas de las
características de un sistema y convertirlos en un modelo funcional, es imperativo que el
analista trabaje en módulos administrables. Una de las ventajas únicas de los prototipos es que
no es necesario ni conveniente construir todo un sistema funcional para usarlos. Un módulo
administrable permite a los usuarios interactuar con sus características clave y se puede
construir por separado. Las características del módulo que se consideran menos importantes
se dejan intencionalmente fuera del prototipo inicial.
Crear el prototipo con rapidez. La velocidad es esencial para la creación de un
prototipo exitoso de un sistema de información. Recuerde que una de las quejas sobre el
SDLC tradicional es que el intervalo entre la determinación de los requerimientos y la entrega
de un sistema completo es demasiado largo como para poder lidiar en forma efectiva con las
necesidades en evolución de los usuarios.
Modificar el prototipo. Un tercer lineamiento para desarrollar el prototipo es que su
construcción debe admitir modificaciones. Para lograr esto hay que crearlo en módulos que no
tengan un alto grado de interdependencia. Si cumplimos con este lineamiento encontraremos
MODELADO AGIL Y PROTOTIPOS
12
menos resistencia cuando haya que modificar el prototipo. Por lo general el prototipo se
modifica varias veces, para lo cual pasa a través de varias iteraciones. Los cambios en el
prototipo deben acercar más el sistema a lo que los usuarios dicen que es importante. Cada
modificación requiere de otra evaluación por parte de los usuarios.
Hacer énfasis en la interfaz de usuario. La interfaz del usuario con el prototipo (y
con el sistema, en última instancia) es muy importante. Como lo que realmente tratamos de
lograr con el prototipo es hacer que los usuarios articulen con más detalle sus requerimientos
de información, deben ser capaces de interactuar con facilidad con el prototipo del sistema.
También deben ser capaces de ver cómo el prototipo les permitirá realizar sus tareas. Para
muchos usuarios, la interfaz es el sistema.
Ventajas de los prototipos. La utilización de prototipos no es necesaria o apropiada
en todos los proyectos de sistemas, como hemos visto. Las tres principales ventajas de los
prototipos son el potencial de cambiar el sistema durante las primeras etapas de su desarrollo,
la oportunidad de detener el desarrollo en un sistema que no está funcionando y la posibilidad
de desarrollar un sistema que cumpla mejor con las necesidades y expectativas de los
usuarios.
(Kendall, 1988)
Desventajas de los prototipos.
Al igual que sucede con cualquier otra técnica de recopilación de información, el uso
de prototipos presenta varias desventajas. La primera es que puede ser bastante difícil
administrar la creación de un prototipo como un proyecto dentro del esfuerzo más grande de
sistemas. La segunda es que los usuarios y analistas pueden adoptar un prototipo como
sistema completo cuando todavía es inadecuado y aunque nunca haya tenido la intención de
servir como sistema terminado.
MODELADO AGIL Y PROTOTIPOS
13
Creación de prototipos mediante software COTS. Algunas veces, la forma más
rápida de crear un prototipo es por medio de la instalación modular de software COTS.
Aunque podemos explicar con facilidad el concepto de COTS a través de los populares
paquetes de un costo relativamente bajo tales como los productos Microsoft Office, hay otros
paquetes de software COTS elaborados y costosos, pero muy útiles.
El papel que desempeñan los usuarios en los prototipos. El papel de los usuarios en
los prototipos se puede resumir en dos palabras: participación honesta. Sin la participación de
los usuarios, los prototipos no tienen mucho sentido. Los comportamientos precisos
necesarios para interactuar con un prototipo pueden variar, pero está claro que el usuario es
fundamental para el proceso de creación de prototipos.
Hay tres formas principales en las que un usuario puede ayudar con los prototipos:
• Experimentar con el prototipo.
• Ofrecer reacciones abiertas al prototipo.
• Sugerir lo que se puede agregar o quitar en el prototipo.
(Senn, 1988)
MODELADO AGIL Y PROTOTIPOS
14
Desarrollo Rápido de Aplicaciones
Es una metodología orientada a objetos para el desarrollo de sistemas denominado
RAD (Rapid Aplicación Development) el cual es un proceso de desarrollo de software, este
método comprende la construcción de prototipos y el uso de herramientas CASE.
Esta metodología incluye el uso de técnicas de modelado de procesos y datos, usa
evolución de prototipos y que al final se convertirán en el producto final, paralelamente a ello
se producen entrevistas cortas de trabajo entre desarrolladores, diseñadores, usuarios.
El objetivo de otorgar resultados rápidos se trata de un enfoque que está destinado a
proporcionar un excelente proceso de desarrollo, pero, además, está diseñado para aumentar la
viabilidad de todo el procedimiento de desarrollo de software para resaltar la participación de
un usuario activo.
(Maldonado, 2019)
Fases de RAD
Planeación de los requerimientos. Los usuarios y analistas se reúnen para identificar
los objetivos de la aplicación o el sistema, y para identificar los requerimientos de
información que surgen a partir de estos objetivos. En esta fase se requiere una participación
MODELADO AGIL Y PROTOTIPOS
15
intensa de ambos grupos, y no consiste sólo en la firma de una propuesta o documento, es
probable que se involucren usuarios de distintos niveles de la organización.
La orientación en esta fase es hacia la solución de problemas de negocios. Aunque la
tecnología de información y los sistemas puedan incluso impulsar algunas de las soluciones
propuestas, el enfoque siempre permanecerá en alcanzar los objetivos de negocios.
Taller de diseño RAD. La modelación de datos y procesos se lleva a cabo a través de
talleres construyendo paralelamente prototipos funcionales que se van probando, detallando,
perfeccionando con el mismo usuario, siempre ayudados por herramientas CASE.
Durante el taller de diseño RAD, los usuarios responden a los prototipos funcionales
reales y los analistas
refinan los módulos diseñados.
Implementación. Tan pronto como se llega a un consenso sobre estos aspectos, y se
crean y refinan los sistemas, se prueban los nuevos sistemas o las nuevas partes de estos y
después se introducen a la organización. Como RAD se puede usar
para las nuevas aplicaciones de comercio electrónico para las cuales no hay un sistema
anterior, a menudo no hay necesidad ni posibilidad de ejecutar los sistemas anterior y nuevo en
paralelo antes de la implementación.
MODELADO AGIL Y PROTOTIPOS
16
(Kendall, 1988)
En la anterior figura se muestra un esquema de cómo es que están constituidas las fases
de RAD y como es el flujo de información.
Se puede notar que en la fase de taller de diseño RAD es el centro de las tres fases y es
muy importante porque allí es como de diseñan y construyen los sistemas con ayuda de los
usuarios.
Comparación entre RAD y SDLC. Hay que tener en cuenta que el propósito
primordial de RAD es acortar el SDLC y de esta forma responder más rápido a los
requerimientos dinámicos de información de las organizaciones. El SDLC requiere un
enfoque más metódico y sistemático que asegure la integridad y precisión, además tiene como
intención la creación de sistemas que integren bien a los procedimientos de negocios estándar
y a la cultura.
En la siguiente figura veremos 2 esquemas que se puede notar las diferencias que tiene
estos 2 modelos en el desarrollo de aplicaciones.
MODELADO AGIL Y PROTOTIPOS
17
(Kendall, 1988)
MODELADO AGIL Y PROTOTIPOS
18
Ventajas de RAD Desventajas de RAD
Comprar puede ahorrar dinero en
comparación con construir
Comprar puede ser más caro que
construir.
El desarrollo se realiza a un nivel de
abstracción mayor
Progreso más difícil de medir.
Ciclos de desarrollo más pequeños. Dependencia en componentes de
terceros: funcionalidad de más o de menos,
problemas legales.
Ciclos de desarrollo más pequeños Funciones reducidas
Mayor involucramiento de los
usuarios.
Prototipos pueden no escalar, un
problema mayúsculo.
Cuando usar RAD
• Su equipo incluya programadores y analistas que tengan experiencia con este método
y se dé cualquiera de las siguientes condiciones.
• La empresa tenga motivos para presionar de manera que se pueda agilizar cierta parte
del desarrollo de una aplicación.
• Cuando trabaje con una aplicación original de comercio electrónico y su equipo de
desarrollo crea que la empresa puede obtener una ventaja considerable frente a sus
competidores por ser innovadora si esta aplicación está entre las primeras en aparecer
en Web.
MODELADO AGIL Y PROTOTIPOS
19
• Cuando los usuarios sean sofisticados y se involucren mucho con los objetivos
organizacionales de la empresa.
Modelado Ágil
¿Qué es un modelo ágil?
Son una colección de metodologías innovadoras para el desarrollo de sistemas, las
cuales se centran en los usuarios. En esta seccione aprenderá a sobrevalorar los principios,
actividades, recursos, practicas,
procesos y herramientas asociadas
con las metodologías agiles.
Valores y principios del
modelo ágil
La Metodología Ágil se basa
no solo en resultados, sino también
en valores y principios que fueron crean el contexto para la colaboración entre programadores
y clientes. Para poder ser analistas Ágiles tenemos que adherirnos a los valores y principios
desarrollados por Back (2000) en su trabajo sobre el modelo ágil, el cual se denomina
“programación extrema” o “XP”.
Cuatro Valores del Modelo Ágil
• Comunicación
• Simpleza
• Retroalimentación
• Valor
MODELADO AGIL Y PROTOTIPOS
20
Comunicación. Los proyectos de sistemas que requieren de una constante
actualización y diseño técnico son especialmente propensos a dichos errores. Si aunamos a
ello tiempos de entrega ajustados, jerga especializada y el estereotipo de que los
programadores prefieren hablar con las máquinas en vez de las personas, terminamos con el
potencial de toparnos con serios problemas de comunicación.
Simpleza. La simpleza para el desarrollo de software significa que debemos empezar
con la cosa más simple que podamos hacer. Nos pide hacer la cosa más sencilla hoy, a
sabiendas de que tal vez mañana tengamos que cambiarla un poco. Para ello debemos estar
enfocados claramente en los objetivos del proyecto, lo cual es en realidad un valor básico.
Retroalimentación. Ocurre cuando los clientes crean pruebas funcionales para todas
las historias que hayan implementado posteriormente los programadores. La
retroalimentación ayuda a los programadores a realizar ajustes y permite a la empresa
empezar a experimentar con mucha antelación lo que será el nuevo sistema una vez que sea
completamente funcional.
(Kendall, 1988)
Valor. El valor de la valentía tiene que ver con un nivel de confianza y confort que
debe existir en el equipo de desarrollo. Significa no tener miedo de desperdiciar una tarde o
un día de programación y empezar de nuevo si no todo está bien. Significa poder estar en
contacto con los instintos de uno mismo (y los resultados de prueba) en relación con lo que
funciona y lo que no.
Principios básicos del Modelado Ágil
Los principios agiles son reflejos y especiaciones de los valores agiles. Sirven como
lineamientos que los desarrolladores pueden seguir al desarrollar sistemas. También sirven
MODELADO AGIL Y PROTOTIPOS
21
para diferenciar las metodologías agiles de las metodologías más tradicionales basadas en
planes como SDL, así como las metodologías orientadas a objetos.
Estos principios se pueden expresar en una serie de dichos tales como:
1. Satisfacer al cliente por medio de la entrega de software funcional.
2. Adoptar el cambio, incluso si se introduce en las últimas etapas del desarrollo.
3. Seguir entregando software funcional en incrementos y con frecuencia.
4. Fomentar a los clientes y analistas a que trabajen juntos a diario.
5. Confiar en los individuos motivados para que realicen su trabajo.
6. Promover la conversación cara a cara.
7. Concentrarse en hacer que el software funcione.
8. Fomentar el desarrollo continuo, regular y sostenible.
9. Adoptar la agilidad con especial atención en un diseño lúcido.
10. Apoyar a los equipos autoorganizados.
11. Proveer retroalimentación rápida.
12. Fomentar la calidad.
13. Revisar y ajustar el comportamiento de vez en cuando.
14. Adoptar la simpleza.
Con frecuencia escuchará a los desarrolladores ágiles a medida que comunican su
opinión por medio de dichos como los antes mencionados, o incluso frases más simples tales
como “modelar con un propósito”, “el software es su objetivo primario” y “viaje ligero”, una
forma de decir que es suficiente con poca documentación.
MODELADO AGIL Y PROTOTIPOS
22
(Kendall, 1988)
Actividades, recursos y prácticas del modelado ágil
Cuatro actividades del modelado ágil
Cuatro variables de Control de Recursos del Modelo Ágil
Es admirable completar todas las actividades en el proyecto a tiempo y dentro de todas
las restricciones, pero, como probablemente habrá averiguado para estos momentos, para
Tiempo
Asignar tiempo suficiente para completar el
sistema, y entender que lo necesita para varias actividades distintas:
escuchar a los clientes, diseñar, codificar y
probar.
Costo
Suponga que las actividades de
codificación, diseño, prueba y escucha están
sobrecargando el proyecto y los recursos
que invertimos en el tiempo, alcance y localidad no son
suficientes, incluso aunque dediquemos una cantidad normal al costo
para equilibrar el proyecto.
Calidad
Si los sistemas ideales son perfectos, ¿por qué
hay que poner tanto esfuerzo en dar
mantenimiento a los sistemas? ¿Acaso
estamos practicando ya el desarrollo ágil al
sacrificar la calidad en el desarrollo de software?
Alcance
Para determinar el alcance hay que escuchar a los clientes y hacer que
escriban sus historias, que se examinan después para determinar cuánto
se puede hacer en un tiempo dado para
satisfacerlos. Las historias deben ser breves y fáciles
de comprender.
•La codificación es la actividad indispensable. Elproceso es fundamentalmente el siguiente: Elijauna idea, codifíquela, pruébela y comprue si laidea era lógica.
Codificar•La metodología ágil aboga por la escritura de
pruebas para verificar codificación, funcionalidad,rendimiento y cumplimiento. El modelado ágil sebasa en las pruebas automatizadas.
Probar•En la metodología ágil, el proceso de escuchar se
lleva al extremo. Los desarrolladores utilizan laescucha activa para oír a su socio deprogramación.
Escuchar•Es una forma de crear una estructura para
organizar toda la lógica en el sistema. El diseño esevolutivo, y por ende los sistemas que se diseñanmediante el método ágil.
Diseñar
MODELADO AGIL Y PROTOTIPOS
23
lograr esto es imprescindible administrar el proyecto correctamente. Y esto implica no sólo
reunir todas las tareas y recursos; también significa que el analista sacrifique algunas ventajas
por otras. A continuación, hablaremos sobre estas variables de control de recursos:
(Kendall, 1988)
Cuatro Practicas Ágiles Básicas
Hay cuatro prácticas básicas que marcan una diferencia considerable entre la
metodología ágil y las demás metodologías:
entregas pequeñas, semana de trabajo de 40 horas,
alojar al cliente en el sitio, y programar en pareja.
1. En las entregas pequeñas, el equipo de
desarrollo comprime el tiempo entre
entregas de su producto. En vez de
entregar una versión completa con todas
las características en un año, mediante el
uso de la práctica de entregas pequeñas reducen el tiempo de entrega al resolver las
características más importantes primero y entregar ese sistema o producto para
mejorarlo más adelante.
2. En la semana de trabajo de 40 horas, los equipos de desarrollo ágil patrocinan una
práctica básica cultural en la que el equipo trabaja intensamente durante una semana
laboral de 40 horas. Esta práctica básica intenta motivar a los miembros del equipo
para que trabajen en forma intensa y después se tomen tiempo de descanso, para que
cuando regresen se encuentren relajados y menos estresados. Esto ayuda a los
miembros del equipo a detectar problemas con más facilidad, al tiempo que evita
costosos errores y omisiones debido a un rendimiento inefectivo o al agotamiento.
MODELADO AGIL Y PROTOTIPOS
24
3. Alojar al cliente en el sitio; es decir, tener “en casa”, durante el proceso de desarrollo,
a un usuario experto en el aspecto de negocios relacionado con el trabajo de desarrollo
de sistemas.
4. La programación en pareja es una importante práctica básica. Aquí usted trabaja con
otro programador que usted mismo haya elegido. Ambos realizan la codificación y las
pruebas. A menudo la persona con más experiencia emprenderá el proceso de
codificación primero, pero a medida que la menos experimentada se empiece a
involucrar, el que tenga la visión clara sobre el objetivo será quien se encargue de la
codificación.
(Kendall, 1988)
El proceso de desarrollo ágil
El modelado ágil aprovecha la oportunidad de crear modelos que pueden ser
lógicos, como los dibujos de los sistemas, o maquetas de tamaño natural, Un proceso
ordinario de modelado ágil podría ser el siguiente:
1. Escuchar las historias de los usuarios por medio del cliente.
(Comment, 2014)
2. Crear historias de usuarios con base en el modelo lógico. Las prácticas básicas están
interrelacionadas con los recursos, actividades y valores del modelado ágil.
MODELADO AGIL Y PROTOTIPOS
25
(Kendall&Kendall, 2011)
3. Dibujar un modelo del flujo de trabajo lógico para apreciar las decisiones de
negocios representadas en la historia de un usuario.
4. Usar la retroalimentación de los prototipos y los diagramas del flujo de trabajo
lógico para desarrollar el sistema hasta crear un modelo físico de datos.
El modelado ágil se enfoca directamente en la palabra ágil. Ágil implica capacidad de
maniobrar. Los sistemas actuales, en especial los que están basados en Web, imponen
demandas gemelas: entregar el software tan pronto como sea posible y seguir mejorándolo
para agregar nuevas características. El analista de sistemas necesita tener la capacidad y los
métodos para crear aplicaciones dinámicas, sensibles al contexto, escalables y evolutivas. El
modelado ágil como tal es un método que adopta el cambio.
MODELADO AGIL Y PROTOTIPOS
26
(Mota, 2017)
Modelo de Metodología Ágil utilizados más para desarrollo del proceso ágil
SCRUM los equipos de desarrollo empiezan el proyecto con un plan de alto nivel que
se puede modificar al instante, a medida que avanza el “juego”. Los miembros del equipo de
desarrollo de sistemas deben tener en cuenta que el éxito del proyecto es lo más importante y
que su éxito individual es secundario. El líder del proyecto tiene sólo un poco de influencia
sobre los detalles.
MODELADO AGIL Y PROTOTIPOS
27
(School, 2019)
Lecciones aprendidas del modelado ágil
La primera lección es que las entregas pequeñas permiten a los sistemas evolucionar.
Las actualizaciones de los productos se realizan con frecuencia y los cambios se incorporan
con rapidez. De esta forma, el sistema puede crecer y expandirse en formas útiles para el
cliente.
La segunda lección es que la programación en pareja mejora la calidad en general.
Aunque este tipo de programación es controversial, en definitiva, promueve otras actividades
positivas necesarias en el desarrollo de sistemas: una buena comunicación, lograr identificarse
con el cliente, enfocarse en los aspectos más valiosos del proyecto
primero, evaluar todo el código a medida que se desarrolla e integrar el nuevo código
una vez que pase las pruebas con éxito.
La tercera lección es que los clientes en el sitio son benéficos tanto para la empresa
como para el equipo de desarrollo ágil. Los clientes actúan como una referencia preparada y
una comprobación de la realidad; además siempre se mantiene el enfoque del diseño del
sistema a través de su presencia.
MODELADO AGIL Y PROTOTIPOS
28
La cuarta lección es que la semana de trabajo de 40 horas mejora la efectividad.
Incluso los desarrolladores más resistentes son susceptibles a errores y agotamiento si trabajan
demasiado por un periodo muy extenso. Sin embargo, cuando el equipo de desarrollo está
unido, cada momento cuenta.
La quinta lección que obtenemos de la metodología ágil es que los recursos y las
actividades equilibradas apoyan los objetivos del proyecto.
La última lección que obtenemos de las metodologías de modelado ágil es que los
valores ágiles son imprescindibles para el éxito. Es esencial para el éxito en general del
proyecto que los analistas adopten sin reservas los valores de comunicación, simpleza,
retroalimentación y valentía en todo el trabajo que realicen.
Comparación entre el modelo ágil y métodos estructurados
Hoy en día en muchas organizaciones adoptan un modelo para poder llegar a cumplir
los objetivos propuestos y evitar el mayor número de problemas, riesgos o amenazas para
ello es obligatorio que el conjunto de empleados que conforman la organización tenga el
conocimiento y las herramientas necesarias para poder usar de manera adecuada el sistema
que esta implementado, cumplir estos requisitos los analistas de las organizaciones hacen un
previo análisis para obtener las conclusiones necesarias utilizando diferentes técnicas y
realizando una comparación entre los dos modelos para obtener el más convincente en este
caso destacamos El Modelado Ágil y Métodos Estructurados.
Modelado Ágil
El analista debe reconocer que algunas veces las organizaciones se benefician mejor
de una metodología alternativa esto se da porque la metodología estructurada no se acopla a
lo que el proyecto del sistema requiere. El modelado ágil se basa en valores, principios y
practicas básicas. Las metodologías ágiles nacen como respuesta a los problemas que se
MODELADO AGIL Y PROTOTIPOS
29
presentan en las metodologías tradicionales y se basa en dos aspectos fundamentales, retrasar
las decisiones y la planificación adaptativa. las metodologías están basadas en adaptabilidad
de los procesos de desarrollo. Las metodologías ágiles ven más importante la capacidad de
adaptarse a los cambios que el seguir un plan estricto de desarrollo.
(KENDALL, 2011)
Métodos Estructurados
La metodología permite diseñar detalladamente, paso a paso, los sistemas y programas
del análisis. Cada uno de los pasos se involucran en el análisis, en el desarrollo del diseño y
en la medición de la calidad del diseño. El diagrama es la principal herramienta generada en el
diseño estructurado, donde el procedimiento del programa y su ordenación jerárquica exhibe
los datos entre ellos. Una de las características importantes dentro de este es el alto costo que
significaría realizar un cambio a nuestro proyecto y la falta de flexibilidad en proyectos donde
el entorno es cambiante. Los métodos estructurados centran su atención en la documentación,
planificación y procesos. El modelo tiene siete fases del desarrollo del sistema que son:
MODELADO AGIL Y PROTOTIPOS
30
(Yourdon, 1982)
Diferencias entre Modelado Ágil y Métodos Estructurados
Modelado Ágil Métodos Estructurados
Están preparadas para cambios
durante el proyecto.
Son poco flexibles a los cambios.
Proceso menos controlado, con
pocos principios.
Proceso mucho más controlado,
con numerosas normas.
No existe contrato tradicional o al
menos es bastante flexible.
Existe un contrato prefijado.
El cliente es parte activa en el
proceso de desarrollo.
El cliente interactúa con el equipo
solo mediante reuniones de entregas.
Grupos pequeños, 10 integrantes
o menos y trabajando en el mismo sitio
en el cual todos tienen conocimiento
sobre todo el proceso de desarrollo.
Grupos grandes y posiblemente
distribuidos donde a cada integrante se
le asignan tareas específicas.
MODELADO AGIL Y PROTOTIPOS
31
Menos énfasis en la arquitectura
del software.
La arquitectura del software es
esencial y se expresa mediante modelos.
Ciclo de vida de las metodologías tradicionales y agiles
Ventajas y Desventajas de los Modelos Estructurados
Ventajas
1. Centran su atención en llevar una documentación exhaustiva de todo el proyecto.
2. Llevan un plan de proyecto.
3. Se definen las etapas claramente definiendo los roles.
Desventajas
1. Altos costos al implementar un cambio
2. No ofrecer una buena solución para proyectos donde el entorno es volátil.
3. Ejecuta las etapas una sola vez, lo que se define en cada etapa es inamovible y hasta que
no finaliza con éxito una etapa no se pasa a la siguiente
4. El usuario no ve el producto hasta el final.
MODELADO AGIL Y PROTOTIPOS
32
Ventajas y Desventajas de los Modelado Ágil
Ventajas
1. Rápida respuesta a los cambios.
2. Intervención del cliente en el proceso.
3. Entregas del producto a intervalos.
4. Eliminación de tareas innecesarias.
Desventajas
1. Fuerte dependencia de los líderes
2. Falta de documentación.
3. Soluciones erróneas en etapas largas.
MODELADO AGIL Y PROTOTIPOS
33
Referencias
Kendall, K. &. (1988). Analisis y diseño de sistemas. En K. &. Kendall. Pearson.
Senn, J. A. (1988). Analisis y diseño de sistemas de información. En J. A. Senn,
Analisis y diseño de sistemas de información (pág. 643). México: McGraw-Hill.
Maldonado, D. (2019, 03 5). infogram. Obtenido de https://infogram.com/metodos-
desarrollo-de-software-1gj725dy18x6p1l
Robinson Campaña. (10 de 4 de 2015). researchgate. Obtenido de
https://www.researchgate.net/publication/303839299_El_proceso_de_desarrollo_rapido_de_a
plicaciones_DRA_de_software_Un_aporte_practico_en_el_Instituto_Geografico_Militar
Ian Sommerville. (2005). Ingeniería de Software Séptima edición. Madrid: Pearson
Educación.
Comment, E. L. (03 de 09 de 2014). entuxia. Obtenido de entuxia:
http://www.entuxia.com/como-escuchar-la-voz-del-cliente-ii/
Kendall&Kendall. (2011). Análisis y Diseño de Sistemas. Naucalpan de Juárez, Estado
de México: Pearson Educación de México.
Mota, E. (18 de enero de 2017). azulweb. Obtenido de azulweb:
https://www.azulweb.net/desarrollo-agil-esta-cambiando-la-industria-del-software/
School, B. (2019). obs. Obtenido de obs: https://www.obs-edu.com/es/blog-project-
management/scrum/como-emplear-la-metodologia-scrum-en-el-tablero-de-trello
Braian Alvarado, E. Q. (12 de Marzo de 2015). Analisis de sistemas. Obtenido de Analisis de sistemas:
https://analisisdesistemas1.wordpress.com/software/5-proceso-de-desarrollo-de-sw-
modelo-en-cascada/
Camacho, F. (Martes de Abril de 2016). Metodologías. Obtenido de Metdologías:
http://diferenciasmetodologias.blogspot.com/
MODELADO AGIL Y PROTOTIPOS
34
Ingenieria de Software. (18 de Septiembre de 2017). Obtenido de Ingenieria de Software:
http://tic01-ingenieria-de-software-lau.blogspot.com/2017/09/ventajas-y-desventajas-de-
metodologias.html