Sunteți pe pagina 1din 7

METODOLOGA

UTILIZADA EN/PARA
Se usa cuando los requerimientos para cierto problema se comprenden bien: cuando el trabajo desde la comunicacin hasta el despliegue fluye en forma razonablemente lineal. Esta situacin se encuentra en ocasiones cuando deben hacerse adaptaciones o mejoras bien definidas a un sistema ya existente. Tambin ocurre en cierto nmero limitado de nuevos esfuerzos de desarrollo, pero slo cuando los requerimientos estn bien definidos y tienen una estabilidad razonable.

ETAPAS
Modelo cascada 2005 1. Ingeniera y anlisis del sistema: determinar los requisitos. 2. Anlisis de los requisitos: requisitos del sistema. 3. Diseo: estructura de los datos, la arquitectura del software, el detalle procedimental y la caracterizacin de la interfaz. 4. Codificacin. 5. Prueba. 6. Mantenimiento: ajustes al software. Modelo cascada actual 1. Comunicacin. 2. Planificacin. 3. Modelado. 4. Construccin. 5. Despliegue.

METODOLOGAS VENTAJAS
La ventaja de este mtodo radica en su sencillez ya que sigue los pasos intuitivos necesarios a la hora de desarrollar el software.} Es til en situaciones en las que los requerimientos son fijos y el trabajo avanza en forma lineal hacia el final. -

DESVENTAJAS
Los proyectos reales raramente siguen el flujo secuencial que propone el modelo, siempre hay iteraciones y se crean problemas en la aplicacin del paradigma. Normalmente, es difcil para el cliente establecer explcitamente al principio todos los requisitos. El ciclo de vida clsico lo requiere y tiene dificultades en acomodar posibles incertidumbres que puedan existir al comienzo de muchos productos. El cliente debe tener paciencia. Hasta llegar a las etapas finales del proyecto, no estar disponible una versin operativa del programa. Un error importante no detectado hasta que el programa est funcionando puede ser desastroso. - Los incrementos deben ser pequeos, en el caso de software no deben rebasar las 20000 lneas de cdigo.

OBSERVACIONES
El modelo Cascada es el ms conocido, basada en el ciclo convencional de una ingeniera. A veces llamado ciclo de vida clsico, sugiere un enfoque sistemtico y secuencial para el desarrollo del software.

Modelo de la Cascada

Metodologa Incremental

En este modelo se desarrolla el sistema para satisfacer un subconjunto de los requisitos especificados y en posteriores iteraciones

7. 8. 9. 10.

Anlisis Diseo Cdigo (implementacin) Prueba

- Los clientes no esperan hasta el final para ver un avance del proyecto. - Los clientes pueden utilizar los incrementos para ir

En esta metodologa se requiere realizar todas las etapas, de ser necesario (porque le falta algo, agregar correcciones, modificaciones,

se incrementa el programa con nuevas funcionalidades que satisfagan ms requisitos. Se utiliza para el desarrollo de sistemas.

Se basa en la idea de 1. desarrollar una implementacin inicial, exponindola a los comentarios del usuario refinndola a travs de las 2. diferentes versiones hasta que se desarrolla un sistema adecuado. Un sistema inicial se desarrolla rpidamente a partir de especificaciones abstractas. ste se refina basndose en las peticiones del cliente para producir un sistema que satisfaga sus necesidades. 3. Especificacin inicial: definicin del problema y especificacin inicial con base a los requerimientos definidos.. Desarrollo del producto: desarrollo del software con base a un proceso con nfasis en la rapidez de la liberacin. Implementacin de uso y evaluacin: implantacin y uso del software en ambiente de explotacin, monitoreo de los nuevos requerimientos. Re-especificacin: redefinicin del problema con base a los nuevos requerimientos

conocindolos y hacer una crtica continua para su mejora o correccin en los siguientes incrementos. El riesgo de fallo total del proyecto es bastante bajo ya que en cada incremento se avanza un poco hacia el producto final. El propsito es entregar primero los componentes principales porque con cada incremento reduce la probabilidad de encontrar fallas en dichos componentes. Se evitan proyectos largos y se entrega algo de valor a los usuarios con cierta frecuencia. El usuario se involucra ms. Es interactivo 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.

- Los incrementos deben tener una funcionalidad. - Difcil de evaluar el costo total. - Difcil de aplicar a los sistemas transaccionales que tienden a ser integrados y operar como un todo. - Los errores en los requisitos se detectan tarde y su correccin resulta tan costosa como en el modelo en cascada. -

etc.) se realiza otra iteracin con todas las etapas.

