El documento describe el Proceso de Software Personal (PSP), el cual fue propuesto por Watts Humphrey en 1995 para mejorar la calidad del software mediante la disciplina y medición del trabajo individual de los ingenieros. El PSP se enfoca en la planificación, diseño, revisión, desarrollo y análisis de resultados de pequeños proyectos de software para eliminar defectos tempranamente y mejorar la productividad.
2. ESCUELA DE CIENCIAS DE LA
COMPUTACION
FUNDAMENTOS DE INGENIERÍA DEL SOFTWARE
PROCESO DE SOFTWARE
P
PERSONAL (PSP)
3. INTRODUCCIÓN Y ANTECEDENTES
• Entre las principales causas para que el proceso
de desarrollo de software falle pueden ser:
– El personal de desarrollo no se involucra lo
suficiente.
– No esta consciente de la verdadera importancia
del proyecto.
– No se cuentan con los recursos necesarios
– Las practicas establecidas no son buenas…
4. • Esta claro que la producción de software debe
convertirse en un proceso disciplinado y
aceptado por todos.
• En los años 70 y 80 era popular la estrategia
“Prueba y arregla” en la industria
estadounidense.
• En estos años se establece el control de
procesos, que desde aquí ha ido enfocando
todo avance en el enfoque de la calidad.
– Modelo de Capacidad de Maduración (CMM) en
1987.
5. PROCESO DE SOFTWARE
PERSONAL
• En el año de 1995 el PSP fue
propuesto por Watts Humphrey, este
inicialmente estaba dirigido para
estudiantes.
• Para 1997 con el lanzamiento del
libro "An Introduction to the Personal
Software Process" el PSP ya estaba Watts Humphrey
destinado a los ingenieros.
6. • PSP se concentra en las prácticas de trabajo de
los ingenieros en una forma individual.
• El PSP se caracteriza porque es de uso
personal y se aplica a programas pequeños de
menos de 10.000 líneas de código.
• El PSP sirve para producir software de calidad,
donde cada ingeniero debe trabajar en la
necesidad de realizar trabajo de calidad.
7. • El PSP se centra en la administración del tiempo
y en la administración de la calidad a través de
la eliminación temprana de defectos.
• El PSP busca proporcionar un marco de trabajo
para el personal involucrado en el proceso de
desarrollo de software.
• PSP demuestra cómo manejar la calidad desde
el principio del trabajo.
8. PRINCIPIOS DEL PSP
• Cada ingeniero es esencialmente diferente (Cada
uno se encarga de su trabajo).
• Para mejorar constantemente su funcionamiento,
los ingenieros deben utilizar personalmente
procesos bien definidos y medidos.
• Los ingenieros deben sentirse personalmente
comprometidos con la calidad de sus productos,
esto mejorará la calidad.
9. OBJETIVOS DE PSP
• Lograr una disciplina de mejora continua en el
proceso de desarrollo.
• Medir, estimar, planificar, seguir y controlar el
proceso de desarrollo.
• Mejorar la calidad del proceso de desarrollo.
• En general, PSP provee calidad y productividad.
– El tiempo ahorrado en el testeo en base a una
mejor calidad ahorra entre un 20 a 40 % del
desarrollo…
10. PRINCIPIOS DEL PSP
• Cuesta menos encontrar y arreglar errores en la
etapa inicial del proyecto que encontrarlos en
las etapas subsecuentes.
• Es más eficiente prevenir defectos que
encontrarlos y arreglarlos.
• La manera correcta de hacer las cosas es
siempre la manera más rápida y más barata de
hacer un trabajo.
11. DESVENTAJAS DE APLICAR
PSP
• El tiempo requerido para conocerlo
• El costo emocional por mantener una disciplina
• El ego del cambio en las costumbres
12. VENTAJAS DE APLICAR PSP
• La idea de que ganamos en talento y habilidad
• La estimulación por nuevas ideas
• Una estructura de trabajo de mejoramiento personal
• Tomar control del propio trabajo
• La sensación de logro
• Una base mejorada para el trabajo en grupo (TSP)
• La convicción de que es lo mejor que se puede hacer
13. NIVELES PSP
• Para recalcar:
– PSP tiene un marco de proceso de evolución similar
al que tiene CMM.
– En el CMM un nivel de madurez sólo se alcanza si se
logran cumplir todas las KPA´s (áreas de procesos
claves) que exige cada nivel.
– PSP solamente cubre de manera parcial estas KPA´s
debido a que es un complemento de CMM.
– Al PSP es ideal utilizarlo junto con CMM (no es
obligatorio).
14. NIVELES PSP
• El PSP define cinco actividades del marco de
trabajo:
– PLANEACIÓN.
– DISEÑO DE ALTO NIVEL
– REVISIÓN DEL DISEÑO DE ALTO NIVEL
– DESARROLLO
– ANÁLISIS DE RESULTADOS
15. NIVELES PSP
PSP 3
PSP 2.1
Plantillas de diseño (Marco
de trabajo y listas)
PSP 2 Verificación de tareas de
-Revisión del diseño diseño
-Revisión del código
PSP 1.1
PSP 1 -Planeación de tareas
-Planeación de tiempos
-Aptitud para estimar
tamaño.
-Informe de pruebas
PSP 0.1
PSP 0 -Establecer estándares de
-Practicas actuales desarrollo. código (Definir “Líneas de
-Mantener registros de tiempo código”)
trabajado en un proyecto. -Proponer maneras de mejorar
-Registrar defectos proceso desarrollo
encontrados -Realizar mediciones
-Registrar tipos de defectos.
16. Planeación
• Esta actividad selecciona requisitos, con base
en ellos desarrolla el tamaño y la estimación de
los recursos.
• Estimación de los defectos.
• Creación de un programa del proyecto.
• La planificación proporciona una sólida base
para comprometerse a unas fechas de entrega.
• Estimación del tiempo necesario.
17. Diseño de Alto Nivel
• Se elabora especificaciones externas para los
componentes construidos.
• Diseño de componentes.
• Construcción de prototipos si hay incertidumbre.
• Los elementos se registran y se rastrean.
18. Revisión del diseño de alto nivel
• Métodos formales de verificación para errores
de diseño.
• Mediciones para todas las tareas importantes y
los resultados de trabajo.
19. Desarrollo
• Diseño a nivel de componentes se refina y
revisa.
• Se genera, revisa, compila y prueba el código.
• Mediciones para todas las tareas importantes y
los resultados de trabajo.
• Puede medirse en LOC (líneas de código).
• Esto exige tener una forma normalizada de
contar LOC, o de codificar.
20. Análisis de Resultados
• Mediante las mediciones recolectadas se
determina la efectividad del proceso.
• Las mediciones y medidas deben ofrecer una
guía para modificar el proceso y así mejorar su
efectividad.
21. Iniciar el proyecto
Enfoque del Proyecto
Crear el proyecto
Definir los requerimientos del proyecto
Definiciones
Cargar la plantilla de
metodología de desarrollo elegida iniciales de
Proyectos
Ingresar el plan del proyecto
(usar estimaciones)
Definir los roles del equipo de trabajo
Manejar los requerimientos Ciclo de vida
de Proyectos
(Seguimiento
Orden de trabajo Asignar las responsabilidades • Actualizar y supervisión)
Alertas
las tareas
Exportar a • Usar las
Microsoft Métricas
Hoja de tiempo Avanzar el proyecto
Project
Registro de Proyecto en
Cerrar el proyecto
defectos Producción
24. INSTRUCCIONES DE USO DEL PSP
• Gestión de las interrupciones.
▫ INTERRUPCIONES
Variables
No productivas
Perdida de tiempo
Rompen el ritmo de pensamiento
25. INSTRUCCIONES DE USO DEL PSP
• Control de las tareas finalizadas.
• Resumen periódico de actividades.
26. CONCLUSIONES
• La disciplina en el proceso de desarrollo de software es, sin lugar a
dudas, uno de los elementos fundamentales para tal propósito
debemos comenzar a entenderla y aplicarla desde el primer año de
la carrera.
• Con la introducción de PSP desde los primeros años y de forma
gradual, los futuros ingenieros informáticos del país inferirán la
necesidad de saber gestionar correctamente sus tiempos y
compromisos, no solo para el trabajo que desempeñarán sino para
otras facetas de su vida.
• Para obtener productos de calidad, el ingeniero debe asumir la
responsabilidad personal de la calidad de sus productos. Los
buenos productos no se obtienen por azar, sino como
consecuencia de un esfuerzo positivo para hacer un trabajo de
calidad.
27. Sitios de Interés
• Engenieering Institute; Personal Software Process (PSP) 2008;
Disponible en: Carnegie Mellon University.
http://www.sei.cmu.edu/tsp/psp.html
• Addison Wesley; Proceso de Software Personal; 2001; Disponible en
http://lsi.ugr.es/~ig1/docis/respsp.pdf
•Enrique Vereau, Ingeniería de Software; Peru Server; Disponible en http://
www.vereau.org/wp-images/images/files/pres-psp-chiclayo.pdf
•PROCESO PERSONAL DEL SOFTWARE; Disponible en
http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/pelaez_r_jj/capitulo2.
pdf