Unidad 1. Metricas de Desarrollo de Software PSP
-
Upload
mexicano98 -
Category
Documents
-
view
167 -
download
3
description
Transcript of Unidad 1. Metricas de Desarrollo de Software PSP
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor1 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 1
CARRERA:
Ingeniera en Desarrollo de software
Cuatrimestre 07
Programa de la asignatura:
Mtricas de desarrollo de software
Clave: 150930728
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor2 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 2
ndice
Unidad 1. Mtricas de desarrollo de software (PSP) .......................................................... 3 Presentacin de la unidad .............................................................................................. 3
Propsito ........................................................................................................................ 3
Competencia especfica ................................................................................................. 3
Actividad 1. Presentacin ............................................................................................... 3
1.1. Antecedentes de PSP y su relacin con TSP y CMMI ............................................. 5
1.1.1. Antecedentes de PSP .......................................................................................... 5
1.1.2. Caractersticas de PSP ........................................................................................ 6
1.1.3. Relacin de PSP con TSP (Team Software Process) y CMMI (Capability
maturity model integration) ............................................................................................. 7
Actividad 2. Caractersticas de PSP ............................................................................. 10
1.2. Generalidades de PSP .......................................................................................... 11
1.2.1. El proceso de lnea base .................................................................................... 11
1.2.2. Las formas y elementos de PSP......................................................................... 14
1.2.3. Proceso y mediciones del PSP 0 ........................................................................ 15
Actividad 3. Mtricas de PSP ....................................................................................... 19
1.2.4. Registro de tiempos y defectos........................................................................... 20
1.2.5. Resumen del plan del proyecto .......................................................................... 24
1.2.6. Personalizacin del proceso inicial ..................................................................... 27
Evidencia de aprendizaje: PSP 0 ................................................................................. 28
Cierre de la unidad ....................................................................................................... 29
Para saber ms ............................................................................................................ 29
Fuentes de consulta ..................................................................................................... 29
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor3 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 3
Unidad 1. Mtricas de desarrollo de software (PSP)
Presentacin de la unidad
En esta unidad ahondars en las caractersticas principales del Proceso Personal de
Software (PSP, por sus siglas en ingls), una disciplina diseada por el ingeniero de
software, Watts Humphrey, en los aos 90.
Conocers por qu se cre esta disciplina, sus caractersticas, la relacin tan estrecha
que tiene con el Proceso Grupal de Software (TSP) y el Modelo Integrado de Capacidad y
Madurez (CMMI). Aprenders las generalidades y los tipos de registros y mtricas que se
llevan, tales como: registros de tiempos, defectos, resumen de plan de proyecto.
Conocer PSP te ayudar, como su nombre lo indica, en tu proceso personal de desarrollo,
favoreciendo la optimizacin de tiempos y asegurando la calidad de tu trabajo. Por ello es
importante que pongas especial cuidado en el propsito ya que es el enfoque de la unidad
y lo que debers aprender para poder entender las siguientes unidades.
Propsito
En esta unidad logrars:
Comprender las caractersticas de PSP y su relacin con TSP y CMMI.
Analizar el proceso de lneas base, formas, elementos, procesos, mediciones de
PSP para poder registrar tiempos defectos y el resumen del plan del proyecto.
Analizar la manera de implementar el proceso PSP 0.
Competencia especfica
Identificar los conceptos bsicos de PSP para analizar un programa, considerando la
relacin de PSP con TSP y CMMI.
Actividad 1. Foro de la asignatura
Antes de entrar de lleno en el estudio de la asignatura, se presenta un foro de discusin
general, creado para que comentes cualquier asunto relacionado con la asignatura; en l,
conocers a tus compaeros de grupo y entre todos podrn apoyarse para resolver
dudas, inquietudes, externar comentarios, etctera.
Para comenzar tu participacin, ingresa al foro.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor4 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 4
Bienvenido(a) al foro de la asignatura de Mtricas de desarrollo de software, el cual ha
sido diseado para que ingreses cada vez que lo necesites, ya sea para presentarte con
el grupo, para compartir alguna duda, inquietud, o para apoyar a tus compaeros(as) en la
resolucin de dudas. El foro estar abierto durante todo el curso y consta de varias
entradas o categoras a las que debers ingresar dependiendo del tipo de participacin
que quieras hacer:
Si quieres comentar asuntos personales que no tengan relacin directa con los
contenidos de las unidades, utiliza la categora: Asuntos personales.
Si tienes dudas o comentarios relacionados con detalles tcnicos, por ejemplo, sobre
la instalacin de alguno de los programas que se usan en el curso, ingresa a la
seccin: Aspectos tcnicos.
Si tus comentarios se relacionan con aspectos directamente relacionados con el
contenido de la asignatura, da clic en la categora: Aspectos sobre el contenido de
la asignatura.
Realiza tu primer aporte a la materia haciendo una breve presentacin de ti mismo y
contestando la siguiente pregunta Cul es tu proceso personal de calidad para el
desarrollo de software?
No olvides consultar la Rbrica general de participacin en foros.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor5 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 5
1.1. Antecedentes de PSP y su relacin con TSP y CMMI
Antes de que comencemos la asignatura, es importante que conozcas los orgenes del
PSP y cmo, en conjunto con TSP y CMMI, forman una disciplina organizacional que te
permitir realizar software en un menor tiempo, optimizar costos y sobre todo con calidad.
El CMMI es un producto desarrollado por el Software Engineering Institute (SEI) y se basa
en la mejora continua de los procesos. Pretende incrementar la capacidad administrativa
de las organizaciones para controlar los costos, tiempos y productividad en general. Por
otra parte, el objetivo de TSP es adiestrar a los ingenieros de software en el desarrollo de
equipos y llegar en menos tiempo a niveles altos de desempeo por medio de la prctica
del proceso personal del software de cada uno de sus integrantes el cual nace como un
acercamiento estructurado y disciplinado para el desarrollo de software proporcionando al
ingeniero de software un conjunto de formularios, guas y estndares que les ayudan a
estimar y planificar su trabajo. Trabajando todo en conjunto y, de manera efectiva, es muy
factible poder cumplir con todos los niveles de CMMI.
Es importante entender que PSP es una disciplina personal, sin embargo en conjunto con
TSP y CMMI se pueden lograr varios beneficios para la organizacin. A continuacin,
vers sus antecedentes y la manera en que se relaciona con las metodologas
mencionadas.
1.1.1. Antecedentes de PSP
Cules son los pasos que sigues para realizar los programas que te dejan en tus clases?
Contesta esta pregunta y ahora analiza si tienes una estructura de trabajo, qu
encontraste? Ahora responde a las siguientes:
-Qu pasa cuando algo te sale mal?
-Llevas un control de tiempo?
-Registras actividades?
Los programadores (o ingenieros de software) no siempre siguen una metodologa de
trabajo, y esto nos lleva a tener resultados diferentes, descontrol en la cantidad de
errores, validaciones, duracin del proyecto. Esta problemtica no es reciente y aplica
tanto para estudiantes, programadores junior (principiantes) o senior (expertos). Watts
Humphrey, miembro del Instituto de Ingeniera de Software (SEI), de la Universidad de
Carnegie Mellon, detect esta problemtica con los alumnos y se dio cuenta de que
tambin en la industria suceda lo mismo. Humphrey desarrollo una serie de disciplinas
para los ingenieros de software, que posteriormente daran pie para estructurar el PSP.
PSP pretende mejorar las prcticas del desarrollo de software y la calidad del mismo. No
hay mejor manera de hacer cosas con calidad que midiendo; es por eso que, en PSP se
generan las mtricas de lneas de cdigo, lneas de cdigo por hora, los tiempos de
desarrollo, etc.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor6 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 6
Es importante mencionar que PSP no tiene como objetivo demeritar el trabajo de una
persona, ni hacerlo sentir menos que sus compaeros, sino simplemente mejorar, como
su nombre lo indica: su proceso personal de desarrollo. Antes de estudiar en qu
consiste este proceso, es importante conocer sus antecedentes:
Despus de la Segunda Guerra Mundial, las organizaciones que se dedicaban a la
industria del software, normalmente basaban su principal estndar de calidad en pruebas
al software, generando departamentos dedicados en buscar y arreglar defectos despus
de la produccin de sus productos. Entre los aos 70s y 80s, la industria estadounidense
se enfoc a conocer la manera en que los ingenieros de software realizaban sus trabajos
y cmo era que desarrollaban sus procesos, lo cual permiti reconocer que el anterior
modelo de probar y corregir era muy costoso en tiempo y recursos. En 1976, se
comenzaron a incluir prcticas de inspecciones al software y posteriormente en 1987,
Watts S. Humphrey, aplic su Modelo de Capacidad de Madurez (CMM). En 1995, los
primeros cursos de PSP fueron dados por su creador, en la universidad de Carnegie
Mellon. En 1997, lanz el libro An introduction to the personal software process con un
enfoque a los ingenieros de software. (Garca, Y. 2010. Pg. 1).
Ya que hemos conocido algo de la breve historia de PSP es momento para comenzar a
conocer sus caractersticas as como, saber: s este modelo se implementa con xito en
una organizacin, cuales ventajas se obtendran, as como lo contrario, que pasara si no
se tiene xito en su aplicacin, cules desventajas tendra.
1.1.2. Caractersticas de PSP
Para continuar describiendo el modelo PSP es importante mencionar sus caractersticas
as como, distinguir sus ventajas y desventajas. Segn Humphrey, W. (1995.).
Caractersticas:
Es una metodologa de la Ingeniera de Software con fundamentos de CMMI.
Tiene un enfoque hacia la produccin de software de calidad.
Favorece los procesos de estimacin, planeacin y desarrollo de software.
Como todo proceso de calidad, est orientada a mantener la mejora continua.
Se puede establecer junto con los modelos de calidad TSP y CMMI.
Es un proceso definido y ayuda a medir la mejora.
Involucra actividades de revisin e inspeccin.
Est diseado para uso individual.
Se combinan actividades de: administracin de proyectos, Ingeniera de software y
calidad.
Cuando se logra un proceso de PSP, estable y maduro tiene las siguientes ventajas:
Estimacin ms precisa de tiempos, costos y recursos.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor7 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 7
Cumplir con los compromisos.
Productividad en aumento.
Localizacin de los defectos desde fases iniciales.
Mejora los tiempos del ciclo de vida.
Reduce costos.
Facilita el seguimiento a procesos.
Los desarrolladores comprenden su condicin actual y obtienen un ambiente y
disciplina que propicia la mejora de su capacidad.
Cuando la implementacin del PSP no tiene una administracin adecuada, ocurre n las
siguientes desventajas:
Puede considerarse como un proceso burocrtico porque genera documentacin.
La metodologa es muy precisa, puede propiciar la exageracin en su aplicacin.
Implementar esta metodologa puede consumir mucho tiempo extra.
La renuencia por parte de los desarrolladores de aplicar la documentacin y por
sentirse expuestos al evidenciar sus tiempos de desarrollo y defectos.
Si no se considera como una inversin, generar la idea de ser un proceso muy
costoso a un corto y mediano plazo.
PSP es un modelo que puede implementarse de manera exclusiva, sin embargo puede
ser perfectamente complementado con TSP y CMMI. En nuestro siguiente subtema
veremos cmo se da esta relacin.
1.1.3. Relacin de PSP con TSP (Team Software Process) y CMMI
(Capability maturity model integration)
El establecimiento y seguimiento de los procesos son como los hbitos, al principio son
difciles de obtener, pero ya que se han logrado son ms difciles de romper. Esto tambin
pasa en la industria del software, lo procesos pueden ser largos, complejos o difciles de
comprender y adoptarlos puede tornarse en una actividad complicada. Es por ello que se
ha generado un marco de madurez en el proceso de software, el cual, muestra una
manera ordenada para que la organizacin determine sus procesos y establezca sus
mejoras.
El SEI trabaja liderando organizaciones de software en Estados Unidos y esto le ha
llevado a definir el CMMI. Como puedes observar en la Tabla: Niveles del CMMI., tiene 5
niveles que son progresivos y demuestran cmo se deben lograr las reas clave del
proceso (KPAs Key process areas), para adquirir progresivamente el nivel de madurez.
CMMI es un modelo que contiene metas, mtodos y prcticas necesarias para la prctica
industrial de la ingeniera de software, por lo tanto necesitars comprender cmo aplicar
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor8 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 8
estos principios. La pregunta es cmo lograr esto? y una de las respuestas es:
comenzando por tu proceso personal de desarrollo de software.
Nivel Descripcin
Nivel 5:
Optimizado
Administracin del proceso del cambio.
Tecnologa de gestin del cambio.
Prevencin del defecto.
Nivel 4:
Cuantitativamente
administrado
Administracin de calidad.
Gestin de procesos cuantitativos.
Nivel 3:
Definido
Evaluacin entre pares.
Coordinacin inter grupal.
Ingeniera del producto de software.
Administracin de la integracin del software.
Programa de formacin.
Definicin del proceso del software.
Enfoque al proceso del software.
Nivel 2:
Repetible
Administracin de la configuracin del software.
Aseguramiento de la calidad del software.
Administracin de la subcontratacin del software.
Seguimiento y supervisin a proyectos de software.
Planeacin de proyectos de software.
Administracin de requerimientos.
Nivel 1:
Inicial
Tabla. Niveles del CMMI. (Humphrey, W.1995. p. 7)
En el entendido de que: todo esfuerzo hacia la calidad debe considerar el plano personal,
debemos estar conscientes de que todos tenemos responsabilidades con otros y con
nosotros mismos. Debemos comprender nuestras habilidades para desarrollar tareas,
administrar las debilidades y desarrollar ms fortalezas. Esto debemos convertirlo en
parte de nuestra vida laboral y buscar la excelencia sin dejar de considerar el significado
de ser humanos. Partiendo de esto, PSP tiene los siguientes enfoques:
Identificar en los grandes sistemas de software, todos los mtodos y prcticas que
pueden ser usados por individuos.
Definir los conjuntos de mtodos y prcticas que pueden ser aplicados mientras se
desarrollan programas pequeos.
Estructurar los mtodos y prcticas localizados e ir introducindolos gradualmente.
Proveer en un entorno educativo, ejercicios apropiados para ensear los mtodos y
prcticas estructurados.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor9 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 9
PSP tiene un marco de trabajo muy parecido al de CMMI, ambos comparten las
siguientes reas de proceso:
Nivel 5 Optimizado
Administracin del proceso del cambio.
Tecnologa de gestin del cambio.
Prevencin del defecto.
Nivel 4 Cuantitativamente administrado
Administracin de calidad.
Gestin de procesos cuantitativos.
Nivel 3 Definido
Evaluacin entre pares.
Ingeniera del producto de software.
Administracin de la integracin del software.
Definicin del proceso del software.
Enfoque al proceso del software.
Nivel 2 Repetible
Seguimiento y supervisin a proyectos de software.
Planeacin de proyectos de software.
Como has podido observar, PSP cubre 12 de las 18 reas clave del proceso de CMMI.
Las reas que no se cubren son principalmente aquellas que tienen que ser desarrolladas
en equipo, ya que de manera individual no podran existir, por ejemplo: la subcontratacin
de desarrollos de software, la administracin de requerimientos y de la configuracin del
software, el aseguramiento de calidad y programas de entrenamiento, etc.
TSP est construido sobre el fundamento de PSP y todos los miembros del equipo TSP
deben ser entrenados en el uso de PSP. Los principios de PSP y lgica aplican de la
misma manera para el TSP. Los principios bsicos de PSP consisten en: (1) procesos
definidos y estructurados para mejorar el proceso de trabajo, (2) estos procesos deben
ajustarse a las caractersticas y preferencias de cada miembro del equipo, (3)
involucramiento de los desarrolladores en el diseo de los procesos, (4) incluir las buenas
prcticas de PSP en la configuracin de los estndares, (5) proceso de mejora continua
eficiente.
La principal razn del entrenamiento PSP es motivar en los desarrolladores la conviccin
de trabajar el proceso de TSP. Tu trabajo como lder es convencerlos de que esos
mismos beneficios son importantes para el proyecto y cada miembro del equipo debe
continuar utilizando esas prcticas.
La lgica para el TSP se construye sobre la lgica de PSP, la cual consiste en que:
Los equipos trabajan mejor cuando los miembros cooperan y se toleran unos a otros.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor10 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 10
Los miembros del equipo pueden cooperar y tolerarse mejor cuando todos ellos
utilizan un adecuado y bien definido proceso.
Los equipos comprenden y siguen conscientemente un proceso solamente cuando
ellos han participado en la definicin de ese proceso.
Los equipos producen productos de calidad para predecir costos y calendarios
solamente si ellos utilizan procesos definidos consistentemente.
Los equipos definen procesos solamente si los miembros saben cmo hacer trabajo
con calidad.
Los equipos siguen procesos solamente si ellos son motivados para hacer esto por
sus pares, lderes y gerentes.
Uno de los principales retos del lder es ayudar a su equipo a producir los tipos de
proyectos que necesitan para lograr sus objetivos y motivarlos a seguir el proceso. Esos
objetivos consisten en hacer trabajos con calidad y cubrir sus calendarios. (Humphrey, W
2006. pp. 116-118).
Actividad 2. Caractersticas de PSP
Ya que leste el contenido e identificaste las caractersticas de PSP, sus ventajas y
desventajas. Es momento de que pongas en prctica tu comprensin del tema con la
siguiente actividad.
Propsito:
Comprender las caractersticas de PSP y su relacin con TSP y CMMI en diferentes
escenarios.
Instrucciones:
A. Dados los siguientes escenarios, indica cul metodologa es la ms adecuada para
cumplir los objetivos descritos: PSP, TSP o CMMI.
B. Ingresa a la actividad en el aula de la asignatura y coloca tus respuestas.
1) La medicin, control y documentacin de todos los aspectos
(tiempos, costos, personal, riesgos, etc.) de un producto de software
por parte del lder del proyecto el cual, tiene a su cargo a un
arquitecto de software y un grupo de desarrolladores.
2) La calendarizacin de los tiempos por cada mdulo de un
determinado proyecto de software as como la asignacin de los
desarrolladores para cada mdulo definido en la arquitectura del
proyecto.
3) Un desarrollador est realizando el anlisis de un mdulo que le
asignaron y que forma parte de un proyecto que integra otros
mdulos.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor11 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 11
4) El lder de un proyecto de software requiere la informacin de todos
los acuerdos con su cliente para decidir si debe aumentar el costo del
proyecto o no. Dichos acuerdos estn asentados en minutas que se
realizan en cada entrevista con el cliente. Por lo tanto, existe una
administracin y control de dichos acuerdos.
5) Un lder de proyecto realiza la estimacin del tamao, en lneas de
cdigo, de un mdulo de reportes para un proyecto a su cargo. Los
requerimientos de dicho mdulo sern entregados a uno de sus
desarrolladores.
6) Un desarrollador junior pide apoyo a su lder de proyecto para que le
asigne un mdulo ms fcil de desarrollar. El lder de proyecto decide
apoyarlo y debe reajustar los tiempos estimados para el desarrollo de
los mdulos que se vern afectados con el cambio de
desarrolladores.
7) Un desarrollador est registrando un defecto encontrado en el
mdulo que est desarrollando.
8) Un desarrollador acepta realizar un proyecto sencillo. Inicialmente su
cliente le pide saber cunto tiempo tardar en realizarlo. Por tal
motivo, debe realizar una estimacin del tiempo total que le llevar
la realizacin de dicho proyecto.
9) Un lder de proyecto se encuentra realizando un control de los
tiempos de desarrollado estimados para cada mdulo as como el
desarrollador responsable para cada mdulo. Con esta informacin
planea calendarizar la entrega del proyecto asignado.
Como te habrs dado cuenta en el presente tema y en esta actividad algunas
caractersticas de PSP se comparten con los otros modelos de calidad como TSP y
CMMI. Esto les permite poder trabajar en conjunto y complementarse.
1.2. Generalidades de PSP
Hasta este punto ya conoces las caractersticas de PSP, sus ventajas, desventajas,
antecedentes y cmo se relaciona con TSP y CMMI. En el presente tema conocers como
se conforma el proceso de una lnea base, la cual consiste en un marco de trabajo
necesario para realizar el primer proceso de PSP. Conocers los formatos, los elementos,
el proceso y mediciones que conforman el PSP 0.
1.2.1. El proceso de lnea base
Primeramente comenzaremos con la siguiente pregunta: Qu es un proceso?
Un proceso es una serie de pasos para realizar un trabajo. Cuando tenemos los procesos
debidamente definidos, estos son una gua para hacer el trabajo. El proceso de software
establece la tcnica y marco de trabajo para aplicar mtodos, herramientas, tareas
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor12 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 12
especficas, mediciones y proveer el xito y criterios de entrada para mayores logros. Los
mejores mtodos pueden ser descritos como procesos para ayudar a los integrantes del
equipo a aprenderlos. En resumen un proceso definido identifica los principales pasos de
un trabajo.
Ayuda a separar la rutina de las actividades complejas.
Se establece el criterio para comenzar y terminar cada paso del proceso.
Mejora la comprensin del proceso y da una base slida para la automatizacin del
proceso.
Los procesos definidos tambin nos ayudan a generar mediciones. Las mediciones son
tiles para comprender el desempeo, para administrar el trabajo del equipo, para planear
y administrar la calidad de los productos que producen.
Cuando trabajas en un equipo TSP t debes definir tu propio proceso. Al principio todas
las tareas te parecern abstractas y a medida que vas desarrollndolas ms y las defines
de una mejor manera, con suficiente detalle estars favoreciendo la mejora.
El proceso de lnea base es el principal objetivo del PSP0 y consiste en un marco de
trabajo para escribir tu primer programa PSP y el acopio de datos de tu trabajo. Estos
datos proveen una lnea base comparativa para determinar el impacto del mtodo PSP en
tu trabajo. Este proceso provee los siguientes beneficios:
Una estructura conveniente para desarrollar tareas de pequea escala.
Un marco de trabajo para medir esas tareas.
Fundacin para la mejora del proceso.
PSP0 es un proceso simple, definido y personal. Consiste en hacer un plan, utilizar tu
diseo actual y mtodos de desarrollo que utilizas para construir un programa pequeo.
Despus lleva el registro de los tiempos y de los defectos que generaste. Por ltimo
prepara un informe resumido. Observa la Figura: Evolucin del proceso PSP0.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor13 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 13
Tiempos Defectos
Datos del proyecto y del proceso Informe resumen
Plan
Figura. Evolucin del proceso PSP0.
Como puedes observar en la figura, el proceso de PSP0 tiene las siguientes fases:
Planificacin: debes producir un plan para desarrollar el programa definido en los
requisitos.
Diseo: produce una especificacin de diseo para el programa definido en los requisitos.
Cdigo: convierte las especificaciones de diseo en instrucciones del lenguaje de
programacin.
Compilacin: se traducen las instrucciones del lenguaje de programacin en cdigo
ejecutable.
Pruebas: verificar que el cdigo ejecutable cumple con los requisitos correcta y
completamente.
PM: Postmortem, resume y analiza los datos del proyecto.
Debers tomar en cuenta los siguientes factores para saber cmo aplicar estas etapas:
1. Cuando los programas son pequeos o bien comprendidos, puede ejecutar las
fases en orden.
2. Cuando los programas son grandes o que no se comprenden bien puede requerir
un enfoque iterativo. Por ejemplo en un proyecto el diseo se puede realizar en un
slo paso y descubrir que hay dos mdulos que ejecutarn separadamente las
etapas de cdigo, compilacin y pruebas. Y por ltimo habr una sola fase de PM
que integrar datos de ambos mdulos.
3. Puede haber ms de dos ciclos, cada mdulo podr incluir su propia fase de
diseo. Cada uno enfocado a producir parte del programa. El tamao de cada
mdulo determinar cada ciclo. Este tamao podr medirse con la cantidad de
clases, mtodos o funciones. Esto quedar determinado por ti.
Guiones (Scripts)
Planificacin
Diseo
Cdigo
Compilacin
Pruebas
PM
Requisitos
Producto terminado
Plantillas
y
registros
Resumen
del plan
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor14 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 14
Como has podido observar, el proceso involucra el uso de formas y otros elementos,
mismos que a continuacin se te presentan explicando la manera en que debers
utilizarlos.
1.2.2. Las formas y elementos de PSP
Las formas de PSP
En PSP se utilizan muchas formas. Aunque en un principio se podra ver esto como una
desventaja, posteriormente descubrirs que las formas te sern de gran ayuda.
Generalmente los proyectos desarrollan los siguientes pasos:
1. Determinar que lo que se va a hacer.
2. Decidir cmo hacerlo.
3. Hacerlo.
4. Revisar y asegurarte que es correcto.
5. Corregir problemas.
6. Entregar el resultado final.
Inicialmente todo proceso lleva un aprendizaje y una inversin de tiempo considerable.
Aparte del proceso el registro de formas, es una actividad pesada y deber ser revisada
peridicamente para asegurar que ella an presenta tus necesidades, por lo que es
necesario asegurarse que todas las formas del proceso estn diseadas en su conjunto
de manera coherente. Cuando no son cuidadosamente diseadas, se podra duplicar
informacin, la terminologa puede ser inconsistente y, en general, pueden presentar
varias confusiones.
Elementos de PSP
Como viste en la Figura: Evolucin del proceso PSP0, el proceso de PSP0 consta de
diferentes pasos: en el paso de planeacin, generas el plan para hacer el trabajo; los
siguientes 4 pasos abarcan: diseo, cdigo, compilacin y pruebas. Al final en el paso de
postmortem, comparars tu actual desempeo con el plan y producirs un reporte de
resumen. Aunque los pasos de planeacin y postmortem parecen no ser necesarios
cuando escribes programas pequeos, s lo son, para reunir los datos para administrar y
mejorar tu proceso personal. Si el programa es tan simple que pareciera que no tiene
sentido, entonces hacer el plan debiera ser una tarea trivial. Sin embargo es
programacin trivial pudiera albergar sorpresas que en el plan deberan anticiparse. En
tanto vayas ganando experiencia te dars cuenta que el postmortem es un tiempo ideal
para pensar sobre tus datos y ver la manera de mejorar.
Un proceso puede ser simple o complejo. La definicin de un proceso largo tendr
muchos elementos o fases. Cada una de ellas puede ser vista como un proceso definido.
En un bajo nivel las fases estn compuestas por pasos que no tienen una estructura. En
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor15 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 15
procesos largos cada paso puede ser una fase, en el siguiente nivel cada fase puede
tener una definicin de proceso con los pasos que comienzan con tareas de bajo nivel.
Cuando un elemento del proceso tiene una definicin y una estructura puede ser llamada
fase. Si no cuenta con una estructura definida, ser llamada paso o tarea.
Como todo proceso de calidad, deber ser medido para asegurarnos qu funciona y qu
puede ser mejorado, es por ello que PSP incorpora elementos y puntos de medicin para
comparar cmo es el desempeo de cada ingeniero de software y cmo podr ser
mejorado. A continuacin sabremos cmo funciona este proceso.
1.2.3. Proceso y mediciones del PSP 0
Los scripts de PSP te guiarn a travs de los pasos del proceso. Los principales
elementos del guion del proceso son su propsito, los criterios de entrada, las fases o
pasos para ser desarrollado. El guion del proceso PSP0 es una serie de directrices de
cmo usar el proceso. Se describe el propsito, los criterios de ingreso, aspectos
generales, pasos y criterios de salida.
La planificacin. Debers contar con los requisitos del proyecto y completar las
partes no sombreadas del plan de la Tabla: Resumen del plan del proyecto. Por
ltimo escribe el tiempo dedicado a hacer el plan en el cuaderno de Registro de
tiempos.
El diseo. Se disea la solucin del programa antes de desarrollarlo. Se puede
utilizar cualquier tcnica de diseo o modelado, como: diagramas de flujo,
seudocdigo, diagramas UML, etc. Cuando se termine el diseo se deber
registrar el tiempo que se tard en hacerlo.
Codificacin: Se implementa el diseo, codificndolo en un lenguaje de
programacin. Deber aplicar los estndares de codificacin. Al trmino deber
registrar sus tiempos en el cuaderno de registro de tiempos.
Compilacin: Compilar el programa y corregir todos los defectos que se localicen.
Continuar compilando y corrigiendo hasta depurar el cdigo. Aunque corrijas el
cdigo todo este tiempo se registra en el cuaderno de registro de tiempos.
Pruebas: Realiza las pruebas necesarias para asegurar que los programas estn
cumpliendo con el requisito y no presentan errores. Todo el tiempo que se dedique
en esta fase se contabiliza an que hayas tenido que codificar para corregir
errores. El tiempo se registra en el cuaderno de registro de tiempos.
Postmortem: Completa los datos de la tabla resumen del plan del proyecto,
dedica tiempo para hacer clculos finales y escrbelos en el tiempo postmortem
estimado. Utiliza el tiempo estimado para calcular el tiempo de desarrollo total y el
resto de clculos.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor16 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 16
Observa las siguientes tablas, stas te indicarn cmo se debe ejecutar el proceso PSP0
y en ellas puedes revisar: Muestra el guion completo; Muestra la gua para el plan;
Muestra la gua del desarrollo y Muestra la gua postmortem.
Guion del proceso PSP0
Propsito Gua para el desarrollo de programas pequeos.
Criterios de entrada La descripcin del problema.
Tabla Resumen del plan del proyecto PSP.
Datos de tamaos y tiempos reales de programas anteriores.
Cuaderno de Registro de Tiempos.
Paso Actividades Descripcin
1 Planificacin Obtn una descripcin de las funciones del programa.
Escribe los datos del plan en la tabla Resumen del Plan del
proyecto.
Anotar el tiempo de planificacin en el Cuaderno de registro de
tiempos.
2 Diseo Disear el programa.
Anotar el diseo en el formato indicado.
Anotar el tiempo del diseo en el Cuaderno de registro de
tiempos.
3 Codificacin Implementa el diseo.
Utiliza un formato estndar para introducir el cdigo.
Anota el tiempo de codificacin para el Cuaderno de registro
de tiempos.
4 Compilacin Compilar el programa.
Corregir defectos encontrados.
Anotar el tiempo de compilacin en el Cuaderno de registro de
tiempos.
5 Pruebas Probar el programa.
Corregir los defectos encontrados. Recuerda que cada error
encontrado debes registrarlo en la bitcora de registro de
defectos.
Anotar el tiempo de pruebas en el Cuaderno de registro de
tiempos.
6 Postmortem Completa la tabla de Resumen del plan del proyecto con los
datos de tiempo y tamao reales.
Anotar el tiempo postmortem en el Cuaderno de registro de
tiempos.
Criterios de salida Programa probado completamente.
Diseo documentado.
Programa completo.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor17 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 17
Resumen del plan del proyecto terminado.
Cuaderno de registro de tiempos terminado.
Guion de la planeacin PSP0
Propsito Gua para el proceso de planeacin de PSP0
Criterios de entrada La descripcin del problema.
Tabla Resumen del plan del proyecto PSP.
Cuaderno de Registro de Tiempos.
Paso Actividades Descripcin
1 Requisitos
del programa
Producir u obtener los requisitos del programa.
Asegurarte que esos requisitos son claros y sin
ambigedades.
Resolver preguntas.
2 Estimacin
de recursos
Realizar tu mejor estimacin del tiempo requerido para
desarrollar el programa.
Criterios de salida Requisitos documentados.
Resumen del plan del proyecto terminado con tiempos
estimados de desarrollo.
Cuaderno de registro de tiempos terminado.
Guion del desarrollo PSP0
Propsito Gua para el desarrollo de programas pequeos.
Criterios de entrada Declaracin de requisitos.
Tabla Resumen del plan del proyecto con la estimacin del
tiempo de desarrollo del programa.
Cuaderno de Registro de Tiempos.
Estndar del tipo de defectos.
Paso Actividades Descripcin
1 Diseo Revisar los requisitos y disear el programa.
Registrar el tiempo del diseo y defectos encontrados en
requerimientos.
Registrar tiempos en el Cuaderno de registro de tiempos.
2 Codificacin Implementa el diseo.
Utiliza un formato estndar para introducir el cdigo.
Anota el tiempo de codificacin para el Cuaderno de registro
de tiempos.
3 Compilacin Compilar el programa.
Corregir los errores encontrados y registrarlos.
Anotar el tiempo de compilacin en el Cuaderno de registro de
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor18 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 18
tiempos.
4 Pruebas Probar el programa.
Corregir los errores encontrados y registrarlos.
Anotar el tiempo de pruebas en el Cuaderno de registro de
tiempos.
Criterios de salida Programa probado completamente.
Diseo documentado.
Programa completo.
Resumen del plan del proyecto terminado.
Cuaderno de registro de tiempos terminado.
Guion del postmortem PSP0
Propsito Gua para el proceso postmortem.
Criterios de entrada Descripcin del problema y declaracin de requisitos.
Tabla Resumen del plan del proyecto con tiempos de
desarrollo.
Cuaderno de Registro de tiempos y defectos.
Una prueba y ejecucin del programa.
Paso Actividades Descripcin
1 Registro de
defectos
Revisar los requisitos y disear el programa.
Registrar el tiempo del diseo y defectos encontrados en
requerimientos.
Registrar tiempos en el cuaderno de registro de tiempos.
2 Consistencia
en la
definicin del
defecto
Revisar que los datos en todos los defectos en el registro de
defectos sean exactos y completos.
Verificar que el nmero de defectos inyectados y removidos
por fases son razonables y correctos.
Utilizando su mejor recuerdo, corregir cualquier defecto de
datos faltantes o incorrectos
3 Time Revisar el tiempo de registro terminado de errores u
omisiones.
Revisar el registro de algn dato faltante o incompleto.
Criterios de salida Programa probado completamente.
Resumen del plan del proyecto terminado.
Cuaderno de registro de tiempos terminado.
Mediciones PSP0
PSP0 tiene dos mediciones:
El tiempo gastado por fase.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor19 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 19
Los defectos encontrados por fase.
PSP0 tiene cuatro formas:
Resumen del plan del proyecto: resumen planificado, tiempo actual y defectos por fase.
Registro de tiempos: se utiliza para registrar el tiempo.
Registro de defectos: se utiliza para registrar defectos.
Estndar de tipo de defecto: se utiliza para definir el estndar de los tipos de defectos.
El tiempo por fase es un simple registro del tiempo gastado en cada parte del proceso
PSP. Registrar tiempos y defectos puede tomar algo de tiempo, nos servirn para aplicar
muchas herramientas del PSP. Debers contabilizar el tiempo que tardas en corregir
todos los defectos durante la fase de compilacin y pruebas. El defecto puede ser muy
simple o abarcar varios segmentos.
La razn por la que se registran tiempos y defectos es para ayudarte a planear y
administrar proyectos. Estos datos te servirn para identificar dnde gastas tiempo, dnde
inyectas y corriges ms defectos. Adems, te sern de utilidad, para realizar cambios en
tu desempeo actual y buscar la calidad de tus productos de trabajo.
Actividad 3. Mtricas de PSP
En PSP se acostumbra al ingeniero de software al registro de tiempos y defectos, lo cual
es una rica fuente para la generacin de mtricas. Para asegurarnos que estos valores
realmente aportan informacin confiable, el proceso deber tambin serlo, es por ello que
debemos asegurar que se realiza adecuadamente.
Propsito:
Analizar el proceso de lneas base, formas, elementos, procesos, mediciones de PSP
para poder registrar tiempos, defectos y el resumen del plan del proyecto.
Instrucciones:
Lee cada caso y realiza lo que se te pide.
Ingresa a la actividad en el aula de la asignatura y coloca tus respuestas correctas.
Parte 1
Alfonso ha desarrollado un programa utilizando PSP0. Indica el orden correcto en el que
realiz las actividades. Escribe el nmero de actividad (del 1 al 6) antes de cada una de
ellas.
___ Codificacin ___ Postmortem ___Planeacin ___ Diseo
___Compilacin ___Pruebas
Parte 2
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor20 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 20
Lee el siguiente caso:
Marcos realiz su primer programa utilizando PSP0. Dicho programa deba calcular y
mostrar el promedio y la desviacin estndar de un conjunto de nmeros introducidos por
el usuario. Al final, su programa funcion adecuadamente. Lo primero que realiz Marcos,
una vez que tena los requerimientos de su programa bien definidos, fue hacer una
planeacin y un diseo del mismo. Una vez que tena el diseo de su programa, comenz
a codificarlo. Mientras codificaba, para asegurarse de que todo iba bien, cada vez que
escriba un fragmento de cdigo compilaba su programa para asegurarse que iba a
ejecutarse correctamente. Una vez que termin su codificacin y que su programa pudo
ejecutarse, procedi a realizar varios casos de prueba para asegurarse del buen
funcionamiento del programa. Finalmente, cerr su proyecto PSP0.
De acuerdo al caso anterior, selecciona el inciso que responde adecuadamente a las
siguientes preguntas:
1. De acuerdo a los pasos del proceso PSP0, qu fue lo que realiz mal?
a) Al final su programa no funcion adecuadamente.
b) No realiz suficientes casos de prueba.
c) Mientras codificaba tambin compilaba.
d) No dise su programa.
2. De acuerdo a las actividades que realiz Marcos y al proceso PSP 0 Qu registros
tuvo que realizar?
a) Resumen del plan, tiempos, defectos y tipo de defecto.
b) Calendario, tiempos, costos y recursos.
c) Estimaciones, mtricas, calendarios y costos.
d) Proyecto, planeacin, postmortem y defectos.
3. Cual es la ltima fase que tuvo el proceso PSP0 de Marcos al cerrar su proyecto?
a) Postmortem
b) Codificacin
c) Pruebas
d) Planeacin
Como has notado PSP tiene un proceso bien definido para el desarrollo del cdigo y el
registro de los tiempos y defectos que se vayan generando. Adems esta informacin nos
servir para poder estimar con mayor precisin la planeacin del trabajo. A pesar de ser
un proceso personal, es muy similar al ciclo de vida que normalmente conocemos como
tradicional o cascada. Ya que tiene etapas como planeacin, diseo, cdigo, cdigo,
pruebas y una seccin para el registro llamada postmortem.
1.2.4. Registro de tiempos y defectos
Registro de tiempos
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor21 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 21
Para comenzar con todo este proceso, debers identificar la mejor manera de contabilizar
tus tiempos para cada paso que realices de los procesos de PSP. Al realizar esto, te
ayudar a conocer las tareas que realizas y cuanto tiempo demoras en cada una. Por lo
tanto tendrs que registrar tus tiempos y para ello podrs utilizar una plantilla destinada al
registro. (Ver Tabla: Registro de tiempos PSP). Esta tabla o cualquier otro formato que
utilices debern tener los siguientes datos:
Tu nombre, el proyecto, lenguaje, fecha, y otros datos en el encabezado.
Comienzo del proyecto o programa.
La fase del proceso para la tarea.
La fecha y hora en que la que comenzaste y terminaste trabajando en la tarea.
Tiempo de alguna interrupcin.
Tiempo delta trabajando en la tarea.
Comentarios.
Adems, la herramienta que utilices deber ayudarte a capturar el tiempo de inicio de la
tarea, el tiempo de trmino y el tiempo de interrupcin y de manera automtica debiera
calcular el tiempo delta, el cual es el tiempo real dedicado a la tarea. Cuando las
actividades duran varias horas, seguramente tendrs interrupciones, como llamadas por
telfono, conversaciones, comidas, etc. Si no ests consciente del tiempo que
interrumpes tu trabajo, no sabrs exactamente cul es el tiempo que tardas en una
actividad. Tal vez pienses que los tiempos de interrupcin son realmente pequeos que
puedes ignorarlos. Podras colocar en la columna comentarios cuando comienzas el
tiempo de interrupcin, para as calcular el tiempo perdido cuando hayas terminado la
interrupcin, de tal manera que si este clculo te da, por ejemplo, 18 minutos, debers
registrarlos en la columna de Tiempo Int. (Tiempo de interrupcin).
Estudiante Fecha
Programa # Programa
Instructor Lenguaje
Proyecto Fase Fecha y
hora de
inicio
Tiempo
Int.
Fecha y
hora de
trmino
Tiempo
Delta
Comentarios
Tabla. Registro de tiempos PSP
(Echeverra, C.M., Echeverra, C.D. Asencio, J.L. 2006. Pg. 23)
Propsito Utilizar la plantilla de registro de tiempos para anotar el tiempo
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor22 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 22
gastado en cada actividad del proyecto.
En PSP normalmente cada fase tiene una actividad, pero los
proyectos grandes tienen mltiples actividades en una simple fase.
General Registra siempre el tiempo que demoras haciendo actividades.
Registra el tiempo en minutos.
Se lo ms exacto posible.
Si olvidaste registrar el comienzo, el trmino o interrupcin para
alguna actividad, inmediatamente registra tu mejor estimacin.
Encabezado Introducir t nombre, la fecha, nombre y nmero del programa,
nombre del instructor y lenguaje de programacin.
Proyecto Introduce el nombre, nmero o clave del proyecto.
Fase Introduce el nombre de la fase en la que ests trabajando, por
ejemplo planeacin, diseo, pruebas, etc.
Fecha y hora de
inicio
Introduce la fecha y hora de inicio de alguna actividad del proceso.
Tiempo Int. Registra el tiempo de interrupcin, en el que no estuviste trabajando
en alguna actividad del proceso. Si tuviste muchas interrupciones,
registra el tiempo total, tambin puedes escribir la razn por la cual
interrumpiste la actividad en la columna de comentarios.
Fecha y hora de
trmino
Registra la fecha y hora en la que terminaste la actividad.
Tiempo delta Registra el clculo del tiempo que realmente trabajaste en la
actividad menos el tiempo de interrupcin.
Comentarios Registra algn comentario que debas recordar posteriormente.
Tabla. PSP Instrucciones del registro de tiempos.
Registro de defectos
Posiblemente te hars la pregunta qu es un defecto en PSP?, una respuesta es la que
sigue, un defecto es algo que no es correcto o error en un programa, desde un simple
carcter en el lugar que no le corresponde (error de sintaxis), hasta un defecto de
funcionalidad donde haya errores en la lgica del cdigo.
Cuando encuentras un defecto y decides arreglarlo, cuenta el tiempo de correccin,
cuando terminaste de corregirlo, introduce todos los datos del defecto: tipo de defecto, la
fase en la que se detect, tiempo de correccin y una breve descripcin del defecto. Si
olvidaste registrar alguno de estos datos, realiza tu mejor estimacin. Normalmente en la
fase de compilacin y pruebas encontrars la mayora de los defectos, sin embargo, los
puedes encontrar en cualquier fase y corregirlos. Si este es el caso puedes registrar la
fase en la que los encontraste y corregiste.
Si estos errores o defectos no son detectados por los ingenieros de software, muy
probablemente quin los encontrar ser el cliente, es por ello que es una buena prctica
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor23 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 23
que de manera personal cada ingeniero de software busque y detecte la mayor parte de
sus defectos.
Tabla. Registro de defectos.
(Echeverra, C.M., Echeverra, C.D. Asencio, J.L. 2006. Pg. 25)
El tiempo de correccin es a veces mal comprendido. Este es el tiempo para encontrar y
corregir el defecto. Por ejemplo:
8:00 ejecutas el compilador y localizas error de tipo en line 23 type mismatch.
8:01 ejecutas el editor.
8:10 cambias la declaracin de la lnea 5, tecleas el tipo real en lugar del integer.
8:12 ejecutas el compilador y te indica que no hay errores no errors.
Cunto tiempo tiene este defecto?
12 minutos.
A continuacin revisa las instrucciones para el llenado de la tabla de registro de defectos.
Propsito Se utiliza esta plantilla para registrar los defectos detectados y
corregidos.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor24 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 24
General Registrar cada defecto separadamente y completamente.
Encabezado Introduce tu nombre, fecha, nombre y nmero de programa, nombre del
instructor y lenguaje de programacin que ests utilizando.
Proyecto Dar a cada programa un nombre o nmero. Por ejemplo registro de
prueba de programa.
Fecha Registra la fecha en la que localizaste los defectos.
Nmero Introduce el nmero del defecto. Utiliza un nmero secuencial para cada
defecto por programa o mdulo. Comienza desde el 1 (1...100... etc.)
Tipo Registra el tipo de defecto utilizando la lista de tipos de defectos
seleccionando el que consideres que se ajusta al tipo de defecto
encontrado.
Inyeccin Registra la fase en la que se inyect el defecto.
Removido Introduce la fase en la cual corregiste el defecto.
Tiempo de
correccin
Introduce el tiempo necesario para encontrar y corregir el defecto.
Referencia de
correccin
Si al corregir este defectos t o alguien ms ha introducido nuevos
defectos registra el nmero del defecto origen, si no lo tienes ubicado,
coloca una X.
Descripcin Escribe una breve descripcin del defecto, el error que lo caus y por
qu sucedi esto.
1.2.5. Resumen del plan del proyecto
La plantilla del resumen del plan del proyecto, nos servir para definir qu trabajo se har
y el tiempo que necesitar. Hay que definir la tarea principal, estimar el tiempo y recursos
y la forma de trabajo para la revisin y seguimiento. El plan del proyecto es una parte
importante de ste. Para proyectos grandes, es muy importante contar con un plan. Poco
a poco irs adquiriendo mayor habilidad para elaborar planes, al principio comenzars
estimando el tamao del producto y el tiempo que te llevar realizarlo. Este debe
realizarse antes de comenzar el proceso, cuando hayas terminado debers registrar los
tiempos reales del tamao y tiempo. As mismo lo hars con la fecha estimada de
culminacin y la fecha real. Esta prctica te servir para realizar mejores estimaciones
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor25 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 25
cada vez que realices un programa, ya que podrs ir ajustndolos en base a la
experiencia.
A continuacin se te presenta la tabla del resumen del plan del proyecto y posteriormente
las instrucciones del llenado del resumen del plan del proyecto.
Proyecto
1 PSP0 Resumen del plan del proyecto - Programa 1A
Estudiante Fecha ?????
Programa
# programa
Instructor
Lenguaje ?????
Plan Real Hasta la
fecha
%
Hasta
la
fecha
Tiempo en la fase (min.)
Planificacin
Diseo
Codificacin
Compilacin
Pruebas
Postmortem
Total
Defectos inyectados
Planificacin
Diseo
Codificacin
Compilacin
Pruebas
Total en
desarrollo
Defectos eliminados
Planificacin
Diseo
Codificacin
Compilacin
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor26 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 26
Pruebas
Total en
desarrollo
Despus del desarrollo
Tabla. Resumen del plan del proyecto.
(Zapata, J., Garca, J., Cerrada, J. 2001. Pg. 142)
Revisa las siguientes instrucciones para el llenado de la forma de defectos:
Propsito Para contener los datos reales del plan de los programas.
General Hasta la fecha significa el total actual de los valores de todos los
productos desarrollados.
Encabezado Introducir t nombre, la fecha, nombre y nmero del programa, nombre
del instructor y lenguaje de programacin.
Tiempo en la
fase
Introduce el tiempo total estimado.
Introduce el tiempo actual por fase y el tiempo total.
Hasta la fecha: introduce la suma de los tiempos actuales para este
programa ms los tiempos a la fecha del programa ms recientemente
desarrollado.
% hasta la fecha: Introduce el porcentaje del tiempo hasta la fecha en
cada fase.
Defectos
inyectados
Introduce los defectos actuales por fase y el total actual de defectos.
Hasta la fecha: Introduce la suma de los defectos actuales inyectados por
fase y los valores hasta la fecha del programa ms recientemente
desarrollado.
Defectos
removidos
Hasta la fecha: Introduce los defectos actuales removidos por fase ms el
total de defectos del ltimo programa desarrollado.
% hasta la fecha: Introduce el porcentaje de defectos removidos hasta la
fecha por fase.
Despus del desarrollo, registrar todos los defectos encontrados durante
las pruebas uso, re uso o modificacin del programa.
Algunos desarrolladores no consideran importante registrar los defectos, sin embargo
todos los programadores que realizan esta actividad, logran elevar la calidad de sus
productos de trabajo y aumentar su productividad.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor27 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 27
1.2.6. Personalizacin del proceso inicial
En esta asignatura analizars y realizars varios programas utilizando la evolucin del
proceso que se muestra en la Figura: Evolucin del PSP. El primer proceso es un proceso
genrico simple, que comienza con la escritura de tus programas como normalmente lo
haces lo que agregars es el conteo del tiempo y medicin de defectos. En el PSP0
aplicars esto en un programa, posteriormente la medicin del tamao la vers en el
programa PSP0.1. La medicin del tamao es una actividad importante ya que te servir
para comprender cmo trabajas y que con qu velocidad vas mejorando tus tiempos.
En el resto de esta asignatura vers cmo se utilizan la estimacin de datos histricos del
tamao y tiempo del programa. Hasta que logres la estimacin y planeacin de tareas y
calendarios. El contenido de un curso PSP es llevar a cabo todo el proceso en la
organizacin y demostrar con proyectos reales como cada desarrollador implementa su
proceso personal de software, hasta complementar objetivos del Proceso grupal de
software, como se demuestra en la Figura: Evolucin del PSP.
Figura. Evolucin del PSP
(Echeverra, C.M., Echeverra, C.D. Asencio, J.L. 2006. Pg. 20)
PSP2
Revisiones de cdigo
Revisiones del diseo
Proceso grupal de software
Trabajo en equipo
Administracin del riesgo
Planeacin del proyecto y rastreo.
PSP1
Estimacin del tamao
Reporte de pruebas
PSP0
Proceso actual
Mediciones bsicas
Presenta la disciplina del
proceso y medicin
Presenta la estimacin y
planeacin
Presenta la administracin
de la calidad y diseo.
PSP0.1
Estndar de cdigo
Mejora del proceso
Medicin del tamao
PSP1.1
Planeacin de tareas
Planeacin de calendario
PSP2.1
Diseo de plantillas
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor28 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 28
Evidencia de aprendizaje. PSP0
Como pudiste darte cuenta el PSP0 es un proceso con mediciones bsicas, para lo cual
se utilizan formas en las que se registran tiempos y defectos. A continuacin realizars
esta actividad y podrs analizar cmo se llenan los formatos y para qu se utiliza la
informacin que se genera.
Propsito:
Analizar en base a un programa desarrollado, la manera en que se implementa el PSP 0,
utilizando diversas formas para el registro de tiempos y defectos.
Instrucciones:
A. De manera individual analiza los datos mostrados en el archivo adjunto Material de
apoyo para la evidencia de aprendizaje, correspondientes al llenado de formatos PSP0.
B. Analiza y subraya la respuesta correcta en las siguientes preguntas:
1. En qu unidad estn llenados los tiempos en la hoja de registro de tiempos?
a) Horas b) Minutos c) Segundos d) Das
2. Cunto tiempo dedic Alfonso para disear su programa?
a) 64 minutos b) 43 Horas c) 43 Minutos d) 113 Minutos
3. Cuntos defectos tuvo Alfonso despus del desarrollo de su programa?
a) Ninguno b) 1 Defecto c) 2 Defectos d) 3 Defectos
4. En qu fase insert defectos Alfonso?
a) Compilacin b) Pruebas c) Diseo d) Ninguna
5. Cunto tiempo estim Alfonso para el desarrollo de su programa?
a) 90 Minutos b) 113 Minutos c) 43 Horas d) 43 Minutos
6. En qu lenguaje program Alfonso su programa?
a) C++ b) Java c) Pascal d) Fortran
7. Cunto tiempo invirti Alfonso en corregir el defecto que insert?
a) 5 Minutos b) 5 horas c) 1 Minutos d) 10 Minutos
8. Cunto tiempo le tom a Alfonso desarrollar su programa?
a) 90 Minutos b) 113 Minutos c) 43 Horas d) 43 Minutos
9. Cuantos defectos removi Alfonso?
a) Ninguno b) 1 Defecto c) 2 Defectos d) 3 Defectos
10. Cunto tiempo tard Alfonso en codificar su programa?
a) 90 Minutos b) 64 Horas c) 113 Minutos d) 64 Minutos
C. En un archivo de texto copia las preguntas con las respuestas que subrayaste y
guarda el archivo con el nombre DMDS_U1_EA_XXYZ. Sustituye las XX por las dos
primeras letras del primer nombre, la Y por la inicial del apellido paterno y la Z por la inicial
del apellido materno. D. Enva el archivo a tu Facilitador(a).E. Espera la retroalimentacin
que tu profesor te enviar.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor29 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 29
Cuando el ingeniero de desarrollo o programador registra sus tiempos y defectos deber
tomar en cuenta que esto es un proceso personal, que no tiene por qu afectarse con los
tiempos de otros desarrolladores, por lo cual deber esforzarse en hacer un registro
honesto para entender y mejorar su proceso personal de desarrollo.
Autorreflexiones
Adems de contestar y enviar la Evidencia de aprendizaje, es importante que ingreses al
foro Preguntas de Autorreflexin y consultes las preguntas que tu Facilitador(a) presente,
a partir de ellas, debes elaborar tu Autorreflexin en un archivo de texto llamado
DMDS_U1_ATR_XXYZ. Posteriormente enva tu archivo mediante la herramienta
Autorreflexiones.
Cierre de la unidad
Fue una unidad llena de nuevos conocimientos, para que adquieras habilidades que te
ayudarn a tener una mejor formacin como ingeniero de software. Revisaste desde los
antecedentes del PSP y metodologas con las que se relaciona como TSP y CMMI, hasta
el primer proceso PSP0 y todos los formatos en los que se apoya. Hemos visto que datos
debemos registrar y cmo hacerlo. Tambin revisamos cmo se debe evolucionar en el
conocimiento de los procesos PSP.
En las siguientes unidades podrs poner en prctica los conocimientos de esta unidad
ms los nuevos que tienen que ver con los siguientes procesos del PSP.
Para saber ms
Si deseas saber acerca de PSP, TSP o CMMI puedes consultar la siguiente direccin
electrnica:
http://www.sei.cmu.edu/
Es el sitio oficial de la empresa que comercializa estos modelos. Encontrars: novedades,
productos y servicios, libros, videos, artculos, etc.
Fuentes de consulta
Humphrey, W. (1995) A discipline for software engineering (The complete PSP Book)
United States of America: Addison Wesley.
Humphrey, W. (2005) PSP a Self-improvement process for software engineers. United
States of America: Addison Wesley.
-
Mtricas de desarrollo de software Unidad 1. Mtricas de Desarrollo de Software (PSP)
Ejecutas el editor30 Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 30
Humphrey, W. (2006). TSP (SM) Leading a Development Team. United States of
America: Addison-Wesley.
Zapata, J., Garca, J., Cerrada, J. (2001) Introduccin al proceso software personalSM.
Madrid, Espaa: Addison Wesley.
Bibliografa complementaria
Alvarado, A. (2008) Desarrollo de sistemas con PSP y TSP. Mxico, D.F. Disponible
en: http://148.206.53.231/UAMI14384.pdf
Barbieri, S. Bianchi, A. Rossi, G. (2007) Framework de mejora de procesos de
desarrollo de software. La plata, Argentina. Disponible en:
http://sedici.unlp.edu.ar/bitstream/handle/10915/4075/Documento_completo.pdf?seque
nce=1
Chrissis, M.B., Konrad, M., Shrum, S. (2009).CMMI: Gua para la integracin de
procesos y la mejora de productos. (Segunda edicin). Madrid, Espaa. Disponible en:
http://www.sei.cmu.edu/library/assets/cmmi-dev-v12-spanish.pdf
Echeverra, C.M., Echeverra, C.D. Asencio, J.L. (2006). Implementacin De Un
Sistema Integrado De Control De Costos De Produccin, rdenes De Trabajo,
Presupuesto De Obras, Bodega Y Control De Inventario Utilizando Psp (Personal
Software Process) Y Tsp(Team Software Process). Guayaquil, Ecuador. Disponible
en: http://www.dspace.espol.edu.ec/handle/123456789/5006
Garca, Y. (2010) Proceso de Software Personal. EcuRed (Enciclopedia colaborativa
en la red cubana). Cuba, Disponible en:
http://www.ecured.cu/index.php/Proceso_de_Software_Personal