SlideShare una empresa de Scribd logo
1 de 32
Ingeniería de Software: Metodologías
Agustín J. González
ElO329: Diseño y Programación Orientados a
Objeto
Adaptado de: http://www.dsic.upv.es/~uml
http://inst.eecs.berkeley.edu/~cs169/ entre otras
fuentes.
Algunas Metodologías ...
 Personal Software Process y Team software
Process
 XP (Programación Extrema)
 RUP (Rational Unified Process)
 V-model
Elo329: Diseño y Programación
Orientados a Objetos 3
Proceso de Desarrollo
Iterativo e Incremental
Elo329: Diseño y Programación
Orientados a Objetos 4
Recordar el proceso de desarrollo de
software completo
Sueño LanzamientoInvestigación Desarrollo Soporte
Tiempo
Parte a ser considerada en adelante
Elo329: Diseño y Programación
Orientados a Objetos 5
Desarrollo Iterativo e Incremental
 Esta idea es la base de varios métodos de
desarrollo de software como RUP (Rational
Unified Proecess), Extreme Programming y
otros métodos de desarrollo ágiles.
 La idea básica es desarrollar el sistema
siguiendo etapas incrementales caracterizadas
por generación de sucesivas versiones que van
abarcando requerimientos hasta completar el
sistema.
 Cada versión tiene sentido para el cliente.
Elo329: Diseño y Programación
Orientados a Objetos 6
Principales metodologías en el tiempo
Tiempo
Inicialmente se usó
el Modelo
Tradicional de
Cascada
1980
Tiempo
Definición de
Requerimientos
Análisis & Diseño
Implementación y
Test Unitarios
Construcción/Pruebas
t
t
Iteración 1 Iteración 2 Iteración 3
P
C
A&D
R
P
C
A&D
R
P
C
A&D
R
Modelo Iterativo Incremental
1990
Integración y
test del sistema
Operación y
mantención
Elo329: Diseño y Programación
Orientados a Objetos 7
Desarrollo Iterativo e Incremental
 Iterativo: cada vez re-visitamos las etapas del
modelo en cascada, rehacemos, refinamos y
extendemos lo hecho.
 Incremental: regularmente integramos los
avances para generar una versión con sentido
para el cliente.
Elo329: Diseño y Programación
Orientados a Objetos 8
Desarrollo Iterativo e incremental: RUP
es uno de los: sus Características
Guiado y Manejado por Casos de Uso
Centrado en la Arquitectura
Iterativo e Incremental
Desarrollo Basado en Componentes
Utilización de UML
Proceso Integrado
TiempoTiempo
RUP Define Fases de Desarrollo ...
EsfuerzoNecesarioporActividad
TransiciónTransiciónElaboraciónElaboración ConstrucciónConstrucciónConcepciónConcepción
Iteración
Preliminar
. . . .. . . .Iteración
1
Iteración
2
. . . .. . . . Iteración
n
Iteración
n+1
Análisis & Diseño
Construcción
Pruebas
Distribución
Requerimientos
Áreas de trabajo
(Workflow)
A & D
C
P
D
R
A & D
C
P
D
R
A & D
C
P
D
R
A & D
C
P
D
R
Elo329: Diseño y Programación
Orientados a Objetos 10
Fases del Ciclo de Vida
 El ciclo de vida consiste en una serie de fases
que en su conjunto conducen al sistema final.
 Cada fase está compuesta por un número de
iteraciones que generan versiones del sistema.
 Las fases son 4:
 Concepción, Inicio o Estudio de oportunidad
 Elaboración
 Construcción
 Transición
Elo329: Diseño y Programación
Orientados a Objetos 11
...Fases del Ciclo de Desarrollo
 Inicio o Estudio de oportunidad (inception)
 Define el ámbito y objetivos del proyecto
 Se define la funcionalidad y capacidades del
producto
 Elaboración
 Tanto la funcionalidad como el dominio del
problema se estudian en profundidad
 Se define una arquitectura básica
 Se planifica el proyecto considerando recursos
disponibles
Elo329: Diseño y Programación
Orientados a Objetos 12
...Fases del Ciclo de Desarrollo
 Construcción
 El producto se desarrolla a través de iteraciones
donde cada iteración involucra tareas de análisis,
diseño e implementación
 Las fases de estudio y análisis sólo dieron una
