SlideShare a Scribd company logo
Metodología de Desarrollo
de Software
Magister: JUAN GONZALEZ
Grandes Problemas
Actuales
• Retraso respecto al potencial de hardware
• Insatisfacción de la demanda
• Mantención
Percepciones de la
Disciplina
• Ineficiencia
• Altos costos
• Baja confiabilidad
• Escasa ingeniería
Proceso de Software
• Relativamente nuevo e inmaduro
• No ocurre aislado
• Transforma modelos
• Transforma necesidades y requerimientos en sistemas
Crisis del Software
• Crisis v/s aflicción crónica v/s depresión
• Síntomas
– funcionalidad incorrecta
– desarrollo y mantención inadecuados
– insatisfacción de la demanda
Crisis del Software
• Problemas
– carencia de información respecto a qué se hace
– insatisfacción de clientes y usuarios
– calidad sospechosa
– mantención difícil y costosa
Crisis del Software
• Potenciales causas
– carácter lógico del software
– formación profesional (o falta de)
– entrenamiento y actualización
– resistencia al cambio
• Solución
– enfoque ingenieril
Mitos del Software
• Algunos bastantes arraigados
– estándares y procedimientos bastan
– tecnología de punta basta
– más gente para ponerse al día
– programación inmediata
– fácil acomodo de los cambios
– programación: fin del trabajo
– calidad: sólo del ejecutable
– código es el único producto
Ingeniería de Software
Establecimiento y uso de principios con caracteres de
ingeniería apropiados para obtener, eficientemente,
software confiable, que opere eficaz y eficientemente en
máquinas reales
Ingeniería de Software
• Objetivos
– maximizar calidad
– maximizar productividad
– minimizar riesgos
Ingeniería de Software
• Implicancias
– constructores básicos más poderosos
– mejores técnicas de control de calidad
– mejores herramientas y métodos
– filosofía global -- ¿ enfoque de procesos ?
Ingeniería de Software
• Concepto se acuñó en 1968, en Conferencia de la OTAN
en Alemania, con la intención de que mediante el uso de
filosofías y paradigmas de disciplinas ingenieriles
establecidas se resolviera la crisis del software
Dificultades en la
Producción de Software
• Esencia
– complejidad
– conformidad
– necesidad de cambios
– invisibilidad
• Accidentes
– avances de investigación
– no silver bullet? (Brooks, 1986)
Paradigmas
Esquemas (métodos, herramientas, procedimientos) que
aplicados correctamente conducen a la construcción de
un producto de software con una perspectiva ingenieril
Paradigma por default: ensayo y error
Paradigmas
• Secuencialidad - modelo clásico
• Modelamiento - prototipos
• Evolución - espiral
• Reusabilidad - orientación a objetos
• Formalidad - cleanroom
• Técnicas de cuarta generación
• Rapid Application Development
Paradigma Clásico
Ingeniería
delSistema
Análisis
Diseño
Codificación
Prueba
Mantenimiento
Royce (1970)
E l c ic lo d e vid a c lá s ic o
Prototipos
Boehm (1984)
Recolección y
Refinamiento de
Requerimientos
Diseño
Rápido
Construcción
delPrototipo
Evaluación del
Prototipo por
elCliente
Refinamiento
delPrototipo
Producto de
Ingeniería
Comienzo
Parada
C r e a c ió n d e p r o to tip o s
Recolección de
Requerimientos
y Planificación
del Proyecto
(iniciales)
Planificación
basada en los
comentarios
del cliente
Evaluación
del cliente
Análisis de Riesgo
basado en los
requerimientos
iniciales
Análisis de Riesgo
basado en la
reacción del cliente
Hacia el Sistema Final
Prototipo inicial del Sw
Prototipo del siguiente nivel
Sistema de Ingeniería
INGENIERÍA
EVALUACIÓN DEL
CLIENTE
PLANIFICACIÓN ANÁLISIS DE RIESGO
Decisión de
Seguir/No Seguir
Boehm (1986)
Modelo Espiral
Rapid Application
Development
JAD & JRP
Plan de
Proyecto
Diseño & Construcción
Timeboxing
Desarrolladores
Fases del RAD
Clientes
Representantes de Usuarios Administración
Facilitadores Desarrolladores
Administración
Representantes de Usuarios
Visión Genérica
Definición Desarrollo Mantención
  
