[go: up one dir, main page]

0% encontró este documento útil (0 votos)
176 vistas12 páginas

Modelos de Desarrollo de Software

Un modelo de procesos del software es una descripción simplificada de un proceso del software que presenta una visión de ese proceso. Estos modelos pueden incluir actividades que son parte de los procesos y productos de software y el papel de las personas involucradas en la ingeniería del software. Algunos ejemplos de estos tipos de modelos que se pueden producir son:

Cargado por

Khrys De La Vega
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)
176 vistas12 páginas

Modelos de Desarrollo de Software

Un modelo de procesos del software es una descripción simplificada de un proceso del software que presenta una visión de ese proceso. Estos modelos pueden incluir actividades que son parte de los procesos y productos de software y el papel de las personas involucradas en la ingeniería del software. Algunos ejemplos de estos tipos de modelos que se pueden producir son:

Cargado por

Khrys De La Vega
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
Está en la página 1/ 12

UNIDAD 2

MÉTODOS DEL
DESARROLLO DE
SOFTWARE

ACTIVIDAD 1
INGENIERÍA DE SOFTWARE
MODELOS DE
DESARROLLO DE
MODELOS DE DESARROLLO DE SOFTWARE

Un modelo de procesos del software es una descripción simplificada de un proceso del software que presenta una visión de ese proceso. Estos modelos pueden incluir
actividades que son parte de los procesos y productos de software y el papel de las personas involucradas en la ingeniería del software. Algunos ejemplos de estos tipos de
modelos que se pueden producir son:

1. Un modelo de flujo de trabajo. Muestra la secuencia de actividades en el proceso junto con sus entradas, salidas y dependencias. Las actividades en este modelo
representan acciones humanas.
2. Un modelo de flujo de datos o de actividad. Representa el proceso como un conjunto de actividades, cada una de las cuales realiza alguna transformación en los datos.
Muestra cómo la entrada en el proceso, tal como una especificación, se transforma en una salida, tal como un diseño. Pueden representar transformaciones llevadas a
cabo por las personas o por las computadoras.
3. Un modelo de rol/acción. Representa los roles de las personas involucrada en el proceso del software y las actividades de las que son responsables.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo

Modelo de la Secuencial. Es un proceso de desarrollo  Está compuesto por  El tiempo que se pasa en diseñar el  En muchas ocasiones, los clientes no saben bien
cascada secuencial, en el que el una serie de fases que producto en las primeras fases del los requisitos que necesitarán antes de ver una
desarrollo de software se se ejecutan proceso puede evitar problemas que primera versión del software en funcionamiento.
concibe como un conjunto de secuencialmente. serían más costosos cuando el Entonces, cambiarán muchos requisitos y añadirán
etapas que se ejecutan una  Obtención de proyecto ya estuviese en fase de otros nuevos, lo que supondrá volver a realizar
tras otra. Se le denomina así documentos como desarrollo. fases ya superadas y provocará un incremento del
por las posiciones que ocupan criterio de finalización  La documentación es muy exhaustiva coste.
las diferentes fases que de fase. y si se une al equipo un nuevo  No se va mostrando al cliente el producto a
componen el proyecto, desarrollador, podrá comprender el medida que se va desarrollando, si no que se ve el
colocadas una encima de otra, proyecto leyendo la documentación. resultado una vez ha terminado todo el proceso.
y siguiendo un flujo de  Al ser un proyecto muy estructurado, Esto cual provoca inseguridad por parte del cliente
ejecución de arriba hacia con fases bien definidas, es fácil que quiere ir viendo los avances en el producto.
abajo, como una cascada. entender el proyecto.  Los diseñadores pueden no tener en cuenta todas
 Ideal para proyectos estables, donde las dificultades que se encontrarán cuando estén
los requisitos son claros y no van a diseñando un software, lo que conllevará
cambiar a lo largo del proceso de rediseñar el proyecto para solventar el problema.
desarrollo.  Para proyectos a largo plazo, este modelo puede
suponer un problema al cambiar las necesidades
del usuario a lo largo del tiempo. Si por ejemplo,
tenemos un proyecto que va a durar 5 años, es
muy probable que los requisitos necesiten
adaptarse a los gustos y novedades del mercado.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo

Modelos de Son modelos iterativos, permiten  Gestionan bien la  La especificación puede  Proceso no Visible: Los administradores
proceso desarrollar versiones cada vez más naturaleza evolutiva del desarrollarse de forma creciente. necesitan entregas para medir el progreso. Si
evolutivo completas y complejas, hasta llegar al software.  Los usuarios y desarrolladores el sistema se necesita desarrollar rápido, no
objetivo final deseado; incluso  Son iterativos: logran un mejor entendimiento es efectivo producir documentos que reflejen
evolucionar más allá, durante la fase construyen versiones de del sistema. Esto se refleja en cada versión del sistema.
de operación. Los modelos “Iterativo software cada vez más una mejora de la calidad del  Sistemas pobremente estructurados: Los
Incremental” y “Espiral” (entre otros) completas. software. cambios continuos pueden ser perjudiciales
son dos de los más conocidos y  Es más efectivo que el modelo de para la estructura del software haciendo
Se adaptan bien:
utilizados del tipo evolutivo. cascada, ya que cumple con las costoso el mantenimiento.
 Los cambios de necesidades inmediatas del  Se requieren técnicas y herramientas: Para el
El modelo cuyas etapas consisten en
requisitos del producto. cliente. rápido desarrollo se necesitan herramientas
expandir incrementos de un producto
 Especificaciones que pueden ser incompatibles con otras o que
de software operacional donde la ES INTERACTIVO
parciales del producto. poca gente sabe utilizar.
dirección de la evolución la dicta la
 Con cada incremento se entrega  Este modelo está enfocado a la producción de
experiencia con el sistema.
al cliente un producto prototipos.
Existen dos tipos de desarrollo
evolutivo.
operacional, que puede  El progreso no es visible.
evaluarlo.
 desarrollo exploratorio: donde el
objetivo del proceso es trabajar PERSONAL
con el cliente para explorar sus
 Permite variar el personal
requerimientos y entrar un
asignado a cada interacción.
sistema final.
 prototipos desechables: donde el GESTION RIESGOS TECNICOS
objetivo del proceso de desarrollo  Por ejemplo disponibilidad
evolutivo, es comprender los de hardware especifico.
requerimientos del cliente y
entonces desarrollar una
definición mejorada de los
requerimientos para el sistema.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo
 No modifica el flujo del ciclo de  Debido a que el usuario ve que el prototipo
modelo Secuencial. También conocido como desarrollo  Es una aplicación que
vida. funciona piensa que este es el producto
iterativo con prototipación o modelo de funciona.
 Reduce el riesgo de construir terminado y no entienden que recién se va a
basado en desarrollo evolutivo, se inicia con la  Su finalidad es probar
productos que no satisfagan las desarrollar el software.
prototipos definición de los objetivos globales varias suposiciones con
para el software, luego se identifican necesidades de los usuarios.  El desarrollador puede caer en la tentación de
respecto a las
los requisitos conocidos y las áreas del  Reduce costo y aumenta la ampliar el prototipo para construir el sistema
características requeridas
esquema en donde es necesaria más probabilidad de éxito. final sin tener en cuenta los compromisos de
por el sistema.
 Exige disponer de las calidad y mantenimiento que tiene con el
definición. Este modelo se utiliza para  Se crean con rapidez.
herramientas adecuadas. cliente.
dar al usuario una vista preliminar de  Evolucionan a través de
parte del software. Este modelo es  Este modelo es útil cuando el
un proceso iterativo.
cliente conoce los objetivos
básicamente prueba y error ya que si  Tienen un costo bajo de
al usuario no le gusta una parte del generales para el software, pero
desarrollo.
no identifica los requisitos
prototipo significa que la prueba fallo  Provee de soporte para
por lo cual se debe corregir el error detallados de entrada,
determinar la efectividad
que se tenga hasta que el usuario procesamiento o salida.
de los procesos y de la
quede satisfecho.  También ofrece un mejor
calidad del producto.
enfoque cuando el responsable
 Permite estudiar y
