0% encontró este documento útil (0 votos)
224 vistas6 páginas

Infografía

Este documento describe diferentes metodologías de desarrollo de software, incluyendo modelos de proceso prescriptivo como la cascada e incrementales, modelos evolutivos como hacer prototipos y el modelo espiral, modelos concurrentes y modelos de proceso especializado. También define la agilidad como una forma de adaptarse al cambio mediante entregas incrementales frecuentes y prácticas como pruebas unitarias continuas. Un proceso ágil requiere retroalimentación del cliente y factores humanos como competencia, enfoque común y colaboración en el equip

Cargado por

CDavid Z
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
224 vistas6 páginas

Infografía

Este documento describe diferentes metodologías de desarrollo de software, incluyendo modelos de proceso prescriptivo como la cascada e incrementales, modelos evolutivos como hacer prototipos y el modelo espiral, modelos concurrentes y modelos de proceso especializado. También define la agilidad como una forma de adaptarse al cambio mediante entregas incrementales frecuentes y prácticas como pruebas unitarias continuas. Un proceso ágil requiere retroalimentación del cliente y factores humanos como competencia, enfoque común y colaboración en el equip

Cargado por

CDavid Z
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Metodologías de desarrollo de software.

Modelos de proceso prescriptivo.

Los modelos de proceso prescriptivo fueron propuestos originalmente para poner orden en el
caos del desarrollo de software.

La historia indica que estos modelos tradicionales han dado cierta estructura útil al trabajo de
ingeniería de software y que constituyen un mapa razonablemente eficaz para los equipos de
software. Sin embargo, el trabajo de ingeniería de software y el producto que genera siguen
“al borde del caos”.

Modelo de la cascada

El modelo de la cascada, a veces llamado ciclo de vida clásico sugiere un enfoque


sistemático y secuencial6 para el desarrollo del software, que comienza con la especificación
de los requerimientos por parte del cliente y avanza a través de planeación, modelado,
construcción y despliegue, para concluir con el apoyo del software terminado.

Una variante de la representación del modelo de la cascada se denomina modelo en v


se aprecia la relación entre las acciones para el aseguramiento de la calidad y aquellas
asociadas con la comunicación, modelado y construcción temprana.
Modelos de proceso incremental

El modelo incremental aplica secuencias lineales en forma escalonada a medida que


avanza el calendario de actividades. Cada secuencia lineal produce “incrementos” de software
susceptibles de entregarse de manera parecida a los incrementos producidos en un flujo de
proceso evolutivo.

El modelo de proceso incremental se centra en que en cada incremento se entrega un


producto que ya opera. Los primeros incrementos son versiones desnudas del producto final,
pero proporcionan capacidad que sirve al usuario y también le dan una plataforma de
evaluación.
Modelos de proceso evolutivo

Los modelos evolutivos son iterativos. Se caracterizan por la manera en la que


permiten desarrollar versiones cada vez más completas del software.

Hacer prototipos:

Este se centra en la representación de aquellos aspectos del software que serán


visibles para los usuarios finales. El diseño rápido lleva a la construcción de un prototipo. Éste
se entrega y es evaluado por los participantes, que dan retroalimentación para mejorar los
requerimientos.

El modelo espiral.

El modelo espiral usa los prototipos como mecanismo de reducción de riesgos, pero,
más importante, permite aplicar el enfoque de hacer prototipos en cualquier etapa de la
evolución del producto.
Modelos concurrentes

El modelo de desarrollo concurrente, en ocasiones llamado ingeniería concurrente,


permite que un equipo de software represente elementos iterativos y concurrentes de
cualquiera de los modelos de proceso.

El modelado concurrente define una serie de eventos que desencadenan transiciones


de un estado a otro para cada una de las actividades, acciones o tareas de la ingeniería de
software.
Modelos de proceso especializado

Los modelos de proceso especializado tienen muchas de las características de uno o más de los
modelos tradicionales. Sin embargo, dichos modelos tienden a aplicarse cuando se elige un
enfoque de ingeniería de software especializado o definido muy específicamente.

Desarrollo basado en componentes

El modelo de desarrollo basado en componentes incorpora muchas de las características


del modelo espiral. Sin embargo, el modelo de desarrollo basado en componentes construye
aplicaciones a partir de fragmentos de software prefabricados.

¿qué es la agilidad?

La agilidad es algo más que una respuesta efectiva al cambio. La agilidad puede aplicarse a
cualquier proceso del software. Sin embargo, para lograrlo es esencial que éste se diseñe en forma
que permita al equipo del proyecto adaptar las tareas y hacerlas directas, ejecutar la planeación de
manera que entienda la fluidez de un enfoque ágil del desarrollo, eliminar todos los productos del
trabajo excepto los más esenciales y mantener-los esbeltos, y poner el énfasis en una estrategia de
entrega incremental que haga trabajar al software tan rápido como sea posible para el cliente,
según el tipo de producto y el ambiente de operación.

La agilidad y el costo del cambio


Un proceso ágil bien diseñado “aplana” el costo de la curva de cambio lo que permite que el equipo
de software haga cambios en una fase tardía de un proyecto de software sin que haya un efecto
notable en el costo y en el tiempo. El lector ya sabe que el proceso ágil incluye la entrega
incremental. Cuando ésta se acopla con otras prácticas ágiles, como las pruebas unitarias continuas
y la programación por parejas, el costo de hacer un cambio disminuye.

¿qué es un proceso ágil?

Un proceso de software ágil debe adaptarse incrementalmente. Para lograr la adaptación


incremental, un equipo ágil requiere retroalimentación con el cliente.

La política del desarrollo ágil

Nadie está contra la agilidad. La pregunta real es: ¿cuál es la mejor forma de lograrla? De
igual importancia: ¿cómo construir software que satisfaga en el momento las necesidades de los
clientes y que tenga características de calidad que permitan ampliarlo y escalarlo para que también
las satisfaga en el largo plazo?

Factores humanos

Si los miembros del equipo de software son los que van a generar las características del
proceso que van a aplicarse a la elaboración de software, entre ellos debe existir cierto número de
características clave, mismas que debe compartir el equipo ágil como tal:

Competencia.

Enfoque común.

Colaboración.

Habilidad para tomar decisiones.

Capacidad para resolver problemas difusos.

Confianza y respeto mutuos.

Organización propia.

También podría gustarte