SlideShare una empresa de Scribd logo
1 de 49
Metodologías de Desarrollo
Ing. Noretsys Rodríguez
DEFINICIÓN
Conjunto integrado de técnicas y métodos que permiten abordar de
forma homogénea y abierta cada una de las actividades del ciclo de vida
de un proyecto de desarrollo
Proceso de software detallado y completo
Comprende los procesos a seguir para idear, implementar y mantener un
producto de software desde que surge la necesidad hasta que se cumple el
objetivo por el cual fue creado.
se basan en una combinación de los modelos de proceso genéricos (cascada,
incremental…). Definen artefactos, roles y actividades, junto con prácticas y técnicas
recomendadas.
IMPORTANCIA
DESDE LA
GESTIÓN
Facilita la tarea de Planificación.
Facilita la tares de control y seguimiento de un proyecto.
Mejora la relación costo / Beneficio.
Optimiza el uso de recursos disponibles.
Facilita la evaluación de resultados y cumplimiento de objetivos.
Facilita la comunicación Usuario – Desarrollador.
DESDE LOS
INGENIEROS DE
SOFTWARE
Ayuda a la comprensión del problema.
Optimiza cada una de las fases del proceso de desarrollo.
Facilita el mantenimiento del producto final.
Permite la reutilización del partes del producto.
DESDE EL CLIENTE
O USUARIO
Garantía de la calidad del producto.
Confianza en los plazos de tiempo fijados en la definición
del proyecto.
ES IMPORTANTE TENER PRESENTE:
El cliente demanda sistemas de software eficientes, con
un alto desempeño funcional y alta calidad.
Nace la necesidad de contar con una metodología para
gestionar los proyectos bajo un enfoque disciplinado y
sistemático.
Existen variedad de metodologías de desarrollo y no
siempre se escoge la mas adecuada, o se termina
proponiendo una nueva
ENFOQUES SOBRE EL DESARROLLO
DE SOFTWARE
Cada metodología de desarrollo tiene más o menos su
propio enfoque de en lo que debería de consistir un
proyecto de desarrollo de software.
Pero todas ellas se basan en una serie de enfoques
generalistas como son:
• Waterfall Model – Lineal
• Prototyping – Iterativo
• Incremental – combinación de iterativo y lineal
• Spiral – Combinación de iterativo y lineal
• Rapid Application Development (RAD) -- iterativo
WATERFALL MODEL – MODELO
CASCADA
El desarrollo se ve como una serie de
escalones descendentes (como si se
tratara de una cascada de agua) a través
de las distintas fases.
– Analisis
– Diseño
– Desarrollo
– Pruebas
– Integración
– Mantenimiento
Creada en 1970 por Winston W. Royce
PRINCIPIOS MODELO CASCADA
El proyecto se divide en fases secuenciales, se
permite algún tipo de solapamiento entre las
distintas fases.
• Hace enfasis en la planificación, los tiempos,
fechas objetivo, presupuestos y en la
implantación del sistema completo al mismo
tiempo.
• Se mantiene un férreo control durante la duración
del proyecto a través del uso extensivo de
documentación así como a través de revisiones y
aprobaciones por los usuarios y gestores del
proyecto, al final de cada fase antes de comenzar
la siguiente.
PROTOTIPO - ITERATIVO
Se conoce así a las actividades de creación de
prototipos durante el desarrollo de software, los
prototipos son versiones incompletas del
producto que va ha ser desarrollado.
PRINCIPIOS
No es una metodología que funcione por si sóla, es mas una vía
para manejar determinadas fases de una metodología más
tradicional y amplia (Incremental, Espiral o RAD)
Intenta reducir el riesgo inherente al proyecto dividiendo el
proyecto en partes más pequeñas.
El usuario está más involucrado a través del proyecto, y eso
hace que se incremente la aceptación final del producto por los
usuarios.
Se van realizando maquetas a menor escala siguiendo una
política de modificaciones hasta culminar los requerimientos de
los usuarios.
Mientras que la mayoría de los prototipos se desarrollan con la
expectativa de ser deshechos, es posible en algunos casos
evolucionar los prototipos hacia el sistema final
INCREMENTAL – ITERATIVO + LINEAL
Es la combinación de metodologías iterativas y lineales con el
objetivo primario de reducir los riesgos del proyecto, los
proyectos se dividen en partes mas pequeñas, de esta
manera también se facilitan los cambios durante el proceso
de desarrollo.
Se realizan una serie de mini-waterfalls, donde todas las fases del
desarrollo en cascada se completan para una pequeña parte del
sistema, antes de abordar la siguiente parte.
Los conceptos iniciales del sistema, análisis de requerimientos,
diseño de arquitectura, etc. Del sistema completo se definen
usando también la técnica de Cascada.
Después de esto mediante prototipos se van desarrollando las
distintas partes en las que ha sido dividido el proyecto.
Finalmente el proceso culmina con la implantación del sistema en
su conjunto (otro mini-waterfall)
Principios
ESPIRAL
Consiste en una serie de ciclos que se repiten en
forma de espiral, comenzando desde el centro.
El Espiral puede verse como un modelo evolutivo
que conjuga la naturaleza iterativa con los
aspectos controlados y sistemáticos del Modelo
Cascada, con el agregado de gestión de riegos.
Este método está indicado en grandes proyectos.
ESPIRAL
En cada vuelta o iteración hay que tener en
cuenta:
Los Objetivos: Que necesidad debe cubrir el producto.
Alternativas: Las diferentes formas de conseguir los
objetivos de forma exitosa, desde diferentes puntos de
vista como pueden ser:
Características: experiencia del personal, requisitos a cumplir,
etc.
Formas de gestión del sistema.
Riesgo asumido con cada alternativa.
Desarrollar y Verificar: Programar y probar el software
ESPIRAL
Si el resultado no es el adecuado o se necesitan mejoras:
Se planifican los siguientes pasos y se comienza un nuevo
ciclo de la espiral, la espiral tiene dos dimensiones, la
radial y la angular.
Angular
Indica el avance del proyecto dentro de un ciclo
Radial
Indica el aumento del coste del proyecto, ya que con
cada nueva iteración se pasa más tiempo
desarrollado
ESPIRAL
RAPID APLICATION DEVELOPER - RAD
Este método comprende el desarrollo iterativo, la
construcción de prototipos y el uso de herramientas CASE.
Aporta la velocidad del desarrollo , principalmente por el
uso de las herramientas CASE.
La Calidad es otra de sus características, mediante la
implicación del usuario en las etapas de análisis y diseño.
Apropiado para proyectos de pequeña embergadura.
Pone énfasis en el cumplimiento de las expectativas del
negocio, mientras que las características técnicas o la
excelencia del desarrollo tiene menos importancia.
RAD
El control del proyecto da prioridad a las fases de
desarrollo.
Si el proyecto empieza a excederse en tiempos, se
considera reducir los requerimientos, no aumentar los
tiempos.
Los usuarios están especialmente involucrados (esto es
imperativo) en las fases de diseño mediante el uso de
sesiones de trabajo (workshops).
Produce documentación para facilitar la evolución futura
del producto y el mantenimiento.
RATIONAL UNIFIED PROCESS - RUP
Controla: Proceso para el desarrollo de software
iterativo que constituye la metodología estándar más
utilizada para el análisis, implementación
y documentación de sistemas orientado a objetos.
Definición: Marco de trabajo de proceso adaptable,
con la idea de ser adaptado a las organizaciones de
desarrollo y los equipos de proyecto de software
Se basa: en un conjunto de módulos o elementos de
contenido, que describen qué se va a producir, las habilidades
necesarias requeridas y la explicación paso a paso
describiendo cómo se consiguen los objetivos de desarrollo.
CARACTERÍSTICAS DE RUP
Forma disciplinada de asignar tareas y
responsabilidades (quien hace que, cuando y
cómo).
Pretende implementar las mejores prácticas en
Ingeniería de software.
Desarrollo Iterativo.
Administración de requisitos.
Uso de arquitectura basada en componentes.
Control de cambios.
Modelado visual de software.
Verificación de la calidad del software.
MÓDULO PRINCIPALES
Roles (quién): un rol define un conjunto de
habilidades, competencias y
responsabilidades relacionadas.
Productos de trabajo (qué): un producto de
trabajo representa algo que resulta de una
tarea, incluyendo todos los documentos y
modelos producidos mientras que se trabaja
en el proceso.
Tareas (cómo): una tarea describe una unidad
de trabajo asignada a un rol que proporciona
un resultado significante.
PRINCIPIOS
Adaptar el proceso
El proceso deberá adaptarse a las características propias del
proyecto u organización, El tamaño del mismo, así como su tipo o
las regularizaciones que lo condicionen, incluirán en su diseño
específico.
También se deberá tener en cuenta el alcance del proyecto.
Balancear Prioridades
Los requerimientos de los distintos participantes pueden ser
diferentes, contradictorios o disputarse recursos limitados.
Debe encontrarse un balance que satisfaga los deseos de todos.
Debido a este balanceo se podrán corregir desacuerdos en el
futuro.
+ PRINCIPIOS
Demostrar valor iterativamente
Los proyectos se entregan, aunque sea de un modo interno, en
etapas iteradas.
En cada iteración se analiza la opinión de los inversores, la
estabilidad y calidad del producto, y se refina la dirección del
proyecto, así como también los riesgos involucrados.
Elevar el nivel de abstracción
Persigue el uso de elementos reutilizables tales como los
patrones de software, lenguajes 4GL o frameworks.
Desarrollo con la mente puesta en la reutilización del código
Un alto nivel de abstracción también permite discusiones sobre
diversos niveles y soluciones arquitectónicas.
+ PRINCIPIOS
Enfocarse en la calidad
El control de la calidad no debe realizarse al final de cada
iteración, sino en todos los aspectos de la producción.
El aseguramiento de la calidad forma parte del proceso de
desarrollo y no de un grupo independiente.
FASES DE RUP
Las primeras iteraciones (en las fases de inicio y
elaboración) se enfocan hacia:
La comprensión del problema y la tecnología.
La delimitación del ámbito del proyecto.
La eliminación de los riesgos críticos y al
establecimiento de la línea de base de la
arquitectura.
FASES DE RUP
Fase de Iniciación
Las iteraciones hacen mayor énfasis en actividades de modelado del
negocio y de requerimientos.
Fase de elaboración
Las iteraciones se orientan al desarrollo de la línea de base de la
arquitectura, abracan más los flujos de trabajo de requerimientos,
modelos de negocio, análisis, diseño e implementación orientada a la línea
de base de la arquitectura.
Fase de Construcción
Se lleva a cabo la construcción del producto mediante series de
iteraciones.
Para cada iteración se seleccionan algunos casos de uso, se refina su
análisis y diseño y se procede a su implementación y pruebas.
Se realiza una pequeña cascada para cada ciclo.
Se realizan tantas iteraciones como requiera la implementación del
producto.
Fase de Transición
Se pretende garantizar que se tiene un producto preparado para su
entrega a los usuarios.
ARTEFACTOS
Sirven para comprender mejor tanto el análisis como
del diseño del sistema.
Fase de Inicio
Documento Visión
Especificación de requerimientos
Fase de elaboración
Diagramas de caso de uso
Fase de construcción
Vista lógica
Diagrama de clases
Modelo ER
FASES DE RUP
Vista de implementación
Diagrama de Secuencia
Diagrama de estados
Diagrama de colaboración
Vista conceptual
Modelo de dominio
Vista física
Mapa de comportamiento HARDWARE
METODOLOGÍAS ÁGILES
Método para desarrollar Software
Característica principal : adaptación al cambio
Opuesto a métodos tradicionales (predictivos)
Definen de entrada:
Alcance (funcionalidad, tecnología, etc..)
Costos
Tiempos (de inicio a fin del proyecto)
Establecen métodos de monitorización y control para
prevenir desvíos.
Realizan iteraciones cortas entre 2 y 4 semanas.
MANIFIESTO ÁGIL
• Individuos e iteraciones
– Prioridad
• Calidad profesional del equipo
• Entrega temprana y continua
– Cada 2 o 4 semanas se entrega software funcional 100% operativo
VS (tradicional)
Procesos y herramientas
Debe servir de ayuda pero no pueden ser el objetivo
MANIFIESTO ÁGIL
• Colaboración con el cliente
– Prioridad
• Participación con el cliente
• Comunicación directa y continua
En XP el cliente está físicamente presente en el momento del desarrollo
VS
Negociación contractual
Sólo el cliente conoce lo que da verdadero valor al negocio
MANIFIESTO ÁGIL
• Software funcionando
– Prioridad
• Satisfacción del cliente
• Aportar valor al negocio
Parte del desarrollo (código documentado) es la documentación del proyecto
VS
Documentación extensiva
Debe servir de complemento pero no ser un impedimento
MANIFIESTO ÁGIL
• Respuesta ante el cambio
– Prioridad
• Aceptar cambios de requerimientos
• Ventaja competitiva para el negocio
VS
Seguir un plan
El cliente no está realmente seguro hasta que no prueba el software
METODOLOGÍA SCRUM
Definición: Scrum es una metodología ágil y flexible para
gestionar el desarrollo de software, cuyo principal objetivo
es:
Maximizar el retorno de la inversión para su empresa (ROI)
Se basa en construir primero la funcionalidad de mayor valor
para el cliente y en los principios de inspección continua,
adaptación, auto-gestión e innovación.
Uso: gestionar y controlar desarrollos complejos de software y productos usando
prácticas iterativas e incrementales.
BENEFICIOS DE SCRUM
Cumplimento de expectativas: El cliente establece sus
expectativas indicando el valor que le aporta cada requisito
/ historia del proyecto, el equipo los estima y con esta
información el cliente establece su prioridad. De manera
regular, el cliente comprueba que efectivamente los requisitos
se han cumplido y transmite se feedback al equipo.
Flexibilidad a cambios: Alta capacidad de reacción ante los
cambios de requerimientos generados por necesidades del
cliente o evoluciones del mercado. La metodología está
diseñada para adaptarse a los cambios de requerimientos que
conllevan los proyectos complejos.
Reducción del Time to Market: El cliente puede empezar a
utilizar las funcionalidades más importantes del proyecto antes
de que esté finalizado por completo.
BENEFICIOS DE SCRUM
Mayor calidad del software: La metódica de trabajo y la
necesidad de obtener una versión funcional después de cada
iteración, ayuda a la obtención de un software de calidad
superior.
Mayor productividad: Se consigue entre otras razones,
gracias a la eliminación de la burocracia y a la motivación del
equipo que proporciona el hecho de que sean autónomos
para organizarse.
Maximiza el retorno de la inversión (ROI): Producción de
software únicamente con las prestaciones que aportan
mayor valor de negocio gracias a la priorización por retorno
de inversión.
BENEFICIOS DE SCRUM
Predicciones de tiempos: Mediante esta metodología se
conoce la velocidad media del equipo por sprint (los
llamados puntos historia), con lo que consecuentemente, es
posible estimar fácilmente para cuando se dispondrá de una
determinada funcionalidad que todavía está en proceso de
desarrollo.
Reducción de riesgos: El hecho de llevar a cabo las
funcionalidades de más valor en primer lugar y de conocer la
velocidad con que el equipo avanza en el proyecto, permite
despejar riesgos eficazmente de manera anticipada.
PROCESO DE SCRUM
El desarrollo se realiza de forma iterativa e
incremental. Cada iteración,
denominada Sprint, tiene una duración
preestablecida de entre 2 y 4 semanas, obteniendo
como resultado una versión del software con nuevas
prestaciones listas para ser usadas. En cada
nuevo Sprint, se va ajustando la funcionalidad ya
construida y se añaden nuevas prestaciones
priorizándose siempre aquellas que aporten mayor
valor de negocio.
PROCESO DE SCRUM
Product Backlog: Conjunto de requisitos denominados historias descritos en un
lenguaje no técnico y priorizados por valor de negocio, o lo que es lo mismo, por
retorno de inversión considerando su beneficio y coste.
Sprint Planning: Reunión durante la cual el cliente presenta las historias del
backlog por orden de prioridad. El equipo determina la cantidad de historias que
puede comprometerse a completar en ese sprint y organiza cómo lo va a
conseguir.
Sprint: Iteración de duración prefijada durante la cual el equipo trabaja para
convertir las historias del cliente a las que se ha comprometido, en una nueva
versión del software totalmente operativo.
Sprint Backlog: Lista de las tareas necesarias para llevar a cabo las historias del
sprint.
Daily sprint meeting: Reunión diaria de cómo máximo 15 min. en la que el equipo
se sincroniza para trabajar de forma coordinada.
Demo y retrospectiva: Reunión que se celebra al final del sprint y en la que el
equipo presenta las historias conseguidas mediante una demonstración del
producto. Posteriormente, en la retrospectiva, el equipo analiza qué se hizo bien,
qué procesos serían mejorables y discute acerca de cómo perfeccionarlos.
ROLES DE SCRUM
Scrum master: Persona que lidera al equipo
guiándolo para que cumpla las reglas y procesos de
la metodología. Gestiona la reducción de
impedimentos del proyecto y trabaja con el Product
Owner para maximizar el ROI.
Product owner (PO): Representante de lso
accionistas y clientes que usan el software. Se
focaliza en la parte de negocio y el es responsable del
ROI del proyecto (entregar un valor superior al dinero
invertido). Traslada la visión del proyecto al equipo,
formaliza las prestaciones en historias a incorporar
en el Product Backlog y las reprioriza de forma
regular.
Team: Grupo de profesionales con los conocimientos
técnicos necesarios y que desarrollan el proyecto de
manera conjunta llevando a cabo las historias a las
que se comprometen al inicio de cada sprint.
OOWS
Fue creado en la Universidad Politécnica de
Valencia.
OOWS proviene de OO-Method (Método
Orientado a Objetos) .
metodología de desarrollo de software
basada en una clara separación del
Espacio del Problema (el 'qué') del Espacio
de la Solución (el 'cómo').
OOWS se basara en el enfoque bottom-up.
CARACTERISTICAS DE OOWS
Aborda de forma sistemática el modelado conceptual
de aplicaciones web
Propone una arquitectura software multinivel basada
en servicios web
Introduce un conjunto de reglas que permiten
transformar las abstracciones conceptuales en cada
uno los componentes software que implementan los
niveles de la arquitectura, haciendo uso intensivo de
patrones de diseño.
ARQUITECTURA DE OOWS
PROCESO
Contempla dos pasos principales:
Especificación del Problema.
Se deben capturar las peculiaridades y el
comportamiento que debe ofrecer el sistema para
satisfacer los requisitos de usuario identificados. En este
paso se incluye el conjunto de requisitos usando una
aproximación de Casos de Uso y posteriormente las
actividades de modelado conceptual del sistema.
Desarrollo de la Solución.
En el modelado conceptual, las abstracciones que se
derivan del problema son especificadas en términos de
clases y de su estructura, comportamiento y
funcionalidad, construyendo los siguientes modelos:
Objetos, Dinámico, Funcional, Navegacional, y
Presentación.
MODELO DE OBJETOS OOWS
 El Modelo de Objetos, define la estructura y las
