You are on page 1of 25

Calidad en el desarrollo del software

El Proceso Personal del Software (PSP)

Introduccin 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

Esta claro que la produccin de software debe convertirse en un proceso disciplinado y aceptado por todos. En los aos 70 y 80 era popular la estrategia Prueba y arregla en la industria estadounidense. En estos aos se establece el control de procesos, que desde aqu ha ido enfocando todo avance en el enfoque de la calidad.
Modelo de Capacidad de Maduracin (CMM) en 1987.

En el ao 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 destinado a los ingenieros.

Proceso

Es un conjunto de pasos parcialmente ordenados con el propsito de alcanzar una meta.

Un proceso (del latn processus) es un conjunto de actividades o eventos que se realizan o suceden (alternativa o simultneamente) con un fin determinado.

Qu es el Proceso Personal del Software?


Es un proceso de auto mejora diseado para ayudarnos a controlar, administrar y mejorar la forma en que trabajamos. PSP se concentra en las prcticas de trabajo de los ingenieros en una forma individual.

El PSP se caracteriza porque es de uso personal y se aplica a programas pequeos de menos de 10.000 lneas de cdigo.
El PSP sirve para producir software de calidad, donde cada ingeniero debe trabajar en la necesidad de realizar trabajo de calidad.

Qu es el Proceso Personal del Software?


El PSP se centra en la administracin del tiempo y en la administracin de la calidad a travs de la eliminacin temprana de defectos. El PSP busca proporcionar un marco de trabajo para el personal involucrado en el proceso de desarrollo de software. PSP demuestra cmo manejar la calidad desde el principio del trabajo.
Es una alternativa dirigida a los ingenieros de sistemas que les permite mejorar la forma en la que construyen software, Considerando aspectos como la planeacin, calidad, estimacin de costos y productividad.

Principios del PSP


Cada ingeniero es diferente; para ser el ms eficaz, los ingenieros deben planificar su trabajo y deben basar sus proyectos en sus propios datos personales. Para mejorar coherentemente su funcionamiento, los ingenieros deben usar procesos bien definidos. Para producir productos de calidad, los ingenieros deben sentirse personalmente responsables de la calidad de sus productos. Es menos costoso encontrar defectos antes en un proceso que ms tarde.

Es ms eficiente prevenir defectos que encontrarlos durante el desarrollo.


El camino correcto es siempre el modo ms rpido y ms barato de hacer un trabajo..

Cmo se trabaja con PSP?


En PSP todas las tareas y actividades que el ingeniero de software debe realizar durante el proceso de desarrollo de un producto de software, estn puntualmente definidas en un conjunto de documentos conocidos como scripts

Los cuales deben de ser seguidos en forma disciplinaria, ya que de ello depender el xito de la mejora que se busca.

Los Scripts se organizan en cuatro niveles, identificados del 0 al 3, atendiendo en cada nivel un conjunto de aspectos a mejorar del proceso de desarrollo de software.
PSP 3 Desarrollo cclico PSP 2
-Revisin del diseo -Revisin del cdigo

PSP 2.1

Plantillas de diseo (Marco de trabajo y listas) Verificacin de tareas de diseo

PSP 1.1 PSP 1 -Aptitud para estimar tamao.


-Informe de pruebas

-Planeacin de tareas -Planeacin de tiempos

PSP 0.1 PSP 0


-Practicas actuales desarrollo. -Mantener registros de tiempo trabajado en un proyecto. -Registrar defectos encontrados -Registrar tipos de defectos.

-Establecer estndares de cdigo (Definir Lneas de cdigo) -Proponer maneras de mejorar proceso desarrollo -Realizar mediciones

PSP 0 Medicin Personal


Los aspectos de inters en este nivel se relacionan con la estimacin del tiempo para desarrollar un producto software y la identificacin, clasificacin y manejo de los Defectos producidos durante el proceso de desarrollo. Los datos recopilados mediante a la aplicacin de los scripts sirven de base para la realizacin de estimaciones mas reales en procesos futuros.

PSP 0.1
Es un nivel que extiende y complementa a PSP0, a travs del establecimiento de estndares de codificacin orientados a mejorar las estimaciones de tamao, a si como la consideracin de propuesta de mejora al nivel por parte de los ingenieros.

PSP 1 Planeacin Personal


Le agrega pasos de planeamiento a PSP0. El primer paso agrega estimaciones de tamao y recursos y un reporte de prueba.

PSP 1.1
Se introduce planeamiento de cronograma y seguimiento del proyecto. Los desarrolladores son enseados a: Entender la relacin entre el tamao de los programas que escriben y el tiempo que les toma desarrollarlos. Aprender a realizar compromisos que puedan cumplir. Preparar un plan ordenado para realizar su trabajo Establecer una base para realizar un seguimiento de su trabajo.

PSP 2 Calidad Personal