Modelo Evolutivo

4.

Su 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,

Se requiere especial cuidado en la manipulacin de documentos, programas, datos, etc. El cliente tiene el tiempo medido por lo que requiere una entrega del programa aunque sea en su mnima expresin, en otra etapa se va mejorando el programa. 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.

Modelo de desarrollo que busca reemplazar el viejo sistema con uno nuevo que tendra la propiedad de satisfacer los nuevos requerimientos lo ms rpido posible. El desarrollo evolutivo asume que los requerimientos estn sujetos a cambios continuos. Es un enfoque nuevo de la implementacin de estrategia y fue desarrollado por Rentia Muell. Evolucion hacia un enfoque multidimensional hacia la implementacin y la administracin de la estrategia. 1. Comunicacin con el cliente. 2. Planificacin. 3. Anlisis de riesgo. 4. Ingeniera. 5. Construccin y entrega. 6. Evaluacin del cliente. - Los objetivos pueden ser - No se puede abarcar en fcilmente medibles. tan poco tiempo todos los - Habilita a las organizaciones niveles de organizacin a encontrar el 37% del valor potencial perdido durante la implementacin de la estrategia. - Crea oportunidades para el aprendizaje de la implementacin de estrategia y la creacin de nuevo conocimiento, especialmente en los niveles funcionales y operativos. - Crea oportunidades para el aprendizaje de la implementacin de estrategia y la creacin de nuevo conocimiento, especialmente en los niveles funcionales y operativos. Reduccin de la incertidumbre y del riesgo, reduccin de tiempo, y de costos. Incrementos en la aceptacin sistema. Mejoras en la administracin de proyectos. Mejoras en la comunicacin entre desarrolladores y clientes. Este modelo es til cuando el cliente conoce los objetivos generales para el software, pero no La dependencia de las herramientas de software para el xito ya que la necesidad de incertidumbre depende de las iteraciones del prototipo. No es posible aplicar la metodologa a todos los proyectos de software. La mala interpretacin que La metodologa de la espiral sigue una lgica matemtica simple en la cual la x, y, z de la estrategia corporativa se descompone para formar un marco de trabajo matricial. Se enfoca en bajar en cascada un plan estratgico desde el nivel corporativo hasta el nivel operativo, creando, en el proceso, un plano para la implementacin.

Metodologa Espiral

Se utiliza para el desarrollo de prototipos (un prototipo es una representacin de un sistema, aunque no es un sistema completo, posee las caractersticas del sistema final o parte de ellas).

Metodologa Prototipos

1. Investigacin preliminar: definicin del problema, sus efectos organizacionales, estudio de factibilidad, etc. 2. Definicin de los requerimientos del sistema: identificar y registrar los requerimientos. a. Anlisis grueso y especificacin: diseo bsico del prototipo. b. Diseo y construccin: construccin prototipo inicial. c. Evaluacin: verificacin y

A pesar de que tal vez surjan problemas, la construccin de prototipos puede ser un paradigma efectivo para la ingeniera del software. Permite que todo el sistema, o alguna de sus partes, se construyan rpidamente para comprender con facilidad y aclarar ciertos aspectos en los que se aseguren que el desarrollador, el usuario y el cliente estn de acuerdo en lo que se necesita as como tambin la solucin que se propone para dicha necesidad y de esta manera minimizar el

requerimientos. d. Modificacin: modificacin del prototipo. e. Trmino: aspectos de calidad y de representacin del sistema. 3. Diseo tcnico: diseo detallado, rediseo del prototipo y documentacin para Programacin y mantencin. 4. Programacin y prueba: se implementan y prueban las especificaciones del diseo tcnico. 5. Operacin y mantencin: instalacin del sistema y modificaciones posteriores.

identifica los requisitos detallados de entrada, procesamiento o salida. Tambin ofrece un mejor enfoque cuando el responsable del desarrollo del software est inseguro de la eficacia de un algoritmo, de la adaptabilidad de un sistema operativo o de la forma que debera tomar la interaccin humanomquina.