Foco: ¿Qué? Foco: ¿Cómo? Foco: Cambio
 Planificación Proyecto
 Análisis Sistemas
 Análisis Requerimientos
 Diseño
 Codificación
 Testing
 Corrección
 Adaptación
 Mejoramiento
 Ingeniería Inversa
Calendarización
Red de Tareas
= HITO
ANÁLISIS Y
ESPECIFICA-
CIÓN
REVISIÓN DE
LOS REQUE-
RIMIENTOS
DISEÑO ARQUI-
TECTÓNICO Y
DE DATOS
REVISIÓN DEL
DISEÑO
PRELIMINAR
PLANIFICA-
CIÓN DE LA
PRUEBA
DISEÑO
PROCEDI-
MENTAL
INSPECCIÓN
DEL DISEÑO
CODIFI-
CACIÓN
INSPECCIÓN
DEL CÓDIGO
PRUEBA DE
UNIDAD
PROCEDIMIENTO
DE PRUEBA
REVISIÓN DE
LA PRUEBA
PRUEBA
DE INTE-
GRACIÓN
PRUEBA
DE VALI-
DACIÓN
Gestión de
Proyectos
Plan
Evaluación
del
Problema
Métodos Entregables
Evaluación
del Riesgo
Tamaño del
Problema
Modelo del
Proceso
Problema
Atributos de
Calidad
Definición
de V&V
actividades
& chequeos
Estimación
de Esfuerzo
WBS
más
Esfuerzo
Perfil del
equipo
Escalas de
tiempo
Costos
Contingencia
Planes
Plan de
Calidad
Plan
Técnico
Plan de
Recursos
Gestión de Proyectos
Framework y Prácticas
Identificar y corregir
defectos y problemas
potenciales
tempranamente
Planificar y
seguir/monitorear
Minimizar re-trabajo
causado por cambio
incontrolado
Usar efectivamente
los recursos de
personal
Monitoreo de defectos
contra objetivos de
calidad
Acuerdo en las
interfaces
Inspecciones
formales
Gestión del riesgo
Calendarización y
gestión basada en
métricas
Gestión de configuración
Visibilidad del avance
versus planes
Gestión consciente de
las personas
Controles on/off
de calidad en niveles
de detalle
Panel de
control
Gestión de Proyectos
Panel de Control
Ideas Finales
Tendencias
• Enfoques evolutivos, incrementales
• Herramientas de alta productividad, integración
• Organizaciones planas
• Énfasis en procesos que definen un marco para incorporar
recursos humanos y tecnología
Ideas Finales
Perfil de Desarrollo
• Combinación de paradigmas de desarrollo
• Definición explícita de roles en equipos de desarrollo:
especialistas de SQA, SCM, documentación,
comunicaciones, bases de datos
• Estandarización
• Proceso definido que guía introducción de tecnologías y
metodologías
• Equipos multidisciplinarios
• Rol participativo del cliente/usuario

More Related Content

Similar to PARADIGMAS.ppt

Ingenier%c3%ada de software
Ingenier%c3%ada de softwareIngenier%c3%ada de software
Ingenier%c3%ada de software
Marilupe
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
142918
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
samantha
 
Ingen de software
Ingen de softwareIngen de software
Ingen de software
erikapoh
 
Curso ingeniería de software parte i
Curso ingeniería de software parte iCurso ingeniería de software parte i
Curso ingeniería de software parte i
parafernalico
 
Desarrollando Software de Calidad Mundial
Desarrollando Software de Calidad MundialDesarrollando Software de Calidad Mundial
Desarrollando Software de Calidad Mundial
Steelmood
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevida
claudiappaez
 

Similar to PARADIGMAS.ppt (20)

Ingenier%c3%ada de software
Ingenier%c3%ada de softwareIngenier%c3%ada de software
Ingenier%c3%ada de software
 
Clase 11
Clase 11Clase 11
Clase 11
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Ingen de software
Ingen de softwareIngen de software
Ingen de software
 
Procesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITECProcesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITEC
 