del desarrollo del software está
después mejorar y
inseguro de la eficacia de un
ajustar el proceso para el
algoritmo, de la adaptabilidad de
ambiente en particular.
un sistema operativo o de la
forma que debería tomar la
interacción humano-máquina.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo

modelo Evolutivo. Es un modelo de ciclo de vida del  permite desarrollar  El análisis del riesgo se hace de  Genera mucho tiempo en el desarrollo del
espiral software definido por primera vez por software aprovechando forma explícita y clara. sistema.
Barry Boehm en 1986, utilizado las ventajas tanto del  Une los mejores elementos de  Modelo costoso.
generalmente en la ingeniería de ciclo de vida clásico los restantes modelos.  Requiere experiencia en la identificación de
software. como de la creación de  Reduce riesgos del proyecto. riesgos.
prototipos.  Incorpora objetivos de calidad.
 Proporciona un modelo  Integra el desarrollo con el
Las actividades de este modelo se evolutivo para el mantenimiento, etc.
conforman en una espiral, en la que desarrollo de sistemas de  Añade la posibilidad de tener en
cada bucle o iteración representa un software complejos, cuenta mejoras y nuevos
conjunto de actividades. Las mucho más realista que requerimientos sin romper con la
actividades no están fijadas a ninguna el ciclo de vida clásico, y metodología, ya que este ciclo de
prioridad, sino que las siguientes se permite la utilización de vida no es rígido ni estático.
eligen en función del análisis de prototipos en cualquier
riesgo, comenzando por el bucle etapa de la evolución del
interior. proyecto.
 incorpora en el ciclo de
vida el análisis de riesgo;
un elemento nuevo, de
cuyo análisis económico
se obtiene la finalización
del desarrollo o su
continuación hasta otras
fases posteriores.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo

Modelos Evolutivo. Es un modelo de tipo de red donde  se puede expresar de  Excelente para proyectos en los  Si no se dan las condiciones señaladas no es
concurrentes todas las personas actúan manera esquematizada. que se conforman grupos de aplicable.
simultáneamente o al mismo tiempo  las actividades llevan trabajo independientes.  Si no existen grupos de trabajo no se puede
desarrollando una serie de actividades procesos concurrentes.  Proporciona una imagen exacta trabajar en este método.
técnicas importantes, tareas y estados  es aplicable a todo tipo del estado actual de un proyecto.  Al compartir recursos pueden surgir
asociados a ellas. de desarrollo de  Ahorro de tiempos y recursos al problemas que no se tienen en consideración.
 Un modelo de proceso software. evitar problemas de  Las empresas de manufactura pequeñas y
concurrente está dirigido por las  es un modulo aplicable compatibilidad entre medianas, no son la más apropiadas para
necesidades del usuario, las para cliente soñador. departamentos y sus respectivos beneficiarse de la ingeniería concurrente.
decisiones de la gestión y los  esta dirigido por las re trabajos.  La estructura de la empresa necesita
resultados de las revisiones. necesidades del usuario.  Mejora del servicio haciendo reorganizarse.
 Excelente para proyectos en los  es aplicable al cliente partícipe al cliente.
que se conforman grupos de servidor.  Mejora el clima de trabajo
trabajo independientes. dentro de la empresa. Estas
 Proporciona una imagen exacta del estrategias elevan la
estado actual de un proyecto. productividad y hacen la
organización más flexible.
 Se desarrollan productos de alta
calidad, con una mejor utilización
del producto
 Reducción de los costes de
desarrollo.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo
 El modelo Incremental no es recomendable para
Modelo de Evolutivo. Es el ciclo de vida de  Difícil de aplicar a los  Con un paradigma incremental se
casos de sistemas de tiempo real, de alto nivel de
proceso desarrollo software en el cual sistemas reduce el tiempo de desarrollo inicial,
seguridad, de procesamiento distribuido, y/o de
incremental un proyecto es descompuesto transaccionales que ya que se implementa la
alto índice de riesgos.
en una serie de incrementos, tienden a ser funcionalidad parcial.
 Requiere de mucha planeación, tanto