arquitectura básica que es aquí refinada de
manera incremental conforme se construye (se
permiten cambios en la estructura)
 Gran parte del trabajo es programación y pruebas
 Se documenta tanto el sistema construido como
el manejo del mismo
 Esta fase proporciona un producto construido
junto con la documentación
Elo329: Diseño y Programación
Orientados a Objetos 13
...Fases del Ciclo de Desarrollo
 Transición
 Se libera el producto y se entrega al usuario para
un uso real
 Se incluyen tareas de marketing, empaquetado
atractivo, instalación, configuración,
entrenamiento, soporte, mantenimiento, etc.
 Los manuales de usuario se completan y refinan
con la información anterior
 Estas tareas se realizan también en iteraciones
Elo329: Diseño y Programación
Orientados a Objetos 14
 El ciclo de vida iterativo se basa en la evolución
de prototipos ejecutables que se muestran a los
usuarios y clientes
 En el ciclo de vida iterativo, en cada iteración se
reproduce el ciclo de vida en cascada a menor
escala
 Los objetivos de una iteración se establecen en
función de la evaluación de las iteraciones
precedentes
Proceso Iterativo e Incremental
Elo329: Diseño y Programación
Orientados a Objetos 15
Análisis
Diseño
Codific.
Pruebas e
Integración
n veces
... Proceso Iterativo e Incremental
 Las actividades se encadenan en una mini-
cascada con un alcance limitado por los
objetivos de la iteración
Elo329: Diseño y Programación
Orientados a Objetos 16
... Proceso Iterativo e Incremental
 Cada iteración comprende:
 Planificar la iteración (estudio de riesgos)
 Análisis de los Casos de Uso y escenarios
 Diseño de opciones arquitectónicas
 Codificación y pruebas. La integración del nuevo
código con el hecho en iteraciones anteriores se
hace gradualmente durante la construcción
 Evaluación de la entrega de ejecutable
(evaluación del prototipo en función de las
pruebas y de los criterios definidos)
 Preparación de la entrega (documentación e
instalación del prototipo)
Elo329: Diseño y Programación
Orientados a Objetos 17
ConcepciónConcepción ElaboraciónElaboración ConstrucciónConstrucción TransiciónTransición
Compromiso de
recursos para fase
elaboración
Hito
Objetivos,
visión
Hito
Arquitectura
Hito
Capacidad
Operacional
Aceptación
del cliente
Liberación
Producto
Tiempo
Importancia de los Hitos en RUP ...
Elo329: Diseño y Programación
Orientados a Objetos 18
 Deployment Set
 Project Management Set
 Configuration & Change Management Set
 Environment Set
 Business Modeling Set
 Requirements Set
 Analysis & Design Set
 Implementation Set
 Test Set
... Elementos en RUP
 Artefactos
 Es el Resultado parcial o final que es producido y
usado durante el proyecto. Son las entradas y salidas
de las actividades
 Un artefacto puede ser un documento, un modelo o un
elemento de modelo
 Conjuntos de Artefactos
Elo329: Diseño y Programación Orientados a Objetos 19
Características Esenciales de RUP
Proceso Iterativo e Incremental
Proceso Dirigido por los Casos de Uso
Proceso Centrado en la Arquitectura
Elo329: Diseño y Programación
Orientados a Objetos 20
Casos de uso: Idea general
 Un caso de uso es una colección de escenarios de éxito
y fallas relacionados que describen actores usando el
sistema para alcanzar algún objetivo.
 Un escenario es una secuencia específica de
acciones e interacciones entre actores y el sistema
bajo discusión.
 Un actor es algo externo al sistema en discusión que
interactúa con éste. Por ejemplo: Una persona, otro
sistema computacional, un sensor, etc.
 Los casos de uso muestran el comportamiento
observable del sistema.
Elo329: Diseño y Programación
Orientados a Objetos 21
Proceso Centrado en la Arquitectura
 La arquitectura de un sistema es la organización
o estructura de sus partes más relevantes
 Un arquitectura ejecutable es una
implementación parcial del sistema, construida
para demostrar algunas funciones y propiedades
 RUP establece refinamientos sucesivos de una
