Problem set assessment: Difference between revisions

From Computer Science Wiki
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[file:square.png|right|frame|Problem sets are designed to really get you thinking!!]]
[[file:square.png|right|frame|Problem sets are designed to get you really thinking!!]]


== Introduction ==  
== Introduction ==  
Problem sets are designed to challenge you to '''apply''' your knowledge of computer science. Problem sets can be completed in many different programming languages. All problem sets  are counted as  summative grades. This page describes how problem sets are graded.  
Problem sets are designed to challenge you to '''apply''' your knowledge of computer science. Problem sets can be completed in many different programming languages. All problem sets  are counted as  summative grades. This page describes how problem sets are graded.


I took this, 100% from CS50. I'm pretty sure I have their implicit permission for this stuff.


== 4 axes in a good answer ==
== 4 axis in good code ==


Each axis is graded independently.  
Each axis is graded independently.  
Line 12: Line 13:
* To what extent does your code implement the features required by our specification?
* To what extent does your code implement the features required by our specification?
* To what extent is there evidence of effort?  
* To what extent is there evidence of effort?  
''[[example of poor scope]]''
 
''[[example of better scope]]''


'''Correctness'''
'''Correctness'''
* To what extent did your code meet specifications?
* To what extent did your code meet specifications?
* To what extent did your code meet unit tests?
* To what extent did your code meet unit tests?
''[[example of poor correctness]]''
 
''[[example of better correctness]]''


'''Design'''
'''Design'''
Line 26: Line 25:
* To what extent is your code using functions appropriately?
* To what extent is your code using functions appropriately?
* Hint: code that is short is often a proxy for good design (but not always)
* Hint: code that is short is often a proxy for good design (but not always)
''[[example of poor design]]''
 
''[[example of better design]]''


'''Style'''
'''Style'''
Line 33: Line 31:
* To what extent are your variables well named?
* To what extent are your variables well named?
* To what extent do you adhere to [[style guide]]?
* To what extent do you adhere to [[style guide]]?
''[[example of poor style]]''
''[[example of better style]]''


== References ==  
== References ==  

Latest revision as of 13:43, 30 March 2023

Problem sets are designed to get you really thinking!!

Introduction[edit]

Problem sets are designed to challenge you to apply your knowledge of computer science. Problem sets can be completed in many different programming languages. All problem sets are counted as summative grades. This page describes how problem sets are graded.

I took this, 100% from CS50. I'm pretty sure I have their implicit permission for this stuff.

4 axis in good code[edit]

Each axis is graded independently.

Scope

  • To what extent does your code implement the features required by our specification?
  • To what extent is there evidence of effort?


Correctness

  • To what extent did your code meet specifications?
  • To what extent did your code meet unit tests?


Design

  • To what extent is this code efficient?
  • To what extent is your code eliminating repetition?
  • To what extent is your code using functions appropriately?
  • Hint: code that is short is often a proxy for good design (but not always)


Style

  • To what extent is your code formatted?
  • To what extent are your variables well named?
  • To what extent do you adhere to style guide?

References[edit]