[SOLVED] CMSC312 Assignment #1 - Programming Rubric

25.00 $

Programming resource
Digital learning resource
Category:
✓ Practical programming resource
✓ Suitable for guided study and reference
✓ Tutor guidance available when needed

Description

5/5 - (2 votes)

Question #1: 15 pts
● Can the work be reproduced? (Does the program compile?) (10%)
● Does the program produce the intended result? (“I am Process A”, “I am Process B”, “I am Process C” & “Goodbye”) (10%)
● Program code uses shared memory (All A, B and C processes)? (15%)
● Program uses shared memory detach and remove calls appropriately? (‘shmdt’ and ‘shmctl’ function calls) (15%)
● Programs adhere to the programming specification? (Separate processes w/ shared memory) (50%)
○ Process A waits for B & C to complete before detaching/removing shared memory.
○ Process B waits for Process A signal before printing to shared memory.
○ Process C waits for Process B signal before printing to shared memory.
○ See assignment programming specifications sheet. (Provided by Dr. Ghosh)
Question #2: 6 pts
● Can the work be reproduced? (Does the program compile?) (20%)
● Programs produce the intended result? (“I am Process A”, “I am Process B”, “I am Process C” & “Goodbye”) (20%)
● Program code uses shared memory for both implementations? (20%)
● Programs use shared memory detach and remove calls appropriately? (20%)
● Programs adhere to the programming specification? (Two implementations: 1) child processes forked from parent and nested fork processes) (20%)
○ See assignment programming specifications sheet. (Provided by Dr. Ghosh)
Question #3: 9 pts
● Question 3a answered correctly? (33.3%)
● Question 3b answered correctly? (33.3%)
● Question 3c answered correctly? (33.3%)
Question #4: 10 pts
● Can the work be reproduced? (Does the program compile?) (10%)
● Does the program produce the intended result? (median value) (20%)
● Program code incorporates a sorting and median selection algorithm? (20%)
○ Sorting Algorithm : 10%
○ Median Selection Algorithm : 10%
● Program adheres to the programming specification? (Uses RPC protocol) (50%)
○ See assignment programming specifications sheet. (Provided by Dr. Ghosh)
Question #5: 10 pts
● Can the work be reproduced? (Does the program compile?) (10%)
● Does the program produce the intended result? (Ascending/Descending sorted array) (20%)
○ Ascending Output : 10%
○ Descending Output : 10%
● Program code sorts in ascending/descending order within the server? (20%)
○ Parsing ascend/descend command in the client : 6.66%
○ Include server modification to determine which direction to sort : 6.66%
○ Ascending/Descending sorting algorithms (server) : 6.66%
● Program adhere to the programming specification? (Uses RPC protocol) (50%)
○ See assignment programming specifications sheet. (Provided by Dr. Ghosh)
Grading Procedure
● Each question starts off with a score of 100%. For each of the questions within the assignment, the criterion failed is deducted from the question’s total percentage.
○ e.g., Question #1:
■ Can the work be reproduced? (Does the program compile?) (10%)
● Yes
■ Does the program produce the intended result? (“I am Process A”, “I am Process B”, “I am Process C” & “Goodbye”) (10%)
● No
■ Program code uses shared memory (All A, B and C processes)? (15%)
● Yes
■ Program uses shared memory detach and remove calls appropriately? (‘shmdt’ and ‘shmctl’ function calls) (15%)
● No
■ Programs adhere to the programming specification? (Separate processes w/ shared memory) (50%)
● Yes
Total Question Percentage : 100%
Unmet Criterion Percentage : 10% + 15% = 30%
Question Total Percentage Gained : 100% – 30% = 70%
Points Received : 15pts * 70% = 10.5pts out of 15 total
● The remaining questions continue in this fashion.
● If the assignment has been submitted late, a penalty is deducted from the total score per Dr. Ghosh’s programming specifications sheet.
● Discretion will be utilized when calculating scores so that you have the maximum number of points possible.

Resource details

Understand the Task Before You Use the Resource

Review the requirements, identify the programming concepts involved, study the implementation and test your understanding with your own examples and modifications.