Programming Assignment 1
CSC 323 - Data Analysis and Statistical
Software
Due: 4/27/2004
The new director of software development at a large local company has decided to investigate software quality. The director is particularly interested in the C++ portfolio. She decides to assess quality by analyzing several quality characteristics for each program in a randomly selected sample of programs taken from the portfolio. The CIO is prepared to support and fund a quality assurance program if software quality is unacceptably low.
The director has recruited you to help with data analysis. You have been asked to analyze failure rate. The director explains that failure rate is the number of failures per unit of time. Failure rate is a well known quality measure that is appropriate for this software portfolio.
The following details are available
for each program in the sample:
- Program Name; 1-6
- Cyclomatic Complexity; 7-8
- Size (LOC); 9-12
- Adjusted Function Pts; 13-14
- Execution Time (Hours); 15-17
- Number of Failures; 18-20
You have been asked to help with the analysis of
this data.
The requirements for your analysis
are detailed below:
- Write a SAS program to analyze these data. In
particular your program should analyze failure rate. (50%)
Your program should accomplish the following:
- Access your data from an external
file.
- Compute failure rate.
Note: You will need an assignment statement in your data step.
If necessary, see "DATA step statements",
point 6, SAS Review.
- Execute the PRINT and MEANS
procedures with appropriate options.
- For PROC PRINT, be sure to use your defined
labels as column headings.
That is, use the label statement to
define "Execution Time", "Number of
Failures",
"Program Name",
"Size", "Function Points",
"Cyclomatic Complexity", and "Failure Rate"
as labels and then make sure that these labels are printed as column headings.
Also, generate an appropriate
title for your output.
Note: If necessary,
use this SAS program as a template to get strated.
Write a short report (no more than a couple of
paragraphs) discussing your findings. (50%)
Your report should
address the
following:
- Provide estimates of
the population mean
and population standard deviation
to 5 places of decimal
(i.e. the mean
failure rate, and
the standard
deviation of failure rate for the portfolio).
- The CIO has asked you to address the following
in your report (include all
necessary computations and diagrams to support your answer):
- Program pjprsuit is considered to be problematic by several staff
members. That is, they contend that it fails more frequently than the
average program in the portfolio.
Program pjprsuit
has failed 19 times in 320 hours of execution.
Determine
its percentile rank with respect to failure rate and comment on this
viewpoint.
- Determine the failure rate
that distinguishes the least reliable
programs from others in the portfolio.
Note that the CIO considers least reliable to
be the worst 12% of the portfolio.
Remember that the
least reliable programs are those that fail most frequently.
Note:
To
address these questions,
assume that failure rate is
normally distributed. Also,
use your estimates of the relevant population
parameters.