Curso ingeniería de software parte i
Curso ingeniería de software parte iCurso ingeniería de software parte i
Curso ingeniería de software parte i
 
4. Metodología-2020.pdf
4. Metodología-2020.pdf4. Metodología-2020.pdf
4. Metodología-2020.pdf
 
Ingenieria de software (conceptos básicos)
Ingenieria de software (conceptos básicos)Ingenieria de software (conceptos básicos)
Ingenieria de software (conceptos básicos)
 
Ciclo de vida
Ciclo de vidaCiclo de vida
Ciclo de vida
 
Desarrollo de Sortware.pdf
Desarrollo de Sortware.pdfDesarrollo de Sortware.pdf
Desarrollo de Sortware.pdf
 
Clase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptClase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.ppt
 
Metodologías Agiles - Breve Introducción
Metodologías Agiles - Breve IntroducciónMetodologías Agiles - Breve Introducción
Metodologías Agiles - Breve Introducción
 
Proceso de dasarrollo de software
Proceso de dasarrollo de softwareProceso de dasarrollo de software
Proceso de dasarrollo de software
 
GESTION DE PROYECTOS INFORMATICOS
GESTION  DE PROYECTOS INFORMATICOSGESTION  DE PROYECTOS INFORMATICOS
GESTION DE PROYECTOS INFORMATICOS
 
Desarrollando Software de Calidad Mundial
Desarrollando Software de Calidad MundialDesarrollando Software de Calidad Mundial
Desarrollando Software de Calidad Mundial
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevida
 
I Jornada CSI - Javier Garzás (Kybele Consulting) - Tendencias actuales en la...
I Jornada CSI - Javier Garzás (Kybele Consulting) - Tendencias actuales en la...I Jornada CSI - Javier Garzás (Kybele Consulting) - Tendencias actuales en la...
I Jornada CSI - Javier Garzás (Kybele Consulting) - Tendencias actuales en la...
 
secme-17394.pdf
secme-17394.pdfsecme-17394.pdf
secme-17394.pdf
 
Introducción al Desarrollo de Software
Introducción al Desarrollo de SoftwareIntroducción al Desarrollo de Software
Introducción al Desarrollo de Software
 

More from juan gonzalez

Politicas-de-ruteo-con-MikroTik-RouterOS.pptx
Politicas-de-ruteo-con-MikroTik-RouterOS.pptxPoliticas-de-ruteo-con-MikroTik-RouterOS.pptx
Politicas-de-ruteo-con-MikroTik-RouterOS.pptx
juan gonzalez
 
METODO DE SOBRECARGA EN PROGRAMACION.pptx
METODO DE SOBRECARGA EN PROGRAMACION.pptxMETODO DE SOBRECARGA EN PROGRAMACION.pptx
METODO DE SOBRECARGA EN PROGRAMACION.pptx
juan gonzalez
 
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptxMecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
juan gonzalez
 
recursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptxrecursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptx
juan gonzalez
 
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptxOBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
juan gonzalez
 

More from juan gonzalez (20)

METODOS HEREDADOS EN LA PROGRAMACION .pptx
METODOS HEREDADOS EN LA PROGRAMACION .pptxMETODOS HEREDADOS EN LA PROGRAMACION .pptx
METODOS HEREDADOS EN LA PROGRAMACION .pptx
 
TIPOS DE COMUNICACION EN LAS OFICINAS.pptx
TIPOS DE COMUNICACION EN LAS OFICINAS.pptxTIPOS DE COMUNICACION EN LAS OFICINAS.pptx
TIPOS DE COMUNICACION EN LAS OFICINAS.pptx
 
Politicas-de-ruteo-con-MikroTik-RouterOS.pptx
Politicas-de-ruteo-con-MikroTik-RouterOS.pptxPoliticas-de-ruteo-con-MikroTik-RouterOS.pptx
Politicas-de-ruteo-con-MikroTik-RouterOS.pptx
 
METODO DE SOBRECARGA EN PROGRAMACION.pptx
METODO DE SOBRECARGA EN PROGRAMACION.pptxMETODO DE SOBRECARGA EN PROGRAMACION.pptx
METODO DE SOBRECARGA EN PROGRAMACION.pptx
 
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptxMecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
 
recursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptxrecursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptx
 
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptxOBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
 
ESCANER E IMPRESORAS para las oficinas.pptx
ESCANER E IMPRESORAS para las oficinas.pptxESCANER E IMPRESORAS para las oficinas.pptx
ESCANER E IMPRESORAS para las oficinas.pptx
 
AGENDA DIGITAL. para las organizacionespptx
AGENDA DIGITAL. para las organizacionespptxAGENDA DIGITAL. para las organizacionespptx
AGENDA DIGITAL. para las organizacionespptx
 
MULTIMETRO para medir los niveles electricos.pptx
MULTIMETRO para medir los niveles  electricos.pptxMULTIMETRO para medir los niveles  electricos.pptx
MULTIMETRO para medir los niveles electricos.pptx
 
DISTRIBUCION DE PRODUCTOS BASISCOS DE LAS EMPRESAS
DISTRIBUCION DE PRODUCTOS BASISCOS DE LAS EMPRESASDISTRIBUCION DE PRODUCTOS BASISCOS DE LAS EMPRESAS
DISTRIBUCION DE PRODUCTOS BASISCOS DE LAS EMPRESAS
 
COMERCIO ELECTRONICO COMO SOPORTE PARA LAS EMPRESAS
COMERCIO ELECTRONICO COMO SOPORTE PARA LAS EMPRESASCOMERCIO ELECTRONICO COMO SOPORTE PARA LAS EMPRESAS
COMERCIO ELECTRONICO COMO SOPORTE PARA LAS EMPRESAS
 
MODELO NEGOCIOS PARA LAS EMPRESAS PUBLICAS Y PRIVADAS
MODELO NEGOCIOS PARA LAS EMPRESAS PUBLICAS Y PRIVADASMODELO NEGOCIOS PARA LAS EMPRESAS PUBLICAS Y PRIVADAS
MODELO NEGOCIOS PARA LAS EMPRESAS PUBLICAS Y PRIVADAS
 
programaciON EXTREMA.pptx
programaciON EXTREMA.pptxprogramaciON EXTREMA.pptx
programaciON EXTREMA.pptx
 
metodologia asd.pptx
metodologia asd.pptxmetodologia asd.pptx
metodologia asd.pptx
 
metodologia scrum.pptx
metodologia scrum.pptxmetodologia scrum.pptx
metodologia scrum.pptx
 
METODOLOGIA RUP.pptx
METODOLOGIA RUP.pptxMETODOLOGIA RUP.pptx
METODOLOGIA RUP.pptx
 
METODOLOGIAS.pptx
METODOLOGIAS.pptxMETODOLOGIAS.pptx
METODOLOGIAS.pptx
 
caractersticas de los medios de transmision de datos.pptx
caractersticas de los medios de transmision de datos.pptxcaractersticas de los medios de transmision de datos.pptx
caractersticas de los medios de transmision de datos.pptx
 
COMPONENTES BASE DE LAS TIC.pptx
COMPONENTES BASE DE LAS TIC.pptxCOMPONENTES BASE DE LAS TIC.pptx
COMPONENTES BASE DE LAS TIC.pptx
 

Recently uploaded

PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
encinasm992
 

Recently uploaded (20)

Pons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdf
Pons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdfPons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdf
Pons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdf
 
Inteligencia Artificial para usuarios nivel inicial
Inteligencia Artificial para usuarios nivel inicialInteligencia Artificial para usuarios nivel inicial
Inteligencia Artificial para usuarios nivel inicial
 
lenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometrialenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometria
 
herramientas informaticas mas utilizadas
herramientas informaticas mas utilizadasherramientas informaticas mas utilizadas
herramientas informaticas mas utilizadas
 
NIVEL DE MADUREZ TECNOLÓGICA (TRL).pptx
NIVEL DE  MADUREZ TECNOLÓGICA (TRL).pptxNIVEL DE  MADUREZ TECNOLÓGICA (TRL).pptx
NIVEL DE MADUREZ TECNOLÓGICA (TRL).pptx
 
Uso de las TIC en la vida cotidiana .
Uso de las TIC en la vida cotidiana       .Uso de las TIC en la vida cotidiana       .
Uso de las TIC en la vida cotidiana .
 
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
 