relaciones estáticas entre clases identificadas en el
dominio del problema.
MODELO DINÁMICO
En el Modelo Dinámico, se describen las posibles secuencias
de servicios y los aspectos relacionados con la interacción
entre objetos.
MODELO FUNCIONAL
El Modelo Funcional, captura la semántica asociada a los
cambios de estado entre los objetos motivados por la
ocurrencia de eventos o servicios.
MODELO DE NAVEGACIÓN
El Modelo de Navegación, define la semántica navegacional
asociada a las clases de los objetos del modelo. Es en este
modelo es donde se explica la navegación permitida en la
aplicación para cada agente del sistema.
MODELO DE NAVEGACIÓN
Objetivo: definir cómo se le proporcionará a cada
usuario del sistema el acceso a la información y la
funcionalidad que le es relevante para llevar a cabo su
tarea dentro del sistema y qué secuencias de caminos
deberán seguir para conseguirlo.
En la aproximación OOWS, los requisitos
navegacionales de una aplicación web se obtienen
añadiendo una “vista navegacional” (mapa
navegacional) sobre el Modelo de Objetos de OO-
Method, indicando el conjunto posible de caminos
navegacionales que se le proporcionarán al usuario.
MODELO DE NAVEGACIÓN
El modelo de navegación está compuesto por un
conjunto de mapas de navegación (uno por cada
agente) que representan y estructuran la visión global
del sistema para cada tipo de usuario, definiendo su
navegación permitida
Existen dos posibilidades: que los nodos (contextos)
navegacionales sean alcanzables desde cualquier
ubicación en el sistema (llamados contextos de
exploración, E) o que los nodos sólo sean alcanzables
siguiendo un camino predeterminado de pasos de
navegación (llamados contextos de secuencia, S).
DESARROLLO DE LA SOLUCIÓN
Se propone una estrategia de generación de código
basada en componentes para integrar la solución
propuesta en ambientes web.
En esta etapa se obtendrá una aplicación web, con
una funcionalidad equivalente a la especificación
inicial según una visión operativa
Facilita las tareas de mantenimiento y evolución, ya
que la generación automática basada en patrones se
realiza utilizando soluciones previamente probadas
y validadas.
Esta filosofía nos permite obtener de una manera
más rápida aplicaciones finales de calidad, evitando
entre otras, la fase de pruebas (testing) del sistema.

