metodologías clásicas del desarrollo del software

15
Ana Laura Lima Abundes. Agustín Sandoval González. Mirta Astrid Salgado Hernández Metodologías Clásicas del desarrollo del software. “Evolutivo”.

Upload: dolce-gift

Post on 26-Nov-2015

32 views

Category:

Documents


1 download

TRANSCRIPT

Metodologas Clsicas del desarrollo del software. Evolutivo.

Ana Laura Lima Abundes.Agustn Sandoval Gonzlez.Mirta Astrid Salgado Hernndez

Metodologas Clsicas del desarrollo del software.Evolutivo.1Definicin de Metodologa:Una metodologa es un conjunto integrado de tcnicas y mtodos que permite abordar de forma homognea y abierta cada una de las actividades del ciclo de vida de un proyecto de desarrollo. Es un proceso de software detallado y completo. Una metodologa para el desarrollo de software comprende los procesos a seguir sistemticamente para idear, implementar y mantener un producto software desde que surge la necesidad del producto hasta que cumplimos el objetivo por el cual fue creado. Metodologas y Marco de trabajo.Una metodologa de desarrollo de software o metodologa de desarrollo de sistemas en ingeniera de software es un marco de trabajo que se usa para estructurar, planificar y controlar el proceso de desarrollo de un sistema de informacin. El marco de trabajo de una metodologa de desarrollo de software consiste en: Una filosofa de desarrollo de software, con el enfoque o enfoques del proceso de desarrollo de software. Mltiples herramientas, modelos y mtodos para ayudar en el proceso de desarrollo de software. Estos marcos de trabajo estn con frecuencia vinculados a algunos tipos de organizaciones, que se encargan del desarrollo, soporte de uso y promocin de la metodologa. La metodologa con frecuencia se documenta de alguna manera formal. Ventajas segn cada punto de vista.*Desde el punto de vista de gestin: Facilitar la tarea de planificacin Facilitar la tarea del control y seguimiento de un proyecto Mejorar la relacin coste/beneficio Optimizar el uso de recursos disponibles Facilitar la evaluacin de resultados y cumplimiento de los objetivos Facilitar la comunicacin efectiva entre usuarios y desarrolladores *Desde el punto de vista de los ingenieros del software: Ayudar a la comprensin del problema Optimizar el conjunto y cada una de las fases del proceso de desarrollo Facilitar el mantenimiento del producto final Permitir la reutilizacin de partes del producto.

*Desde el punto de vista del cliente o usuario: Garanta de un determinado nivel de calidad en el producto final Confianza en los plazos de tiempo fijados en la definicin del proyecto Definir el ciclo de vida que ms se adecue a las condiciones y caractersticas del desarrollo

Qu realiza?Describe las fases principales de desarrollo de software. Define las fases primarias esperadas de ser ejecutadas durante esas fases. Ayuda a administrar el progreso del desarrollo, y Provee un espacio de trabajo para la definicin de un detallado proceso de desarrollo de software.

EVOLUTIVOSe basa en la idea de desarrollar una implementacin inicial, exponindola a los comentarios del usuario y refinndola a travs de las diferentes versiones hasta que se desarrollan un sistema adecuado.Las actividades de especificacin, desarrollo y validacin se entrelazan en vez de separarse con una rpida retroalimentacin entre estas.Existen 2 tipos de desarrollo evolutivo:Desarrollo exploratorio.Prototipos desechables.El desarrollo evolutivo:El desarrollo evolutivo no demanda una forma especfica de observar el desarrollo de algn incremento. As, el modelo cascada puede ser usado para administrar cada esfuerzo de desarrollo. Obviamente, el desarrollo incremental y evolutivo puede ser combinado tambin. El desarrollo de software en forma evolutiva requiere un especial cuidado en la manipulacin de documentos, programas, datos de test, etc. desarrollados para distintas versiones del software. Cada paso debe ser registrado, la documentacin debe ser recuperada con facilidad, los cambios deben ser efectuados de una manera controlada. Se reconoce que el software, al igual que todos los sistemas complejos, evoluciona con el tiempo.Los modelos evolutivos son interactivos. Se caracterizan por la forma en que permiten los ingenieros del software desarrollar versiones cada vez ms completas del software.