arquitectura ejecutable, construida como un
prototipo evolutivo
Architecture
Inception Elaboration Construction Transition
Elo329: Diseño y Programación
Orientados a Objetos 22
Otra visión similar con más
Actividades
Elo329: Diseño y Programación
Orientados a Objetos 23
Otra visión similar con más
Actividades
Disciplinas o áreas de trabajo
Modelado del Negocio
Requisitos
Análisis y Diseño
Implementación
Pruebas
Distribución
Entorno
Gestión de configuración y cambios
Gestión del proyecto
Primarios
De Apoyo
Elo329: Diseño y Programación
Orientados a Objetos 24
Requisitos
Capturar, definir y
validar los casos de uso
Realizar los
casos de uso
Verificar que se
satisfacen los
casos de uso
Análisis & Diseño
Implementación
Pruebas
Casos de Uso
integran el
trabajo
Proceso dirigido por los Casos de Uso
Elo329: Diseño y Programación
Orientados a Objetos 25
Caso de Uso
Realización de Análisis
Realización de Diseño
Caso de Prueba
X
«trace» «trace»
«trace»
«trace»
Pruebas Funcionales
Pruebas
Unitarias
[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley, 1999]
... Proceso dirigido por los Casos de Uso
Elo329: Diseño y Programación
Orientados a Objetos 26
... Proceso dirigido por los Casos de
Uso
Elo329: Diseño y Programación
Orientados a Objetos 27
Enfoque
Cascada
Enfoque
Iterativo e
Incremental
Proceso Iterativo e Incremental
Grado de completitud de cada área de trabajo
Elo329: Diseño y Programación
Orientados a Objetos 28
Grado de Finalización de Artefactos
... Proceso Iterativo e Incremental
Elo329: Diseño y Programación
Orientados a Objetos 29
15%
10%
15%
30%
15%
P re lim ina ry
Ite ra tion(s)
ite r.
# 1
ite r.
# 2
ite r.
# n
ite r.
#n+1
ite r.
#n+2
ite r.
#m
ite r.
#m +1
Una iteración en la
fase de elaboración
Requisitos
Diseño
Implementación
Pruebas
Análisis
Esfuerzo respecto de las Áreas de
Trabajo (Workflows)
Concepción Elaboración Construcción Transición
Elo329: Diseño y Programación
Orientados a Objetos 30
P re lim ina ry
Ite ra tion(s)
ite r.
# 1
ite r.
# 2
ite r.
# n
ite r.
#n+1
ite r.
#n+2
ite r.
#m
ite r.
#m +1
Una iteración en la
fase de elaboración
Requisitos
Diseño
Implementación
Pruebas
Análisis
Esfuerzo: 5% 20% 65% 10%
Duración: 10% 30% 50% 10%
...Esfuerzo respecto de las Fases
Concepción Elaboración Construcción Transición
Elo329: Diseño y Programación
Orientados a Objetos 31
Comparar con V-Model
Elo329: Diseño y Programación
Orientados a Objetos 32
Dos lecciones importantes
 El tiempo es independiente del contexto.
Ahorrar una semana la comienzo de un
proyecto es tan bueno como ahorrarla al final.
Una semana es una semana.
 Es mucho más fácil ahorrar tiempo al inicio del
proyecto (cuando los “entregables” son menos
claros).
 Conclusión: Cómo se aplica esto al proyecto
del ramo?

Más contenido relacionado

La actualidad más candente

Estrategias y técnicas de pruebas de software
Estrategias y técnicas de pruebas de softwareEstrategias y técnicas de pruebas de software
Estrategias y técnicas de pruebas de softwarepadrino98
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de softwarexpjair
 
16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB 4.3 N-capas 4.4 Pruebas Un...
16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB  4.3 N-capas 4.4 Pruebas Un...16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB  4.3 N-capas 4.4 Pruebas Un...
16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB 4.3 N-capas 4.4 Pruebas Un...Luis Fernando Aguas Bucheli
 
Verificacion --validacion
Verificacion --validacionVerificacion --validacion
Verificacion --validacioneduardoao2
 
Cap1 resolucionproblemasconcomputador-090407121107-phpapp01
Cap1 resolucionproblemasconcomputador-090407121107-phpapp01Cap1 resolucionproblemasconcomputador-090407121107-phpapp01
Cap1 resolucionproblemasconcomputador-090407121107-phpapp01Frank Diego Quispe Vigo
 
SSTQB - Glosario de terminos de pruebas de software
SSTQB  - Glosario de terminos de pruebas de softwareSSTQB  - Glosario de terminos de pruebas de software
SSTQB - Glosario de terminos de pruebas de softwareProfessional Testing
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurancewill2294
 
