Problem set assessment: Difference between revisions

From Computer Science Wiki
 
(4 intermediate revisions by the same user not shown)
Line 4: Line 4:
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.


<html>
I took this, 100% from CS50. I'm pretty sure I have their implicit permission for this stuff.
<iframe width="420" height="315" src="https://www.youtube.com/embed/7O5_3T1tXEQ" frameborder="0" allowfullscreen></iframe>
</html>


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


Each axis is graded independently.  
Each axis is graded independently.  
Line 15: 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 29: 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 36: 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]