Como el modelo de desarrollo incremental, el modelo de desarrollo evolutivo (algunas veces denominado como prototipado evolutivo) construye una serie de grandes versiones sucesivas de un producto. Sin embargo, mientras que la aproximacin incremental presupone que el conjunto completo de requerimientos es conocido al comenzar, el modelo evolutivo asume que los requerimientos no son completamente conocidos al inicio del proyecto. Diferente del modelo evolutivo donde los requerimientos mejor entendidos estn incorporados, un prototipo generalmente se construye con los requerimientos entendidos ms pobremente.

En el desarrollo en cascada no se tienen en cuenta la naturaleza evolutiva del software. Se debe de tener una especificacin totalmente detallada deTODOSlos requerimientos que debe satisfacer el software que desarrollemos para poder iniciar las diferentes etapas de desarrollo.El desarrollo evolutivo se basa en la idea de desarrollar una implementacin inicial e ir refinndola a travs de diferentes versiones hasta desarrollar un sistema software que satisfaga todos los requerimientos del cliente.Un enfoque evolutivo para el desarrollo de software suele ser ms efectivo que el desarrollo en cascada ya que desde un principio se le entrega al cliente una versin que satisface los requerimientos principales.El modelo iterativo incremental y el modelo en espiral son dos modelos de tipo evolutivo.

El modelo Evolutivo conocido tambin como incremental e iterativo, consiste en hacer la documentacin de las fases, realizando un prototipo del sistema, se evala el qu tan lejos el prototipo est de la solucin final esperada por el cliente; se toman en cuenta las observaciones de esta evaluacin, y se crea un nuevo prototipo que las incluya. Esto se realiza en una vuelta repetitiva donde se incrementa el alcance del prototipo en pequeas proporciones hasta cumplir los requerimientos totales.En este mtodo no es necesario esperar hasta que toda una fase est terminada para iniciar la siguiente. Si se cuenta con una parte del anlisis bien entendida, se puede realizar un primer diseo del corazn o de una parte medular del sistema, hacer su codificacin y con esto, formar nuestro primer prototipo que ampliaremos en las siguientes iteraciones (vueltas), creando prototipos cada vez mejores y amplios con respecto a los requerimientos originales.VentajasLa ventaja es que es ideal para sistemas que no tiene bien definidos los requerimientos, es decir, para la mayora de los sistemas que se desarrollan. El cliente desde el principio tiene una idea de los requerimientos de su sistema, pero no estn claros hasta el ltimo detalle. An as podemos basarnos en lo ya entendido (cliente y desarrollador), trabajar con esta informacin, y mientras se vayan creando prototipos, el cliente detallar sus especificaciones.DesventajasSu desventaja es que es difcil distinguirlo del proceso "codifica y corrige", pues en cierta medida son parecidos, la diferencia est que en la prctica se requiere que al construir el prototipo se aplique el anlisis y el diseo pero slo a una parte de los requerimientos ya entendidos, que se documente y se codifique, logrndose con todo esto, un poco de disciplina heredada del modelo en cascada, de esta manera, la desventaja no lo es tanto. La caracterstica de este modelo es que est enfocado a la produccin de prototipos.

Bibliografa:cdocumentsandsettingssena-sena-61ad16c4e3misdocumentosmodelodedesarrolloevolutivo-090808143231-phpapp02 (1)https://sites.google.com/site/ingeniriadelsoftware/system/app/pages/search?scope=search-site&q=2.1.3+Evolutivohttp://www.slideshare.net/camilosena89/modelo-de-desarrollo-evolutivo