Más contenido relacionado

La actualidad más candente

Metodologias rup
Metodologias rupMetodologias rup
Metodologias rupElvisAR
 
Metodologias de desarrollo del software
Metodologias de desarrollo del softwareMetodologias de desarrollo del software
Metodologias de desarrollo del softwaregeurquizo
 
RUP - Fase de Elaboración
RUP - Fase de ElaboraciónRUP - Fase de Elaboración
RUP - Fase de ElaboraciónAdrian González
 
Qué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareQué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareLeanSight Consulting
 
Breve explicacion del Rup
Breve explicacion del RupBreve explicacion del Rup
Breve explicacion del Rupluisitoman
 
Principios de RUP
Principios de RUPPrincipios de RUP
Principios de RUPradoslawkb
 
4. Desarrollo ágil de software
4. Desarrollo ágil de software4. Desarrollo ágil de software
4. Desarrollo ágil de softwareCoesi Consultoria
 
Metodologias de desarrollo de software
Metodologias de desarrollo de softwareMetodologias de desarrollo de software
Metodologias de desarrollo de softwarehernandezcris
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareDeisy Sapaico
 
METODOLOGIAS AGILES
METODOLOGIAS AGILESMETODOLOGIAS AGILES
METODOLOGIAS AGILESmikyWatt
 
Desarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrumDesarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrumtbaires
 

La actualidad más candente (19)

Rup jenny mallqui
Rup   jenny mallquiRup   jenny mallqui
Rup jenny mallqui
 
Rup
RupRup
Rup
 
Metodologias rup
Metodologias rupMetodologias rup
Metodologias rup
 
Metodologias de desarrollo del software
Metodologias de desarrollo del softwareMetodologias de desarrollo del software
Metodologias de desarrollo del software
 
Metodologias todas
Metodologias todasMetodologias todas
Metodologias todas
 
RUP - Fase de Elaboración
RUP - Fase de ElaboraciónRUP - Fase de Elaboración
RUP - Fase de Elaboración
 
Qué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareQué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto software
 
Breve explicacion del Rup
Breve explicacion del RupBreve explicacion del Rup
Breve explicacion del Rup
 
Principios de RUP
Principios de RUPPrincipios de RUP
Principios de RUP
 
4. Desarrollo ágil de software
4. Desarrollo ágil de software4. Desarrollo ágil de software
4. Desarrollo ágil de software
 
Modelos de Desarrollo de Software - INF162 - 2017
Modelos de Desarrollo de Software - INF162 - 2017Modelos de Desarrollo de Software - INF162 - 2017
Modelos de Desarrollo de Software - INF162 - 2017
 
Metodologias de desarrollo de software
Metodologias de desarrollo de softwareMetodologias de desarrollo de software
Metodologias de desarrollo de software
 
Qué+es+ru..
Qué+es+ru..Qué+es+ru..
Qué+es+ru..
 
Disciplina de desarrollo rup
Disciplina de desarrollo rupDisciplina de desarrollo rup
Disciplina de desarrollo rup
 
Metodología RUP
Metodología RUPMetodología RUP
Metodología RUP
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de software
 
Preguntas rup (1)
Preguntas rup (1)Preguntas rup (1)
Preguntas rup (1)
 
METODOLOGIAS AGILES
METODOLOGIAS AGILESMETODOLOGIAS AGILES
METODOLOGIAS AGILES
 
Desarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrumDesarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrum
 

Similar a Metodologias

Similar a Metodologias (20)

Qué es rup
Qué es rupQué es rup
Qué es rup
 