cada uno de los cuales integrados y a operar  También provee un impacto
suministra una porción de la administrativa como técnica.
como un todo. ventajoso frente al cliente, que es la
 Requiere de metas claras para conocer el estado
funcionalidad respecto de la  Requiere gestores entrega temprana de partes
totalidad de los requisitos del del proyecto.
experimentados. operativas del Software.
proyecto. Los requisitos tienen  Los errores en los  El modelo proporciona todas las
asignada una prioridad y son requisitos se detectan ventajas del modelo en cascada
entregados según el orden de tarde. realimentado, reduciendo sus
prioridad en el incremento  El resultado puede ser desventajas sólo al ámbito de cada
correspondiente. En algunas positivo. incremento.
(pero no en todas) versiones  Permite entregar al cliente un
de este modelo de ciclo de producto más rápido en comparación
vida, cada sub-proyecto sigue del modelo de cascada.
un “mini-modelo V” con sus  Resulta más sencillo acomodar
propias fases de diseño, cambios al acotar el tamaño de los
codificación y pruebas. incrementos.
 Por su versatilidad requiere de una
planeación cuidadosa tanto a nivel
administrativo como técnico.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo
 Comprar puede ahorrar dinero
modelo de Secuencial. Es un proceso de desarrollo de  Modelo secuencial:  Comprar puede ser más caro que construir.
en comparación con construir.
desarrollo software, desarrollado inicialmente Separación en fases de  Costo de herramientas integradas y equipo
rápido de por James Martin en1980. El método  Los entregables pueden ser
cada caja de tiempo. necesario.
fácilmente trasladados a otra
aplicaciones comprende el desarrollo interactivo, la  Integraciones constantes  Progreso más difícil de medir.
plataforma.
construcción de prototipos y el uso de  Centrado en el código  Menos eficiente.
 El desarrollo se realiza a un nivel
utilidades CASE (Computer Aided más que en la  Menor precisión científica.
de abstracción mayor.
Software Engineering). documentación.  Riesgo de revertirse a las prácticas sin control
 Visibilidad temprana.
Tradicionalmente, el desarrollo rápido  Desarrollo basado en de antaño.
 Mayor flexibilidad.
de aplicaciones tiende a englobar componentes.  Más fallas (por síndrome de “codificar a lo
 Menor codificación manual.
también la usabilidad, utilidad y la  Uso efectivo de bestia”).
rapidez de ejecución.  Mayor involucramiento de los
herramientas y  Prototipos pueden no escalar, un problema
frameworks. usuarios.
mayúsculo.
  Posiblemente menos fallas.
Participación activa del  Funciones reducidas (por “timeboxing”).
 Posiblemente menor costo.
usuario Modelado de  Dependencia en componentes de terceros:
gestión.  Ciclos de desarrollo más
funcionalidad de más o de menos, problemas
 Modelado de datos. pequeños.
legales.
 Generación de  Interfaz gráfica estándar.
Aplicaciones.
 Pruebas y entrega.
MODELOS DE DESARROLLO DE SOFTWARE

Nombre del Tipo de Descripción y concepto Característica Ventajas Desventajas


modelo modelo

modelo scrum Ágil. Es un proceso, marco de trabajo o  Transparencia: Todos los  Scrum es muy fácil de aprender,  Aunque Scrum sea fácil de aprender, es muy
framework, usado en equipos que implicados tienen los roles, eventos y artefactos difícil poder implementarlo. Esto supone una
trabajan en proyectos complejos; conocimiento de qué ocurre son claros y tienen un objetivo predisposición y un cambio de cultura de la
una metodología de trabajo ágil y en el proyecto y cómo muy relacionado a nuestra organización que debe ir desde los altos
que tiene como finalidad la entrega ocurre. Esto hace que haya manera diaria de trabajar. mandos hasta los clientes.
de valor en períodos cortos de un entendimiento “común”  El cliente puede comenzar a usar  La necesidad de tener equipos
tiempo, basada tres pilares: la del proyecto, una visión su producto rápidamente. multidisciplinares puede ser un problema, ya
transparencia, inspección y global.  Se agiliza el proceso, ya que la que es difícil encontrar personas que sean
adaptación.  Inspección: Los miembros entrega de valor es muy capaces de hacer todo el trabajo de un
Se basa en aspectos como la del equipo Scrum frecuente. equipo.
flexibilidad en la adopción de frecuentemente  Menor probabilidad de sorpresas  El equipo puede tender a realizar el camino
cambios y nuevos requisitos inspeccionan el progreso o imprevistos, porque el cliente más corto para conseguir el objetivo de un
durante un proyecto complejo, el para detectar posibles está viendo frecuentemente el Sprint, el cual no siempre es el de mayor
factor humano, la colaboración e problemas. La inspección no proyecto. calidad.
interacción con el cliente y el es un examen diario, sino
desarrollo iterativo como formas una forma de saber que el
de asegurar buenos resultados. trabajo fluye y que el equipo
funciona de manera auto-
organizada.
 Adaptación: Cuando hay
