Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Mientras que los principios de CMM se aplicaron a tales grupos, cada vez se volva
mas necesaria la asesora para saber que hacer. Fu entonces cuando Humphrey decidi
personalmente utilizar los principios de CMM para desarrollar programas modulares para
ver si dicho enfoque podra funcionar para convencer a los ingenieros de software a que
adoptaran tales prcticas.
Fu entonces en el desarrollo de estos programas modulares, cuando Humphrey
utiliz personalmente todas las prcticas de CMM para que l subiera poco a poco hasta
llegar al nivel 5. Poco despus l comenz a trabajar en el proyecto tiempo completo en
abril de 1989, el Instituto de la Ingeniera de Software (SEI) hizo a Humphrey un
colaborador del SEI, permitindole trabajar tiempo completo en la investigacin detallada
de PSP.
Durante los siguientes tres aos, l desarroll un total de 62 programas y defini
cerca de 15 versiones de PSP. Utiliz los siguientes lenguajes de programacin: PASCAL y
C++ , para desarrollar cerca de 25.000 lneas de cdigo que ayudaran a darle la forma final
a PSP. [SEI; 2002]
De esta experiencia, l concluy que los principios de la administracin de procesos
que desarroll Deming y de Juran eran totalmente aplicables tanto al trabajo de los
ingenieros de software de manera individual como a ingenieros enfocados al trabajo en
equipo, el resultado? Proceso en equipo de software (TSP)
Humphrey despus escribi un libro que les proporcion a varios asociados el
material necesario para ensear cursos de PSP. En septiembre de 1993, Howie Dow ense
el primer curso de PSP a cuatro estudiantes graduados en la Universidad de Massachusetts.
PSP tiene un marco de proceso de evolucin similar al que tiene CMM. PSP trata
parcialmente 12 de las 18 KPAs definidas en el CMM.
Las KPAs son las reas de procesos clave o Key Process Areas por su significado en
ingls, estas reas ayudan a guiar a los programadores a que exista un mejoramiento
notable en el proceso de software.
En CMM un nivel de madurez slo se alcanza si se logran cumplir todas las KPAs
que exige cada nivel. Sin embargo PSP slamente cubre de manera parcial estas KPAs
debido a que es un complemento de CMM y no depende uno del otro en ningn sentido por
lo que es considerado como material de apoyo.
Como se ha visto anteriormente el Instituto de la Ingeniera del Software (SEI) ha
desarrollado el proceso personal del software para definir y reparar la holgura que existe
entre el modelo de la madurez de la capacidad y el individuo. Por lo tanto es ideal utilizarlo
junto con CMM pero no es obligatorio ya que es un proceso y no un modelo como lo es
CMM.
Para desarrollar software de alta calidad, cada componente individual tambin debe de
contar con la ms alta calidad posible. La estrategia total de PSP es cerciorarse de que todos
los componentes individuales se desarrollen con la ms alta calidad. PSP logra esto
proporcionando un marco de proceso personal ya definido que el programador puede
utilizar. Este marco es:
Utilizar sus datos para planear los proyectos y/o los componentes futuros.
Analizar sus datos para desarrollar sus procesos con mas calidad para mejorar su
funcionamiento.
El proceso personal de software fue diseado para ayudar y guiar a los ingenieros de
software a realizar bien su trabajo y haciendo esto pueden llegar a cubrir las KPAs
requeridas. PSP tambin muestra como aplicar mtodos avanzados de ingeniera a sus
proyectos y/o deberes diarios. Asimismo provee mtodos de estimacin y de planeacin
muy bien detallados que son necesarios para dar un seguimiento a su trabajo.
La disciplina del PSP provee un marco estructurado para desarrollar habilidades
personales y mtodos que se necesitarn ms adelante para ir forjando al ingeniero de
software. Es importante que la calidad del software desarrollado abarque hasta el ms
mnimo detalle, por muy pequeo que ste sea, ya que si no se hace as, puede daar el
sistema entero.
La figura 2 muestra un diagrama que contiene todos los niveles de PSP. Asmismo
se muestra que cada nivel cuenta con sus propios requerimientos o KPAs pertenecientes
nicamente a PSP pero que podran compartir intereses con las KPAs de CMM.
Es importante para las personas o empresas que quieran implementar PSP saber que
deben de cumplir con todas las KPAs para que avancen de la mejor manera posible al
siguiente nivel.
Cabe recalcar que se puede "personalizar" el proceso agregando o removiendo
tareas conforme a las exigencias de cada persona o empresa. Esto quiere decir que por lo
mismo de que PSP es un proceso y no un modelo, se puede amoldar a las necesidades del
programador.
Proceso
personal
cclico
PSP3
Desarrollo en ciclos
Paso 7
Proceso de
Calidad
Personal
PSP2
PSP2.1
Formatos de diseo
Revisin de codificacin
Revisin de diseos
Paso 6
Paso 5
PSP1.1
Proceso de
Planeacin
Personal
PSP1
Estimacin del tamao
Reporte de pruebas
Planeacin de actividades
Planeacin de tiempos
Paso 4
Paso 3
PSP0
Proceso actual
Registro de tiempos
Registro de errores
Estndar de tipos de
errores
PSP0.1
Estndar de codificacin
Medicin del tamao
Propuesta de mejoramiento del
proceso
Paso
2
Paso
1
Ahora bien que si lo que se quiere hacer es que el proceso de PSP sea usado para
cumplir con el modelo de capacidad de madurez, entonces se deben de tomar en cuenta los
puntos que exige CMM de PSP.
En cada nivel de CMM existen KPAs que pueden ser cumplidas siguiendo el
proceso personal de software, de hecho esa sera la mejor manera de cumplir con las
exigencias de CMM.
No por nada fu que Watts S. Humphrey quiso crear PSP y otros procesos, sino para
que fueran el complemento ideal y el "atajo" que se podra tomar para cumplir cuanto antes
con los niveles de CMM que se desean alcanzar.
Existen resultados que se muestran en captulos posteriores que demuestran la
eficiencia y una reduccin de tiempo considerable cuando se usan estos procesos diseados
para alcanzar los niveles de CMM ms rpidamente que si se utilizaran otros "caminos".
Hasta ahora se ha visto que PSP tiene sus niveles internos y que tambin cuenta con
niveles que se deben cumplir junto a su modelo por el cual fu creado, CMM. El
programador y el proyecto determinan si se debe utilizar PSP en su totalidad o slo
parcialmente.
Tambin se ha visto la gran dinamicidad que puede llegar a tener PSP con respecto
a cualquier proyecto que est en desarrollo. Desgraciadamente ste atributo no es bien
aprovechado o en dado caso no se hace de manera correcta la decisin sobre que puntos
tomar de PSP y cuales no, si conviene hacer uso de todos los puntos que sugiere el proceso
o slamente unos cuantos.
La figura 2.2 presenta los elementos que tienen en comn PSP con CMM. De esta manera
puede analizarse cuales se podran aplicar a cada proyecto.
Nivel 5 - Optimizacin
Administracin del Cambio de Proceso
Administracin del Cambio de la Tecnologa
Prevencin de Defectos
Nivel 4 - Administrado
Administracin de la Calidad
Administracin del Proceso Cuantitativo
Nivel 3 - Definido
Revisin de Colegas
Coordinacin entre los grupos
Ingeniera de Productos de Software
Administracin Integrada de Software
Programa de Entrenamiento
Definicin del Proceso de Software
Enfoque en el Proceso de Software
Nivel 2 - Repetible
Administracin de la Configuracin de Software
Aseguramiento de la Calidad de Software
Administracin del Subcontrato de Software
Rastreo y visin general del Proyecto de Software
Planeacin del Proyecto de Software
Administracin de Requerimientos
Nivel 1 - Inicial
Esta informacin es de gran utilidad porque as el programador tiene una idea clara
de los puntos que debe cubrir respecto a sus necesidades.
Esto quiere decir si sus necesidades se encuentran dentro del rango de lo que exige
CMM o si se aplican por separado.
En la Figura 2.3 se muestra la proveniencia de PSP y el "corazn" de todos los
procesos existentes alrededor de CMM, algunos ya existentes y otros que an no estn
completos. Seguramente vendrn procesos ms completos en un futuro y que se
acomodarn a las exigencias de la tecnologa.
Probablemente la mayora de estos procesos se conviertan en un estndar para las
empresas que desarrollan software. Es conveniente saber de donde surgen estas nuevas
tecnologas y hacia donde se encaminan. Por lo pronto el primer paso se ha dado, aunque
PSP no sea un estndar an, pero si se ha convertido en un proceso muy til para
desarrollar software de buena calidad.
Ahora que PSP est completo, seguramente los ingenieros de software se estn
dedicando a mejorar continuamente los procesos futuros sin dejar de lado todos los
registros que PSP ha dejado su corta existencia. Por lo tanto PSP se convertir en el
predecesor del futuro cuando se analicen a fondo todo el historial que ha dejado a su paso.
Hasta ahora todo apunta a que stos procesos se continuarn utilizando por lo que
esto no es cosa de auge, seguramente estos procesos se convertirn en algo obligatorio para
los programadores y las empresas que se dedican a desarrollar software. Esperemos que as
sea y siga existiendo software til y de buena calidad.
Se provee esta informacin para que haya conocimiento de cul es el "corazn" del
organismo que completa a CMM y de donde surge cada proceso existente y futuro. Ahora
slo resta esperar al futuro que seguramente ser promisorio para la industria del software y
sus mltiples usuarios.