Вы находитесь на странице: 1из 18

Problemas de la Industria de Software en la

actualidad

Tendencia al crecimiento del volumen y complejidad de los productos.

crecimiento del volumen y complejidad de los productos . Proyectos excesivamente tardes y se exige mayor

Proyectos excesivamente tardes y se

exige mayor productividad y calidad en menos tiempo.

Insuficiente personal calificado.

?
?
1
1
2
2
3
3
4
4

¿ Por qué fallan los Proyectos

de Software?
de Software?

Planificación Irreal Mala Calidad del Trabajo

Personal Inapropiado

No Controlar los Cambios

1 Planificación Irreal
1
Planificación Irreal
1 Planificación Irreal “El sistema es para hoy y con costo 0” Los ingenieros no son

“El sistema es para hoy y con costo 0”

Los

ingenieros

no

son

capaces

de

enfrentar un plan porque:

NO

están

entrenados

para

usar

métodos de planificación.

Frecuentemente, las estimaciones NO

se basan en datos reales.

3

entrenados para usar métodos de planificación. • Frecuentemente, las estimaciones NO se basan en datos reales.
Mala Calidad del Trabajo
Mala Calidad del Trabajo
2
2
Mala Calidad del Trabajo 2 CAUSAS • Prácticas pobres de ingeniería • Carencia de métricas de

CAUSAS

Prácticas pobres de ingeniería

Carencia de métricas de calidad

Inadecuado entrenamiento en calidad

Decisiones de los directivos guiadas por una planificación irreal

4

Mala Calidad del Trabajo
Mala Calidad del Trabajo
2
2
Mala Calidad del Trabajo 2 CONSECUENCIAS • Tiempos de pruebas impredecibles • Productos con muchos defectos

CONSECUENCIAS

Tiempos de pruebas impredecibles

Productos con muchos defectos

Demoras en la aceptación de los usuarios

Extensa garantía de servicio y reparaciones

“Una pobre calidad afecta la planificación y torna ineficente el proceso de prueba”
“Una pobre calidad afecta la
planificación y torna ineficente el
proceso de prueba”

5

de servicio y reparaciones “Una pobre calidad afecta la planificación y torna ineficente el proceso de
3 Personal Inapropiado
3
Personal Inapropiado
3 Personal Inapropiado • Demora del personal • Escaso personal • Miembros del equipo a tiempo

Demora del personal

Escaso personal

Miembros del equipo a tiempo parcial

Personal con conocimientos inapropiados

PROBLEMAS

COMUNES

CONSECUENCIAS

El trabajo se demora o descuida

Trabajo ineficiente

Sufre la moral del equipo

Con independencia del plan, los proyectos deben comenzar en tiempo y

con todo el personal.

4 Cambios NO controlados
4
Cambios NO controlados
4 Cambios NO controlados HECHOS a RECORDAR: • Siempre ocurren cambios en los requerimientos. • Los

HECHOS a RECORDAR:

Siempre ocurren cambios en los requerimientos.

Los planes del proyecto se basan en el alcance

del trabajo conocido. Los cambios siempre requieren más trabajo.

Sin planes detallados, los equipos no pueden

estimar el efecto o magnitud de los cambios. Si los equipos no controlan cada cambio, se pierde gradualmente el control del plan del

proyecto

?
?
¿Cómo enfrentarla?
¿Cómo enfrentarla?

Las organizaciones requieren:

Desarrollar o adquirir una disciplina? ¿Cómo enfrentarla? Las organizaciones requieren: en el desarrollo del software. Controlar que los ingenieros usen

en el desarrollo del software.

Controlar que los ingenieros usen de forma consistente los nuevos métodos.? ¿Cómo enfrentarla? Las organizaciones requieren: Desarrollar o adquirir una disciplina en el desarrollo del software.

Cómo?
Cómo?
Cómo? ¿Qué debe hacer una empresa para obtener software de buena calidad? Mejorar el proceso de

¿Qué debe hacer una

empresa para obtener

software de buena

calidad?

Mejorar el proceso de desarrollo de software
Mejorar el proceso de
desarrollo de software

Cualquier modelo de calidad para mejorar el Proceso de Desarrollo de Software, IMPLICA utilizar los métodos y procedimientos de

INGENIERIA Y GESTION DE

SOFTWARE

¿Qué es la Ingeniería de Software (IS)?

¿Qué es la Ingeniería de Software (IS)? “ la aplicación de un enfoque sistémico, disciplinado y

