10
INGENIERIA EN SISTEMAS COMPUTACIONALES INGENIERIA DE SOFTWARE UNIDAD II MODELOS DE INGENIERIA DEL SOFTWARE INVESTIGACION: METODOLOGIA INCREMENTAL ISC GIL SANTANA ESPARZA, MCA S501 10-10-2016 HERNANDEZ MEDINA JOSUE SOSA MEJIA ANEL VERONICA VIZCAINO NUÑEZ JOSUE ALFONSO 1

Metodologia incremental

Embed Size (px)

Citation preview

INGENIERIA EN SISTEMAS COMPUTACIONALES

INGENIERIA DE SOFTWARE

UNIDAD II

MODELOS DE INGENIERIA DEL SOFTWARE

INVESTIGACION: METODOLOGIA INCREMENTAL

ISC GIL SANTANA ESPARZA, MCA

S501

10-10-2016

HERNANDEZ MEDINA JOSUE

SOSA MEJIA ANEL VERONICA

VIZCAINO NUÑEZ JOSUE ALFONSO

Fecha de entrega:17/10/2016

1

INTRODUCCION La investigación que se presenta a continuación trata de la metodología

incremental, como es, sus características, sus ventajas y desventajas,. La

metodología incremental consta de cinco etapas la primera de ellas es

Comunicación. “Antes de que comience cualquier trabajo técnico, tiene

importancia crítica comunicarse y colaborar con el cliente (y con otros

participantes).Se busca entender los objetivos de los participantes respecto del

proyecto, y reunir los requerimientos que ayuden a definir las características y

funciones del software.” Roger Pressman. La siguiente es la Planeación. Que

como su nosmbre lo indica se deble planar las tareas y técnicas. Despues

tenemos Modelado. Elingeniero de software crea modelos a fin de entender mejor

los requerimientos del software y el diseño seguidamente la Construcción. En esta

etapa es en la que se debe desarrlar el sistema es decir la programación y por

ultimo y muy importante la etapa del Despliegue. El software se entrega al

consumidor que lo evalúa y se prosigue con la metodología ya que como sabemos

esto solo será un pequeño incremento pero funcional.

Seguido de las etapas tenemos las características que se detallan en la pagina cinco, las

ventajas y desventajas que son las que vemos a continuación se detallan muy bien para

que el lector las comprenda rápidamente las principales ventajas de esta metodología son

que los clientes no tienen que esperar hasta que el sistema este listo por completo ya que

el primer incremento es funcional pueden hacer uso de el y evaluarlo, como los clientes

están muy involucrados con el sistema el resultado suele ser positivo, la principal

desventaja es que pueden aumentar el coste debido a las pruebas.

METODOLOGIA INCREMENTALEl modelo incremental combina elementos del modelo lineal secuencial (aplicados

repetidamente) con la filosofía interactiva de construcción de prototipos. Aplica

2

secuencias lineales de forma escalonada mientras progresa el tiempo en el

calendario.

Es decir, bajo este modelo se entrega software “por partes funcionales mas

pequeñas”, pero reutilizables, llamadas incrementos. En general cada incremento

se construye sobre aquel que ya fue entregado.

Cuando se utiliza un modelo incremental, es frecuente que el primer incremento

sea el producto esencial. Este modelo se centra en la entrega de un producto

operativo con cada incremento. Los primeros incrementos son versiones

incompletas del producto final, pero proporcionan al usuario la funcionalidad que

precisa y también una plataforma para la evaluación.

El Modelo Incremental es de naturaleza interactiva brindando al final de cada

incremento la entrega de un producto completamente operacional. Este modelo es

particularmente útil cuando no se cuenta con una dotación de personal suficiente.

Los primeros pasos los pueden realizar un grupo reducido de personas y en cada

incremento se añadirá personal, de ser necesario. Por otro lado los incrementos

se pueden planear para gestionar riesgos técnicos.

Durante el proceso se trata de llevar a cabo al proyecto en diferentes partes que al

final terminará siendo la solución completa requerida por el cliente, pero éstas

partes no se pueden realizar en cualquier orden, sino que dependen de lo que el

cliente este necesitando con más urgencia, de los puntos más importantes del

proyecto, los requerimientos más básicos, difíciles y con mayor grado de riesgo,

ya que estos se deben hacer al comienzo, de manera que se disminuya la

dificultad y el riesgo en cada versión.

De este modo podemos terminar una aplicación ejecutable (primera versión) que

podrá ser entregada al cliente para que éste pueda trabajar en ella y el

programador pueda considerar las recomendaciones que el cliente efectúe para

hacer mejoras en el producto. Estas nuevas mejoras deberán esperar a ser

integradas en la siguiente versión junto con los demás requerimientos que no

fueron tomados en cuenta en la versión anterior.

3

El modelo incremental consiste en un desarrollo inicial de la arquitectura completa

del sistema, seguido de sucesivos incrementos funcionales. Cada incremento

