Project #2
Due Date: Start of lecture, Thursday, Sept. 18, 2003
The objective here is to do a second simple software development
project,
as described in the online document Systematic
Software Development.
Problem Specification:
In this course, I keep grade records "by the numbers", then, at the end
of the semester, I calculate a weighted
sum of the numbers to produce a final semester score for each
student, on a scale of 0-100. I then rank-order the semester scores,
and use this ranking to help me assign an A-F grade to each student. In
this project, you'll develop and test a program that will prompt the
user for the factors in one student's weighted sum, then compute that
sum. (In a later project, we might expand this to compute sums for an
entire class.)
Last spring, there were no "pop quizzes", so there was no meaningful
score for lecture attendance. I therefore reapportioned the weights so
they were a bit different from those in the FAQ. Specifically, I used
10% for the labs, 12% for each midterm exam, 27% for the final exam,
and 38% for the projects. Furthermore, there were 10 labs in which
attendance was taken, midterm #1 was scored on a 0-59 scale, midterm #2
on a 0-63 scale, and final exam on a 0-103 scale. There were 7 graded
projects, each on a 0-20 scale, so you can input a project total on a
0-140 scale.
We can calculate the contribution of a given factor as follows:
contribution = percent * (factor/maximumFactor)
For example, suppose a student got 49/59 on midterm #1. This factor's
contribution is 12 * (49/59), or 9.966102 points out of 100. If the
student got a project total of 115/140, the projects contribute 38 *
(115/140) or 31.21429 points. The student's weighted sum is the sum of
all 5 contributions. Do the calculations with double variables, to keep the
fractional parts.
What to submit:
You must follow the process given in Systematic
Software Development. Submit
-
a copy of this page as a problem specification
-
a paper document (from a word processor or neatlyhand written)
that
presents the analysis, design, and test plan for your project
-
a printout of the listing (.lis) file for your program in its
final stage
-
a printout of a turnin file of your test runs, showing that you tested
the program according to the test plan
You are not required to submit a printed framework file, but
see
below.
Your grade will be calculated on a 20-point basis, as follows:
-
6 points -- analysis and design (including algorithm in structured
English)
-
4 points -- test plan
-
6 points -- correct execution of program according to test plan
-
4 points -- layout and style of program source code
Extra credit:
This extra credit is to provide an incentive for starting your
project
early in the week.If you e-mail your "framework" listing file to
Prof.
Feldman, and the time stamp on the e-mail is no later than 5 PM,
Monday, Sept. 15, 2003, you will be awarded 2 extra project points. The
"framework"
must be a listing (.lis) file, with no compilation errors,
that
contains the declared variables, and a set of comments inserted for the
main algorithm steps.
MBF 9/8/03