manual-de-oleohidraulica-industrial-vickers.pdf
manual-de-oleohidraulica-industrial-vickers.pdfmanual-de-oleohidraulica-industrial-vickers.pdf
manual-de-oleohidraulica-industrial-vickers.pdf
 
Introducción a la robótica con arduino..pptx
Introducción a la robótica con arduino..pptxIntroducción a la robótica con arduino..pptx
Introducción a la robótica con arduino..pptx
 
proyectos_social_y_socioproductivos _mapas_conceptuales
proyectos_social_y_socioproductivos _mapas_conceptualesproyectos_social_y_socioproductivos _mapas_conceptuales
proyectos_social_y_socioproductivos _mapas_conceptuales
 
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
 
Bloque 1 _ Lectura base - Sistemas Distribuidos
Bloque 1 _ Lectura base - Sistemas DistribuidosBloque 1 _ Lectura base - Sistemas Distribuidos
Bloque 1 _ Lectura base - Sistemas Distribuidos
 
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
 
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
 
Licencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareLicencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de Software
 
taller de tablas en word para estudiantes de secundaria
taller de tablas en word para estudiantes de secundariataller de tablas en word para estudiantes de secundaria
taller de tablas en word para estudiantes de secundaria
 
Presentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptxPresentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptx
 
Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.
 
Herramientas informáticas. Sara Torres R.
Herramientas informáticas. Sara Torres R.Herramientas informáticas. Sara Torres R.
Herramientas informáticas. Sara Torres R.
 
Gestión de concurrencia y bloqueos en SQL Server
Gestión de concurrencia y bloqueos en SQL ServerGestión de concurrencia y bloqueos en SQL Server
Gestión de concurrencia y bloqueos en SQL Server
 

