Documente Academic
Documente Profesional
Documente Cultură
desarrollo de software
Mejoramiento de Procesos de Software
Objetivos de la charla
Discutir los factores crticos de xito para el
desarrollo del software
Destacar la importancia de asegurar la calidad
del software
Discutir los procesos para el mejoramiento del
desarrollo de software
Presentar la metodologa WATCH para el
desarrollo de software OO basado en la
reutilizacin de componentes
2
Contenidos de la charla
Factores crticos de xito para el desarrollo de software
La calidad del software
Procesos de evaluacin y certificacin de la calidad del
software
El Modelo de Madurez de la Capacidad (CMM)
El mtodo WATCH para el desarrollo de software OO
3
Factores crticos de xito
del desarrollo de software
El proceso
de desarrollo
El El
aseguramiento
de la
recurso
calidad humano
Desarrollo de Software
EL RECURSO
HUMANO
5
El Recurso Humano
Perfil del ingeniero requerido por la industria del software:
Debe ser capaz de:
Gerenciar proyectos de software
Planificar y controlar proyectos de alta tecnologa
Gerenciar el riesgo
Diseo de software
Programacin
Pruebas de software
Mantenimiento de software
La calidad
del producto
9
La Calidad del Software
Qu significa el trmino calidad ?
" Conjunto de caractersticas de una entidad
[producto o servicio] que le confieren su aptitud
para satisfacer necesidades expresadas e
mplicitas" (ISO 8402)
Cmo medir la calidad de un producto de software?
Se emplean modelos que especifican la calidad
mediante la definicin de un conjunto de
atributos o caractersticas.
Se basan en descomponer la calidad del
producto en caractersticas y estas en criterios
que pueden ser medidos mediante mtricas.
10
La Calidad del Software
Qu caractersticas debe tener el software de alta calidad ?
Utilidad:
Determina si el sistema hace lo que sus usuarios esperan que haga
El sistema es til si:
Su funcionalidad ayuda al usuario en la realizacin de sus actividades
Confiabilidad:
Baja probabilidad de falla => bajo nmero de errores
Mantenibilidad:
Es flexible, es modificable y es internamente comprensible ?
Eficiencia:
Medida en relacin al uso de los recursos del computador
Ej., bajo tiempo de ejecucin y mnimo uso del espacio de
almacenamiento
Facilidad de prueba:
Se puede probar con facilidad ?
en que medida el diseo y codificacin facilitan las pruebas
11
La Calidad del Software
Otras caractersticas de la calidad del software
Economa
Integridad y consistencia
Documentacin
Interoperabilidad
Modularidad
Correctitud
Generalidad
Reutilizacin
Claridad
Portabilidad 12
La Calidad del Software
Cmo asegurar la calidad del software ?
Establecimiento de un sistema de calidad
Gestin de la calidad
Planificacin de la calidad
software) 14
Factores crticos de xito del
desarrollo de software
El proceso
de desarrollo
15
Los procesos de software
17
CMM: El Modelo de Madurez de la
Capacidad
El CMM (Capacity Maturity Model) fue desarrollado por
el Software Engineering Institute (SEI) de la Univ.
Carnegie-Mellon en USA con la finalidad de:
evaluar la madurez de los procesos de desarrollo
de software dentro de una organizacin.
proponer un plan de mejoramiento de los
procesos de desarrollo de software en base a una
serie de niveles que van desde un proceso
catico (inmaduro) hasta un proceso
disciplinado y de mejoramiento continuo
(maduro).
18
CMM: El Modelo de Madurez de la
Capacidad
Capacidad de un proceso de software:
Rango de resultados esperados que pueden ser
logrados siguiendo un proceso de software dado
Madurez de un proceso de software:
Determina en que grado un proceso de software
es explcitamente definido, administrado, medido,
controlado y hecho efectivo
La madurez es un indicador de la capacidad del
proceso de software para lograr sus objetivos y
resultados esperados.
Una organizacin logra mayor madurez mediante
la institucionalizacin del proceso de desarrollo
de software, estableciendo las polticas,
estndares y estructuras organizativas 19
CMM: El Modelo de Madurez de la
Capacidad
Organizacin inmadura Organizacin madura
Improvisa o no sigue rigurosamente los Tiene definido e implantado el mtodo de
procesos de software desarrollo y mantenimiento de software
La calidad del producto no es definida sobre Existen objetivos cuantificables para medir la
una base objetiva calidad del producto
No se puede predecir la calidad del producto Se controla la calidad del producto y se
20
garantiza la satisfaccin del cliente
CMM: El Modelo de Madurez de la
Capacidad
El CMM emplea 5 niveles de madurez para evaluar y mejorar los
procesos de software de una organizacin
Proceso
mejorado
contnuamente N. Optimizado
Proceso
predecible
N. Gerenciado
Proceso
estandarizado N. Definido
Proceso
disciplinado N. Repetible
N. Inicial
21
CMM: El Modelo de Madurez de la
Capacidad
Nivel Inicial
La organizacin no posee un ambiente estable de
desarrollo de software
Ausencia de gerencia de proyectos
El proceso de software es cambiante e irregular:
Durante las crisis, los grupos abandonan el mtodo y se
concentran en la codificacin y pruebas
Los planes, estimaciones y calidad son
impredecibles
El rendimiento y el xito dependen de la capacidad
individual de los miembros del grupo
La capacidad es una caracterstica de los individuos
y no de la organizacin N. Inicial 22
CMM: El Modelo de Madurez de la
Capacidad
Nivel Repetible
La organizacin establece polticas para gerenciar
los proyectos de software y procedimientos para
implantar estas polticas
Los procesos estn bajo un control efectivo de un
sistema de gerencia de proyectos basado en
experiencias anteriores
Los procesos son definidos, documentados,
practicados, medidos, obligados y mejorables
Los procesos de software son estables y repetibles
Existen estndares de desarrollo definidos y
exigidos
La calidad es controlada N. Repetible
23
CMM: El Modelo de Madurez de la
Capacidad
Nivel Definido
Los procesos de software son definidos:
estandarizados, documentados e institucionalizados
Se institucionaliza un proceso estndar de
desarrollo de software que integra en uno solo:
los procesos de ingeniera de software y
gerencia de proyectos de software
N. Optimizado
26
CMM: El Modelo de Madurez de la
Nivel
Capacidad
Area clave del proceso
1) Inicial
2) Repetible Ingeniera de requerimientos
Planificacin de proyectos
Control y seguimiento de proyectos
Gerencia de subcontratacin
Aseguramiento de la calidad del software (S/W)
Gerencia de la configuracin del S/W
jonas@ing.ula.ve
30