Charla prototipo evolutivo cleanroom
Charla prototipo evolutivo cleanroomCharla prototipo evolutivo cleanroom
Charla prototipo evolutivo cleanroomRodrigo Navarro
 

La actualidad más candente (18)

Testing intro-a
Testing intro-aTesting intro-a
Testing intro-a
 
Estrategias y técnicas de pruebas de software
Estrategias y técnicas de pruebas de softwareEstrategias y técnicas de pruebas de software
Estrategias y técnicas de pruebas de software
 
Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1
 
Capacitacitación Tester - QA 4
Capacitacitación Tester - QA 4Capacitacitación Tester - QA 4
Capacitacitación Tester - QA 4
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB 4.3 N-capas 4.4 Pruebas Un...
16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB  4.3 N-capas 4.4 Pruebas Un...16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB  4.3 N-capas 4.4 Pruebas Un...
16 UNIDAD: 4. INTRODUCCION A LAS ARQUITECTURASWEB 4.3 N-capas 4.4 Pruebas Un...
 
ingenieria del software
ingenieria del softwareingenieria del software
ingenieria del software
 
Verificacion --validacion
Verificacion --validacionVerificacion --validacion
Verificacion --validacion
 
Cap1 resolucionproblemasconcomputador-090407121107-phpapp01
Cap1 resolucionproblemasconcomputador-090407121107-phpapp01Cap1 resolucionproblemasconcomputador-090407121107-phpapp01
Cap1 resolucionproblemasconcomputador-090407121107-phpapp01
 
SSTQB - Glosario de terminos de pruebas de software
SSTQB  - Glosario de terminos de pruebas de softwareSSTQB  - Glosario de terminos de pruebas de software
SSTQB - Glosario de terminos de pruebas de software
 
Las mejores herramientas para realizar pruebas de software
Las mejores herramientas para realizar pruebas de softwareLas mejores herramientas para realizar pruebas de software
Las mejores herramientas para realizar pruebas de software
 
(Fases)
(Fases)(Fases)
(Fases)
 
Testing - Ing. Gabriela Muñoz
Testing - Ing. Gabriela MuñozTesting - Ing. Gabriela Muñoz
Testing - Ing. Gabriela Muñoz
 
Tecnicas de Pruebas
 Tecnicas de Pruebas  Tecnicas de Pruebas
Tecnicas de Pruebas
 
Entregables de pruebas
Entregables de pruebasEntregables de pruebas
Entregables de pruebas
 
Pruebas - Fundamentos
Pruebas - FundamentosPruebas - Fundamentos
Pruebas - Fundamentos
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Charla prototipo evolutivo cleanroom
Charla prototipo evolutivo cleanroomCharla prototipo evolutivo cleanroom
Charla prototipo evolutivo cleanroom
 

Destacado

Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...Tieturi Oy
 
Social Media para políticos
Social Media para políticosSocial Media para políticos
Social Media para políticosTestingBaires
 
Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...
Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...
Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...Tieturi Oy
 
Testaus 2013 Mark Fewster Reporting Software Quality
Testaus 2013 Mark Fewster Reporting Software QualityTestaus 2013 Mark Fewster Reporting Software Quality
Testaus 2013 Mark Fewster Reporting Software QualityTieturi Oy
 
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...Tieturi Oy
 
Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010Ernesto Kiszkurno
 
Community manager alcance de la función v1.0
Community manager alcance de la función v1.0Community manager alcance de la función v1.0
Community manager alcance de la función v1.0TestingBaires
 
Testlodge Tutorial v1.0
Testlodge Tutorial v1.0Testlodge Tutorial v1.0
Testlodge Tutorial v1.0TestingBaires
 
El valor de una certificación
El valor de una certificaciónEl valor de una certificación
El valor de una certificaciónTestingBaires
 
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010Globe Testing
 
Consolidado Encuestas Software Testing Ago2012
Consolidado Encuestas Software Testing Ago2012Consolidado Encuestas Software Testing Ago2012
Consolidado Encuestas Software Testing Ago2012TestingBaires
 
Pedro sebastián mingo. peopleware en el testing
Pedro sebastián mingo. peopleware en el testingPedro sebastián mingo. peopleware en el testing
Pedro sebastián mingo. peopleware en el testing233 Grados de TI
 