La calidad , es un aspecto fuertemente relacionado con la cantidad de defectos que el producto de software contiene. En este nivel se introducen las inspecciones en las fases de diseo y codificacin, como un mecanismo para aumentar la calidad de los productos.

PSP 2.1
El Proceso de diseo es contemplado . El objetivo no es decirles a los desarrolladores como disear sino orientar el criterio para la finalizacin del diseo, es decir cuando han terminado que es lo que deben haber obtenido

PSP 3 Cclico Personal


Presenta mtodos para ser usados por individuos en la realizacin de programas de gran escala. Para escalar PSP2 a proyectos ms grandes la estrategia consiste en subdividir el proceso personal de desarrollo de grandes programas en elementos en la escala de PSP2. Estos programas son entonces diseados para ser desarrollados en pasos incrementales. La primera construccin consiste en un mdulo base o kernel que es ampliado en ciclos iterativos. En cada iteracin se utiliza un PSP2 completo, incluyendo diseo, codificacin, compilacin y pruebas.

PSP 3 Cclico Personal


De esta manera los desarrolladores pueden concentrarse en la verificacin de la calidad del ltimo incremento sin preocuparse por defectos en ciclos anteriores. Si un incremento anterior tiene muchos defectos, la prueba ser ms compleja y los beneficios de escalar PSP se pierden. Esta es una razn para enfatizar revisiones de diseo y cdigo en los pasos anteriores de PSP.

Proceso Cclico de PSP3


Especificaciones Requerimientos y Planeacin Diseo de Alto Nivel . . . Ciclo especfico Diseo detallado y Repaso del diseo Desarrollo de las pruebas Y repaso Implementacin Y Repaso del cdigo Postmortem Integracin Pruebas del sistema Uso Producto . . . Compilacin Pruebas

Repaso al Diseo de Alto Nivel


Desarrollo Cclico

Valorar de nuevo
Y Reciclar

Estructura del PSP


Flujo del Proceso
Requerimientos

Plan
Planeacin Desarrollo Diseo Scripts Gua Cdigo
Compilacin

Logs Time Defects

Resumen del Plan

Flujo del Proceso

Pruebas PM Producto Terminado

Datos del proceso y del proyecto Reporte Resumen

Estructura del PSP


Comenzando con los requerimientos, el primer paso en el proceso de PSP es la planificacin. Existe un script de planificacin que sirve de gua y un resumen del plan para registrar todos los datos del mismo. Mientras los desarrolladores van siguiendo el lineamiento de trabajo sugerido por los scripts, deben ir registrando los tiempos dedicados y los datos de defectos en los logs de tiempos y defectos. Al final de la tarea, durante la fase de postmortem (PM), deben resumir los datos de tiempo y defectos, medir el tamao del programa, e ingresar esos datos en el formulario de sumario del plan. Al finalizar, deben entregar el producto finalizado y el formulario de sumario del plan completado.

Flujo del Proceso

Planificacin
Estimar tiempo de desarrollo.

Desarrollo
Desarrollar el producto utilizando tus mtodos actuales.

Post-mortem
Completar el resumen del plan proyecto, con los tiempos gastados y defectos encontrados e inyectados en cada fase.

Flujo del Proceso Diseo

Codificacin

Disear el programa, usando tus mtodos de diseo actuales.


Implementa el programa. Compila hasta que este libre defectos. Prueba el programa y corrige todos los defectos.

Compilacin
Prueba

Registra los defectos en el Log de defectos y tiempos por fase en el Log de tiempos.

Por qu hacer Planes?

Te permiten llegar a acuerdos que tu puedas cumplir Proporcionar las bases para acuerdo en tu trabajo Gua tu trabajo Te ayuda a seguir tu progreso Terminacin del proyecto

Elementos del PSP


Scripts.- guan a los desarrolladores en el uso consistente de los procesos, los cuales ellos conocen (mediante la asistencia a cursos de capacitacin en PSP o a travs de bibliografa introductoria en el uso de PSP). Formularios.- proveen templates para registrar y almacenar datos.

Standards .-guan a los desarrolladores a mientras hacen el trabajo.

Resumen del Plan del Proyecto


Este formato rene las estimaciones y los datos reales que conforman al proyecto en toda su amplitud para que al final se realicen las comparaciones necesarias y exista un histrico de todos los proyectos realizados.
Requerimientos Plan Planeacin

Desarrollo
Diseo Scripts Gua Cdigo
Compilacin

Logs
Time Defects

Resumen del Plan

Flujo del

Proceso

Pruebas PM Producto Terminado

Datos del proceso y del proyecto

Reporte

Conclusiones
La disciplina en el proceso de desarrollo de software es, sin lugar a dudas, uno de los elementos fundamentales para tal propsito debemos comenzar a entenderla y aplicarla desde el primer ao de la carrera. Con la introduccin de PSP desde los primeros aos y de forma gradual, los futuros ingenieros informticos del pas inferirn la necesidad de saber gestionar correctamente sus tiempos y compromisos, no solo para el trabajo que desempearn 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.

You might also like