34
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 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 2: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 3: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 4: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

MODELADO AGIL Y PROTOTIPOS

4

Ventajas ................................................................................................................ 32

Desventajas ........................................................................................................... 32

Page 5: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 6: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 7: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 8: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 9: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 10: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 11: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 12: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 13: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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)

Page 14: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 15: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 16: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 17: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

MODELADO AGIL Y PROTOTIPOS

17

(Kendall, 1988)

Page 18: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 19: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 20: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 21: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 22: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 23: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 24: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 25: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 26: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 27: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 28: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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

Page 29: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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:

Page 30: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 31: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 32: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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.

Page 33: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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/

Page 34: MODELADO AGIL Y PROTOTIPOS 1 Modelado Ágil y prototipos ... · Una de las técnicas mas eficaces para recopilar información en el ciclo de vida de desarrollo de sistemas es el desarrollo

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