sábado, 18 de agosto de 2018

EL PROCESO PERSONAL DEL SOFTWARE PSP

EL PROCESO PERSONAL DEL SOFTWARE- (PSP)


Introducción
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 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.



Proceso
Es un conjunto de pasos parcialmente ordenados con el propósito de alcanzar una meta.Un proceso (del latín processus) es un conjunto de actividades o eventos que se realizan o suceden (alternativa o simultáneamente) con un fin determinado.
¿Qué es el Proceso Personal del Software?
Es un proceso de auto mejora diseñado para ayudarnos a controlar, administrar y mejorar la forma en que trabajamos.
•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.
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.
Es una alternativa dirigida a los ingenieros de sistemas que les permite mejorar la forma en la que construyen software, Considerando aspectos como la planeación, calidad, estimación de costos y productividad.
Principios del PSP
  • Cada ingeniero es diferente; para ser el más 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 más tarde.
  • Es más eficiente prevenir defectos que encontrarlos durante el desarrollo.
  • El camino correcto es siempre el modo más rápido y más barato de hacer un trabajo..
¿Como 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, están 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 0 Medición Personal
Los aspectos de  interés en este nivel se relacionan con la estimación del tiempo para desarrollar un producto software y la identificación, clasificación y manejo de los Defectos producidos durante el proceso de desarrollo. Los datos recopilados  mediante a la aplicación de los scripts sirven de base  para la realización de estimaciones mas reales en procesos futuros.
PSP 0.1
Es un nivel que extiende y complementa a PSP0, a través del establecimiento de estándares de codificación orientados a mejorar las estimaciones de tamaño, a si como la consideración de propuesta de mejora al nivel por parte de los ingenieros.
PSP 1 Planeación Personal
Le agrega pasos de planeamiento a PSP0. El primer paso agrega estimaciones de tamaño y recursos y un reporte de prueba.
PSP 1.1
Se introduce planeamiento de cronograma y seguimiento del proyecto.Los desarrolladores son enseñados a:
•Entender la relación entre el tamaño 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 diseño y codificación, como un mecanismo para aumentar la calidad de los productos.
PSP 2.1
El Proceso de diseño es contemplado .
El objetivo no es decirles a los desarrolladores como diseñar sino orientar el criterio para la finalización del diseño, es decir cuando han terminado que es lo que deben haber obtenido.
PSP 3 Cíclico  Personal
Presenta métodos para ser usados por individuos en la realización de programas de gran escala.
Para escalar PSP2 a proyectos más 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 diseñados para ser desarrollados en pasos incrementales. La primera construcción consiste en un módulo base o kernel que es ampliado en ciclos iterativos. En cada iteración se utiliza un PSP2 completo, incluyendo diseño, codificación, compilación  y pruebas.
•De esta manera los desarrolladores pueden concentrarse en la verificación de la calidad del último incremento sin preocuparse por defectos en ciclos anteriores.
•Si un incremento anterior tiene muchos defectos, la prueba será más compleja y los beneficios de escalar PSP se pierden. Esta es una razón para enfatizar revisiones de diseño y código en los pasos anteriores de PSP.
Proceso Cíclico de PSP3




Estructura del PSP




•Comenzando con los requerimientos, el primer paso en el proceso de PSP es la planificación.
•Existe un script de planificación que sirve de guía 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 tamaño 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
•Diseño
–Diseñar el programa, usando tus métodos de diseño actuales.
•Codificación
–Implementa el programa.
•Compilación
–Compila hasta que este libre defectos.
•Prueba
–Prueba el programa y corrige todos los defectos.
•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
•Guía tu trabajo
•Te ayuda a seguir tu progreso
•Terminación del proyecto
Elementos del PSP
scripts.-  guían a los desarrolladores en el uso consistente de los procesos, los cuales ellos conocen (mediante la asistencia a cursos de capacitación en PSP o a través de bibliografía introductoria en el uso de PSP).
logs y formularios.-  proveen templates para registrar y almacenar datos.
standards .-guían a los desarrolladores a mientras hacen el trabajo.
A continuación se describen los formatos utilizados en PSP0 y PSP 0.1


Formato de Registro de Tiempo



A continuacion se explica el llenado del formato del tiempo
Encabezado: Los datos que se deben de agregar en estos campos son: nombre del desarrollador, la fecha actual, el nombre del supervisor o instructor y el nombre del programa que se esta desarrollando.
Fecha:  La fecha en la que se realizo  la actividad.
Inicio: La hora en la que se empieza la actividad.
Fin: La hora en finaliza la actividad.
Interrupción: Tiempo perdido debido a interrupciones.
Actividad: Nombre de la tarea.
•Tiempo Delta: El tiempo empleado en la actividad en minutos, entre el comienzo y el final de la misma, menos el tiempo de interrupción.
•Comentarios: Se tiene que procurar hacer todo tipo de comentarios útiles que puedan recordar cierta circunstancias.
Nota: Todos los tiempos llevan el formato de horas y minutos (HH:MM), en caso de que solo sean minutos se utiliza el formato(:MM)
Resumen del Plan del Proyecto
Este formato reúne 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 histórico de todos los proyectos realizados.



Esta imagen es un ejemplo de como quedaría el llenado del formato del Resumen del plan de proyecto


A continuación se llevara a cabo la explicación de llenado del Resumen del plan del proyecto
Los campos que el programador tiene que llenar en este formato son:
Área de Tiempo en la Fase
Plan.- Es el tiempo estimado que se empleará para desarrollar el proyecto completo.
• Actual.- Es el tiempo real, en minutos, que se emplea en cada una de las fases de desarrollo.
• A la fecha.- La suma del tiempo actual con el tiempo a la fecha del último programa desarrollado.
• A la fecha %.- Indica el porcentaje del tiempo a la fecha que se emplea en cada fase de desarrollo.
Área de Defectos Encontrados.
• Actual.- Número de defectos reales encontrados en cada fase de desarrollo.
• A la fecha.- Suma de los valores de los campos Actual (Defectos encontrados) con el campo de A la fecha del último proyecto programado.
• A la fecha %.- Porcentaje de defectos encontrados a la fecha en cada fase de desarrollo.
Área de Defectos Removidos.
• Actual.- Indica el número de defectos removidos en cada etapa.
• A la fecha.- Es la suma del valor que se encuentra en el campo de Actual (Defectos removidos) con el valor A la fecha del último programa desarrollado.
• Ala fecha %.- Porcentaje de defectos removidos del campo A la fecha y que se aplica para cada fase de desarrollo.
Cuando el proyecto se termine es importante registrar cualquier defecto que se haya detectado tardíamente. Esto debe ser realizado cuando el programa esté en uso, re-uso o si el programa sufre alguna modificación.
La diferencia entre PSP 0 y PSP 0.1 es mínima, solamente se agregan medidas que guían al programador a medir y estimar el tamaño de los programas que desarrolla.

Nota: Espero que esta información te ayude mucho para tu estudio, gracias por visitar este blog


0 comentarios:

Publicar un comentario