Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Paso 5 Proceso de Planeacin Personal PSP1 Estimacin del tamao Reporte de pruebas
Paso 6
Paso 3 Proceso de Medicin Personal PSP0 Proceso o actual Registro de tiempos Registro de errores Estndar de tipos de errores Paso 1
Paso 4 PSP0.1 Estndar de codificacin Medicin del tamao Propuesta de mejoramiento del proceso
Paso 2
Mientras que la importancia de estas tcnicas en proyectos grandes es comprendida, pocos desarrolladores las aplican a su trabajo personal. PSP demuestra el valor de estos mtodos en el nivel personal.
PSP2 agrega diseo personal y revisiones de cdigo a PSP1. Estas revisiones ayudan a encontrar defectos de manera temprana y a ver los beneficios que esto proporciona. Los desarrolladores analizan los defectos que encuentran en los primeros programas y usan estos datos para establecer checklists de revisin que estn hechos a medida de su experiencia de defectos personales. El proceso de diseo es contemplado en PSP2.1. El objetivo no es decirle 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. Se establece un criterio de completitud de diseo y se examinan varias tcnicas de verificacin y consistencia de diseo.
El proceso cclico PSP3 puede ser un elemento efectivo en un proceso de desarrollo de gran escala solo si cada incremento sucesivo de software es de alta calidad. De esta manera los desarrolladores pueden concentrarse en la verificacin de la calidad del ltimo incremento sin preocuparse por defectos en ciclos anteriores.
Planificacin en PSP
Recoleccin de Datos
En PSP, los desarrolladores utilizan informacin para monitorear su trabajo, la cual los ayuda a hacer mejores planes. Para esto, deben recolectar datos de los tiempos que dedican a cada fase del proceso, de los tamaos de los productos que producen, y de la calidad de esos productos.
Mediciones de Tiempo
Los desarrolladores utilizan el log de registro de tiempo para medir el tiempo que dedican a cada fase del proceso. En este log se anota la hora en que empezaron a trabajar en una tarea, la hora en que terminaron una tarea, y cualquier hora en que efectuaron una interrupcin y/o retomaron una tarea. Tomando estos tiempos en forma precisa, los desarrolladores pueden conocer el esfuerzo que realmente se dedica a las tareas del proyecto. Debido a que los tiempos de interrupciones son esencialmente al azar, ignorar estos tiempos sera introducir un error de gran tamao en la informacin de tiempos que reducira la exactitud de las estimaciones.
Mediciones de Tamao
En PSP, los desarrolladores primero estiman el tamao de los productos que planean desarrollar. Luego, al finalizar el producto, se mide el tamao real obtenido. Esta informacin permite a los desarrolladores realizar a futuro una estimacin de tamaos ms precisa. Sin embargo, para que esta informacin sea til, el tamao de las mediciones debe corresponderse con el tiempo de desarrollo del producto. En PSP, el tamao se mide en Lneas de Cdigo (LOC).
Total LOC = Base Eliminadas + Agregadas + Reutilizacin
Mediciones de Calidad
El principal enfoque de calidad en PSP es en los defectos. Para manejar los defectos, los desarrolladores necesitan informacin sobre los defectos que inyectan, las fases en las cuales los inyectan, y las fases en las que son encontrados y arreglados. En PSP, los desarrolladores registran los datos de los defectos encontrado en cada fase, incluyendo revisiones, inspecciones, compilaciones, y testing. Esta informacin es registrada en el log de defectos. Las principales mediciones de calidad son: Densidad de defectos ndice de revisin ndices de tiempo de desarrollo ndices de defectos Rendimiento Defectos por hora Efectividad de remocin de defectos Evaluacin del ndice de fallas
Manejo de Calidad
Cualquier defecto en una pequea parte de un gran programa puede potencialmente causar serios problemas. El problema es que la calidad de los grandes programas depende de la calidad de las pequeas partes que los conforman. Esto significa que todos los desarrolladores deben manejar la calidad de su propio trabajo. Para lograr que el software funcione, los desarrolladores deben al menos remover casi todos los defectos. Datos de PSP muestran que incluso desarrolladores experimentados inyectan un defecto cada siete a diez lneas de cdigo. Aunque los desarrolladores tpicamente encuentran y reparan muchos de los defectos al compilar y durante el testing, los mtodos tradicionales de software dejan muchos defectos en el producto terminado.
El primer principio de calidad de PSP es que los desarrolladores son personalmente responsables de la calidad de los productos que producen. Debido a que el desarrollador que escribe un programa se encuentra familiarizado con ste; dicho desarrollador es el que ms eficientemente puede encontrar, arreglar y prevenir los defectos. PSP provee una serie de prcticas y mediciones para ayudar a los desarrolladores a evaluar la calidad de los programas que producen y a guiarlos a encontrar y reparar todos los defectos del programa lo ms tempranamente posible. Adems del seguimiento y de las mediciones de calidad, PSP provee otros mtodos para el manejo de calidad: remocin temprana de defectos y prevencin de defectos.
Prevencin de Defectos
La forma ms efectiva de manejar defectos es prevenir que se produzcan. En PSP, existen tres formas diferentes, pero mutuamente ligadas, de prevenir defectos. La primera consiste en que los desarrolladores registren los defectos que encuentran y reparan. Luego, ellos deben revisar esos datos para determinar qu caus esos defectos y efectuar cambios en los procesos para eliminar esas causas. Al medir los defectos, los desarrolladores son ms concientes de sus errores, ms sensibles respecto de sus consecuencias, y poseen los datos necesarios para evitar que esos errores se cometan en el futuro.
La segunda aproximacin de prevencin consiste en utilizar un mtodo de diseo y notacin efectivos que permitan producir diseos completos. Realizar un diseo completo permite a los desarrolladores un mejor entendimiento, con lo que no slo se obtienen mejores diseos, sino que adems se producen menos errores en esta etapa. El tercer mtodo de prevencin de defectos es una consecuencia directa del segundo: con un diseo an ms riguroso, el tiempo de codificacin es reducido, lo cual reduce tambin la cantidad de defectos inyectados.
Diseo en PSP
A pesar de que PSP puede ser utilizado con cualquier mtodo de diseo, requiere que el diseo se encuentre completo. PSP considera que un diseo se encuentra completo cuando se definen las cuatro dimensiones que se presentan en la estructura de especificacin de diseo de objetos
Especificacin de Objetos Esttico Interno Externo
Dinmico
Interno
Externo
Esttico
Template de Especificacin de Funciones (Estructura de Herencia de Clases) Template de Especificacin de Funciones (Interaccin con el Usuario) Template del Escenario Operacional
Dinmico
El template del escenario operacional define cmo los usuarios interactan con el sistema. (Casos de uso) El template de especificacin de funciones especifica el comportamiento call-return de los objetos del programa, as como tambin la estructura de herencia de clases. (Clases) El template de especificacin de estados define el comportamiento de la mquina de estados del programa. (Estados y Transiciones) El template de especificacin lgica especifica la lgica interna del programa, normalmente en un lenguaje de pseudocdigo.
Como ventajas de este producto podemos resaltar: Precio el producto es open-source, y se distribuye sin costo alguno. Inclusive no utiliza ningn producto que requiera una licencia comercial, por lo que puede utilizar realmente sin costo alguno. Independiente de la plataforma al estar desarrollado 100% en Java, corre perfectamente en cualquier plataforma que soporte Java. Flexible y extensible el usuario puede definir nuevos procesos e incorporarlos sin la necesidad de programa, simplemente deber especificarlos siguiendo los pasos detallados en el manual. As mismo se pueden agregar o modificar los scripts, plantillas, formularios, y resmenes, utilizando cualquier editor de HTML.
Metodologa Definicin Audiencia Cobertura Costo Calidad Implementacin Alcance Cuan Mensurable es