Tieturi - Paluu tulevaisuuteen, Veli-Matti Heiskanen, 25.5.2016
Tieturi -  Paluu tulevaisuuteen, Veli-Matti Heiskanen,  25.5.2016Tieturi -  Paluu tulevaisuuteen, Veli-Matti Heiskanen,  25.5.2016
Tieturi - Paluu tulevaisuuteen, Veli-Matti Heiskanen, 25.5.2016Tieturi Oy
 
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...Tieturi Oy
 
Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)
Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)
Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)233 Grados de TI
 
Software Testing - Panorama Actual
Software Testing - Panorama ActualSoftware Testing - Panorama Actual
Software Testing - Panorama ActualTestingBaires
 
¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?Software Guru
 

Destacado (20)

Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...
 
Social Media para políticos
Social Media para políticosSocial Media para políticos
Social Media para políticos
 
V8n15s1a04
V8n15s1a04V8n15s1a04
V8n15s1a04
 
Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...
Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...
Aamiaisseminaari 3.6.: Julkisen hallinnon projektien haasteita. Teemu Anttila...
 
Testaus 2013 Mark Fewster Reporting Software Quality
Testaus 2013 Mark Fewster Reporting Software QualityTestaus 2013 Mark Fewster Reporting Software Quality
Testaus 2013 Mark Fewster Reporting Software Quality
 
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
 
Capitulo5
Capitulo5Capitulo5
Capitulo5
 
Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010
 
Community manager alcance de la función v1.0
Community manager alcance de la función v1.0Community manager alcance de la función v1.0
Community manager alcance de la función v1.0
 
Testlodge Tutorial v1.0
Testlodge Tutorial v1.0Testlodge Tutorial v1.0
Testlodge Tutorial v1.0
 
El valor de una certificación
El valor de una certificaciónEl valor de una certificación
El valor de una certificación
 
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
 
Consolidado Encuestas Software Testing Ago2012
Consolidado Encuestas Software Testing Ago2012Consolidado Encuestas Software Testing Ago2012
Consolidado Encuestas Software Testing Ago2012
 
Scrum y testing
Scrum y testingScrum y testing
Scrum y testing
 
Pedro sebastián mingo. peopleware en el testing
Pedro sebastián mingo. peopleware en el testingPedro sebastián mingo. peopleware en el testing
Pedro sebastián mingo. peopleware en el testing
 
Tieturi - Paluu tulevaisuuteen, Veli-Matti Heiskanen, 25.5.2016
Tieturi -  Paluu tulevaisuuteen, Veli-Matti Heiskanen,  25.5.2016Tieturi -  Paluu tulevaisuuteen, Veli-Matti Heiskanen,  25.5.2016
Tieturi - Paluu tulevaisuuteen, Veli-Matti Heiskanen, 25.5.2016
 
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Robotit tulevat Cristina An...
 
Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)
Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)
Enrique Sánchez. Cómo ser un agile tester (y no morir intentándolo)
 
Software Testing - Panorama Actual
Software Testing - Panorama ActualSoftware Testing - Panorama Actual
Software Testing - Panorama Actual
 
¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?
 

Similar a Software engineeringparte2 (1)

ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.pptELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.pptMarko Zapata
 
Ing.software. introduccion rup procesos unificados racionales
Ing.software. introduccion rup   procesos unificados racionalesIng.software. introduccion rup   procesos unificados racionales
Ing.software. introduccion rup procesos unificados racionalesCrhis
 
ADS - Sesion1 - RUP
ADS - Sesion1 - RUPADS - Sesion1 - RUP
ADS - Sesion1 - RUPwilly0303
 
4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De RationalJulio Pari
 
Características de un programa
Características de un programaCaracterísticas de un programa
Características de un programaDavid Sampedro
 
Proceso Unificado De Rational
Proceso Unificado De RationalProceso Unificado De Rational
Proceso Unificado De RationalJulio Pari
 
Documentacion rational
Documentacion rationalDocumentacion rational
Documentacion rationalMila Pascual
 
Documentacion rational
Documentacion rationalDocumentacion rational
Documentacion rationalMila Pascual
 
CLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWARE
CLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWARECLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWARE
CLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWAREMilagrosCz
 
clases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.pptclases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.pptTereBestene
 
clases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.pptclases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.pptronald flores
 

Similar a Software engineeringparte2 (1) (20)

ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.pptELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
 
Presentacion rup
Presentacion rupPresentacion rup
Presentacion rup
 
