Written Response Question 1
Identify the expected group of users of your program. Explain how your program addresses at least one concern or interest of the users you identified.
Example Response: The expected group of users is students. The program is designed to help students keep track and manage their grades and keep them on track for passing their classes.
Written Response Question 2
2. Refer to your Personalized Project Reference when answering this question.
(a) Consider the first conditional statement included in the Procedure section of your Personalized Project Reference. Describe your conditional statement, including its Boolean expression. Describe what the procedure does in general when the Boolean expression of this conditional statement evaluates to false.
Example Response: In the first conditional statement, the value of the current grade is being checked to see if it's below 60 (meaning failing). If it is, a counter variable is increased by one.
(b) Consider the procedure and procedure call identified in parts (i) and (ii) of the Procedure section of your Personalized Project Reference. Describe the outcome that your procedure call is intended to produce. Write a new procedure call with at least one different argument value that will produce the same outcome, if possible, and explain why this procedure call produces the same outcome. If it is not possible to write a new procedure call that produces the same outcome, explain why this is not possible.
Example Response: In the procedure call, the outcome is dependent on the user input. Let's assume the user has put in the grades "0", "0", and "0". This would mean gradeList is [0, 0, 0] and the call will produce the message instructing the user to go to tutoring.
The same outcome would result if my countFailing method was called with the parameter [25, 25, 25] since both represent three failing grades and would produce the tutoring message.
(c) Consider the procedure identified in part (i) of the Procedure section of your Personalized Project Reference. Identify the parameter(s) used in this procedure. Explain how your identified parameter(s) use abstraction to manage complexity in your program.
Example Response: The parameter of the procedure is "gradeList" which manages complexity by representing any potential list that could be passed into the function. By abstracting out this variable, we generalize the algorithm making it usable for any and all values.
Note: "gradeList" is also a global variable in the program. However, by using gradeList as a parameter in this particular function I am able to periodically check the functionality of my procedure by hard coding arguments e.g. countFailing( [0, 0, 0] ) to quickly test functionality without having to work with the user-interface.