Métodos de la ingeniería
Métodos de la ingenieríaMétodos de la ingeniería
Métodos de la ingeniería
 
Proceso Unificado De Rational
Proceso Unificado De RationalProceso Unificado De Rational
Proceso Unificado De Rational
 
Documentacion rational
Documentacion rationalDocumentacion rational
Documentacion rational
 
4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational
 
Metodología de desarrollo de software
Metodología de desarrollo de softwareMetodología de desarrollo de software
Metodología de desarrollo de software
 
Metodologia rup trabajo1
Metodologia rup trabajo1Metodologia rup trabajo1
Metodologia rup trabajo1
 
Rup
RupRup
Rup
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
procesos de desarrollo de software
procesos de desarrollo de softwareprocesos de desarrollo de software
procesos de desarrollo de software
 
1. ciclo de_vida_de_software
1. ciclo de_vida_de_software1. ciclo de_vida_de_software
1. ciclo de_vida_de_software
 
Modelos de Desarrollo del Software
Modelos de Desarrollo del SoftwareModelos de Desarrollo del Software
Modelos de Desarrollo del Software
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
3. modelos prescriptivos de proceso
3. modelos prescriptivos de proceso3. modelos prescriptivos de proceso
3. modelos prescriptivos de proceso
 
Metodologias rup
Metodologias rupMetodologias rup
Metodologias rup
 
Ciclo de vida del software
Ciclo de vida del softwareCiclo de vida del software
Ciclo de vida del software
 
RUP
RUPRUP
RUP
 
Modelos de software
Modelos de softwareModelos de software
Modelos de software
 
Jhostin vasquez modelos de software
Jhostin vasquez   modelos de softwareJhostin vasquez   modelos de software
Jhostin vasquez modelos de software
 

Más de Norerod

Interfaz con usuario
Interfaz con usuarioInterfaz con usuario
Interfaz con usuarioNorerod
 
Ingeniería de Requisitos
Ingeniería de RequisitosIngeniería de Requisitos
Ingeniería de RequisitosNorerod
 
Ética, Valores y Humanidad
Ética, Valores y HumanidadÉtica, Valores y Humanidad
Ética, Valores y HumanidadNorerod
 
Mv unidad 1
Mv unidad 1Mv unidad 1
Mv unidad 1Norerod
 
Practica 1 espec requi
Practica 1 espec requiPractica 1 espec requi
Practica 1 espec requiNorerod
 
Mv unidad 2 t1
Mv unidad 2 t1Mv unidad 2 t1
Mv unidad 2 t1Norerod
 
Metricas
MetricasMetricas
MetricasNorerod
 
Requisitos
RequisitosRequisitos
RequisitosNorerod
 
Menú en VB6.0
Menú en VB6.0Menú en VB6.0
Menú en VB6.0Norerod
 

Más de Norerod (9)

Interfaz con usuario
Interfaz con usuarioInterfaz con usuario
Interfaz con usuario
 
Ingeniería de Requisitos
Ingeniería de RequisitosIngeniería de Requisitos
Ingeniería de Requisitos
 
Ética, Valores y Humanidad
Ética, Valores y HumanidadÉtica, Valores y Humanidad
Ética, Valores y Humanidad
 
Mv unidad 1
Mv unidad 1Mv unidad 1
Mv unidad 1
 
Practica 1 espec requi
Practica 1 espec requiPractica 1 espec requi
Practica 1 espec requi
 
Mv unidad 2 t1
Mv unidad 2 t1Mv unidad 2 t1
Mv unidad 2 t1
 
Metricas
MetricasMetricas
Metricas
 
Requisitos
RequisitosRequisitos
Requisitos
 
Menú en VB6.0
Menú en VB6.0Menú en VB6.0
Menú en VB6.0
 

Último

EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
plan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativaplan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativafiorelachuctaya2
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
Cuadernillo de las sílabas trabadas.pdf
Cuadernillo de las sílabas trabadas.pdfCuadernillo de las sílabas trabadas.pdf
Cuadernillo de las sílabas trabadas.pdfBrandonsanchezdoming
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfsamyarrocha1
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 

Último (20)

EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
plan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativaplan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativa
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
Cuadernillo de las sílabas trabadas.pdf
Cuadernillo de las sílabas trabadas.pdfCuadernillo de las sílabas trabadas.pdf
Cuadernillo de las sílabas trabadas.pdf
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdf
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 