Ing.software. introduccion rup procesos unificados racionales
Ing.software. introduccion rup   procesos unificados racionalesIng.software. introduccion rup   procesos unificados racionales
Ing.software. introduccion rup procesos unificados racionales
 
ADS - Sesion1 - RUP
ADS - Sesion1 - RUPADS - Sesion1 - RUP
ADS - Sesion1 - RUP
 
RUP
RUPRUP
RUP
 
DiseñO De Sistemas
DiseñO De SistemasDiseñO De Sistemas
DiseñO De Sistemas
 
Diseño de Sistemas
Diseño de SistemasDiseño de Sistemas
Diseño de Sistemas
 
DiseñO De Sistemas
DiseñO De SistemasDiseñO De Sistemas
DiseñO De Sistemas
 
Tms 01 conceptos
Tms 01 conceptosTms 01 conceptos
Tms 01 conceptos
 
4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational
 
Características de un programa
Características de un programaCaracterísticas de un programa
Características de un programa
 
Rup
RupRup
Rup
 
Proceso Unificado De Rational
Proceso Unificado De RationalProceso Unificado De Rational
Proceso Unificado De Rational
 
Documentacion rational
Documentacion rationalDocumentacion rational
Documentacion rational
 
Documentacion rational
Documentacion rationalDocumentacion rational
Documentacion rational
 
Rup
RupRup
Rup
 
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
 
CLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWARE
CLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWARECLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWARE
CLASES DE METODOLOGIA DEL DESARROLLO DE SOFTWARE
 
clases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.pptclases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.ppt
 
clases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.pptclases3metodmetodlgiaherra.ppt
clases3metodmetodlgiaherra.ppt
 

Último

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 

Último (10)

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 

