nN7@@?Time?+?`@Y?@$??@@D@T?ə@@@4@*@.@?6C-???PbMA.@@?333333?333333@I@"@*@N@@@333333?@3?陙@?QR?zG{?333333??Q?zG?p =q?333333@B@??zG{??홙?Cf?o!-w1?{?*ZFsC?QDl$ tX(pT hL0hL0\8 hD |T0 |`D( lD(xX< `D( tP,hD |X< lH,pL(|X<0|d@, |`T8lX4xhL0 dH$t\8xT8hD(hD dH,dL0hL0 |d@$pH$ `@ (      d L $      | X D ,     | l L 4      |tP8    |X@$ pc @4?@4@{@4@4@4????todayTIME {work-days}s (?/??/@R5?/?/?/????pW@)?&New_Workforce{wfnew} 0 {people}#%#New workforce (people)?pw?;\?Q)H???PE-J?1ʚ%?y^'? f%?݋!G??p"?_]?Ry?= D?^;Z?{z/3?A٩? W?YP(j?ݴ]m?_!?boh?\8?)kI?P*7?7iWZ?;O?܄M?~t?R,I?-;?a2Q?ɪcP?/s 1)(@7I6+>@(dO@9?@7I6+>@(dO@9@!b @(dO@9@7I6+>@(dO@9@7I6+>@7I6+>????x8ZI)@4OV?&Experienced_Workforce{wfexp} team_size_at_beginning_of_design {people}"(%'"'Experienced workforce (people)@4OV@(~Z@ŗ@@ .@CmF@O sI@q'@'4h@t=+@Ek@(dO@9@@H62@ aK@&7@+ʨex@1R⏵@7I6+>c <*|?ҌpW@??ҌpW@?N?ҌpW@t?ҌpW@?ҌpW@*x???)?&daily_mp_for_training{dmptrn} New_Workforce*trainers_per_new_hiree {man-days/day}0 Daily manpower for training (man-days/day)p?ZV1,?/4?ܰt?.y?t?N"?sJ?8a ?ro#8?5?xh?mї?E֒?5?%i?$?p?]?ި5U.?o?Ʋ?ǕiX?u8~?Py?(s?SɒIJ?Y1i?̘ B?a-t?&b?eY~?ϥ%uX?/{?ЋГ+q?6??7 ?sSLC;?= }v?^w[?I*F?K%?iɺ?6 j?z[$@?љ??n3!C?>Wu?X)V?U?w?-HZ?Sty?&G揻?i-{z? Ѝ?+t=X?uɺm2?JH? ya/Pc 4@D@D?@D@D@D@D@D@D@D@D???@D?&hiring_delay{hiredy} 40 {days}Hiring delay (days)c ;6@7I6+>@(dO@9?@7I6+>@(dO@9@!b @(dO@9@7I6+>@(dO@9@7I6+>@7I6+>1???@4OV?&fte_exp_workforce{ftexwf} Experienced_Workforce*avg_daily_mp_per_staff {men}  Full-time-equivalent experienced work force (men)c7???????????*?????Yavg_daily_mp_per_staff{admpps} 1 {day/day}/#Average daily manpower per staff (day/day)c D:@(Sm@@'K;p+?@(Sm@@'K;p+@:@'K;p+@(Sm@@'K;p+@(Sm@@(Sm@???@'"{?&ceiling_on_new_hirees{celnwh} fte_exp_workforce*most_new_hirees_per_ft_exp_staff {men}!(! Ceiling on new hirees (men)c <|@@?@@@@@@@@/x???@?&most_new_hirees_per_ft_exp_staff{mnhpxs} 3 {men/men} Most new hirees per experienced staff (men/men)f p?lhd>`?x8ZI?xv??Q?x8ZI?xv??Q?x8ZI?xv?x 4?x8ZI,\????x1!&quit_rate{quitrt} Experienced_Workforce/avg_employment_time {people/day})) Experienced employees quit rate (people/day)fT9P<84@0?,,???&newly_hired_transfer_rate{newtrr} MIN(transfer_rate,New_Workforce/DT) {people/day}' New employees transfer rate out (people/day)c $ B@$@$?@$@$@$@$@$@$@$@$(???@$?&transfer_delay{trnsdy} 10 {days}Time delay to transfer people out (days)c  4E@Nol@4OV?@Nol@4OV@%Bo@4OV@Nol@4OV@Nol@Nol???)@4OV?&total_workforce{totwf} New_Workforce+Experienced_Workforce {people}&/ Total workforce level (people)@4OV@v̝Q@E!ʾ@t1H@^W@yX@4Ly@+mf@W{l@hhV@hF@L@d0@.yuU@X,* @L^:@ =N@\@?L[@!#@H&@o^n@g[@b @}֐@f@*d#@Na@rp7@Ⲛ^@Q@ۦ,@;Ai8@&@A@b[@ֱ@1'@a, @:@Nolc 1H@&$@h:y{$?@&$@h:y{$@&$@&$@h:y{$@h:y{$@h:y{$???)@&$?&workforce_gap{wfgap} workforce_sought-total_workforce {people}*%*% Workforce gap (people)@&$@{+u@* s@[@O (^@<0!@ eqb@ Q@ V}@ @@ Zv(@ wFy@ .Ҡ@ Ab@ O{@ Z&t@ w.l@ (  @ Ng @ I52@ ub|@ >Z @ [|($@ D1p@ XP@a@@c\@J@ _V@@B@[|@!9#p@蒑B@ 3@wxYX@@M@ vQL@<)l@Zp@h:y{$fv_L ?0???)&experienced_transfer_rate{exptrr} MIN(Experienced_Workforce/DT, transfer_rate-newly_hired_transfer_rate) {people/day}# # Experienced employees transfer rate (people/day)c=Q@07I6+>@/(dO@9?@07I6+>@/(dO@9@Ab @/(dO@9@07I6+>@/(dO@9@07I6+>@07I6+>#???@/4OV?&ceiling_on_total_workforce{celtwf} ceiling_on_new_hirees+Experienced_Workforce {people} *  Ceiling on total workforce (people)c |Sx@@?@@@@@@@@t???@?&avg_employment_time{avempt} 673 {days}" Average employment time (days)clHhd`V\@ \@-,?@ \@-,@'Y9@-,@ \@-,@ \@ \X???@-,?&workforce_sought{wfs} MIN(ceiling_on_total_workforce,workforce_level_needed) {people}(&(Workforce sought (people)s $PLHD[@?@I???@I??0O?Ɍ$?@I?(?@I?@I;,???)??YPerceived_Rework_MP_Needed_Per_Error{prwmpe} 0.5 {man-days/error}3yPerceived rework manpower needed per error (man-days/error)$??Ѿa,,??V2zG? ¿?㴦|P<&?333333?333333?333333?333333B????333333?Yplanned_fraction_of_mp_for_qa{pfmpqa} if (use_inspections = 1 and total_tasks_under_inspection > 50) then 0.20 else if (use_inspections=1 and total_tasks_under_inspection > 5) then 0.15 else if (use_inspections = 1) then 0.0 else table_pfmpqa*(1+quality_objective/100) {dimensionless}<^-<^  '<^'< '   Planned fraction of manpower for quality assurance (dimensionless)c ] ?3%BG.?3%NN??3%BG.?3%NN?3%BG.>P<&?3%BG.?3%NN?3%NN?3%NNA????3%BG.?Yactual_fraction_of_mp_for_qa{afmpqa} if (use_inspections = 1) then planned_fraction_of_mp_for_qa else planned_fraction_of_mp_for_qa* (1+adjustment_in_planned_mp_for_qa) {dimensionless}<,.<, ,  Actual fraction of manpower for quality assurance (dimensionless)c|^?jͧ)?f??jͧ)?f?Z{V>?jͧ)?f?jͧ)?jͧ)=???)?f?Ydaily_mp_for_qa{dmpqa} MIN((actual_fraction_of_mp_for_qa*total_daily_mp), 0.9*daily_mp_available_after_training_overhead) {man-days/day}-/01Z=-/ 0 Daily manpower allocated for quality assurance (man-days/day)?f?Nc??!>?>?-A+?d11? RD?Rvl?.r9?8.^?kń/gY?-H?O/?DEt?4h*e?e9N??zq?/f)?$ }?R`7?;>:z?筘$F?y= ??2U#:?^BFF?As?0Zڌ?#uC??0?Yt.Q?M.U?驨^u?H?) g?󯀀?Dr ?jͧ)c>`@Nol@4OV?@Nol@4OV@%Bo@4OV@Nol@4OV@Nol@Nol#???@4OV?Ytotal_daily_mp{totdmp} total_workforce*avg_daily_mp_per_staff {man-days/day}%0.% Total daily manpower (man-days/day)c*<a@Mc@4OV?@Mc@4OV@$Qnd@4OV@Mc@4OV@Mc@Mc6???@4OV?Ydaily_mp_available_after_training_overhead{dmpatr} total_daily_mp-daily_mp_for_training {man-days/day}/.1/ Daily manpower available after training (man-days/day)cV|bx@@  Ե?@@  Ե@")^@  Ե@@  Եp@@5t???)@  Ե?Ydaily_mp_for_sw_production{dmpswp} daily_mp_available_after_training_overhead- daily_mp_for_qa {man-days/day}0.320. Daily manpower for software production (man-days/day)l@  Ե@ E ^gu"@ @ tڠ@ 8@ 3N@ n$e-@ N@ _`\Q@ ;Mf@ R@ vYrs|@ Ǡ@ UO@/(#)@eOc@"@ϓ,S;@ a=@83{@k @MSy@ѿv9r@G_N}@R]@3N@L'yLG@dp^D@|G@_ @.@{>MLU@ں\@S02@O@DC@5ط@K2@b OE@w(Kb?@cdU`\XcT@ Ql@  Ե?@ Ql@  Ե@!rYȶ @  Ե@ Ql@  Ե@ Ql@ Ql5P???@  Ե?Ydaily_mp_for_dev\test{dmpdvt} daily_mp_for_sw_production- daily_mp_allocation_for_rework {man-days/day}1313 Daily manpower for development/testing (man-days/day)c#HD@<d8?O&J??O&J@igs?O&J?O&J?O&J24????Ydaily_mp_allocation_for_rework{dmprw} MIN((desired_error_correction_rate* Perceived_Rework_MP_Needed_Per_Error), daily_mp_for_sw_production) {man-days/day}4+12Tki4+ 1Daily manpower allocated for rework (man-days/day)c :e ?v@78')??v@78')@ f'}?v@78')?v@78')?v@78')*????Ydesired_error_correction_rate{desecr} Detected_Errors/desired_rework_delay {errors/day}Q53Q5 Desired error correction rate (errors/day)cf@.@.?@.@.@.@.@.@.@.@.???@.?Ydesired_rework_delay{desrwd} 15 {days}4Desired rework delay (days)c&x???????????E?????vnominal_potential_productivity_for_exp{npwpex} 1 {task/man-day}8Nominal potential productivity of experienced employee (task/man-day)c&y???????????=?????vnominal_potential_productivity_for_new{npwpne} 0.5 {task/man-day}8Nominal potential productivity of new employee (task/man-day)c "z ??Ɇ0kB???Ɇ0kB??궺>??Ɇ0kB?Ɇ0kB?Ɇ0kB6?????vavg_nominal_potential_productivity{anpprd} fraction_of_wf_exp* nominal_potential_productivity_for_exp+ (1-fraction_of_wf_exp)* nominal_potential_productivity_for_new {tasks/man-day}67:6  7  Average nominal potential productivity (tasks/man-day)c }@$@$?@$@$@$@t7@$@$@$@$(???@$?vnormal_work_rate_adj_delay{nwrady} table_nwrady {days}MNormal work rate adjustment delay (days)cf|xtp??_U???_U?ř?o4??_U?_U?_U&l?????vpotential_productivity{potprd} avg_nominal_potential_productivity* mult_to_potential_prod_due_to_learning {tasks/man-day}8>;8> Potential productivity (tasks/man-day)c!d[`\XT?S3>?l6??S3>?l6?<&)?d~?S3>?l6?l6?l61P????S3>?vsoftware_development_productivity{sdvprd} potential_productivity* mult_to_prod_due_to_motiv_&_comm_losses {tasks/man-day}:=:= Software development productivity (tasks/man-day)cH%D@<8?g8?lrZ?e??g8?lrZ?e?ǫ ?lrZ?e?g8?lrZ?e?g8?g8&4????lrZ?e?vcommunication_overhead{commoh} table_commoh {dimensionless}=Communication overhead (dimensionless)c',]($  ?S3>?iZ:??S3>?iZ:?f ?d\?S3>?iZ:?iZ:?iZ:U????S3>?vmult_to_prod_due_to_motiv_&_comm_losses{mpdmcl} Actual_Fraction_of_Man_Day_on_Project* (1-communication_overhead) {dimensionless}B<;^[uB<  Multiplier to productivity due to motivation and communication losses (dimensionless)c,&%?Vh???Vh????Vh??Vh?VhD?????vmult_to_potential_prod_due_to_learning{mpptpd} table_mpptpd {dimensionless}:Multiplier to potential productivity due to learning (dimensionless)s ?@N{ ???)?vExhaustion{exhlev} 0 {exhaust units}'@A@Exhaustion level (exhaust units)fv ?@b9???vexhaustion_depletion{rdexhl} IF(0>=exhaustion_increase) THEN(Exhaustion/exhaustion_depletion_delay_time) ELSE(0) {exhaust units/day}A?D?A ?D  Rate of depletion in exhaustion level (exhaust units/day)f)?@ni8???vexhaustion_increase{riexhl} table_riexhl {exhaust units/day}(@?(Rate of increase in exhaustion level (exhaust units/day)s%@|xtpl?4D_?333333??4D_?333333?״D>Z?ރ^+[H?4D_?333333d?4D_?4D_7h???)?333333?vActual_Fraction_of_Man_Day_on_Project{afmdpj} nominal_fraction_of_man_days_on_project {dimensionless}I=(CCIActual fraction of a man-day on project (dimensionless)`?333333?3R}?3ptF ?3k0c?3=?39?39?3s<?3x?4\ uY?4#?44]Y?4C8X?4RV?4_[/?4k%Q?4wZq?4B?4U?4b4?47?4d?4N.p?4`?4\=k?4ʦ?4jtڐ?4C?4β;?4Ҽy?4h%?4ټT?4ܽޠv?4p搤?4?46?4R_?42?47?4:Of?4D_bXlTPLH>JyL>o)?>JyL>o)?¸-<#>JyL>o)@>i>o)!D???)>JyLvwork_rate_adjustment_rate{wradjr} (work_rate_sought- Actual_Fraction_of_Man_Day_on_Project)/ work_rate_adjustment_delay {1/day}BMBB M Work rate adjustment rate (1/day)<>JyL>;>ܼ> ECff>|r3>x>{2:&f>f>?E>X>m*b>[33>33>"WL>;>#@3>儤$f><33>e>2>"J>p0>-q> r33> N4뙚>* ?ff>d>Ѻg>)33>b0>ʟz)z>|i ff>Ř?r>O{C>+]i33>Q9]>>ff>i\D>b>i>o)c 40,(@4@4?@4@4@4@4@4@4@4@4&$???@4?vexhaustion_depletion_delay_time{exhddy} 20 {days}@ Exhaustion depletion delay time (days)c@I@I?@I@I@I@I@I@I@I@I,???@I?vmax_tolerable_exhaustion{mxexht} 50 {exhaust units}'Maximum tolerable exhaustion (exhaust units)c)%??????????C?????vmultiplier_to_overwork_duration_threshold{modtex} table_modtex {dimensionless}'G'Effect of exhaustion on overwork duration threshold (dimensionless)ca@I@I?@I@I@I@I@I@I@I"???)@I?voverwork_duration_threshold{ovwdth} nominal_overwork_duration_threshold* multiplier_to_overwork_duration_threshold {days}HFLJm+HF Overwork duration threshold (days)@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@I@Ic#@I@I?@I@I@I@054@I@I@I@I*???@I?vnominal_overwork_duration_threshold{novwdt} table_novwdt {days}&G&Nominal overwork duration threshold (days)c'?333333?333333??333333?333333?333333?333333?333333?333333?333333?3333338????333333?vnominal_fraction_of_man_days_on_project{nfmdpj} 0.6 {dimensionless}B($Nominal fraction of a man-day on project (dimensionless)cr|xtp@q2U @hQSN?@q2U @hQSN@^`)@q2U @hQSN@q2U @q2U ;l???@hQSN?vmax_man_days_shortage_handled{maxshr} (overwork_duration_threshold*fte_workforce* max_boost_in_man_hours)*willingness_to_overwork {man-days}GNKG  N Maximum shortage in man-days that can be handled (man-days)cd`\XT?????@oە+f ??L??4P???)??vman_days_handled{mdhdl} IF(perceived_shortage_in_man_days>=0) THEN(MIN(max_man_days_shortage_handled, perceived_shortage_in_man_days)*overwork_control_switch) ELSE(-man_day_excesses_absorbed*overwork_control_switch) {man-days}JL J  Man-days that will be handled or absorbed (man-days)H?????????????????????????????????????????c !@<840?@|v?7sOR??@|v?7sOR?pQͿΓ,"?@|v?7sOR(?7sOR?7sOR+,???)?@|v?vpercent_boost_in_work_rate_sought{pbwkrs} IF(perceived_shortage_in_man_days>=0) THEN((man_days_handled/(fte_workforce* (overwork_duration_threshold+0.0001)))) ELSE((man_days_handled/(total_man_days_perceived_still_needed -man_days_handled+0.0001))) {percent}KGKG   KK   Percent boost in work rate sought (percent)$?@|v?@Kk1W?@V??MWo??7??-`?>fU?>;f4?>;h?=M_p?=+FDl?=^’.`n?=l)v?<Iԥ?<[ }?=Time_of_Last_Exhaustion_Breakdown+ Time_to_De_Exhaust) THEN(1) ELSE(0) {boolean}$%J$%   Willingness to overwork (0 or 1)?????????????????????????????????????????fP ?`NY??`NY@A[?`NY?Pȵ?`NY"???)QA_rate{qart} if (use_inspections = 1) then follow_up_rate else out {tasks/day}<PVSa<P Quality assurance rate (tasks/day)?{"*??/A?Qtz^?K5M?Ù?%s? %J7*?GWpj?I/Ҡ?k5u?;Tb?qAw?2pb??}K?~2OAh?;w*{?t >? G?֎RY?M?] ?]D!-?9+p?c?LIf? */?LBVQA? 1?oT|?oF?$e?=E?8YX(?kI*c?p ?Pȵ?`NYs @5`_?@5`_@A#A6@5`_@5`_@5`_&???@ HAG)?Potentially_Detectable_Errors{ptdter} 0 {errors}bSUSVPotentially detectable errors (errors)? ӯ@4@ US @{n'@a-@(c@,<@"E@$=o@%5Z@'ɤ&-s@)y5@+0"@,Rݻ@.40IKz@/@0i{@Q@0Os@1̛@2@2wS@2N@3?Ƌ@3yB@3226@4)`=@4hZ@yv9@4q~@4rBU@4Ҳ@5&K oa@5IR@5gOP@5_@5t;_@5$.@50#u@5lY@5ފ )C@5`_s xtplhd@)3Ĥ?@)3Ĥ@J e5@)3Ĥ\@)3Ĥ@)3Ĥ`????V)?Detected_Errors{dtcerr} 0 {errors}4yhSTDetected errors (errors)X?ܛ?8>˷?M ?G@@@[H7@ c@8؞@seA@-@1Knw@A)^@3†%@5c@)i^@u@KF @6 W@S @ g^@!_I0b@!px@"?!q\@"9j'@#gن7@#3@$ Ls@% x,@%95@&U*ob@&@'lѰ @'^@dV@'g@J@(r*c3@(@)RO@)3ĤsPLHD@@i?@i@/8b@i8@i@i6<???)?Reworked_Errors{cmrwed} 0 {errors}TCumulative reworked errors during development (errors)4??+?/у?=Vկ ?xn?A_`?r ?y;J2?9 ?Da9?xf?uZ~? ȩz?I?W&f?t-?}{Y?"fտiq?oM(@u]~i@J?jx@5eC@7\"I%@ OF@ |ݜ7@ zy@ j@A,c@VBtW@HM@һ"@}*m@™ݷ{@Sx`X@3Y@M|~C@j<4@if,($ ?nu??nu@`2?nu?TZ6xε?nu!???error_detection_rate{errdrt} if (use_inspections = 1) then QA_rate * avg_number_of_errors_per_task * percent_of_errors_found_in_insp else MIN(potential_error_detection_rate, Potentially_Detectable_Errors/DT) {errors/day}<Ob\ZPPQ< Ob \ ZP Error detection rate (errors/day)f  ?V??V@l"?V?$M0?V???rework_rate{rwrate} if (use_inspections = 1) then daily_mp_allocation_for_error_rework/ actual_rework_mp_needed_per_error else daily_mp_allocation_for_rework/ actual_rework_mp_needed_per_error {errors/day}<k[3qQR< k[  3[ Rework rate (errors/day)f?@ ] ̗@ ӯ?@ ] ̗@ ӯ@_l>ނf@ ] ̗@ ӯ@ $Lq@ ] ̗"???@ ӯerror_generation_rate{errgrt} software_development_rate*errors_per_task {errors/day}P Error generation rate (errors/day)f@?ic?@?ic@ aܠ@?ic@(y재@?ic???error_escape_rate{errsrt} if (use_inspections = 1) then QA_rate * avg_number_of_errors_per_task * (1 - percent_of_errors_found_in_insp) else QA_rate*avg_number_of_errors_per_task {errors/day}<Ob\joP<Ob \  Ob Error escape rate (errors/day)c @$@$?@$@$@$@$@$@$@$@$*???@$?avg_qa_delay{aqadly} 10 {days}Average delay for quality assurance (days)c !xNtplh??Ӆ???Ӆ??K??Ӆ?Ӆ?Ӆ9d?????nominal_errors_committed_per_task{nerptk} nominal_errors_committed_per_kdsi*dsi_per_task/1000 {errors/task}  Nominal number of errors committed per task (errors/task)c \JXTPL@8m*.i?@8m*.i@8m*.i@8m*.i@3i@3iH????error_density{errdsy} avg_number_of_errors_per_task*1000/ dsi_per_task {errors/kdsi}bb  Error density (errors/KDSI)c@I<840?nu?\Bj??nu?\Bj@`2>?nu?\Bj?nu?nu+,????\Bj?potential_error_detection_rate{perdrt} daily_mp_for_qa/qa_mp_needed_to_detect_an_error {errors/day}.^S.^ Potential error detection rate (errors/day)c !$i ?1oS?)ϝ>??1oS?)ϝ>?8V6? }.?1oS?)ϝ>?0N1?0N11????1oS?actual_rework_mp_needed_per_error{rwmppe} nominal_rework_mp_needed_per_error/ mult_to_prod_due_to_motiv_&_comm_losses {man-days/error}\=hT\= Rework manpower needed per error (man-days/error)c "&?333333?aU??333333?aU?333333?33B[M?333333?aU?aU?aU9????333333?nominal_rework_mp_needed_per_error{nrwmpe} table_nrwmpe {man-days/error}[Nominal rework manpower needed per error (man-days/error)c%?ٙ?ٙ??ٙ?ٙ?ٙ?ə?ٙ?ٙ?ٙ?ٙR????ٙ?nominal_qa_mp_needed_per_error{nqampe} table_nqape {man-days/error}^Nominal quality assurance manpower needed to detect average error (man-days/error)c @@)l!?fP?@@)l!?fP@@)l!?ƻQi^8B@@)l!?fP?/?/J???@@)l!?qa_mp_needed_to_detect_an_error{qampne} nominal_qa_mp_needed_per_error* (1/mult_to_prod_due_to_motiv_&_comm_losses)* multiplier_due_to_error_density {man-days/error}]=Z]=   Quality assurance manpower needed to detect average error (man-days/error)c ?333333?333333??333333?333333?333333?333333?333333?333333?333333?333333????333333?percent_bad_fixes{pbadfx} 0.075 {fraction}qPercent bad fixes (fraction)c 7 |x?pt??????????Rp?????table_fraerr{tfraer} percent_of_job_actually_worked {dimensionless}r??ə?333333?ٙ??333333?ffffff?陙???????ffffff?333333??ə?333333Table function for fraction of escaping errors that will be active (dimensionless)s hd`\X*T@3Z@?@3Z@@//A@3Z@L@3Z@@3Z@P???)?Cumulative_Tasks_QAed{cumtqa} 0 {tasks}ktlOCumulative tasks QA'ed (tasks)H?k"*??xT@ ?Rn?w?%H?3UE?9hx`?ݬNS n?ZG?0%z7?4>^ ?@ R@}@M|QQ@ m!j@lR)@{q@Ab/z@4nŽ@2ach@gB@ )cQY@!w+@#5=չg@$ʺ\)5@&g<@( b\p@)),@4BGy@*=rp@ kU@6מ@ 7[[@g2@΢@󝇥@Ay@z{d@˟p#O:@D4@}e@o@}aT@Jj$@b@}@rP7oO@f˲,@[] u@O΄%}@D0@8m@,A@!9l@-h@ KHD_@[Hq@^7'x@S%6@<,@Jc "(k$ ?_Ⓡ?1Fz??_Ⓡ?1Fz@U:2n>=tS?_Ⓡ?1Fz?_Ⓡ?_Ⓡ2???)?:?projected_development_productivity{pjdprd} tasks_perceived_remaining/ (man_days_perceived_remaining_for_new_tasks+0.1) {tasks/man-day}z}z  Projected development productivity (tasks/man-day) ?:?8s?714W?6 i^?5 Q?4-?3u׆?2 ?2lI<?2?11Xzq?1Fz?1ۂw&?21,1?2J Q?2p%?3/J?3;?4Ф?5]gY 7?6Oٶs?7^*h ?8+[?9ͯŰy?;.F%w?Aʫ*??]@}?A.~=?Cz?E?G͝-Ĩ?J ?LZy?Ns?QQJً?S7>Z?V#%QE?YR|(?\v+#?_Ⓡc "w?V9T??V9T?V9T?V9T?ٚ1?ٚ12???)?perceived_development_productivity{prdprd} Cumulative_Tasks_Developed/ (Cumulative_Man_Days_Expended-Cumulative_Testing_Man_Days) {tasks/man-days}}  Perceived development productivity (tasks/man-day)?V9T? -㨠C?B"Vj?ߴ*c?~ܦ?I (?tGK?#hfQC?ީ8?t@à?@Zg? d~?(p ?ݨ\9?wN%?G(A?Y7?Muvfy?ܺ?܌?_˥Y?3u?d.?X9Ӏk?۴?ۋp?cޝo$?Aʫ*??]@}?A.~=?Cz?E?G͝-Ĩ?J ?LZy?Ns?QQJً?S7>Z?V#%QE?YR|(?\v+#?_Ⓡc V??????????<???)??weight_to_projected_productivity{wtpjdp} multiplier_due_to_development* multiplier_due_to_resources {dimensionless}} Weight to projected development productivity (dimensionless)?????????????????????????????????????????c-Q|x@:*@?@:*@@:*?3fAz@:*@p@@8t???)@:*?man_days_perceived_still_needed_for_new_tasks{mdpnnt} tasks_perceived_remaining/ assumed_develpment_productivity {man-days}}} Man-days perceived still needed for new tasks (man-days)l@:*@w{X@n cS@dׄ@[|@Q#!@HW#@>6)T@40@*Q@ ѻJ@D>=@ B@~͙@5 :b@Z @{1{@}E@։@?@aN@@&ǻ@_@mGaf@~}@r$յ@gE/2@[Zp!@P4X@Dk)T@8+I@-1GP!@!i@`="@ ^@&&@Ă@G}@٣;@c%d`\XT@oUk@XH?@oUk@XH@oUk@-NI@oUk@XHL@XH@XH0P???)@oUk?total_man_days_perceived_still_needed{tmdpsn} man_days_perceived_still_needed_for_new_tasks+ man_days_perceived_still_needed_for_testing+ man_days_perceived_needed_to_rework_detected_errors {man-days}yL y Total man-days perceived still needed (man-days)H@oUk@k[9@gVO|@cD۴ @_'>V@Z8>@VʼG@R.T@N@i@Iꊧ+@E@A2@<@@8&i@3ʡh@/ó]@*dp@% @!V^@FƯG6@~YmF@)@ RS@<@s@T\@p@@05B@ǔ4 @TW@sao@<@v H@еz"@ex@ fI@| @Bo@W#@XHc @P<840?????@p#.i,EEq??(??),???)??perceived_shortage_in_man_days{pmdshr} total_man_days_perceived_still_needed- man_days_remaining {man-days}LK Perceived shortage in man-days (man-days)$?????????????????????????????????????????c G @o"`k8@%m?@o"`k8@%m@o"`k8@3 @o"`k8@%m@%m@%m)???)@o"`k8?man_days_reported_still_needed{mdrptn} man_days_remaining+reported_shortage_in_man_days {man-days} Man-days reported still needed (man-days)@o"`k8@k(@g#IR@cu@^~ "@Z˿ @V@RWP!@N 6Tӳ@IWs@EV}YV@@@2????D?????multiplier_due_to_development{mpwdev} table_mpwdev {dimensionless}~Multiplier to productivity weight due to development (dimensionless)f +?ҌpW@??ҌpW@?N?ҌpW@?:Os?ҌpW@???&training_rate{none} daily_mp_for_training {man-days/day}Training rate (man-days/day)c @f@@?@@@?C]@@@@C???@?Wtable_dajbmd{tdajmd} time_remaining {days}@4?@Table function for delay in adjusting job's size in man-days (days)c &xtpl:h@ 9cN?@ 9cN@Z'V!d@ 9cN`@ 9cN@ 9cN0d???)?percent_development_perceived_complete{pdevrc} SMTH1(MAX((100-((man_days_reported_still_needed- man_days_perceived_still_needed_for_testing)/ (Total_Job_Size_in_Man_Days-Man_Days_for_Testing))*100), Noname_2), reporting_delay,0) {percent},-     ,Percent development perceived complete (percent)\>Ɩ3?u1?+ƱM?spQ?FF |?Pk _?̞qHp?QH?ABG?u?gk?h1(?X@;(9@y@lnʚ@O6@4kH@@ 9cNcT>PLHD?? `??? `??mu}?? `? `? `9@?????&fraction_of_wf_exp{frwfex} Experienced_Workforce/total_workforce {dimensionless}%8% Fraction of workforce that is experienced (dimensionless)c +8S40,>(@}@}~| r?@}@}~| r@=E@-_F@}@}~| r @}@}6$???)@}~| r?man_days_perceived_still_needed_for_testing{mdpnts} tasks_remaining_to_be_tested/ perceived_testing_productivity {man-days}z Man-days perceived still needed for testing (man-days)@}~| r@}~| r@}~| r@}~| r@}~| r@}~"@}~@}~JR@}~y@}~.5 @}~,) @}~]@}~F)C@}~:`@}~۵@}~a@}~<\@}w@}/p@}V<@}|[h@}ts @}5@}7e)@} @}>M:@}2Yܣ@}< 2@}b@}|ݍ8@}j8@}$$%@}`y@}2I@}\8-@} @}ƜgX@}@}WPf@}.(@}cR ?@^_@UUUUUU?@^_@UUUUUU@xԣ@(~LW@^_@UUUUUU@^_@^_$???@UUUUUU?tasks_remaining_to_be_tested{tstprm} Currently_Perceived_Job_Size_in_Tasks- Cumulative_Tasks_Tested {tasks}gg Tasks remaining to be tested (tasks)s i@W߫'?6C-?@W߫'?6C-@Nʬ?6C-@W߫'?6C-@W߫'@W߫''???)?6C-?YCumulative_Man_Days_Expended{cummd} 0.0001 {man-days}|XCumulative man-days expended (man-days)?6C-?͝@DT4@! r@ -@$VL@({@,q׌@0)@2 @4+@7ü@9W<@;#@=k R<@@7A@A@Vf$1w@W02_@W߫'s $A@}~| r@}~| r?@}~| r@}~| r@@2ϩ@}~| r@}~| r@}~| r@}~| r@}~| rG???@}~| r?Man_Days_for_Testing{tsszmd} testing_man_days {man-days}Planned testing size in man-days ... before we start testing (man-days)s B@C:W?@C:W@ @C:W@C:W@C:W"???)?Cumulative_Tasks_Developed{cmtkdv} 0 {tasks}|Cumulative tasks developed (tasks)?s@ ?l@mQ@@S@e@ @鋉>0@!!i@#5vN@%I @'ca@)0f@+]M^e@-y>@/c@0E@1&?+@2>@3ʻI@4k=կ @5| @6nO!MK@7_\;˜@8O{:@9?#7@:/A{@;+3>@< 7J@<I@=(}B@>W' @?*SQ@@WU X@@oܴ&@ACh@AAQ)@B/aWD@Bu@C:WcWC?E0V/?:J??E0V/?:J??9aMX ?E0V/?:J?E0V/?E0V/,????:J?planned_testing_productivity{pltspd} Currently_Perceived_Job_Size_in_Tasks/ Man_Days_for_Testing {tasks/man-day} Planned testing productivity (tasks/man-day)cxX|xDt??,+p????actual_testing_productivity{actspd} Cumulative_Tasks_Tested/ (Cumulative_Testing_Man_Days+0.001) {tasks/man-day}gg  Actual testing productivity (tasks/man-day)s hd`\EX?@-6 P&T???)?Cumulative_Testing_Man_Days{cmtsmd} 0 {man-days}|Cumulative testing man-days (man-days)LfD$@<84@Nol@4OV?@Nol@4OV@%Bo@4OV@Nol@4OV@:@Nol0???@4OVYexpenditure_rate{none} total_daily_mp {man-days/day}//Expenditure rate (man-days/day)c #($ R@I@I?@I@I@I@I@I@I@I@I*???@I?time_to_smooth_testing_productivity{tstspd} 50 {days}Time to smooth testing productivity (days)c i?('?8<4 ??('?8<4 ?9ʈlnπ?('?8<4 ?('?('! ???)?8<4 ?schedule_pressure{schpr} (total_man_days_perceived_still_needed- man_days_remaining)/man_days_remaining {dimensionless}  Schedule pressure (dimensionless)?8<4 ?=Z+?Aq?F?Kё)?P5o?UB0?[&E!?`d:?eq?k< ?p~͸?uV0i?{Uc?'N ?^f?=l?]d9*?9?bH?$&?h&?) r?C/(R?li?=?룃!?BTo@ Ql@  Ե@ Ql@ Ql6???)@  Ե?vdaily_mp_for_software_development{dmpsdv} daily_mp_for_dev\test* (1-fraction_of_effort_for_system_testing) {man-days/day}22  Daily manpower for software development (man-days/day)@  Ե@ E ^gu"@ _ zL@ wՕF[@ Xٷ@ ,e@ [_$1@ ɥ@ 엂w@ ɶ&i@ J`h@ "@ o!@ Ñ@ f5E@ KT_@  @ 7;"@ )`|@ |q@ g$al@ KѠg@ t@ #V:f@ 'HT@ ,v@ 17@ 7/=@ f>cK@Ž`ص@F_@Ӽ@M]s_@Б @S󢂟@r[NV@Y&b@c$o?SdU{??SdU{@X.&?SdU{?SdU{?SdU{8????Wpercent_of_undisc_tasks_disc_per_day{putdpd} table_putdpd {1/day}Percent of undiscovered tasks discovered per day (1/day)c xtpl?1h????Yquality_objective{qo} 0 {dimensionless},Quality objective ... normal QO=0 (dimensionless)c `7\XT PL?H?333333?333333??333333?333333?333333>P<&?333333?333333?333333?333333UD????333333?Ytable_pfmpqa{tpfmqa} percent_of_job_actually_worked {dimensionless},??ə?333333?ٙ??333333?ffffff?陙???333333?333333?333333?333333?333333?333333?333333?333333?333333?333333Table function for planned fraction of manpower for quality assurance (dimensionless)c L$HD@<848<4 ('?8<4 ('8<4 ('('('e0???8<4 ?Ytable_adjqa{tadjqa} schedule_pressure {percent}??ə?333333?ٙ?333333ffffffffffffTable function for percent adjustment in planned fraction of manpower for quality assurance (percent)s ($  @,'3y?@,'3y@w>wc@,'3y@,'3y@,'3y0???)?YCumulative_QA_Man_Days{cmqamd} 0 {man-days}Cumulative quality assurance man-days (man-days)?f?1b^d?zl[?j4}+?g!c8?sT@F0i@q u@s\"B@ (h@ y4Z@h[!E@@/@Kd@8m/@9Τ@~hJs@Ţ7@Z ]@YPB7@A&#@w(@ .+@ U.@!8~"@"Z_y/<@#v;am@# 㕁@$flU@%nῇ@&6ֵ@'Ze[@'&96,@(4dIO@)d>E@*3 @+ @++$@,'3yc @@@@?@@@@@@@@@@@@@@@@???@@? 8real_job_size_in_dsi{rjbdsi} 64000 {DSI}Real job size in DSI (DSI)f % ?jͧ)?f??jͧ)?f?Z{V>?jͧ)?f?Dr ?jͧ)+????fYdaily_qa_rate{none} daily_mp_for_qa {man-days/day}..Daily quality assurance rate (man-days/day)c @@@?@@@@^ߧHf@@@@2???@?table_shadt{tshadt} time_remaining {days}@?@Table function for schedule adjustment time (days)b9c?*6 ?*6??*6 ?*6?m+?*6?*6 ?*6?*6?*6 %????*6 rate_of_adjusting_schedule{none} (indicated_completion_date-Schedule_Completion_Date)/ schedule_adjustment_time {days/day}  Rate of adjusting schedule (days/day)c@@?@@@@^ߧHf@@@@???@?schedule_adjustment_time{schadt} table_shadt {days}Schedule adjustment time (days)cxQtplhAs4As4?As4As4As4As4As4As4As4As4(d???As4?max_tolerable_completion_date{mxtlcd} max_schedule_completion_date_extension* total_development_time {days} Maximum tolerable completion date (days)c \4XTP\@rϟ@qL1퐂?@rϟ@qL1퐂@rϟ@054@rϟ@qL1퐂@qL1퐂@qL1퐂X???@rϟ?time_remaining{timerm} MAX(Schedule_Completion_Date-TIME,0) {days}& Time remaining (days)c P#LHD@?1<????wcwf2{wcwf2} table_wcwf2 {dimensionless}Willingness to change workforce 2 (dimensionless)c4#0,($??????????1 ?????wcwf1{wcwf1} table_wcwf1 {dimensionless}Willingness to change workforce 1 (dimensionless)c ' ??????????5?????willingness_to_change_workforce{wcwf} MAX(wcwf1,wcwf2) {dimensionless}Willingness to change workforce level (dimensionless)c @ \@-,?@ \@-,@'Y9@-,@ \@-,@ \@ \???@-,?workforce_level_needed{wfneed} MIN((willingness_to_change_workforce* indicated_workforce_level+(1-willingness_to_change_workforce)* total_workforce),indicated_workforce_level) {people}%*  %  Workforce level needed (people)cX@ \@-,?@ \@-,@'aйG@-,@ \@-,@ \@ \???@-,?