algo que cambiar, el equipo
se ajusta para conseguir el
objetivo del sprint. Esta es la
clave para conseguir éxito
en proyectos complejos,
donde los requisitos son
cambiantes o poco definidos
y en donde la adaptación, la
innovación, la complejidad y
MODELOS DE DESARROLLO DE SOFTWARE

flexibilidad son
fundamentales.
Bibliografía

Openclassrooms, Concepto de Modelo de la cascada, extraído desde: https://openclassrooms.com/en/courses/4309151-gestiona-tu-proyecto-de-desarrollo/4538221-en-que-consiste-el-


modelo-en-cascada, recuperado el día 18 de Febrero 2020.

SlideShare (2020), Concepto de Modelos de proceso incremental, extraído desde: https://es.slideshare.net/mardluz/ingeniera-de-software-modelo-incremental, recuperado el día 18 de
Febrero 2020.

Academia (2020), Concepto de Modelos de proceso incremental, extraído desde: https://www.academia.edu/18873021/MODELOS_DE_PROCESO_DE_SOFTWARE, recuperado el día 18 de
Febrero 2020.

Ingeniería de software (2010), Concepto de Modelos de proceso evolutivo, extraído desde: http://jorgetrejos.blogspot.com/2010/08/modelo-evolutivo.html , recuperado el día 18 de Febrero
2020.

SlideShare (2020), Concepto de Modelos de proceso evolutivo, extraído desde: https://es.slideshare.net/andreslsla/modelo-evolutivo, recuperado el día 18 de Febrero 2020.

SlideShare (2020), Concepto de Modelos concurrentes, extraído desde: https://es.slideshare.net/MauricioChuraBeltran/modelos-de-desarrollo-de-software-66583530, recuperado el día 18 de
Febrero 2020.

Wikipedia (2019), Concepto de Modelo iterativo basado en prototipos, extraído desde: https://es.wikipedia.org/wiki/Desarrollo_iterativo_y_creciente#Caracter%C3%ADsticas, recuperado el día
18 de Febrero 2020.

Wikipedia (2020), Concepto de Modelo de desarrollo rápido de aplicaciones, extraído desde: https://es.wikipedia.org/wiki/Desarrollo_r%C3%A1pido_de_aplicaciones
http://metodologiarad.weebly.com/, recuperado el día 18 de Febrero 2020.

Wikipedia (2019), Concepto de modelo espiral, recuperado desde: https://es.wikipedia.org/wiki/Desarrollo_en_espiral http://modeloespiral.blogspot.com/ , recuperado el día 18 de Febrero
2020.

Universidad estatal de milagro (2011), Concepto de modelo espiral, recuperado desde: https://www.ojovisual.net/galofarino/modeloespiral.pdf, recuperado el día 18 de Febrero 2020.

Wam (2107), Concepto de Modelo Scrum, extraído desde: https://www.wearemarketing.com/es/blog/metodologia-scrum-que-es-y-como-funciona.html , recuperado el día 18 de Febrero 2020.
MODELOS DE DESARROLLO DE SOFTWARE

Wikipedia (2020), Concepto de Modelo Scrum, extraído desde: https://es.wikipedia.org/wiki/Scrum_(desarrollo_de_software), recuperado el día 18 de Febrero 2020.

También podría gustarte