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:

You have been asked to help with the analysis of this data.

The requirements for your analysis are detailed below:

  1. Write a SAS program to analyze these data. In particular your program should analyze failure rate. (50%)
    Your program should accomplish the following:
    1. Access your data from an external file.
    2. Compute failure rate.
      Note: You will need an assignment statement in your data step. If necessary, see "DATA step statements", point 6, SAS Review.
    3. Execute the PRINT and MEANS procedures with appropriate options.
    4. 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.

  2. Write a short report (no more than a couple of paragraphs) discussing your findings. (50%)
    Your report should address the following:
    1. 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).
    2. 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.