pueden hacer los usuarios del prototipo, al cual puede confundir con el sistema terminado. A causa de la intencin de crear un prototipo de forma rpida, se suelen desatender aspectos importantes, tales como la calidad y el mantenimiento a largo plazo, lo que obliga en la mayor parte de los casos a reconstruirlo una vez que el prototipo ha cumplido su funcin. En aras de desarrollar rpidamente el prototipo, el desarrollador suele tomar algunas decisiones de implementacin poco convenientes (por ejemplo, elegir un lenguaje de programacin incorrecto porque proporcione un desarrollo ms rpido). Con el paso del tiempo, el desarrollador puede olvidarse de la razn que le llev a tomar tales decisiones, con lo que se corre el riesgo de que dichas elecciones

riesgo y la incertidumbre en el desarrollo.

pasen a formar parte del sistema final... Es la aplicacin de metodologas sistemticas, disciplinadas y cuantificables al desarrollo eficiente, operacin y evolucin de aplicaciones de alta calidad en la World Wide Web. La ingeniera Web hace referencia a las metodologas, tcnicas y herramientas que se utilizan en el desarrollo de aplicaciones Web (webapps) complejas y de gran dimensin en las que se apoya la evaluacin, diseo, desarrollo, implementacin y evolucin de dichas aplicaciones. 1. Formulacin: Se identifican las metas y objetivos. 2. Planificacin: Estimacin del coste global del proyecto, riesgos, etapas y subetapas. 3. Anlisis: Identifica los datos y requisitos funcionales y de comportamiento para la Webapp. Anlisis del contenido. Anlisis de la interaccin. Anlisis funcional. Anlisis de la configuracin. 4. Diseo: La Webapp debe presentar simplicidad en su funcionamiento y debe ser fcil de entender, tener un aspecto visual atractivo. Diseo de los componentes. Diseo de la arquitectura. Diseo de la navegacin. Diseo del contenido. Diseo esttico. Diseo de la interfaz. 5. Implementacin: Se integra la Webapp con el software intermedio. 6. Pruebas: Encontrar y corregir errores. 7. Evaluacin del cliente: Se debe ejecutar cada vez que se termina cada una de las fases anteriores. Programacin extrema 1. Codificacin 2. Pruebas 3. Escuchar 4. Diseo SCRUM - Permitir expresar requisitos software de sistemas web: - Mejora la calidad de las aplicaciones obtenidas. - Ofrece soluciones a las personas que han decidido realizar todas sus actividades a travs de Internet. - Entorno del cliente controlado: navegador, versin, fabricante. - Integracin a Internet e Intranet. - Permiten estructurar, comunicar, entender, simplificar y formalizar tanto el dominio como las decisiones de diseo, as como disponer de documentacin detallada para posibles cambios del software. - Reducir el tiempo de obtencin de definiciones ejecutables. - Eliminar la aparicin de errores en las definiciones ejecutables. - Mejora la comunicacin entre analistas y desarrolladores. - Permite la introduccin de mecanismos colaborativos entre los ingenieros de sistemas y los diseadores grficos de las aplicaciones. - Versatilidad y potencia (limitaciones de HTML) y necesidad de buenas comunicaciones. La Ingeniera Web ha adoptado metodologas de ingeniera de software. Las aplicaciones Web son multidisciplinarias ya que son construidas en un medio en constante cambio, los requerimientos son inestables, las comunidades de usuarios son ms amplias que antes, la competicin es ahora a nivel mundial. La ingeniera Web busca proporcionar un proceso sistemtico orientado a la mejora de la calidad de la aplicacin final.

Metodologa Ingeniera Web

Metodologas Emergentes

*Programacin extrema Xtreme Programming (XP) *Scrum *Cdigo Abierto (Open Source) * Capacidad y MadurezCMM

Programacin extrema Programacin organizada. Menor taza de errores. Satisfaccin del programador.

Programacin extrema - Es recomendable emplearlo solo en proyectos a corto plazo. - Altas comisiones en caso de fallar.

Se diferencia de las metodologas tradicionales principalmente en que pone ms nfasis en la adaptabilidad que en la previsibilidad