Software engineeringparte2 (1)

  • 1. Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes.
  • 2. Algunas Metodologías ...  Personal Software Process y Team software Process  XP (Programación Extrema)  RUP (Rational Unified Process)  V-model
  • 3. Elo329: Diseño y Programación Orientados a Objetos 3 Proceso de Desarrollo Iterativo e Incremental
  • 4. Elo329: Diseño y Programación Orientados a Objetos 4 Recordar el proceso de desarrollo de software completo Sueño LanzamientoInvestigación Desarrollo Soporte Tiempo Parte a ser considerada en adelante
  • 5. Elo329: Diseño y Programación Orientados a Objetos 5 Desarrollo Iterativo e Incremental  Esta idea es la base de varios métodos de desarrollo de software como RUP (Rational Unified Proecess), Extreme Programming y otros métodos de desarrollo ágiles.  La idea básica es desarrollar el sistema siguiendo etapas incrementales caracterizadas por generación de sucesivas versiones que van abarcando requerimientos hasta completar el sistema.  Cada versión tiene sentido para el cliente.
  • 6. Elo329: Diseño y Programación Orientados a Objetos 6 Principales metodologías en el tiempo Tiempo Inicialmente se usó el Modelo Tradicional de Cascada 1980 Tiempo Definición de Requerimientos Análisis & Diseño Implementación y Test Unitarios Construcción/Pruebas t t Iteración 1 Iteración 2 Iteración 3 P C A&D R P C A&D R P C A&D R Modelo Iterativo Incremental 1990 Integración y test del sistema Operación y mantención
  • 7. Elo329: Diseño y Programación Orientados a Objetos 7 Desarrollo Iterativo e Incremental  Iterativo: cada vez re-visitamos las etapas del modelo en cascada, rehacemos, refinamos y extendemos lo hecho.  Incremental: regularmente integramos los avances para generar una versión con sentido para el cliente.
  • 8. Elo329: Diseño y Programación Orientados a Objetos 8 Desarrollo Iterativo e incremental: RUP es uno de los: sus Características Guiado y Manejado por Casos de Uso Centrado en la Arquitectura Iterativo e Incremental Desarrollo Basado en Componentes Utilización de UML Proceso Integrado
  • 9. TiempoTiempo RUP Define Fases de Desarrollo ... EsfuerzoNecesarioporActividad TransiciónTransiciónElaboraciónElaboración ConstrucciónConstrucciónConcepciónConcepción Iteración Preliminar . . . .. . . .Iteración 1 Iteración 2 . . . .. . . . Iteración n Iteración n+1 Análisis & Diseño Construcción Pruebas Distribución Requerimientos Áreas de trabajo (Workflow) A & D C P D R A & D C P D R A & D C P D R A & D C P D R
  • 10. Elo329: Diseño y Programación Orientados a Objetos 10 Fases del Ciclo de Vida  El ciclo de vida consiste en una serie de fases que en su conjunto conducen al sistema final.  Cada fase está compuesta por un número de iteraciones que generan versiones del sistema.  Las fases son 4:  Concepción, Inicio o Estudio de oportunidad  Elaboración  Construcción  Transición
  • 11. Elo329: Diseño y Programación Orientados a Objetos 11 ...Fases del Ciclo de Desarrollo  Inicio o Estudio de oportunidad (inception)  Define el ámbito y objetivos del proyecto  Se define la funcionalidad y capacidades del producto  Elaboración  Tanto la funcionalidad como el dominio del problema se estudian en profundidad  Se define una arquitectura básica  Se planifica el proyecto considerando recursos disponibles
  • 12. Elo329: Diseño y Programación Orientados a Objetos 12 ...Fases del Ciclo de Desarrollo  Construcción  El producto se desarrolla a través de iteraciones donde cada iteración involucra tareas de análisis, diseño e implementación  Las fases de estudio y análisis sólo dieron una arquitectura básica que es aquí refinada de manera incremental conforme se construye (se permiten cambios en la estructura)  Gran parte del trabajo es programación y pruebas  Se documenta tanto el sistema construido como el manejo del mismo  Esta fase proporciona un producto construido junto con la documentación
  • 13. Elo329: Diseño y Programación Orientados a Objetos 13 ...Fases del Ciclo de Desarrollo  Transición  Se libera el producto y se entrega al usuario para un uso real  Se incluyen tareas de marketing, empaquetado atractivo, instalación, configuración, entrenamiento, soporte, mantenimiento, etc.  Los manuales de usuario se completan y refinan con la información anterior  Estas tareas se realizan también en iteraciones
  • 14. Elo329: Diseño y Programación Orientados a Objetos 14  El ciclo de vida iterativo se basa en la evolución de prototipos ejecutables que se muestran a los usuarios y clientes  En el ciclo de vida iterativo, en cada iteración se reproduce el ciclo de vida en cascada a menor escala  Los objetivos de una iteración se establecen en función de la evaluación de las iteraciones precedentes Proceso Iterativo e Incremental
  • 15. Elo329: Diseño y Programación Orientados a Objetos 15 Análisis Diseño Codific. Pruebas e Integración n veces ... Proceso Iterativo e Incremental  Las actividades se encadenan en una mini- cascada con un alcance limitado por los objetivos de la iteración
  • 16. Elo329: Diseño y Programación Orientados a Objetos 16 ... Proceso Iterativo e Incremental  Cada iteración comprende:  Planificar la iteración (estudio de riesgos)  Análisis de los Casos de Uso y escenarios  Diseño de opciones arquitectónicas  Codificación y pruebas. La integración del nuevo código con el hecho en iteraciones anteriores se hace gradualmente durante la construcción  Evaluación de la entrega de ejecutable (evaluación del prototipo en función de las pruebas y de los criterios definidos)  Preparación de la entrega (documentación e instalación del prototipo)
  • 17. Elo329: Diseño y Programación Orientados a Objetos 17 ConcepciónConcepción ElaboraciónElaboración ConstrucciónConstrucción TransiciónTransición Compromiso de recursos para fase elaboración Hito Objetivos, visión Hito Arquitectura Hito Capacidad Operacional Aceptación del cliente Liberación Producto Tiempo Importancia de los Hitos en RUP ...
  • 18. Elo329: Diseño y Programación Orientados a Objetos 18  Deployment Set  Project Management Set  Configuration & Change Management Set  Environment Set  Business Modeling Set  Requirements Set  Analysis & Design Set  Implementation Set  Test Set ... Elementos en RUP  Artefactos  Es el Resultado parcial o final que es producido y usado durante el proyecto. Son las entradas y salidas de las actividades  Un artefacto puede ser un documento, un modelo o un elemento de modelo  Conjuntos de Artefactos
  • 19. Elo329: Diseño y Programación Orientados a Objetos 19 Características Esenciales de RUP Proceso Iterativo e Incremental Proceso Dirigido por los Casos de Uso Proceso Centrado en la Arquitectura
  • 20. Elo329: Diseño y Programación Orientados a Objetos 20 Casos de uso: Idea general  Un caso de uso es una colección de escenarios de éxito y fallas relacionados que describen actores usando el sistema para alcanzar algún objetivo.  Un escenario es una secuencia específica de acciones e interacciones entre actores y el sistema bajo discusión.  Un actor es algo externo al sistema en discusión que interactúa con éste. Por ejemplo: Una persona, otro sistema computacional, un sensor, etc.  Los casos de uso muestran el comportamiento observable del sistema.
  • 21. Elo329: Diseño y Programación Orientados a Objetos 21 Proceso Centrado en la Arquitectura  La arquitectura de un sistema es la organización o estructura de sus partes más relevantes  Un arquitectura ejecutable es una implementación parcial del sistema, construida para demostrar algunas funciones y propiedades  RUP establece refinamientos sucesivos de una arquitectura ejecutable, construida como un prototipo evolutivo Architecture Inception Elaboration Construction Transition
  • 22. Elo329: Diseño y Programación Orientados a Objetos 22 Otra visión similar con más Actividades
  • 23. Elo329: Diseño y Programación Orientados a Objetos 23 Otra visión similar con más Actividades Disciplinas o áreas de trabajo Modelado del Negocio Requisitos Análisis y Diseño Implementación Pruebas Distribución Entorno Gestión de configuración y cambios Gestión del proyecto Primarios De Apoyo
  • 24. Elo329: Diseño y Programación Orientados a Objetos 24 Requisitos Capturar, definir y validar los casos de uso Realizar los casos de uso Verificar que se satisfacen los casos de uso Análisis & Diseño Implementación Pruebas Casos de Uso integran el trabajo Proceso dirigido por los Casos de Uso
  • 25. Elo329: Diseño y Programación Orientados a Objetos 25 Caso de Uso Realización de Análisis Realización de Diseño Caso de Prueba X «trace» «trace» «trace» «trace» Pruebas Funcionales Pruebas Unitarias [The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley, 1999] ... Proceso dirigido por los Casos de Uso
  • 26. Elo329: Diseño y Programación Orientados a Objetos 26 ... Proceso dirigido por los Casos de Uso
  • 27. Elo329: Diseño y Programación Orientados a Objetos 27 Enfoque Cascada Enfoque Iterativo e Incremental Proceso Iterativo e Incremental Grado de completitud de cada área de trabajo
  • 28. Elo329: Diseño y Programación Orientados a Objetos 28 Grado de Finalización de Artefactos ... Proceso Iterativo e Incremental
  • 29. Elo329: Diseño y Programación Orientados a Objetos 29 15% 10% 15% 30% 15% P re lim ina ry Ite ra tion(s) ite r. # 1 ite r. # 2 ite r. # n ite r. #n+1 ite r. #n+2 ite r. #m ite r. #m +1 Una iteración en la fase de elaboración Requisitos Diseño Implementación Pruebas Análisis Esfuerzo respecto de las Áreas de Trabajo (Workflows) Concepción Elaboración Construcción Transición
  • 30. Elo329: Diseño y Programación Orientados a Objetos 30 P re lim ina ry Ite ra tion(s) ite r. # 1 ite r. # 2 ite r. # n ite r. #n+1 ite r. #n+2 ite r. #m ite r. #m +1 Una iteración en la fase de elaboración Requisitos Diseño Implementación Pruebas Análisis Esfuerzo: 5% 20% 65% 10% Duración: 10% 30% 50% 10% ...Esfuerzo respecto de las Fases Concepción Elaboración Construcción Transición
  • 31. Elo329: Diseño y Programación Orientados a Objetos 31 Comparar con V-Model
  • 32. Elo329: Diseño y Programación Orientados a Objetos 32 Dos lecciones importantes  El tiempo es independiente del contexto. Ahorrar una semana la comienzo de un proyecto es tan bueno como ahorrarla al final. Una semana es una semana.  Es mucho más fácil ahorrar tiempo al inicio del proyecto (cuando los “entregables” son menos claros).  Conclusión: Cómo se aplica esto al proyecto del ramo?

Notas del editor

  1. El proceso propuesto tiene mucho en común con el modelo de proceso propuesto por Barry Bohem en 1988: “El modelo espiral”. Los cuadrantes de la espiral son: Determinar objetivos, alternativas y restricciones Evaluar alternativas, identificar y resolver riesgos, construir proptotipos Desarrollo y verificación del producto Planificación de las siguientes fases