Case Studies
Quality Score Case
Weighted Decisions
A small quality check can combine measurements into a weighted score and classify the result.
Program
Play the program to choose a defect count and see the resulting score and label.
quality_score_case.f90
Replay: real traced execution (multi-file project)
program quality_score_case_demo
implicit none
integer :: defect_count
integer :: coverage_score
integer :: score
character(len=8) :: label
defect_count = 2
coverage_score = 90
score = coverage_score - defect_count * 12
if (score >= 80) then
label = 'ship'
else
label = 'review'
end if
print '(I0, 1X, A)', score, trim(label)
end program quality_score_case_demo
program quality_score_case_demo
implicit none
integer :: defect_count
integer :: coverage_score
integer :: score
character(len=8) :: label
defect_count = 0
coverage_score = 90
score = coverage_score - defect_count * 12
if (score >= 80) then
label = 'ship'
else
label = 'review'
end if
print '(I0, 1X, A)', score, trim(label)
end program quality_score_case_demo
program quality_score_case_demo
implicit none
integer :: defect_count
integer :: coverage_score
integer :: score
character(len=8) :: label
defect_count = 5
coverage_score = 90
score = coverage_score - defect_count * 12
if (score >= 80) then
label = 'ship'
else
label = 'review'
end if
print '(I0, 1X, A)', score, trim(label)
end program quality_score_case_demo
defect_count ← 2
8defect_count = 29coverage_score = 90values this step2defect_countcoverage_score ← 90
8defect_count = 29coverage_score = 9010score = coverage_score - defect_count * 12values this step90coverage_scorescore ← 66
9coverage_score = 9010score = coverage_score - defect_count * 1211if (score >= 80) thenvalues this step66score90coverage_score2defect_countif (score >= 80) then
10score = coverage_score - defect_count * 1211if (score >= 80) then12 label = 'ship'values this step.false.score >= 80label ← review
13else14 label = 'review'15end ifvalues this stepreviewlabelprint '(I0, 1X, A)', score, trim(label)
15 end if16 print '(I0, 1X, A)', score, trim(label)17end program quality_score_case_demooutput66 reviewvalues this step66scorereviewlabel
defect_count ← 0
8defect_count = 09coverage_score = 90values this step0defect_countcoverage_score ← 90
8defect_count = 09coverage_score = 9010score = coverage_score - defect_count * 12values this step90coverage_scorescore ← 90
9coverage_score = 9010score = coverage_score - defect_count * 1211if (score >= 80) thenvalues this step90score90coverage_score0defect_countif (score >= 80) then
10score = coverage_score - defect_count * 1211if (score >= 80) then12 label = 'ship'values this step.true.score >= 80label ← ship
11if (score >= 80) then12 label = 'ship'13elsevalues this stepshiplabelprint '(I0, 1X, A)', score, trim(label)
15 end if16 print '(I0, 1X, A)', score, trim(label)17end program quality_score_case_demooutput90 shipvalues this step90scoreshiplabel
defect_count ← 5
8defect_count = 59coverage_score = 90values this step5defect_countcoverage_score ← 90
8defect_count = 59coverage_score = 9010score = coverage_score - defect_count * 12values this step90coverage_scorescore ← 30
9coverage_score = 9010score = coverage_score - defect_count * 1211if (score >= 80) thenvalues this step30score90coverage_score5defect_countif (score >= 80) then
10score = coverage_score - defect_count * 1211if (score >= 80) then12 label = 'ship'values this step.false.score >= 80label ← review
13else14 label = 'review'15end ifvalues this stepreviewlabelprint '(I0, 1X, A)', score, trim(label)
15 end if16 print '(I0, 1X, A)', score, trim(label)17end program quality_score_case_demooutput30 reviewvalues this step30scorereviewlabel
weighted score
The score combines coverage with a defect penalty.
decision threshold
`score >= 80` chooses the shipping label.
case study
The example composes arithmetic, branching, and formatted output.