ithnithmBook@@(IshC_StringPrint_SetupTPrintxxHH@ RHH@d'CdStartupSound_TabLISTBook_Prefs Act  ,,|6List    Scene   2 Drawing_Model   Draw_Specs  JJ!  diagram_struct_arrayDependentsdrmd ScriptPad_List Manuscript TPlay@@|Play_PrefsPP@r?P%2     VD4Model$ Pl`lXlBSubscript_Set_List Subscript_Set~h̋2rArray(1 Dim_Name_1 Simulation_Model Run_Specsjj@r?hgTimeentity_struct_array hentity_struct2r ?@&1`@"3>??? testing_ratetesting_rate'int16_array W+double_arraytoken_type_arraytoken_type   run_handle_array!! run_handle""%%roll-up of testing rate'Draw_Index## Poster_Info$$queue%%Units&&2s  ?@7#I䤺@7#I䤺????manpower_pool0 )9V ! "%%available personnel# $%&2sB?@szA@3????undetected_design_errors0c ! "%%44design errors not detected during design inspection# $%&2s ?@fffff@fffff???? requirements0+.2 ! "%%# $%&2c  @Y@Y@Y?@Y@Y@Y@Y@Y@Y@Y@YO???@Y?@Y learningfraction_donehh?UUUUUU?UUUUUU??UUUUUU?ڪ??⪪?UUUUUU??ꪪ?UUUUUV?hh@Y@Y@Y@Y@Y@Y@Y@Y@Y@Y@Y@Y@Y !PPlearning curve - fraction of maximum productivity as function of job completion# $%&2c@fffff@fffff?@fffff@fffff@fffff@fffff@fffff@fffff@fffff@fffffp???@fffff?@fffff job_size533.3!#-X_   @f ffff! "%%@fffffqqnumber of tasks to be developed at 60 SLOCS/task 33.3 tasks=2 KSLOC, 533.3 tasks=32 KSLOC, 1066.6 tasks=64 KSLOC# $%&2cC?333333?333333??333333?333333?333333?333333?333333?333333?333333?333333w????333333??333333inspection_efficiency.6@B   ?33 3333!xxfraction of defects found during inspections to total defects (.5 - .9 per [Radice-Phillips 88], [Fagan 86] and others)# $%&2c6 ?GP"?GP"??GP"?GP"?GP"?GP"?GP"?GP"?GP"?GP"D????GP"??GP"current_productivity77max_productivity*learning/100/SCED_schedule_constraint#  2J #   d    !EEtasks/person-day modified by learning effect and schedule constraint# $%&2c ??xrْ~?xrْ~/????fraction_donetasks_tested/job_size     ! "%%00fraction of total job completed through testing# $%&2f*?@ sh,??? design_non_inspection_rate++(1-design_inspection_practice)*design_rateg213  g  2  !--non-inspected tasks pass through immediately# $%&2f F ?@&1`@"3>??? testing_rate'GGtesting_manpower_rate*current_productivity/.255/test_effort_adjustment)_E0$ )   / ?Q R  _  !tasks tested per day. Manpower rate(person-days/day)* productivity/fraction of effort for test adjusted for error rate (magnitude and schedule duration)# $%&2s ?@S???? design_errors0 ! "%%errors generated during design# $%&2s ?@w@[ ????  code_errors0>B@ ! "%%!!errors in code before inspection# $%&2s?@GmTsp???? detected_design_errors0 ! "%%# $%&2f ?@-@-???design_error_generation_rate!!design_error_density*design_rateb2   b 2  ! "%%error generation as a co-flow of design error density * design rate 1.5*design rate = 25 design errors / KSLOC 2*design rate = 33 design errors / KSLOC# $%&2fb ?@ B@-_???design_error_escape_rateccdesign_error_density*(design_inspection_rate*(1-inspection_efficiency)+design_non_inspection_rate)b4  $ b 4        ! "%%``rate of errors escaping to coding (errors/day) co-flow with inspections and non-inspection rate# $%&2fA?@!F&X???design_error_detection_rateBBdesign_error_density*design_inspection_rate*inspection_efficiencyb4   b 4    ! "%%YYrate of detecting design errors during inspection (errors/day) slaved to inspection rate# $%&2f" ?@Wvm&:???design_rework_rate##delay(detected_design_errors/10,7) H        ! "%%;;rework follows inspection and completes in about 1.5 weeks# $%&2c)? ? =p ? =p ??'?'? =p ? =p ? =p ? =p `???? =p ?? =p design_staffing_curve**time/(.85*estimated_development_schedule)!???Ɩ???֖?ZZZZZ[????䴴?斖?xxxxxy?ZZZZZ[?<<<<<=??? =p ?\(?˅Q??zG?W}W??堉C0?Ew??\̊??+ J    ( ?33 3333 !   ! "%%? =p aadev time= .74*(2.5*(3.6*(KSLOC^1.2)^.32) from Basic COCOMO [Boehm 81], p. 90 for medium embedded# $%&2Ff<2@W#I䤻@W#I䤻?@W#I䤺@W#I䤺@W#I䤻@W#I䤻@W#I䤻@W#I䤻???@W#I䤻@W#I䤻hiring_and_manpower_allocationSCED_schedule_constraint^2*1.46*pulse((20*calibrated_COCOMO_constant*(.06*job_size)^1.2)/(20*2.5*(calibrated_COCOMO_constant*(.06*job_size)^1.2)^.32),0,99999) ,22    * ?\( \   ,  ( ?Q    ^ ?33 3333    * @   , ( ?Q    ^ ?33 3333   ^ ?z G{     , @i      ! "%%@W#I䤻resource policy for allocating development personnel according to COCOMO estimated manpower levels with appropriate conversions for job size (SLOCS to tasks) and time (months to days). Square of SCED multiplier due to: 1) it indicates extra fraction of personnel required (effort in numerator) and 2) for relative schedules < 1, reciprocal approximates relative schedule shortening (schedule in denominator).# $%&2#fXF????attrition_rateYYif (resource_leveling > 0)then pulse(manpower_pool*(1-resource_leveling),999,999) else 0*H *       *          !manpower level is adjusted by resource leveling, otherwise use simplifying assumption of zero attrition that keeps available personnel constant# $%&2s/?@}Q(????reworked_design_errors0 ! "%%))design errors reworked due to inspection# $%&2c1?QR?QR??QR?QR?QR?QR?QR?QR?QR?QR????QR??QRinspection_effort_per_task.19&   ?Q R!xx man-days per task (2% of deleted Litton rate). Total inspection effort =3%, preparation and meeting is 2/3 and rework is 1/3. .19 represents middle ground on percentage basis# $%&2s2?@YTCa/????cum_code_inspection_effort0 ! "%%00cumulative code inspection effort (person-days)# $%&2f/4??8N???code_inspection_manpower_rate00code_inspection_rate*inspection_effort_per_taskKN  K   ! "%%OOmanpower rate (person-days per day)= rate of code inspection * effort per task# $%&2s"?@Ri:q+????cum_code_rework_effort0 ! "%%,,cumulative code rework effort (person-days)# $%&2f-8??@+.???code_rework_manpower_rate..code_rework_rate*code_rework_effort_per_errorDeN  D e  ! "%%person-days / day# $%&2c9?(\)?(\)??(\)?(\)?(\)?(\)?(\)?(\)?(\)?(\)W????(\)??(\)design_rework_effort_per_error.055H   ?( \)!XX1/3 of total inspection effort (Litton, JPL) .23 days=1.84 hours/error from Litton data# $%&2s=?@W$D@W$D&????cum_design_effort0 ! "%%''cumulative design effort (person-days)# $%&2f#??@4A@4Ab???design_manpower_rate$$manpower_pool*design_staffing_curve2N     ! "%%ccavailable people * planned staffing utilization * resource leveling constraint (person-days / day)# $%&2s ?@@5???? tasks_tested0\ ! "%%66cumulative tasks tested, indicating completion status# $%&2f(;q?@ B@--???))design_error_pass_and_amplification_rate<<design_error_escape_rate*average_design_error_amplification$    $  ! "%%..amplification of design errors to code errors# $%&2cG???????????:????? ?SCED_schedule_constraint1.0!X ! "%%?;;relative schedule constraint effort multiplier from COCOMO# $%&2+cS@q%S@q%S?@q%S@q%S@q%S@q%S@q%S@q%S@q%S@q%S8???@q%S?!@q%Sestimated_development_scheduleTT20*2.5/SCED_schedule_constraint*(calibrated_COCOMO_constant*(.06*job_size)^1.2)^.32 , 7Y[`\  * @     , ( ?Q    ^ ?33 3333   ^ ?z G{   ! "%%@q%S99initial schedule estimate from COCOMO, converted to days# $%&2s?@YThr1????"cum_design_inspection_effort0& ! "%%22cumulative design inspection effort (person-days)# $%&2#c;&?GP"?GP"??GP"?GP"?GP"?GP"?GP"?GP"?GP"?GP"l????GP"?#?GP"max_productivity<<job_size/(20*calibrated_COCOMO_constant*(.06*job_size)^1.2),<   ,  ( ?Q    ^ ?33 3333    ! "%%?GP"mmtasks/person-day (.0262 = 1.62 SLOC/person-day) (.133 = 8 SLOC/person-day) .4138=basic cocomo for 1.8 KSLOC# $%&2c"???????????5?????$?##average_design_error_amplification1c ! "%%?66multiplication factor for design error to code errors# $%&2sR?@{*I @/W(????%errors_fixed_in_test0\E ! "%%))errors detected and fixed during testing# $%&2f1??Ta???& design_inspection_manpower_rate22design_inspection_rate*inspection_effort_per_task4N"  4   ! "%%person-days / day# $%&2sV?@53 @)'????'cum_testing_effort0) ! "%%((cumulative testing effort (person-days)# $%&2cW?nO>manpower_pool*test_staff_curve*test_manpower_level_adjustmentYf N'  Y  f  ! "%%testing, integration, test planning effort + error detection and correction adjusted for error levels magnitude adjusted for schedule scaling# $%&2c?????*resource_leveling0 !fraction of personnel to cut# $%&2AU` ?@ffffg@ffffg#????+development_processVVtasks_ready_for_test + tasks_coded + tasks_for_coding + tasks_designed + requirements 0I31-$ 0 I  3  1    !$$submodel for development activities# $%&2cv@ @ ?@ @ @ @ @ @ @ @ u???@ ?,@ calibrated_COCOMO_constant3.6 !#(X_   @ ! "%%@ vvlinear organizational "productivity" constant in COCOMO effort equation 3.6 = default for Basic COCOMO, embedded mode# $%&2fd@fffff@fffff?@fffff@fffff@fffff@fffff@fffff@fffff???@fffff@-@fffffrequirements_generation_ratePULSE(job_size,0,9999).+   '   !pulse in job size at time=0# $%&2r(@fffff@fffff?@fffff@fffff@fffff@fffff@fffff@fffff)???@fffff.@fffffrequirements_generation_rate'requirements_generation_rate- -!**roll down of requirements generation rate# $%&2s0?@ffffb@ffffb????/cum_tasks_designed0cF ! "%%# $%&2s@?@s@zz|????0tasks_ready_for_test0+QKL  !tasks coded and not yet tested# $%&2sM?@J _/????1tasks_designed0+24  ! "%%00design tasks developed and ready for inspection# $%&2f .P?@ sh@ shy???2 design_rate//design_manpower_rate*current_productivity/.454 4F1    / ?V u  ! "%%zztasks designed per day manpower rate (person-days/day) * overall productivity (tasks/day) / fraction of effort for design# $%&2sZ?@yo.U@|=S$????3tasks_for_coding0+4 J ! "%%design tasks inspected# $%&2f2a?@ sh=???4design_inspection_rate33delay(design_inspection_practice*design_rate,10,0)g2&613  g 2      ! "%%>>design inspections take place 10 days after design completion# $%&2sh?@ffffb!????5cum_design_tasks_inspected06 !""cumulative design tasks inspected# $%&2fk?@ sh???6design_inspection_rate'design_inspection_rate45 4!# $%&2c)???Z@]?Z@]`????7coding_staffing_curve**time/(.85*estimated_development_schedule)!9???Ɩ???֖?ZZZZZ[????䴴?斖?xxxxxy?ZZZZZ[?<<<<<=???wA?j? =p ??놁#?᠉C0?Eou٠    ( ?33 3333 !   ! "%%aadev time= .74*(2.5*(3.6*(KSLOC^1.2)^.32) from Basic COCOMO [Boehm 81], p. 90 for medium embedded# $%&2s?@ n@ n$????8cum_coding_effort09 ! "%%%%cumulative code effort (person-days)# $%&2f#?@7"Q_@7"Q_b???9coding_manpower_rate$$manpower_pool*coding_staffing_curve7JN8   7  ! "%%ccavailable people * planned staffing utilization * resource leveling constraint (person-days / day)# $%&2s?@@????:cum_tasks_coded0; ! "%%# $%&2f ?@$` Ċ@$` Ċ???; coding_rate' coding_rateJ: J!tasks coded per day# $%&2s?@????<cum_code_tasks_inspected0= ! cumulative code tasks inspected# $%&2f?@$` Ċ???=code_inspection_rate'code_inspection_rateK< K!code tasks per day# $%&2f?@.ϐ&@.ϐ&'???>code_error_generation_ratecode_error_density*coding_ratedJ   d J  ! "%%((error production as a co-flow of coding# $%&2s?@jhN@ێVk?????escaped_errors0Q@E ! "%%# $%&2f{ ?@!A |"r@>ϐ&`???@code_error_escape_rate||(code_error_density+design_error_density_in_code)*(code_inspection_rate*(1-inspection_efficiency)+code_non_inspection_rate) dcKL ?, d c  K     L   ! "%%aarate of code errors escaping to test (errors/day) co-flow of inspections and non-inspection rate# $%&2s?@`d|Qc;????Adetected_code_errors0DBD ! "%%<<code errors detected during inspection before rework occurs# $%&2f\?@)ፀ3V???Bcode_error_detection_rate]](code_error_density+design_error_density_in_code)*code_inspection_rate*inspection_efficiencydcK A d c  K    ! "%%WWrate of detecting code errors during inspection (errors/day) slaved to inspection rate# $%&2s?@쟶P&????Creworked_code_errors0D ! "%%