Programacin extrema La programacin extrema es una metodologa de desarrollo de la ingeniera de software formulada por Kent Beck, quien Identific que era lo simple y lo difcil al momento de programar. Programacin extrema se usa actualmente para la creacin y desarrollo practico de software. Este se ha usado mucho ltimamente, ya que es una metodologa gil para desarrollar software SCRUM Es un marco de trabajo para la gestin y desarrollo de software basada en un proceso iterativo e incremental utilizado comnmente en entornos basados en el desarrollo gil de software. Cdigo abierto (OPEN SOURCE) Es el ejemplo ms sobresaliente del desarrollo de cdigo abierto y es a menudo comparado con el llamado "contenido generado por los usuarios. Modelo de capacidad y madurez CMM Basado en el conocimiento adquirido de la evaluacin del proceso de software y una vasta retroalimentacin del gobierno y la industria.

Scrum Mster. El product Owner. Scrum Team.

SCRUM - Entrega de un producto funcional al finalizar cada Sprint. - Posibilidad de ajustar la funcionalidad en base a la necesidad de negocio del cliente. - Visualizacin del proyecto da a da. - Equipos integrados y comprometidos con el proyecto, toda vez que ellos definieron el alcance y se auto-administran. Cdigo abierto (OPEN SOURCE) - No tenemos que pagar. - Queda bajo nuestro buen criterio el uso que le demos. - La gran comunidad existente. - El desarrollo de cdigo abierto produce programas con menos errores. - Programas ms eficientes en el uso de recursos que el software propietario. - Capacidad para modificar el software de modo que se adapte a las necesidades especficas del usuario.

SCRUM - No genera toda la evidencia o documentacin de otras metodologas - No es apto para todos los proyectos (Equipos no dispersos). - Tal vez sea necesario complementarlo con otros procesos (XP) Cdigo abierto (OPEN SOURCE) - Sigue siendo una opcin minoritaria entre los consumidores particulares. - No est respaldado por grandes campaas publicitarias en televisin. - No se ven hileras de paquetes de atractivos colores en los estantes de las tiendas de computacin. - La inexistencia de cursos de capacitacin de los mismos.

Proceso Unificado

Es un marco de desarrollo de software que se caracteriza por estar dirigido por casos de usos centrado en la arquitectura y por ser

1. 2.

Inicio: comunicacin y planeacin. Elaboracin: planeacin y modelado.

- Las iteraciones ofrecen como resultado un incremento del producto desarrollado que aade o mejora las funcionalidades

- El Proceso Unificado asume que no existe un modelo nico que cubra todos los aspectos del sistema. Por dicho motivo

El Proceso Unificado tiene dos dimensiones: Un eje horizontal que representa el tiempo y muestra los aspectos del ciclo de vida

iterativo e incremental. Su meta es asegurar la produccin de software de muy alta calidad que satisfaga las necesidades de los usuarios finales, dentro de un calendario y presupuesto predecible. En el Proceso Unificado los casos de uso se utilizan para capturar los requisitos funcionales y para definir los contenidos de las iteraciones. La idea es que cada iteracin tome un conjunto de casos de uso o escenarios y desarrolle todo el camino a travs de las distintas disciplinas: diseo, implementacin, prueba, etc.

3. 4.

5.

Construccin: Transicin: construccin y despliegue. Produccin: lanzamiento del software.

del sistema en desarrollo.

existen mltiples modelos y vistas que definen la arquitectura de software de un sistema.

6.

del proceso a lo largo de su desenvolvimiento Un eje vertical que representa las disciplinas, las cuales agrupan actividades de una manera lgica de acuerdo a su naturaleza. La primera dimensin representa el aspecto dinmico del proceso conforme se va desarrollando, se expresa en trminos de fases e iteraciones La segunda dimensin representa el aspecto esttico del proceso: cmo es descrito en trminos de componentes del proceso, disciplinas, actividades, flujos de trabajo, artefactos y roles. El Proceso Unificado requiere que el equipo del proyecto se centre en identificar los riesgos crticos en una etapa temprana del ciclo de vida. Los resultados de cada iteracin, en especial los de la fase de elaboracin deben ser seleccionados en un orden que asegure que los riesgos principales son considerados primero.

S-ar putea să vă placă și