la

aplicación de un enfoque

sistémico, disciplinado y cuantificable hacia el desarrollo,

funcionamiento y mantenimiento

de software, es decir la aplicación

de ingeniería al software”

IEEE,1993

IS es una tecnología multicapa

IS es una tecnología multicapa Indican cómo construir técnicamente el Sw. Soporte automático o semiautomático para
IS es una tecnología multicapa Indican cómo construir técnicamente el Sw. Soporte automático o semiautomático para

Indican cómo construir

técnicamente el Sw.

Soporte automático o semiautomático para el proceso y los métodos.

Es el fundamento de la IS. Es la unión que mantiene juntas las capas de la tecnología.

12

Síntomas - Causas

Síntomas

Diagnóstico
Diagnóstico

Causas

necesidades usuarios

requerimientos cambiantes

módulos no calzan

poco mantenible

tardía detección

baja calidad

baja performance

versiones y cambios

liberación y distribución

requerimientos insuficientes

comunicación ambigua

arquitecturas frágiles

complejidad excesiva

inconsistencias no detectadas

prueba pobre

evaluación subjetiva

desarrollo en cascada

cambios no controlados

• automatización insuficiente tratar los Síntomas no resuelve el problema 13
• automatización insuficiente
tratar
los Síntomas no resuelve el problema
13

Las Mejores Prácticas de la IS

atacan las causas

Desarrolle Iterativamente
Desarrolle Iterativamente
Administre Requerimientos
Administre
Requerimientos
Use arquitectura de componentes
Use
arquitectura
de
componentes
Modele Visualmente
Modele
Visualmente
Verique Calidad
Verique
Calidad
Controle Cambios
Controle Cambios

Mejores Prácticas de Software

Son propuestas de desarrollo probadas

comercialmente, que usadas en forma combinada atacan la raíz de las causas de

las fallas, eliminando los síntomas y

permitiendo el desarrollo y mantenimiento de

software de calidad de manera predictiva y

reiterativa.

Mejores Prácticas: Equipos de Alto

Rendimiento

Resultado
Resultado
Mejores Prácticas: Equipos de Alto Rendimiento Resultado Ing. de Performance Analisis Jefe de Proyecto Probador •
Ing. de Performance Analisis Jefe de Proyecto Probador
Ing. de
Performance
Analisis
Jefe de
Proyecto
Probador

Proyectos más exitosos

porque están en plazo, en presupuesto y satisfacen las necesidades del

usuario

Develop Iteratively
Develop Iteratively
Use Model Visually Verify Manage Component Quality Requiremen Architectures ts Control Changes
Use
Model
Visually
Verify
Manage
Component
Quality
Requiremen
Architectures
ts
Control Changes

Desarrollador

Liberación y Distribución

Enfrentando las Causas se eliminan los Síntomas

SÍNTOMAS

CAUSAS

MEJORES PRÁCTICAS

Requerimientos

insuficientes

Comunicación

arquitecturas frágiles

desarrolle iterativamente

adm. requerimientos

use arquitectura de componetes

modele el software visualmente

arquitectura de componetes modele el software visualmente ambigua necesidades usuarios requerimientos cambiantes
ambigua
ambigua

necesidades usuarios

requerimientos

cambiantes

módulos no calzan

poco mentenible

tardía detección

baja calidad

baja performance

versiones y cambios

complejidad excesiva

inconsistencias no detectadas

testing pobre

evaluación

verifique calidad

controle cambios

subjetiva

desarrollo en cascada

liberación y distribución

cambios no controlados

automatización insuficiente

Mejores Prácticas se refuerzan entre si

Asegura participación del usuario mientrás evolucionan requerimientos

Valida tempranamente las decisiones arquitectónicas
Valida tempranamente
las decisiones arquitectónicas

Pemite manejar la complejidad

Desarrolle Iterativamente
Desarrolle
Iterativamente
Pemite manejar la complejidad Desarrolle Iterativamente de diseñar incrementalmente Mide la calidad en forma

de diseñar incrementalmente

Mide la calidad en forma oportuna y frecuente
Mide la calidad en forma oportuna
y frecuente

Evoluciona la línea base incrementalmente

Administre Requerimientos
Administre
Requerimientos
Use Arquitecturas de Componentes
Use
Arquitecturas
de Componentes
Modele Visualmente
Modele
Visualmente
Verique Calidad
Verique
Calidad
Controle Cambios 18
Controle
Cambios
18