tiene su propio ciclo de vida y se basa en el anterior, sin cambiar su funcionalidad

ni sus interfaces. Una vez entregado un incremento, no se realizan cambios sobre

el mismo, sino únicamente corrección de errores. Dado que la arquitectura

completa se desarrolla en la etapa inicial, es necesario conocer los requerimientos

completos al comienzo del desarrollo.

ETAPAS:Comunicación. “Antes de que comience cualquier trabajo técnico, tiene

importancia crítica comunicarse y colaborar con el cliente (y con otros

participantes).Se busca entender los objetivos de los participantes respecto del

proyecto, y reunir los requerimientos que ayuden a definir las características y

funciones del software.” Roger Pressman. En esta etapa se lleva acabo la

comunicación con el cliente y se le levantan los requerimientos que tendrá el

software.

Planeación. Describe las tareas técnicas por realizar, los riesgos probables, los

recursos que se requieren, los productos del trabajo que se obtendrán y una

programación de las actividades.

Modelado. Un ingeniero de software crea modelos a fin de entender mejor los

requerimientos del software y el diseño que los satisfará.

Construcción. Esta actividad combina la generación de código (ya sea manual o

automatizada) y las pruebas que se requieren para descubrir errores en éste.

Despliegue. El software (como entidad completa o como un incremento

parcialmente terminado) se entrega al consumidor que lo evalúa y que le da

retroalimentación, misma que se basa en dicha evaluación.

Representación grafica del modelo incremental:

4

CARACTERISTICAS

Cada incremento agrega funcionalidad adicional o mejorada sobre el sistema

Cada etapa debe cumplir con los requisitos de las desarrolladas

La propuesta del modelo es diseñar sistemas que puedan entregarse por piezas.

A partir de la evaluación se planea el siguiente incremento y así sucesivamente.

Es interactivo

Es útil cuando el personal no es suficiente para la implementación completa.

En lugar de entrega del sistema en una sola entrega, el desarrollo y la entrega

están fracturados bajo incrementos, con cada incremento que entrega parte dela

funcionalidad requerida.

Los requerimientos del usuario se priorizan y los requerimientos de prioridad más

altos son incluidos en los incrementos tempranos.

Hechos de incrementos tempranos como un prototipo, ayudan a obtener requisitos

para los incrementos más tardíos.

Los usuarios no tiene que esperar.

5

El desarrollo incremental es el proceso de construcción siempre incrementando

subconjuntos de requerimientos del sistema.

Se evitan proyectos largos y se entrega “Algo de valor” a los usuarios con cierta

frecuencia.

El usuario se involucra más

Requiere gestores experimentados

VENTAJAS

Los clientes no tienen que esperar hasta que el sistema se entregue

completamente para comenzar a hacer uso de él.

Los clientes pueden usar los incrementos iniciales como prototipo para precisar los

requerimientos posteriores del sistema.

Minimización del riesgo de falla en el proyecto porque los errores se van

corrigiendo progresivamente.

El resultado puede ser muy positivo.

DESVENTAJAS

Difícil de aplicar a sistemas transaccionales que tienden a ser integrados y a operar

como un todo.

Riesgos largos y complejos.

Pueden aumentar el coste debido a las pruebas.

Los errores en los requisitos se detectan tarde.

GRAFICA DE GANTT

6

CONCLUSION La metodolgia incremental combina las ventahas de la metodología en cascada y del modelo lineal secuencial (aplicados repetidamente) con la filosofía interactiva de construcción de prototipos.

En esta metodología los clientes identifican a grandes ragos los servivios que proporcionara el sistema, indentificacan que servicios serán mas importantes y cuales menos, entonces se definen varios incrmentos en donde cada uno proporciona un subconjuto de la funcionalidad del sistema Una vez que los incrementos del sistema se han identificado, los requerimientos para los servicios que se van a entregar en el primer incremento se definen en detalle, y éste se desarrolla. Una vez que un incremento se completa y entrega, los clientes pueden ponerlo en servicio. Cuando se entrega un incremento, no se realizan cambios sobre el mismo, sino únicamente corrección de errores. Dado que la arquitectura completa se desarrolla en la etapa inicial, es necesario conocer los requerimientos completos al comienzo del desarrollo.

Esto significa que tienen una entrega temprana de parte de la funcionalidad del sistema. Pueden experimentar con el sistema, lo cual les ayuda a clarificar sus requerimientos para los incrementos posteriores y para las últimas versiones del incremento actual. Tan pronto como se completan los nuevos incrementos, se integran en los existentes de tal forma que la funcionalidad del sistema mejora con cada incremento entregado.

se ha desarrollado una variante de este enfoque incremental denominada programación extrema (Beck, 2000). Ésta se basa en el desarrollo y la entrega de incrementos de funcionalidad muy pequeños, en la participación del cliente en el proceso, en la mejora constante del código y en la programación por parejas.

7