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.