Metodologias

  • 1. Metodologías de Desarrollo Ing. Noretsys Rodríguez
  • 2. DEFINICIÓN Conjunto integrado de técnicas y métodos que permiten abordar de forma homogénea y abierta cada una de las actividades del ciclo de vida de un proyecto de desarrollo Proceso de software detallado y completo Comprende los procesos a seguir para idear, implementar y mantener un producto de software desde que surge la necesidad hasta que se cumple el objetivo por el cual fue creado. se basan en una combinación de los modelos de proceso genéricos (cascada, incremental…). Definen artefactos, roles y actividades, junto con prácticas y técnicas recomendadas.
  • 3. IMPORTANCIA DESDE LA GESTIÓN Facilita la tarea de Planificación. Facilita la tares de control y seguimiento de un proyecto. Mejora la relación costo / Beneficio. Optimiza el uso de recursos disponibles. Facilita la evaluación de resultados y cumplimiento de objetivos. Facilita la comunicación Usuario – Desarrollador. DESDE LOS INGENIEROS DE SOFTWARE Ayuda a la comprensión del problema. Optimiza cada una de las fases del proceso de desarrollo. Facilita el mantenimiento del producto final. Permite la reutilización del partes del producto. DESDE EL CLIENTE O USUARIO Garantía de la calidad del producto. Confianza en los plazos de tiempo fijados en la definición del proyecto.
  • 4. ES IMPORTANTE TENER PRESENTE: El cliente demanda sistemas de software eficientes, con un alto desempeño funcional y alta calidad. Nace la necesidad de contar con una metodología para gestionar los proyectos bajo un enfoque disciplinado y sistemático. Existen variedad de metodologías de desarrollo y no siempre se escoge la mas adecuada, o se termina proponiendo una nueva
  • 5. ENFOQUES SOBRE EL DESARROLLO DE SOFTWARE Cada metodología de desarrollo tiene más o menos su propio enfoque de en lo que debería de consistir un proyecto de desarrollo de software. Pero todas ellas se basan en una serie de enfoques generalistas como son: • Waterfall Model – Lineal • Prototyping – Iterativo • Incremental – combinación de iterativo y lineal • Spiral – Combinación de iterativo y lineal • Rapid Application Development (RAD) -- iterativo
  • 6. WATERFALL MODEL – MODELO CASCADA El desarrollo se ve como una serie de escalones descendentes (como si se tratara de una cascada de agua) a través de las distintas fases. – Analisis – Diseño – Desarrollo – Pruebas – Integración – Mantenimiento Creada en 1970 por Winston W. Royce
  • 7. PRINCIPIOS MODELO CASCADA El proyecto se divide en fases secuenciales, se permite algún tipo de solapamiento entre las distintas fases. • Hace enfasis en la planificación, los tiempos, fechas objetivo, presupuestos y en la implantación del sistema completo al mismo tiempo. • Se mantiene un férreo control durante la duración del proyecto a través del uso extensivo de documentación así como a través de revisiones y aprobaciones por los usuarios y gestores del proyecto, al final de cada fase antes de comenzar la siguiente.
  • 8. PROTOTIPO - ITERATIVO Se conoce así a las actividades de creación de prototipos durante el desarrollo de software, los prototipos son versiones incompletas del producto que va ha ser desarrollado.
  • 9. PRINCIPIOS No es una metodología que funcione por si sóla, es mas una vía para manejar determinadas fases de una metodología más tradicional y amplia (Incremental, Espiral o RAD) Intenta reducir el riesgo inherente al proyecto dividiendo el proyecto en partes más pequeñas. El usuario está más involucrado a través del proyecto, y eso hace que se incremente la aceptación final del producto por los usuarios. Se van realizando maquetas a menor escala siguiendo una política de modificaciones hasta culminar los requerimientos de los usuarios. Mientras que la mayoría de los prototipos se desarrollan con la expectativa de ser deshechos, es posible en algunos casos evolucionar los prototipos hacia el sistema final
  • 10. INCREMENTAL – ITERATIVO + LINEAL Es la combinación de metodologías iterativas y lineales con el objetivo primario de reducir los riesgos del proyecto, los proyectos se dividen en partes mas pequeñas, de esta manera también se facilitan los cambios durante el proceso de desarrollo. Se realizan una serie de mini-waterfalls, donde todas las fases del desarrollo en cascada se completan para una pequeña parte del sistema, antes de abordar la siguiente parte. Los conceptos iniciales del sistema, análisis de requerimientos, diseño de arquitectura, etc. Del sistema completo se definen usando también la técnica de Cascada. Después de esto mediante prototipos se van desarrollando las distintas partes en las que ha sido dividido el proyecto. Finalmente el proceso culmina con la implantación del sistema en su conjunto (otro mini-waterfall) Principios
  • 11. ESPIRAL Consiste en una serie de ciclos que se repiten en forma de espiral, comenzando desde el centro. El Espiral puede verse como un modelo evolutivo que conjuga la naturaleza iterativa con los aspectos controlados y sistemáticos del Modelo Cascada, con el agregado de gestión de riegos. Este método está indicado en grandes proyectos.
  • 12. ESPIRAL En cada vuelta o iteración hay que tener en cuenta: Los Objetivos: Que necesidad debe cubrir el producto. Alternativas: Las diferentes formas de conseguir los objetivos de forma exitosa, desde diferentes puntos de vista como pueden ser: Características: experiencia del personal, requisitos a cumplir, etc. Formas de gestión del sistema. Riesgo asumido con cada alternativa. Desarrollar y Verificar: Programar y probar el software
  • 13. ESPIRAL Si el resultado no es el adecuado o se necesitan mejoras: Se planifican los siguientes pasos y se comienza un nuevo ciclo de la espiral, la espiral tiene dos dimensiones, la radial y la angular. Angular Indica el avance del proyecto dentro de un ciclo Radial Indica el aumento del coste del proyecto, ya que con cada nueva iteración se pasa más tiempo desarrollado
  • 15. RAPID APLICATION DEVELOPER - RAD Este método comprende el desarrollo iterativo, la construcción de prototipos y el uso de herramientas CASE. Aporta la velocidad del desarrollo , principalmente por el uso de las herramientas CASE. La Calidad es otra de sus características, mediante la implicación del usuario en las etapas de análisis y diseño. Apropiado para proyectos de pequeña embergadura. Pone énfasis en el cumplimiento de las expectativas del negocio, mientras que las características técnicas o la excelencia del desarrollo tiene menos importancia.
  • 16. RAD El control del proyecto da prioridad a las fases de desarrollo. Si el proyecto empieza a excederse en tiempos, se considera reducir los requerimientos, no aumentar los tiempos. Los usuarios están especialmente involucrados (esto es imperativo) en las fases de diseño mediante el uso de sesiones de trabajo (workshops). Produce documentación para facilitar la evolución futura del producto y el mantenimiento.
  • 17. RATIONAL UNIFIED PROCESS - RUP Controla: Proceso para el desarrollo de software iterativo que constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientado a objetos. Definición: Marco de trabajo de proceso adaptable, con la idea de ser adaptado a las organizaciones de desarrollo y los equipos de proyecto de software Se basa: en un conjunto de módulos o elementos de contenido, que describen qué se va a producir, las habilidades necesarias requeridas y la explicación paso a paso describiendo cómo se consiguen los objetivos de desarrollo.
  • 18. CARACTERÍSTICAS DE RUP Forma disciplinada de asignar tareas y responsabilidades (quien hace que, cuando y cómo). Pretende implementar las mejores prácticas en Ingeniería de software. Desarrollo Iterativo. Administración de requisitos. Uso de arquitectura basada en componentes. Control de cambios. Modelado visual de software. Verificación de la calidad del software.
  • 19. MÓDULO PRINCIPALES Roles (quién): un rol define un conjunto de habilidades, competencias y responsabilidades relacionadas. Productos de trabajo (qué): un producto de trabajo representa algo que resulta de una tarea, incluyendo todos los documentos y modelos producidos mientras que se trabaja en el proceso. Tareas (cómo): una tarea describe una unidad de trabajo asignada a un rol que proporciona un resultado significante.
  • 20. PRINCIPIOS Adaptar el proceso El proceso deberá adaptarse a las características propias del proyecto u organización, El tamaño del mismo, así como su tipo o las regularizaciones que lo condicionen, incluirán en su diseño específico. También se deberá tener en cuenta el alcance del proyecto. Balancear Prioridades Los requerimientos de los distintos participantes pueden ser diferentes, contradictorios o disputarse recursos limitados. Debe encontrarse un balance que satisfaga los deseos de todos. Debido a este balanceo se podrán corregir desacuerdos en el futuro.
  • 21. + PRINCIPIOS Demostrar valor iterativamente Los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En cada iteración se analiza la opinión de los inversores, la estabilidad y calidad del producto, y se refina la dirección del proyecto, así como también los riesgos involucrados. Elevar el nivel de abstracción Persigue el uso de elementos reutilizables tales como los patrones de software, lenguajes 4GL o frameworks. Desarrollo con la mente puesta en la reutilización del código Un alto nivel de abstracción también permite discusiones sobre diversos niveles y soluciones arquitectónicas.
  • 22. + PRINCIPIOS Enfocarse en la calidad El control de la calidad no debe realizarse al final de cada iteración, sino en todos los aspectos de la producción. El aseguramiento de la calidad forma parte del proceso de desarrollo y no de un grupo independiente.
  • 23. FASES DE RUP Las primeras iteraciones (en las fases de inicio y elaboración) se enfocan hacia: La comprensión del problema y la tecnología. La delimitación del ámbito del proyecto. La eliminación de los riesgos críticos y al establecimiento de la línea de base de la arquitectura.
  • 24. FASES DE RUP Fase de Iniciación Las iteraciones hacen mayor énfasis en actividades de modelado del negocio y de requerimientos. Fase de elaboración Las iteraciones se orientan al desarrollo de la línea de base de la arquitectura, abracan más los flujos de trabajo de requerimientos, modelos de negocio, análisis, diseño e implementación orientada a la línea de base de la arquitectura. Fase de Construcción Se lleva a cabo la construcción del producto mediante series de iteraciones. Para cada iteración se seleccionan algunos casos de uso, se refina su análisis y diseño y se procede a su implementación y pruebas. Se realiza una pequeña cascada para cada ciclo. Se realizan tantas iteraciones como requiera la implementación del producto. Fase de Transición Se pretende garantizar que se tiene un producto preparado para su entrega a los usuarios.
  • 25. ARTEFACTOS Sirven para comprender mejor tanto el análisis como del diseño del sistema. Fase de Inicio Documento Visión Especificación de requerimientos Fase de elaboración Diagramas de caso de uso Fase de construcción Vista lógica Diagrama de clases Modelo ER
  • 26. FASES DE RUP Vista de implementación Diagrama de Secuencia Diagrama de estados Diagrama de colaboración Vista conceptual Modelo de dominio Vista física Mapa de comportamiento HARDWARE
  • 27. METODOLOGÍAS ÁGILES Método para desarrollar Software Característica principal : adaptación al cambio Opuesto a métodos tradicionales (predictivos) Definen de entrada: Alcance (funcionalidad, tecnología, etc..) Costos Tiempos (de inicio a fin del proyecto) Establecen métodos de monitorización y control para prevenir desvíos. Realizan iteraciones cortas entre 2 y 4 semanas.
  • 28. MANIFIESTO ÁGIL • Individuos e iteraciones – Prioridad • Calidad profesional del equipo • Entrega temprana y continua – Cada 2 o 4 semanas se entrega software funcional 100% operativo VS (tradicional) Procesos y herramientas Debe servir de ayuda pero no pueden ser el objetivo
  • 29. MANIFIESTO ÁGIL • Colaboración con el cliente – Prioridad • Participación con el cliente • Comunicación directa y continua En XP el cliente está físicamente presente en el momento del desarrollo VS Negociación contractual Sólo el cliente conoce lo que da verdadero valor al negocio
  • 30. MANIFIESTO ÁGIL • Software funcionando – Prioridad • Satisfacción del cliente • Aportar valor al negocio Parte del desarrollo (código documentado) es la documentación del proyecto VS Documentación extensiva Debe servir de complemento pero no ser un impedimento
  • 31. MANIFIESTO ÁGIL • Respuesta ante el cambio – Prioridad • Aceptar cambios de requerimientos • Ventaja competitiva para el negocio VS Seguir un plan El cliente no está realmente seguro hasta que no prueba el software
  • 32. METODOLOGÍA SCRUM Definición: Scrum es una metodología ágil y flexible para gestionar el desarrollo de software, cuyo principal objetivo es: Maximizar el retorno de la inversión para su empresa (ROI) Se basa en construir primero la funcionalidad de mayor valor para el cliente y en los principios de inspección continua, adaptación, auto-gestión e innovación. Uso: gestionar y controlar desarrollos complejos de software y productos usando prácticas iterativas e incrementales.
  • 33. BENEFICIOS DE SCRUM Cumplimento de expectativas: El cliente establece sus expectativas indicando el valor que le aporta cada requisito / historia del proyecto, el equipo los estima y con esta información el cliente establece su prioridad. De manera regular, el cliente comprueba que efectivamente los requisitos se han cumplido y transmite se feedback al equipo. Flexibilidad a cambios: Alta capacidad de reacción ante los cambios de requerimientos generados por necesidades del cliente o evoluciones del mercado. La metodología está diseñada para adaptarse a los cambios de requerimientos que conllevan los proyectos complejos. Reducción del Time to Market: El cliente puede empezar a utilizar las funcionalidades más importantes del proyecto antes de que esté finalizado por completo.
  • 34. BENEFICIOS DE SCRUM Mayor calidad del software: La metódica de trabajo y la necesidad de obtener una versión funcional después de cada iteración, ayuda a la obtención de un software de calidad superior. Mayor productividad: Se consigue entre otras razones, gracias a la eliminación de la burocracia y a la motivación del equipo que proporciona el hecho de que sean autónomos para organizarse. Maximiza el retorno de la inversión (ROI): Producción de software únicamente con las prestaciones que aportan mayor valor de negocio gracias a la priorización por retorno de inversión.
  • 35. BENEFICIOS DE SCRUM Predicciones de tiempos: Mediante esta metodología se conoce la velocidad media del equipo por sprint (los llamados puntos historia), con lo que consecuentemente, es posible estimar fácilmente para cuando se dispondrá de una determinada funcionalidad que todavía está en proceso de desarrollo. Reducción de riesgos: El hecho de llevar a cabo las funcionalidades de más valor en primer lugar y de conocer la velocidad con que el equipo avanza en el proyecto, permite despejar riesgos eficazmente de manera anticipada.
  • 36. PROCESO DE SCRUM El desarrollo se realiza de forma iterativa e incremental. Cada iteración, denominada Sprint, tiene una duración preestablecida de entre 2 y 4 semanas, obteniendo como resultado una versión del software con nuevas prestaciones listas para ser usadas. En cada nuevo Sprint, se va ajustando la funcionalidad ya construida y se añaden nuevas prestaciones priorizándose siempre aquellas que aporten mayor valor de negocio.
  • 37. PROCESO DE SCRUM Product Backlog: Conjunto de requisitos denominados historias descritos en un lenguaje no técnico y priorizados por valor de negocio, o lo que es lo mismo, por retorno de inversión considerando su beneficio y coste. Sprint Planning: Reunión durante la cual el cliente presenta las historias del backlog por orden de prioridad. El equipo determina la cantidad de historias que puede comprometerse a completar en ese sprint y organiza cómo lo va a conseguir. Sprint: Iteración de duración prefijada durante la cual el equipo trabaja para convertir las historias del cliente a las que se ha comprometido, en una nueva versión del software totalmente operativo. Sprint Backlog: Lista de las tareas necesarias para llevar a cabo las historias del sprint. Daily sprint meeting: Reunión diaria de cómo máximo 15 min. en la que el equipo se sincroniza para trabajar de forma coordinada. Demo y retrospectiva: Reunión que se celebra al final del sprint y en la que el equipo presenta las historias conseguidas mediante una demonstración del producto. Posteriormente, en la retrospectiva, el equipo analiza qué se hizo bien, qué procesos serían mejorables y discute acerca de cómo perfeccionarlos.
  • 38. ROLES DE SCRUM Scrum master: Persona que lidera al equipo guiándolo para que cumpla las reglas y procesos de la metodología. Gestiona la reducción de impedimentos del proyecto y trabaja con el Product Owner para maximizar el ROI. Product owner (PO): Representante de lso accionistas y clientes que usan el software. Se focaliza en la parte de negocio y el es responsable del ROI del proyecto (entregar un valor superior al dinero invertido). Traslada la visión del proyecto al equipo, formaliza las prestaciones en historias a incorporar en el Product Backlog y las reprioriza de forma regular. Team: Grupo de profesionales con los conocimientos técnicos necesarios y que desarrollan el proyecto de manera conjunta llevando a cabo las historias a las que se comprometen al inicio de cada sprint.
  • 39. OOWS Fue creado en la Universidad Politécnica de Valencia. OOWS proviene de OO-Method (Método Orientado a Objetos) . metodología de desarrollo de software basada en una clara separación del Espacio del Problema (el 'qué') del Espacio de la Solución (el 'cómo'). OOWS se basara en el enfoque bottom-up.
  • 40. CARACTERISTICAS DE OOWS Aborda de forma sistemática el modelado conceptual de aplicaciones web Propone una arquitectura software multinivel basada en servicios web Introduce un conjunto de reglas que permiten transformar las abstracciones conceptuales en cada uno los componentes software que implementan los niveles de la arquitectura, haciendo uso intensivo de patrones de diseño.
  • 42. PROCESO Contempla dos pasos principales: Especificación del Problema. Se deben capturar las peculiaridades y el comportamiento que debe ofrecer el sistema para satisfacer los requisitos de usuario identificados. En este paso se incluye el conjunto de requisitos usando una aproximación de Casos de Uso y posteriormente las actividades de modelado conceptual del sistema. Desarrollo de la Solución. En el modelado conceptual, las abstracciones que se derivan del problema son especificadas en términos de clases y de su estructura, comportamiento y funcionalidad, construyendo los siguientes modelos: Objetos, Dinámico, Funcional, Navegacional, y Presentación.
  • 43. MODELO DE OBJETOS OOWS  El Modelo de Objetos, define la estructura y las relaciones estáticas entre clases identificadas en el dominio del problema.
  • 44. MODELO DINÁMICO En el Modelo Dinámico, se describen las posibles secuencias de servicios y los aspectos relacionados con la interacción entre objetos.
  • 45. MODELO FUNCIONAL El Modelo Funcional, captura la semántica asociada a los cambios de estado entre los objetos motivados por la ocurrencia de eventos o servicios.
  • 46. MODELO DE NAVEGACIÓN El Modelo de Navegación, define la semántica navegacional asociada a las clases de los objetos del modelo. Es en este modelo es donde se explica la navegación permitida en la aplicación para cada agente del sistema.
  • 47. MODELO DE NAVEGACIÓN Objetivo: definir cómo se le proporcionará a cada usuario del sistema el acceso a la información y la funcionalidad que le es relevante para llevar a cabo su tarea dentro del sistema y qué secuencias de caminos deberán seguir para conseguirlo. En la aproximación OOWS, los requisitos navegacionales de una aplicación web se obtienen añadiendo una “vista navegacional” (mapa navegacional) sobre el Modelo de Objetos de OO- Method, indicando el conjunto posible de caminos navegacionales que se le proporcionarán al usuario.
  • 48. MODELO DE NAVEGACIÓN El modelo de navegación está compuesto por un conjunto de mapas de navegación (uno por cada agente) que representan y estructuran la visión global del sistema para cada tipo de usuario, definiendo su navegación permitida Existen dos posibilidades: que los nodos (contextos) navegacionales sean alcanzables desde cualquier ubicación en el sistema (llamados contextos de exploración, E) o que los nodos sólo sean alcanzables siguiendo un camino predeterminado de pasos de navegación (llamados contextos de secuencia, S).
  • 49. DESARROLLO DE LA SOLUCIÓN Se propone una estrategia de generación de código basada en componentes para integrar la solución propuesta en ambientes web. En esta etapa se obtendrá una aplicación web, con una funcionalidad equivalente a la especificación inicial según una visión operativa Facilita las tareas de mantenimiento y evolución, ya que la generación automática basada en patrones se realiza utilizando soluciones previamente probadas y validadas. Esta filosofía nos permite obtener de una manera más rápida aplicaciones finales de calidad, evitando entre otras, la fase de pruebas (testing) del sistema.

Notas del editor

  1. Esta plantilla se puede usar como filtro de inicio para un álbum de fotos.