PARADIGMAS.ppt

  • 1. Metodología de Desarrollo de Software Magister: JUAN GONZALEZ
  • 2. Grandes Problemas Actuales • Retraso respecto al potencial de hardware • Insatisfacción de la demanda • Mantención
  • 3. Percepciones de la Disciplina • Ineficiencia • Altos costos • Baja confiabilidad • Escasa ingeniería
  • 4. Proceso de Software • Relativamente nuevo e inmaduro • No ocurre aislado • Transforma modelos • Transforma necesidades y requerimientos en sistemas
  • 5. Crisis del Software • Crisis v/s aflicción crónica v/s depresión • Síntomas – funcionalidad incorrecta – desarrollo y mantención inadecuados – insatisfacción de la demanda
  • 6. Crisis del Software • Problemas – carencia de información respecto a qué se hace – insatisfacción de clientes y usuarios – calidad sospechosa – mantención difícil y costosa
  • 7. Crisis del Software • Potenciales causas – carácter lógico del software – formación profesional (o falta de) – entrenamiento y actualización – resistencia al cambio • Solución – enfoque ingenieril
  • 8. Mitos del Software • Algunos bastantes arraigados – estándares y procedimientos bastan – tecnología de punta basta – más gente para ponerse al día – programación inmediata – fácil acomodo de los cambios – programación: fin del trabajo – calidad: sólo del ejecutable – código es el único producto
  • 9. Ingeniería de Software Establecimiento y uso de principios con caracteres de ingeniería apropiados para obtener, eficientemente, software confiable, que opere eficaz y eficientemente en máquinas reales
  • 10. Ingeniería de Software • Objetivos – maximizar calidad – maximizar productividad – minimizar riesgos
  • 11. Ingeniería de Software • Implicancias – constructores básicos más poderosos – mejores técnicas de control de calidad – mejores herramientas y métodos – filosofía global -- ¿ enfoque de procesos ?
  • 12. Ingeniería de Software • Concepto se acuñó en 1968, en Conferencia de la OTAN en Alemania, con la intención de que mediante el uso de filosofías y paradigmas de disciplinas ingenieriles establecidas se resolviera la crisis del software
  • 13. Dificultades en la Producción de Software • Esencia – complejidad – conformidad – necesidad de cambios – invisibilidad • Accidentes – avances de investigación – no silver bullet? (Brooks, 1986)
  • 14. Paradigmas Esquemas (métodos, herramientas, procedimientos) que aplicados correctamente conducen a la construcción de un producto de software con una perspectiva ingenieril Paradigma por default: ensayo y error
  • 15. Paradigmas • Secuencialidad - modelo clásico • Modelamiento - prototipos • Evolución - espiral • Reusabilidad - orientación a objetos • Formalidad - cleanroom • Técnicas de cuarta generación • Rapid Application Development
  • 17. Prototipos Boehm (1984) Recolección y Refinamiento de Requerimientos Diseño Rápido Construcción delPrototipo Evaluación del Prototipo por elCliente Refinamiento delPrototipo Producto de Ingeniería Comienzo Parada C r e a c ió n d e p r o to tip o s
  • 18. Recolección de Requerimientos y Planificación del Proyecto (iniciales) Planificación basada en los comentarios del cliente Evaluación del cliente Análisis de Riesgo basado en los requerimientos iniciales Análisis de Riesgo basado en la reacción del cliente Hacia el Sistema Final Prototipo inicial del Sw Prototipo del siguiente nivel Sistema de Ingeniería INGENIERÍA EVALUACIÓN DEL CLIENTE PLANIFICACIÓN ANÁLISIS DE RIESGO Decisión de Seguir/No Seguir Boehm (1986) Modelo Espiral
  • 19. Rapid Application Development JAD & JRP Plan de Proyecto Diseño & Construcción Timeboxing Desarrolladores Fases del RAD Clientes Representantes de Usuarios Administración Facilitadores Desarrolladores Administración Representantes de Usuarios
  • 20. Visión Genérica Definición Desarrollo Mantención    Foco: ¿Qué? Foco: ¿Cómo? Foco: Cambio  Planificación Proyecto  Análisis Sistemas  Análisis Requerimientos  Diseño  Codificación  Testing  Corrección  Adaptación  Mejoramiento  Ingeniería Inversa
  • 21. Calendarización Red de Tareas = HITO ANÁLISIS Y ESPECIFICA- CIÓN REVISIÓN DE LOS REQUE- RIMIENTOS DISEÑO ARQUI- TECTÓNICO Y DE DATOS REVISIÓN DEL DISEÑO PRELIMINAR PLANIFICA- CIÓN DE LA PRUEBA DISEÑO PROCEDI- MENTAL INSPECCIÓN DEL DISEÑO CODIFI- CACIÓN INSPECCIÓN DEL CÓDIGO PRUEBA DE UNIDAD PROCEDIMIENTO DE PRUEBA REVISIÓN DE LA PRUEBA PRUEBA DE INTE- GRACIÓN PRUEBA DE VALI- DACIÓN
  • 22. Gestión de Proyectos Plan Evaluación del Problema Métodos Entregables Evaluación del Riesgo Tamaño del Problema Modelo del Proceso Problema Atributos de Calidad Definición de V&V actividades & chequeos Estimación de Esfuerzo WBS más Esfuerzo Perfil del equipo Escalas de tiempo Costos Contingencia Planes Plan de Calidad Plan Técnico Plan de Recursos
  • 23. Gestión de Proyectos Framework y Prácticas Identificar y corregir defectos y problemas potenciales tempranamente Planificar y seguir/monitorear Minimizar re-trabajo causado por cambio incontrolado Usar efectivamente los recursos de personal Monitoreo de defectos contra objetivos de calidad Acuerdo en las interfaces Inspecciones formales Gestión del riesgo Calendarización y gestión basada en métricas Gestión de configuración Visibilidad del avance versus planes Gestión consciente de las personas Controles on/off de calidad en niveles de detalle Panel de control
  • 25. Ideas Finales Tendencias • Enfoques evolutivos, incrementales • Herramientas de alta productividad, integración • Organizaciones planas • Énfasis en procesos que definen un marco para incorporar recursos humanos y tecnología
  • 26. Ideas Finales Perfil de Desarrollo • Combinación de paradigmas de desarrollo • Definición explícita de roles en equipos de desarrollo: especialistas de SQA, SCM, documentación, comunicaciones, bases de datos • Estandarización • Proceso definido que guía introducción de tecnologías y metodologías • Equipos multidisciplinarios • Rol participativo del cliente/usuario