Sistema de
Producción
Sector de Desarrollo de Software
Un proyecto software se define como un conjunto de
"tareas". Así la "tasa de desarrollo de software" -SDVRT-
es una función del "esfuerzo diario para el desarrollo de software
-DMPSDV, de la productividad -SDVPRD- y de las "nuevas tareas percibidas
restantes" -TSKPRM-.
La asignación de recursos para el desarrollo de software continúa
hasta que se percibe que la mayoría de las tareas de desarrollo de software
están terminadas; inmediatamente después comienza la fase de pruebas mediate la
variable "fracción de esfuerzo para pruebas del sistema" -FREFTS-.
FREFTS está a cero inicialmente, para ponerse a 1 cuando todo el desarrollo
está terminado. La transición, sin embargo, no es abrupta puesto que puede
haber solapamiento, y esto lo recoge el multiplicador de la figura 7.2. Se ve
un incremento gradual en FREFTS a medida que la "fracción de tareas de
desarrollo percibidas restantes" disminuye (TSKPRM/PJBSZ).
Productividad en el Desarrollo de Software.
La productividad real -SDVPRD- es la "productividad
potencial" -POTPRD- menos las pérdidas por procesos fallidos -MPDMCL-.
Productividad potencial
La "productividad potencial nominal" representa
el máximo nivel de productividad de desarrollo de software para una persona (en
tareas-día). La "productividad potenciao nominal media" -ANPPRD- es
la ponderación de las productividades nominales potenciales de los dos tipos de
personal del proyecto (NPWPEX y NPWPNE), experimentados y nuevos. Para los
segundos se asume una reducción del 50% (NPWPNE = 0.5).
Así la "productividad potencial" -POTPRD- es
POTPRD = ANPPRD · MPPTPD
donde MPPTPD es el
"multiplicador a la productividad potencial debido al aprendizaje".
Esta mejora por aprendizaje a medida que avanza el proyecto se representa por
la función en forma de S, de manera que al final del proyecto se obtiene un 25%
más de rendimiento.
Productividad real.
La SDVPRD es el producto de POTPRD por el
"multiplicador a la productividad debido a las pérdidas por motivación y
comunicación" -MPDMCL-, que representa la fracción productiva media de una
persona-día (Ejemplo: si de una jornada de 8 horas se pierden 4, MPDMCL toma el
valor 0.5).
Impacto de la motivación en la productividad real.
En ausencia de presiones de plazo la "fracción
nominal de una persona-día en un proyecto" -NFMDPJ- representa las
horas-día que una persona dedica al proyecto (se supone un valor inicial de
60%, NFMDPJ =0.6).
Los efectos de la presión de plazo en la motivación
alteran la "fracción real de una
persona-día en el proyecto" -AFMDPJ-. AFMDPJ toma inicialmente el valor nominal
NFMDPJ (un 60%).
Dos factores principales concurren en la modificación de
AFMDPJ: el primero es la "carencia percibida en personas-día", y el
segundo la "máxima carencia en personas-día que pueden ser
absorbidas" -MAXSHR-, que es el límite. Si la "carencia percibida"
es mayor que el máximo que los empleados están dispuestos a trabajar, se asume
que se absorbe ese máximo y además se gestiona el alargamiento del plazo.
A medida que los empleados trabajan más, su tolerancia
trabajar más disminuye, y así lo hará MAXSHR. El valor de MAXSHR se determina a
través del producto de tres variables: el "límite de la duración de la sobrecarga"
-OVWDTH-, el "personal equivalente a tiempo completo" -FTEQWF- y el
"máximo empuje en personas-hora" -MAXMHR. Por ejemplo, si 10 personas
a tiempo completo están dispuestas a trabajar a un ritmo superior durante 10
días y pueden aumentar su tasa de trabajo un 100% (9.6 horas en vez de 4.8)
entonces se pueden absorber 10· 10 · 1 = 100 personas-día. En el modelo MAXMHR
es un 100%.
El valor nominal
de OVWDTH se establece en 50 días. Una vez que el personal comienza a trabajar
más, OVWDTH disminuye debajo de su valor nominal. Para expresar que cuanto más
se trabaje mayor es la disminución de OVWDTH, se formula el "multiplicador
al límite de duración de la sobrecarga de trabajo debido al agotamiento"
-MODTEX. "Agotamiento" -EXHLEV- refleja el nivel de cansancio debido
al exceso de trabajo. La "tasa de incremento del agotamiento"
-RIEXHL- es una función como la de la figura 7.5. RIEXHL es cero cuando se está
trabajando a un ritmo normal (AFMDPJ < NFMDPJ). La tasa de
agotamiento es realmente función de 1 - AFMDPJ, puesto que 1 - NFMDPJ es
constante, y 1 - AFMDPJ es una medida del "tiempo libre". Así, la
tasa de agotamiento es función de la compresión del tiempo libre. Cuando el
valor de 1 - AFMDPJ se aproxima a cero y se hace negativo, el personal sufre
además un cansancio "fisiológico", y por eso la curva crece más
rápido para valores negativos de X.
Los efectos del agotamiento en OVWDTH se realizan a
través de MODTEX. Se había situado el valor nominal de OVWDTH en 50 días, no
obstante ese valor se considera cuando AFMDPJ es aproximadamente 1, con lo que
RIEXHL es 1 y, entonces, a los 50 días OVWDTH bajará a cero. El "nivel
máximo de agotamiento tolerable" -MXEXHT- (50 días) se puede alcanzar
antes si el personal trabaja más (AFMDPJ > 1) (ver figura).
Una vez que se acaba el periodo de sobrecarga, bien
porque se ha alcanzado el límite o porque cesa la presión de plazo, y AFMDPJ =
NFMDPJ, se vacía el nivel de agotamiento EXHLEV. La "tasa de vaciado del
nivel de agotamiento" -RDEXHL- se modela como un retraso exponencial de
primer orden, con un tiempo de retraso de 4 semanas.
Durante el periodo de recuperación, el personal no desea
estar sobrecargado, y esto se representa en el modelo a través de la variable
"predisposición a la sobrecarga de trabajo" -WTOVWK-, que toma los
valores 0 ó 1, y aparece como factor en MAXSHR. Siempre que OVWDTH pasa a cero,
también lo hace WTOVWK. Esta última variable permanece a cero hasta que EXHLEV
se vacía. Y mientras WTOVWK sea cero, MAXSHR será cero. Una vez que EXHLEV se
ha vaciado WTOWK pasa a 1 y el personal estará disponible a la sobrecarga
cuando aparezca la necesidad.
Empuje
a la tasa de trabajo.
La determinación de OVWDTH era necesaria para determinar
MAXMHR, y ésta lo es para determinar el empuje a AFMDPJ. Cuando se está fuera
de plazo se trabaja lo necesario hasta conseguir el mínimo entre la
"carencia percibida en personas-día" -PMDSHR- o MAXSHR. El menor
valor entre estos dos constituye las "personas-día absorbidas -MDHDL. El
"porcentaje de empuje deseado en la tasa de trabajo" -PBWKRS- para
gestionar MDHDL es igual al cociente entre MDHDL y el producto FTEQWF por OVWDTH.
Por ejemplo, si hay que tratar 100 personas-día por un grupo de 10 personas en
50 días, PBWKRS será 100 · ( 10 · 50) = 0.2. Esto es, incrementando la tasa de
trabajo un 20% se puede conseguir ese trabajo extra. Ese trabajo retrasado se
extiende hasta el límite definido por OVWDTH. Esto es una buena aproximación en
los casos en que MDHDL está cercano a MAXSHR, puesto que si MDHDL<<MAXSHR
se podría resolver "de un solo golpe". El tiempo de retraso para
conseguir el objetivo de PBWKRS en AFMDPJ es de unas 2 semanas.
Hasta ahora se ha hablado de las presiones de plazo
positivas, pero ocasionalmente puede ocurrir que se perciba un adelanto sobre
la fecha de terminación. Entonces el comportamiento es similar a lo anterior:
algunos excesos se absorben, pero en demasía conducen a un acortamiento de los
plazos.
En la figura 7.7 la línea de trazos de 45 grados
representa el hecho de que cualquier exceso de tiempo se traduce inmediatamente
en acortamientos del plazo. La línea curva muestra un comportamiento más
realista. En la parte superior los excesos son suaves y TMDPSN es ligeramente
inferior a MDRM, lo que indica que todos los excesos se absorben, es decir, en
los informes se indicará que el proyecto está en el plazo (no está adelantado).
A medida que esos excesos se hacen mayores, serán absorbidos sólo parcialmente,
y entonces se producirán recortes al plazo.
Esos excesos absorbidos implican un menor valor de
AFMDPJ, que se consigue ajustando con un valor negativo la variable PBWKRS.
Pero la tasa de trabajo no cae "en picado", sino que los trabajadores
ajustan su forma de trabajo para tener un ambiente más confortable.
El retraso en ajustar el "porcentaje de caída en la
tasa de trabajo deseada" es de 7.5 días (25% menos que en el caso
positivo).
Impacto
de la Comunicación en la Productividad Real.
La sobrecarga de comunicación es la caída media en la
productividad del grupo sobre su productividad nominal debido a la comunicación
del grupo, incluyendo la comunicación verbal, documentación y otros. Se supone
que se incrementa a razón de n2,
siendo n el tamaño del grupo. Esta relación se muestra en la figura 7.8, donde
para n=30, COMMOH es un 50%. Si AFMDPJ es 0.6 (4.8 horas), 2.4 (50%) se pierden
por comunicación. Esto es MPDMCL = 0.6 · 0.5 = 0.3, lo que indica que SDVPRD es
el 30% de POTPRD.